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

Disassembly:
sub esp, 0x54
or dword [esp + 0x38], 0xffffffff
or dword [esp + 0x3c], 0xffffffff
push ebx
push ebp
mov ebp, ecx
mov ecx, dword [esp + 0x60]
push esi
push edi
mov eax, dword [ebp + 0x20]
mov dword [esp + 0x10], eax
mov eax, dword [ebp + 0x24]
mov dword [esp + 0x14], eax
mov eax, dword [esp + 0x70]
mov dword [esp + 0x20], eax
mov eax, dword [esp + 0x74]
mov dword [esp + 0x1c], eax
movzx eax, word [ebp + 0x1e]
mov edx, eax
test ax, ax
je 0x43605f
cdq
shld edx, eax, 1
add eax, eax
mov dword [esp + 0x24], edx
mov dword [esp + 0x28], eax
jmp 0x43606c
and dword [esp + 0x24], 0
mov dword [esp + 0x28], 0x1000
movzx eax, byte [ebp + 0x1c]
mov esi, ecx
sub esi, dword [ebp + 0x90]
mov ecx, dword [esp + 0x6c]
sbb ecx, dword [ebp + 0x94]
cdq
mov ebx, eax
mov edi, edx
movzx eax, byte [ebp + 0x1d]
cdq
push edx
push eax
push ecx
push esi
call fcn.0045ff10
push edi
push ebx
push edx
push eax
call fcn.0045ff10
mov ecx, eax
call fcn.004606b0
xorps xmm1, xmm1
cvtsd2ss xmm1, xmm0
xorps xmm0, xmm0
mulss xmm1, dword [0x4f2778]
movlpd qword [esp + 0x40], xmm0
movss xmm0, dword [0x4f2930]
mulss xmm1, dword [0x4f27b8]
comiss xmm1, xmm0
jb 0x4360ee
subss xmm1, xmm0
comiss xmm0, xmm1
jbe 0x4360ee
mov esi, dword [esp + 0x40]
mov edi, dword [esp + 0x44]
add esi, 0
adc edi, 0x80000000
jmp 0x4360f6
mov edi, dword [esp + 0x44]
mov esi, dword [esp + 0x40]
movaps xmm0, xmm1
call fcn.00460590
mov ecx, dword [esp + 0x7c]
mov ebx, eax
mov eax, dword [esp + 0x78]
add ebx, esi
mov esi, dword [esp + 0x70]
adc edx, edi
mov dword [esp + 0x70], ecx
mov edi, dword [esp + 0x74]
add ebx, esi
mov dword [esp + 0x78], eax
adc edx, edi
cmp edx, ecx
jb 0x43612e
ja 0x43612a
cmp ebx, eax
jbe 0x43612e
mov ebx, eax
mov edx, ecx
push ecx
push eax
push edi
push esi
push edx
push ebx
lea edx, [esp + 0x60]
mov ecx, ebp
call fcn.00435f24
add esp, 0x18
test eax, eax
je 0x43629c
mov ebx, dword [esp + 0x6c]
lea eax, [esp + 0x58]
mov ecx, ebp
push eax
lea edx, [esp + 0x54]
call fcn.00435c3d
mov eax, dword [esp + 0x14]
pop ecx
mov ecx, dword [esp + 0x50]
mov dword [esp + 0x10], ecx
cmp eax, ecx
jne 0x43617d
mov eax, dword [esp + 0x14]
cmp eax, dword [esp + 0x54]
je 0x4363cf
mov eax, dword [esp + 0x54]
mov dword [esp + 0x14], eax
cmp eax, ebx
ja 0x4361a9
mov eax, dword [esp + 0x68]
jb 0x436193
cmp ecx, eax
ja 0x4361a9
cmp dword [esp + 0x5c], ebx
ja 0x43640d
jb 0x4361a9
cmp dword [esp + 0x58], eax
jae 0x43640d
movzx eax, byte [ebp + 0x1d]
mov ecx, dword [esp + 0x48]
sub ecx, dword [ebp + 0x98]
cdq
mov dword [esp + 0x30], eax
movzx eax, byte [ebp + 0x1c]
mov dword [esp + 0x2c], edx
cdq
mov dword [esp + 0x34], edx
mov edx, dword [esp + 0x4c]
sbb edx, dword [ebp + 0x9c]
mov dword [esp + 0x38], eax
call fcn.004606b0
push dword [esp + 0x2c]
cvtsd2ss xmm0, xmm0
push dword [esp + 0x34]
movss dword [esp + 0x20], xmm0
push dword [esp + 0x3c]
push dword [esp + 0x44]
call fcn.0045ff10
push dword [esp + 0x14]
push dword [esp + 0x14]
push edx
push eax
call fcn.0045ff10
mov ecx, eax
call fcn.004606b0
movss xmm1, dword [esp + 0x18]
cvtsd2ss xmm0, xmm0
mulss xmm0, dword [0x4f2778]
divss xmm1, xmm0
movss dword [esp + 0x18], xmm1
cmp dword [esp + 0x14], ebx
jb 0x4362ad
ja 0x43623f
mov eax, dword [esp + 0x68]
cmp dword [esp + 0x10], eax
jbe 0x4362b1
mov edx, dword [esp + 0x4c]
mov eax, dword [esp + 0x48]
mov dword [esp + 0x78], eax
mov dword [esp + 0x70], edx
cmp edi, edx
jb 0x43625d
ja 0x436259
cmp esi, eax
jbe 0x43625d
mov esi, eax
mov edi, edx
sub eax, esi
sbb edx, edi
shrd eax, edx, 1
shr edx, 1
add eax, esi
adc edx, edi
cmp edx, edi
ja 0x436279
jb 0x436275
cmp eax, esi
jae 0x436279
mov eax, esi
mov edx, edi
mov ecx, dword [esp + 0x70]
push ecx
push dword [esp + 0x7c]
mov ecx, ebp
push edi
push esi
push edx
push eax
lea edx, [esp + 0x60]
call fcn.00435f24
add esp, 0x18
test eax, eax
jne 0x43614e
mov ecx, ebp
call fcn.00435c96
xor eax, eax
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x54
ret
mov eax, dword [esp + 0x68]
mov ecx, eax
mov edx, ebx
sub ecx, dword [esp + 0x10]
mov dword [esp + 0x40], ecx
sbb edx, dword [esp + 0x14]
mov dword [esp + 0x3c], edx
cmp edx, dword [esp + 0x24]
jb 0x43640d
ja 0x4362db
cmp ecx, dword [esp + 0x28]
jb 0x43640d
mov edi, dword [esp + 0x4c]
mov esi, dword [esp + 0x48]
cmp dword [esp + 0x70], edi
ja 0x4362f9
jb 0x4362f1
cmp dword [esp + 0x78], esi
jae 0x4362f9
mov dword [esp + 0x78], esi
mov dword [esp + 0x70], edi
push dword [esp + 0x2c]
push dword [esp + 0x34]
push dword [esp + 0x3c]
push dword [esp + 0x44]
call fcn.0045ff10
push dword [esp + 0x3c]
push dword [esp + 0x44]
push edx
push eax
call fcn.0045ff10
mov ecx, eax
call fcn.004606b0
xorps xmm1, xmm1
cvtsd2ss xmm1, xmm0
xorps xmm0, xmm0
mulss xmm1, dword [0x4f2778]
movlpd qword [esp + 0x40], xmm0
movss xmm0, dword [0x4f2930]
mulss xmm1, dword [esp + 0x18]
comiss xmm1, xmm0
jb 0x436372
subss xmm1, xmm0
comiss xmm0, xmm1
jbe 0x436372
mov eax, dword [esp + 0x40]
add eax, 0
mov dword [esp + 0x38], eax
mov eax, dword [esp + 0x44]
adc eax, 0x80000000
mov dword [esp + 0x34], eax
jmp 0x436382
mov eax, dword [esp + 0x44]
mov dword [esp + 0x34], eax
mov eax, dword [esp + 0x40]
mov dword [esp + 0x38], eax
movaps xmm0, xmm1
call fcn.00460590
add eax, dword [esp + 0x38]
mov ecx, dword [esp + 0x70]
adc edx, dword [esp + 0x34]
add eax, esi
adc edx, edi
cmp edx, ecx
jb 0x4363ac
ja 0x4363a6
cmp eax, dword [esp + 0x78]
jbe 0x4363ac
mov eax, dword [esp + 0x78]
mov edx, ecx
cmp dword [esp + 0x1c], edi
ja 0x43627d
jb 0x4363c2
cmp dword [esp + 0x20], esi
jae 0x43627d
mov dword [esp + 0x20], esi
mov dword [esp + 0x1c], edi
jmp 0x43627d
push dword [esp + 0x70]
mov ecx, dword [esp + 0x20]
lea edx, [esp + 0x4c]
push dword [esp + 0x7c]
mov eax, dword [esp + 0x28]
push ecx
push eax
push ecx
push eax
mov ecx, ebp
call fcn.00435f24
add esp, 0x18
test eax, eax
je 0x43629c
mov ecx, dword [esp + 0x68]
sub ecx, dword [ebp + 0x90]
sbb ebx, dword [ebp + 0x94]
push ebx
push ecx
jmp 0x43641b
sub eax, dword [ebp + 0x90]
sbb ebx, dword [ebp + 0x94]
push ebx
push eax
mov ecx, ebp
call fcn.00435fe9
pop ecx
pop ecx
test eax, eax
je 0x43629c
xor eax, eax
inc eax
jmp 0x4362a5