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

Disassembly:
sub esp, 0xb4
mov edx, dword [esp + 0xc0]
push ebx
mov eax, 0x1e
mov ecx, 0x32
push ebp
mov dword [esp + 0x20], eax
mov dword [esp + 0x24], eax
mov eax, 0x50
mov ebp, 0x3c
mov ebx, 0x78
mov dword [esp + 0x4c], eax
mov dword [esp + 0x50], eax
mov dword [esp + 0xa4], eax
xor eax, eax
mov dword [esp + 0x2c], ebp
mov dword [esp + 0x94], ebp
mov ebp, dword [esp + 0xc0]
push esi
mov esi, 1
mov dword [esp + 0x64], ebx
mov dword [esp + 0x90], ebx
mov ebx, eax
mov dword [esp + 0x20], ecx
mov dword [esp + 0x2c], esi
mov dword [esp + 0x34], 0x24
mov dword [esp + 0x38], ecx
mov dword [esp + 0x3c], esi
mov dword [esp + 0x40], 0x46
mov dword [esp + 0x44], ecx
mov dword [esp + 0x48], ecx
mov dword [esp + 0x4c], esi
mov dword [esp + 0x58], ecx
mov dword [esp + 0x5c], esi
mov dword [esp + 0x60], 0x5a
mov dword [esp + 0x68], ecx
mov dword [esp + 0x6c], esi
mov dword [esp + 0x70], 0x64
mov dword [esp + 0x74], 0xaf
mov dword [esp + 0x78], ecx
mov dword [esp + 0x7c], esi
mov dword [esp + 0x80], 0x6e
mov dword [esp + 0x84], 0x113
mov dword [esp + 0x88], ecx
mov dword [esp + 0x8c], esi
mov dword [esp + 0x94], 0x177
mov dword [esp + 0x9c], esi
mov dword [esp + 0xa0], 0x82
mov dword [esp + 0xa4], 0x226
mov dword [esp + 0xac], esi
mov dword [esp + 0xb0], ebx
mov dword [esp + 0xb4], eax
mov dword [esp + 0xb8], eax
mov dword [esp + 0xbc], eax
mov dword [edi], eax
cmp ebp, ecx
jg 0x421f5a
fild dword [esp + 0xc4]
fnstcw word [esp + 0xc]
fidiv dword [esp + 0x20]
movzx eax, word [esp + 0xc]
or eax, 0xc00
mov dword [esp + 0x1c], eax
fimul dword [esp + 0x24]
fldcw word [esp + 0x1c]
fistp qword [esp + 0x10]
mov eax, dword [esp + 0x10]
mov dword [edi], eax
mov eax, dword [esp + 0xc8]
fldcw word [esp + 0xc]
mov dword [eax], ecx
mov dword [edx], esi
jmp 0x422065
fld qword [0x5b43f0]
lea ecx, [esp + 0x30]
mov dword [esp + 0x1c], 9
cmp ebp, dword [ecx - 0x10]
jle 0x422056
mov eax, dword [ecx]
cmp ebp, eax
jg 0x422056
mov ebp, eax
sub eax, dword [ecx - 0x10]
sub ebp, dword [esp + 0xc4]
mov edx, dword [ecx + 4]
mov dword [esp + 0xc], ebp
fild dword [esp + 0xc]
mov dword [esp + 0xc], eax
fild dword [esp + 0xc]
mov eax, edx
sub eax, dword [ecx - 0xc]
mov ebp, dword [esp + 0xc4]
fdivp st(1)
mov dword [esp + 0xc], eax
fild dword [esp + 0xc]
fnstcw word [esp + 0xc]
fmulp st(1)
movzx eax, word [esp + 0xc]
or eax, 0xc00
mov dword [esp + 0x10], eax
fldcw word [esp + 0x10]
fistp qword [esp + 0x10]
mov eax, dword [esp + 0x10]
sub edx, eax
mov dword [edi], edx
fldcw word [esp + 0xc]
mov edx, dword [ecx - 8]
add edx, dword [ecx + 8]
mov dword [esp + 0x10], edx
mov edx, dword [esp + 0xc8]
fild dword [esp + 0x10]
fnstcw word [esp + 0xc]
fmul st(1)
movzx eax, word [esp + 0xc]
or eax, 0xc00
mov dword [esp + 0x10], eax
fadd st(1)
fldcw word [esp + 0x10]
fistp qword [esp + 0x10]
mov eax, dword [esp + 0x10]
mov dword [edx], eax
mov eax, dword [ecx + 0xc]
fldcw word [esp + 0xc]
add eax, dword [ecx - 4]
mov edx, dword [esp + 0xcc]
mov dword [esp + 0x10], eax
fild dword [esp + 0x10]
fnstcw word [esp + 0xc]
fmul st(1)
movzx eax, word [esp + 0xc]
or eax, 0xc00
mov dword [esp + 0x10], eax
fadd st(1)
fldcw word [esp + 0x10]
fistp qword [esp + 0x10]
mov eax, dword [esp + 0x10]
mov dword [edx], eax
fldcw word [esp + 0xc]
add ecx, 0x10
sub dword [esp + 0x1c], esi
jne 0x421f6c
fstp st(0)
mov eax, dword [esp + 0xb4]
cmp dword [edi], ebx
jne 0x422124
sub eax, dword [esp + 0xa4]
fnstcw word [esp + 0xc]
sub ebx, dword [esp + 0xa0]
mov dword [esp + 0x10], ebx
fild dword [esp + 0x10]
mov dword [esp + 0x10], eax
fild dword [esp + 0xc4]
movzx eax, word [esp + 0xc]
or eax, 0xc00
fisub dword [esp + 0xb0]
fild dword [esp + 0x10]
mov dword [esp + 0x10], eax
mov eax, dword [esp + 0xb8]
fdiv st(2)
fmul st(1)
fiadd dword [esp + 0xb4]
fldcw word [esp + 0x10]
fistp qword [esp + 0x10]
mov ecx, dword [esp + 0x10]
mov dword [edi], ecx
mov ecx, dword [esp + 0xc8]
fldcw word [esp + 0xc]
mov dword [ecx], eax
mov eax, dword [esp + 0xbc]
sub eax, dword [esp + 0xac]
mov dword [esp + 0x10], eax
fild dword [esp + 0x10]
fnstcw word [esp + 0xc]
fdivrp st(2)
movzx eax, word [esp + 0xc]
or eax, 0xc00
mov dword [esp + 0x10], eax
fmulp st(1)
fiadd dword [esp + 0xbc]
fldcw word [esp + 0x10]
fistp qword [esp + 0x10]
mov eax, dword [esp + 0x10]
mov dword [edx], eax
fldcw word [esp + 0xc]
cmp dword [edi], 0x19
jae 0x42212f
mov dword [edi], 0x19
pop esi
pop ebp
pop ebx
add esp, 0xb4
ret