Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- .text:00542490 ; int __cdecl CCoronas__RegisterCorona(int, char, char, char, char, int, float, float, int, char, char, char, char, float, char, float)
- .text:00542490 CCoronas__RegisterCorona proc near ; CODE XREF: CEntity__m30+48Dp
- .text:00542490 ; sub_541590+450p
- .text:00542490 ; sub_541590+C15p
- .text:00542490 ; CCoronas__DoSunAndMoon_void_+F4p ...
- .text:00542490
- .text:00542490 var_18 = dword ptr -18h
- .text:00542490 var_14 = dword ptr -14h
- .text:00542490 arg_0 = dword ptr 4
- .text:00542490 arg_4 = byte ptr 8
- .text:00542490 arg_8 = byte ptr 0Ch
- .text:00542490 arg_C = byte ptr 10h
- .text:00542490 arg_10 = byte ptr 14h
- .text:00542490 arg_14 = dword ptr 18h
- .text:00542490 arg_18 = dword ptr 1Ch
- .text:00542490 arg_1C = dword ptr 20h
- .text:00542490 arg_20 = dword ptr 24h
- .text:00542490 arg_24 = byte ptr 28h
- .text:00542490 arg_28 = byte ptr 2Ch
- .text:00542490 arg_2C = byte ptr 30h
- .text:00542490 arg_30 = byte ptr 34h
- .text:00542490 arg_34 = dword ptr 38h
- .text:00542490 arg_38 = byte ptr 3Ch
- .text:00542490 arg_3C = dword ptr 40h
- .text:00542490
- .text:00542490 000 push ebx
- .text:00542491 004 push esi
- .text:00542492 008 push ebp
- .text:00542493 00C mov ebx, offset _camera.__parent.matrix.__parent.pos
- .text:00542498 00C sub esp, 10h
- .text:0054249B 01C mov ebp, [esp+1Ch+arg_14]
- .text:0054249F 01C fldz
- .text:005424A1 01C fldz
- .text:005424A3 01C fldz
- .text:005424A5 01C fld [esp+1Ch+arg_1C]
- .text:005424A9 01C fldz
- .text:005424AB 01C fld dword ptr [ebp+4]
- .text:005424AE 01C fstp st(4)
- .text:005424B0 01C fld dword ptr [ebx+4]
- .text:005424B3 01C fsub st, st(4)
- .text:005424B5 01C fstp st(5)
- .text:005424B7 01C mov esi, [esp+1Ch+arg_0]
- .text:005424BB 01C fld st(4)
- .text:005424BD 01C fmul st, st
- .text:005424BF 01C fld dword ptr [ebp+0]
- .text:005424C2 01C fstp st(4)
- .text:005424C4 01C fld dword ptr [ebx]
- .text:005424C6 01C fsub st, st(4)
- .text:005424C8 01C fstp st(6)
- .text:005424CA 01C fld st(5)
- .text:005424CC 01C fmul st, st
- .text:005424CE 01C faddp st(1), st
- .text:005424D0 01C fld st(2)
- .text:005424D2 01C fmul st, st
- .text:005424D4 01C fcompp
- .text:005424D6 01C fnstsw ax
- .text:005424D8 01C and ah, 5
- .text:005424DB 01C cmp ah, 1
- .text:005424DE 01C jnz short loc_5424F0
- .text:005424E0 01C fcompp
- .text:005424E2 01C fcompp
- .text:005424E4 01C add esp, 10h
- .text:005424E7 00C fstp st
- .text:005424E9 00C pop ebp
- .text:005424EA 008 pop esi
- .text:005424EB 004 pop ebx
- .text:005424EC 000 retn
- .text:005424EC ; ---------------------------------------------------------------------------
- .text:005424ED 000 align 10h
- .text:005424F0
- .text:005424F0 loc_5424F0: ; CODE XREF: CCoronas__RegisterCorona+4Ej
- .text:005424F0 01C cmp [esp+1Ch+arg_38], 0
- .text:005424F5 01C jz loc_5425AD
- .text:005424FB 01C fld dword ptr [ebx+8]
- .text:005424FE 01C fsub dword ptr [ebp+8]
- .text:00542501 01C fstp st(5)
- .text:00542503 01C fld dword ptr [ebx+4]
- .text:00542506 01C fsub st, st(4)
- .text:00542508 01C fstp st(1)
- .text:0054250A 01C fld dword ptr [ebx]
- .text:0054250C 01C fsub st, st(3)
- .text:0054250E 01C fstp st(4)
- .text:00542510 01C fld st
- .text:00542512 01C fstp st(3)
- .text:00542514 01C fld st(2)
- .text:00542516 01C fmul st, st
- .text:00542518 01C fld st(4)
- .text:0054251A 01C fmul st, st
- .text:0054251C 01C faddp st(1), st
- .text:0054251E 01C fld st(5)
- .text:00542520 01C fstp st(6)
- .text:00542522 01C fld st(5)
- .text:00542524 01C fmul st, st
- .text:00542526 01C faddp st(1), st
- .text:00542528 01C fstp st(5)
- .text:0054252A 01C fld st(4)
- .text:0054252C 01C fsqrt
- .text:0054252E 01C fstp [esp+1Ch+var_14]
- .text:00542532 01C fld [esp+1Ch+var_14]
- .text:00542536 01C fstp st(5)
- .text:00542538 01C fld st(4)
- .text:0054253A 01C fcomp flt_6958B0
- .text:00542540 01C fnstsw ax
- .text:00542542 01C and ah, 5
- .text:00542545 01C cmp ah, 1
- .text:00542548 01C jnz short loc_542557
- .text:0054254A 01C fcompp
- .text:0054254C 01C fcompp
- .text:0054254E 01C add esp, 10h
- .text:00542551 00C fstp st
- .text:00542553 00C pop ebp
- .text:00542554 008 pop esi
- .text:00542555 004 pop ebx
- .text:00542556 000 retn
- .text:00542557 ; ---------------------------------------------------------------------------
- .text:00542557
- .text:00542557 loc_542557: ; CODE XREF: CCoronas__RegisterCorona+B8j
- .text:00542557 01C fld st(4)
- .text:00542559 01C fcomp flt_6958B4
- .text:0054255F 01C fnstsw ax
- .text:00542561 01C and ah, 5
- .text:00542564 01C cmp ah, 1
- .text:00542567 01C jnz short loc_5425AD
- .text:00542569 01C fld st(4)
- .text:0054256B 01C fsub flt_6958B0
- .text:00542571 01C mov al, [esp+1Ch+arg_10]
- .text:00542575 01C and eax, 0FFh
- .text:0054257A 01C fmul flt_6958B8
- .text:00542580 01C mov [esp+1Ch+var_14], eax
- .text:00542584 01C fimul [esp+1Ch+var_14]
- .text:00542588 01C fnstcw word ptr [esp+1Ch+var_18]
- .text:0054258C 01C mov eax, [esp+1Ch+var_18]
- .text:00542590 01C or byte ptr [esp+1Ch+var_18+1], 0Ch
- .text:00542595 01C fldcw word ptr [esp+1Ch+var_18]
- .text:00542599 01C mov [esp+1Ch+var_18], eax
- .text:0054259D 01C fistp [esp+1Ch+var_14]
- .text:005425A1 01C fldcw word ptr [esp+1Ch+var_18]
- .text:005425A5 01C mov al, byte ptr [esp+1Ch+var_14]
- .text:005425A9 01C mov [esp+1Ch+arg_10], al
- .text:005425AD
- .text:005425AD loc_5425AD: ; CODE XREF: CCoronas__RegisterCorona+65j
- .text:005425AD ; CCoronas__RegisterCorona+D7j
- .text:005425AD 01C xor edx, edx
- .text:005425AF 01C xor ecx, ecx
- .text:005425B1 01C jmp short loc_5425B7
- .text:005425B3 ; ---------------------------------------------------------------------------
- .text:005425B3
- .text:005425B3 loc_5425B3: ; CODE XREF: CCoronas__RegisterCorona+133j
- .text:005425B3 01C add ecx, 68h
- .text:005425B6 01C inc edx
- .text:005425B7
- .text:005425B7 loc_5425B7: ; CODE XREF: CCoronas__RegisterCorona+121j
- .text:005425B7 01C cmp dx, 38h
- .text:005425BB 01C jnb short loc_5425C5
- .text:005425BD 01C cmp esi, ds:dword_815134[ecx]
- .text:005425C3 01C jnz short loc_5425B3
- .text:005425C5
- .text:005425C5 loc_5425C5: ; CODE XREF: CCoronas__RegisterCorona+12Bj
- .text:005425C5 01C cmp dx, 38h
- .text:005425C9 01C jnz loc_542680
- .text:005425CF 01C cmp [esp+1Ch+arg_10], 0
- .text:005425D4 01C jnz short loc_5425E3
- .text:005425D6 01C fcompp
- .text:005425D8 01C fcompp
- .text:005425DA 01C add esp, 10h
- .text:005425DD 00C fstp st
- .text:005425DF 00C pop ebp
- .text:005425E0 008 pop esi
- .text:005425E1 004 pop ebx
- .text:005425E2 000 retn
- .text:005425E3 ; ---------------------------------------------------------------------------
- .text:005425E3
- .text:005425E3 loc_5425E3: ; CODE XREF: CCoronas__RegisterCorona+144j
- .text:005425E3 01C xor edx, edx
- .text:005425E5 01C xor eax, eax
- .text:005425E7 01C jmp short loc_5425F4
- .text:005425E7 ; ---------------------------------------------------------------------------
- .text:005425E9 01C align 10h
- .text:005425F0
- .text:005425F0 loc_5425F0: ; CODE XREF: CCoronas__RegisterCorona+171j
- .text:005425F0 01C add eax, 68h
- .text:005425F3 01C inc edx
- .text:005425F4
- .text:005425F4 loc_5425F4: ; CODE XREF: CCoronas__RegisterCorona+157j
- .text:005425F4 01C cmp dx, 38h
- .text:005425F8 01C jnb short loc_542603
- .text:005425FA 01C cmp ds:dword_815134[eax], 0
- .text:00542601 01C jnz short loc_5425F0
- .text:00542603
- .text:00542603 loc_542603: ; CODE XREF: CCoronas__RegisterCorona+168j
- .text:00542603 01C cmp dx, 38h
- .text:00542607 01C jnz short loc_542616
- .text:00542609 01C fcompp
- .text:0054260B 01C fcompp
- .text:0054260D 01C add esp, 10h
- .text:00542610 00C fstp st
- .text:00542612 00C pop ebp
- .text:00542613 008 pop esi
- .text:00542614 004 pop ebx
- .text:00542615 000 retn
- .text:00542616 ; ---------------------------------------------------------------------------
- .text:00542616
- .text:00542616 loc_542616: ; CODE XREF: CCoronas__RegisterCorona+177j
- .text:00542616 01C movzx ebx, dx
- .text:00542619 01C mov ecx, offset dword_815128
- .text:0054261E 01C imul ebx, 68h
- .text:00542621 01C add ecx, ebx
- .text:00542623 01C mov ds:byte_815158[ebx], 0
- .text:0054262A 01C add ecx, 34h
- .text:0054262D 01C mov al, [ecx]
- .text:0054262F 01C and al, 0FDh
- .text:00542631 01C or al, 2
- .text:00542633 01C mov [ecx], al
- .text:00542635 01C mov al, [ecx]
- .text:00542637 01C and al, 0FBh
- .text:00542639 01C or al, 4
- .text:0054263B 01C mov [ecx], al
- .text:0054263D 01C mov al, [ecx]
- .text:0054263F 01C and al, 0BFh
- .text:00542641 01C mov [ecx], al
- .text:00542643 01C mov ds:dword_815138[ebx], 0
- .text:0054264D 01C mov al, [ecx]
- .text:0054264F 01C and al, 0EFh
- .text:00542651 01C mov [ecx], al
- .text:00542653 01C mov ds:byte_815188[ebx], 0
- .text:0054265A 01C mov ds:byte_815189[ebx], 0
- .text:00542661 01C mov ds:byte_81518A[ebx], 0
- .text:00542668 01C mov ds:byte_81518B[ebx], 0
- .text:0054266F 01C mov ds:byte_81518C[ebx], 0
- .text:00542676 01C mov ds:byte_81518D[ebx], 0
- .text:0054267D 01C jmp short loc_5426B0
- .text:0054267D ; ---------------------------------------------------------------------------
- .text:0054267F 01C align 10h
- .text:00542680
- .text:00542680 loc_542680: ; CODE XREF: CCoronas__RegisterCorona+139j
- .text:00542680 01C movzx eax, dx
- .text:00542683 01C imul eax, 68h
- .text:00542686 01C cmp ds:byte_815158[eax], 0
- .text:0054268D 01C jnz short loc_5426B0
- .text:0054268F 01C cmp [esp+1Ch+arg_10], 0
- .text:00542694 01C jnz short loc_5426B0
- .text:00542696 01C fcompp
- .text:00542698 01C fcompp
- .text:0054269A 01C add esp, 10h
- .text:0054269D 00C mov ds:dword_815134[eax], 0
- .text:005426A7 00C fstp st
- .text:005426A9 00C pop ebp
- .text:005426AA 008 pop esi
- .text:005426AB 004 pop ebx
- .text:005426AC 000 retn
- .text:005426AC ; ---------------------------------------------------------------------------
- .text:005426AD 000 align 10h
- .text:005426B0
- .text:005426B0 loc_5426B0: ; CODE XREF: CCoronas__RegisterCorona+1EDj
- .text:005426B0 ; CCoronas__RegisterCorona+1FDj
- .text:005426B0 ; CCoronas__RegisterCorona+204j
- .text:005426B0 01C movzx ecx, dx
- .text:005426B3 01C mov al, [esp+1Ch+arg_4]
- .text:005426B7 01C mov dl, [esp+1Ch+arg_2C]
- .text:005426BB 01C and dl, 1
- .text:005426BE 01C imul ecx, 68h
- .text:005426C1 01C mov ds:dword_815134[ecx], esi
- .text:005426C7 01C mov ds:byte_815154[ecx], al
- .text:005426CD 01C mov al, [esp+1Ch+arg_8]
- .text:005426D1 01C mov ds:byte_815155[ecx], al
- .text:005426D7 01C mov al, [esp+1Ch+arg_C]
- .text:005426DB 01C mov ds:byte_815156[ecx], al
- .text:005426E1 01C mov al, [esp+1Ch+arg_10]
- .text:005426E5 01C mov ds:byte_815157[ecx], al
- .text:005426EB 01C mov eax, [esp+1Ch+arg_20]
- .text:005426EF 01C fld dword ptr [ebp+0]
- .text:005426F2 01C fstp ds:dword_815128[ecx]
- .text:005426F8 01C fld dword ptr [ebp+4]
- .text:005426FB 01C fstp ds:flt_81512C[ecx]
- .text:00542701 01C fld dword ptr [ebp+8]
- .text:00542704 01C fstp ds:flt_815130[ecx]
- .text:0054270A 01C fld [esp+1Ch+arg_18]
- .text:0054270E 01C fstp ds:flt_815140[ecx]
- .text:00542714 01C fld [esp+1Ch+arg_34]
- .text:00542718 01C fstp ds:flt_815144[ecx]
- .text:0054271E 01C fld st(1)
- .text:00542720 01C mov ds:byte_815159[ecx], 1
- .text:00542727 01C fstp ds:flt_815148[ecx]
- .text:0054272D 01C mov ds:dword_81513C[ecx], eax
- .text:00542733 01C mov al, [esp+1Ch+arg_24]
- .text:00542737 01C mov ds:byte_81515A[ecx], al
- .text:0054273D 01C mov al, [esp+1Ch+arg_28]
- .text:00542741 01C mov ds:byte_81515B[ecx], al
- .text:00542747 01C mov eax, offset dword_815128
- .text:0054274C 01C add eax, ecx
- .text:0054274E 01C add eax, 34h
- .text:00542751 01C mov bl, [eax]
- .text:00542753 01C and bl, 0FEh
- .text:00542756 01C or bl, dl
- .text:00542758 01C mov [eax], bl
- .text:0054275A 01C mov dl, [esp+1Ch+arg_30]
- .text:0054275E 01C and dl, 1
- .text:00542761 01C mov bl, [eax]
- .text:00542763 01C shl dl, 3
- .text:00542766 01C and bl, 0F7h
- .text:00542769 01C or bl, dl
- .text:0054276B 01C mov [eax], bl
- .text:0054276D 01C mov dl, [esp+1Ch+arg_38]
- .text:00542771 01C and dl, 1
- .text:00542774 01C mov bl, [eax]
- .text:00542776 01C shl dl, 5
- .text:00542779 01C and bl, 0DFh
- .text:0054277C 01C or bl, dl
- .text:0054277E 01C mov [eax], bl
- .text:00542780 01C fld [esp+1Ch+arg_3C]
- .text:00542784 01C fstp ds:flt_81514C[ecx]
- .text:0054278A 01C fcompp
- .text:0054278C 01C fcompp
- .text:0054278E 01C fstp st
- .text:00542790 01C add esp, 10h
- .text:00542793 00C pop ebp
- .text:00542794 008 pop esi
- .text:00542795 004 pop ebx
- .text:00542796 000 retn
- .text:00542796 CCoronas__RegisterCorona endp
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement