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

Disassembly:
mov ecx, dword fs:[0x14]
mov ecx, dword [ecx]
cmp esp, dword [ecx + 8]
jbe 0x421b40
sub esp, 0x64
mov eax, dword [esp + 0x6c]
mov dword [esp + 4], eax
mov eax, dword [esp + 0x68]
mov dword [esp], eax
call fcn.0045d410
movsd xmm0, qword [0x70ba20]
mulsd xmm0, qword [esp + 8]
movsd qword [esp], xmm0
call fcn.0045d3c0
mov eax, dword [esp + 0xc]
mov dword [esp + 0x14], eax
mov ecx, dword [esp + 8]
mov dword [esp + 0x10], ecx
nop
lea edx, [0x8dcef0]
mov dword [esp], edx
call fcn.004021c0
mov eax, dword [esp + 0x10]
cmp dword [esp + 4], eax
setbe cl
mov edx, dword [esp + 8]
mov ebx, dword [esp + 0x14]
cmp edx, ebx
sete dl
xchg ebp, ebx
setb bl
xchg ebp, ebx
and ecx, edx
or ecx, ebp
test cl, cl
je 0x4218eb
lea eax, [0x8dc408]
mov dword [esp], eax
mov dword [esp + 8], 0xffffffff
mov dword [esp + 4], 0xffffffff
call fcn.004021e0
jmp 0x421902
nop
lea ecx, [0x8dc408]
mov dword [esp], ecx
mov dword [esp + 8], ebx
mov dword [esp + 4], eax
call fcn.004021e0
mov eax, dword [esp + 0x78]
test eax, eax
sete cl
mov edx, dword [esp + 0x7c]
test edx, edx
sete bl
and ebx, ecx
test bl, bl
jne 0x421b1d
mov eax, dword [esp + 0x74]
mov dword [esp + 4], eax
mov eax, dword [esp + 0x70]
mov dword [esp], eax
call fcn.0045d4e0
movsd xmm0, qword [esp + 8]
movsd qword [esp + 0x5c], xmm0
mov eax, dword [esp + 0x7c]
mov dword [esp + 4], eax
mov eax, dword [esp + 0x78]
mov dword [esp], eax
call fcn.0045d4e0
movsd xmm0, qword [esp + 0x5c]
divsd xmm0, qword [esp + 8]
movsd qword [esp + 0x54], xmm0
mov eax, dword [0x8e1b88]
mov ecx, dword [0x8e1b8c]
mov dword [esp + 4], ecx
mov dword [esp], eax
call fcn.0045d4e0
movsd xmm0, qword [esp + 0x54]
mulsd xmm0, qword [esp + 8]
movsd qword [esp], xmm0
call fcn.0045d3c0
mov eax, dword [esp + 8]
mov dword [esp + 0x18], eax
mov ecx, 0xcccccccd
mul ecx
shr edx, 3
mov dword [esp + 0x50], edx
mov eax, edx
add edx, 0
mov dword [esp + 0x4c], edx
mov ebx, dword [esp + 0xc]
mov dword [esp + 0x1c], ebx
mov ebp, eax
mov eax, ebx
mov esi, edx
mul ecx
shr edx, 3
mov dword [esp + 0x48], edx
lea eax, [edx + edx*4]
shl eax, 1
sub ebx, eax
mov eax, ebx
mov edi, 0x19999999
mul edi
mov dword [esp + 0x44], edx
mov dword [esp + 0x40], eax
add eax, esi
mov dword [esp + 0x3c], eax
lea edx, [ebp + ebp*4]
shl edx, 1
mov esi, dword [esp + 0x18]
sub esi, edx
lea edx, [ebx + ebx*2]
lea edx, [esi + edx*2]
mov ebx, eax
mov eax, ecx
mul edx
shr edx, 3
mov dword [esp + 0x38], edx
add edx, ebx
mov dword [esp + 0x34], edx
mov ecx, dword [esp + 0x18]
add ecx, edx
mov dword [esp + 0x30], ecx
mov edx, dword [0x8dc108]
mov dword [esp + 0x2c], edx
add edx, ecx
mov dword [esp + 0x28], edx
add edx, 0xffffffff
mov dword [esp + 0x24], edx
xor edx, edx
mov ecx, dword [esp + 0x2c]
sub edx, ecx
mov dword [esp + 0x20], edx
call fcn.004217d0
mov eax, dword [esp + 0x50]
add eax, 0
mov eax, dword [esp + 0x48]
adc eax, 0
mov ecx, dword [esp + 0x40]
mov edx, dword [esp + 0x4c]
add ecx, edx
mov ecx, dword [esp + 0x44]
adc ecx, eax
mov eax, dword [esp + 0x38]
mov edx, dword [esp + 0x3c]
add eax, edx
adc ecx, 0
mov eax, dword [esp + 0x18]
mov edx, dword [esp + 0x34]
add eax, edx
mov eax, dword [esp + 0x1c]
adc ecx, eax
mov eax, dword [esp + 0x2c]
mov edx, dword [esp + 0x30]
add edx, eax
adc ecx, 0
mov edx, dword [esp + 0x28]
add edx, 0xffffffff
adc ecx, 0xffffffff
xor edx, edx
sub edx, eax
mov eax, 0
sbb eax, 0
and eax, ecx
mov ecx, dword [esp + 4]
cmp ecx, eax
setb dl
sete bl
mov ebp, dword [esp + 0x24]
mov esi, dword [esp + 0x20]
and ebp, esi
mov esi, dword [esp]
cmp esi, ebp
xchg edi, ebx
setbe bl
xchg edi, ebx
and edi, ebx
or edi, edx
xchg edi, eax
test al, al
xchg edi, eax
jne 0x421ae1
sub esi, ebp
sbb ecx, eax
test ecx, ecx
sete cl
cmp dword [0x8dc108], esi
seta dl
and edx, ecx
test dl, dl
je 0x421b02
nop
lea eax, [0x8dc400]
mov dword [esp], eax
mov dword [esp + 8], 0xffffffff
mov dword [esp + 4], 0xffffffff
call fcn.004021e0
jmp 0x421b19
nop
lea ecx, [0x8dc400]
mov dword [esp], ecx
mov dword [esp + 8], eax
mov dword [esp + 4], ebp
call fcn.004021e0
add esp, 0x64
ret
nop
lea eax, [0x8dc400]
mov dword [esp], eax
mov dword [esp + 8], 0xffffffff
mov dword [esp + 4], 0xffffffff
call fcn.004021e0
add esp, 0x64
ret
call fcn.00461560
jmp fcn.00421840