Function at 0x43dac0
Capabilities:
Resolve function by parsing pe exports

Disassembly:
push ebx
push esi
push edi
push ebp
sub esp, 0x88
mov dword [esp], ecx
xor ebx, ebx
nop
mov ebp, dword [esp]
add ebp, 0x34
mov eax, ebp
fld dword [eax]
fstp dword [esp + 0x24]
fld dword [eax + 4]
fstp dword [esp + 0x28]
fld dword [eax + 8]
fstp dword [esp + 0x2c]
call fcn.00649a40
movzx eax, ax
fldz
and eax, 0xff
mov dword [esp + 0x18], eax
fild dword [esp + 0x18]
fmul dword [0x688200]
fsin
fnstsw ax
test eax, 0x400
je 0x43db1b
call fcn.00642970
fsin
fstp dword [esp + 0x18]
fld dword [esp + 0x18]
fstp st(1)
fld dword [0x688204]
fmul st(1)
fadd dword [esp + 0x24]
fstp dword [esp + 0x24]
fstp st(0)
call fcn.00649a40
movzx eax, ax
fldz
and eax, 0xff
mov dword [esp + 0x18], eax
fild dword [esp + 0x18]
fmul dword [0x688200]
fcos
fnstsw ax
test eax, 0x400
je 0x43db66
call fcn.00642970
fcos
fstp dword [esp + 0x18]
fld dword [esp + 0x18]
fstp st(1)
fld dword [0x688204]
fmul st(1)
fadd dword [esp + 0x28]
lea eax, [esp + 0x4b]
push eax
fstp dword [esp + 0x2c]
push dword [esp + 0x30]
push dword [esp + 0x30]
push dword [esp + 0x30]
fstp st(0)
call fcn.004d53c0
fadd dword [0x688208]
add esp, 0x10
cmp byte [esp + 0x4b], 0
fstp dword [esp + 0x2c]
je 0x43ded3
mov eax, ebp
mov edx, dword [esp + 0x28]
fldz
fldz
fldz
fldz
fldz
fld dword [eax]
fstp dword [esp + 0x30]
fld dword [eax + 4]
fstp dword [esp + 0x34]
fld dword [eax + 8]
fstp dword [esp + 0x38]
fld dword [esp + 0x38]
fadd dword [0x68820c]
mov eax, dword [esp + 0x24]
mov edi, dword [esp + 0x2c]
mov dword [esp + 0x3c], eax
mov eax, edx
fstp dword [esp + 0x38]
fld dword [esp + 0x3c]
fsub dword [esp + 0x30]
mov dword [esp + 0x40], eax
mov eax, edi
mov dword [esp + 0x44], eax
mov dword [esp + 0x10], edx
fstp st(5)
fld dword [esp + 0x40]
fsub dword [esp + 0x34]
mov dword [esp + 0x14], edi
fstp st(4)
fld st(3)
fmul st(0)
fld st(5)
fmul st(0)
faddp st(1)
fld dword [esp + 0x44]
fsub dword [esp + 0x38]
fstp st(6)
fld st(5)
fmul st(0)
faddp st(1)
fstp st(5)
fld st(4)
fsqrt
fstp dword [esp + 0x18]
fld dword [esp + 0x18]
fstp st(4)
fld dword [esp + 0x3c]
fsub dword [esp + 0x30]
fstp st(5)
fld dword [esp + 0x40]
fsub dword [esp + 0x34]
fstp st(3)
fld st(2)
fmul st(0)
fld st(5)
fmul st(0)
faddp st(1)
fld dword [esp + 0x44]
fsub dword [esp + 0x38]
fstp st(6)
fld st(5)
fmul st(0)
faddp st(1)
fstp st(5)
fld st(4)
fsqrt
fstp dword [esp + 0x18]
fld dword [esp + 0x18]
fstp st(5)
fld dword [0x688210]
fadd st(5)
fdiv st(4)
fstp st(3)
fld dword [esp + 0x38]
fstp st(2)
fld dword [esp + 0x44]
fsub st(2)
fstp st(4)
fld dword [esp + 0x34]
fstp st(1)
fld dword [esp + 0x40]
fsub st(1)
fstp st(5)
fld dword [esp + 0x3c]
fsub dword [esp + 0x30]
lea eax, [esp + 0x70]
push eax
fmul st(3)
fadd dword [esp + 0x34]
fstp dword [esp + 0x40]
fld st(2)
fmul st(5)
fadd st(1)
fstp dword [esp + 0x44]
fld st(2)
fmul st(4)
fadd st(2)
fstp dword [esp + 0x48]
fcompp
fcompp
fstp st(0)
call fcn.004bc260
fld dword [esp + 0x14]
fsub dword [esp + 0x78]
lea eax, [esp + 0x68]
pop ecx
push eax
fstp dword [esp + 0xc]
call fcn.004bc260
fld dword [esp + 0x14]
fsub dword [esp + 0x6c]
lea eax, [esp + 0x5c]
pop ecx
push eax
fmul dword [esp + 0xc]
fstp dword [esp + 0x10]
call fcn.004bc260
fld dword [esp + 0x28]
fsub dword [esp + 0x5c]
lea eax, [esp + 0x50]
pop ecx
push eax
fstp dword [esp + 8]
call fcn.004bc260
fldz
fldz
fldz
fldz
fldz
fld dword [esp + 0x28]
fsub dword [esp + 0x50]
pop ecx
fmul dword [esp + 4]
fstp st(5)
fld st(4)
fadd dword [esp + 0xc]
fsqrt
fstp dword [esp + 0x18]
fld dword [esp + 0x18]
fstp st(5)
fld st(4)
fcomp dword [0x688214]
fnstsw ax
test ah, 0x45
je 0x43dd68
cmp ebx, 0x10
jle 0x43df14
cmp ebx, 0x10
jg 0x43de06
lea esi, [esp + 0x24]
lea edi, [esp + 0x7c]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
fld dword [esp + 0x84]
fstp st(5)
fld dword [esp + 0x80]
mov ecx, 0x945d38
xor edi, edi
fstp st(4)
fld dword [ecx + 8]
fsub st(5)
fstp st(1)
fld dword [ecx + 4]
fsub st(4)
fstp st(2)
fld dword [ecx]
fsub dword [esp + 0x7c]
fstp st(3)
fld st(1)
fstp st(2)
fld st(1)
fmul st(0)
fld st(3)
fmul st(0)
faddp st(1)
fld st(1)
fstp st(4)
fld st(3)
fmul st(0)
faddp st(1)
fstp st(3)
fld st(2)
fsqrt
fstp dword [esp + 0x18]
fld dword [esp + 0x18]
fstp st(3)
fld st(2)
fcomp dword [0x688218]
fnstsw ax
and ah, 5
cmp ah, 1
jne 0x43ddf0
mov al, 1
jmp 0x43ddfe
inc edi
add ecx, 0x34
cmp edi, 0x150
jl 0x43dd95
xor al, al
test al, al
jne 0x43df20
cmp ebx, 0x10
jge 0x43de12
mov edx, 1
jmp 0x43de14
xor edx, edx
cmp ebx, 0x10
jge 0x43de20
mov esi, 1
jmp 0x43de22
xor esi, esi
xor ecx, ecx
xor eax, eax
test edx, edx
push 0
push 0
push 0
jne 0x43de31
inc ecx
test cl, cl
jne 0x43de3a
mov eax, 1
xor edx, edx
push eax
xor eax, eax
test esi, esi
push 0
jne 0x43de46
inc edx
test dl, dl
jne 0x43de4f
mov eax, 1
fcompp
fcompp
lea edi, [esp + 0x44]
push eax
lea eax, [esp + 0x54]
push 1
push edi
push eax
fstp st(0)
call fcn.004da580
add esp, 0x24
test al, al
je 0x43ded3
cmp ebx, 0x10
jg 0x43de9f
push 0
push 0
push 0
push 0
push 1
push 0
push 0
push dword [0x68821c]
push dword [esp + 0x4c]
push dword [esp + 0x4c]
push dword [esp + 0x4c]
call fcn.004d3f60
add esp, 0x2c
test eax, eax
jne 0x43ded3
mov eax, dword [esp + 0x9c]
fld dword [esp + 0x24]
fstp dword [eax]
mov eax, dword [esp + 0xa0]
fld dword [esp + 0x10]
fstp dword [eax]
mov eax, dword [esp + 0xa4]
fld dword [esp + 0x14]
fstp dword [eax]
add esp, 0x88
pop ebp
pop edi
pop esi
pop ebx
ret 0xc
inc ebx
cmp ebx, 0x20
jl 0x43dad0
mov eax, dword [esp + 0x9c]
fld dword [ebp]
fstp dword [eax]
mov eax, dword [esp + 0xa0]
fld dword [ebp + 4]
fstp dword [eax]
fld dword [0x688210]
fadd dword [ebp + 8]
mov eax, dword [esp + 0xa4]
fstp dword [eax]
add esp, 0x88
pop ebp
pop edi
pop esi
pop ebx
ret 0xc
fcompp
fcompp
fstp st(0)
jmp 0x43ded3
fcompp
fcompp
fstp st(0)
jmp 0x43ded3