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

Disassembly:
sub esp, 0x24
mov ecx, dword [esp + 0x2c]
mov edx, dword [esp + 0x28]
push ebx
push ebp
mov ebp, dword [esp + 0x40]
push esi
mov esi, dword [esp + 0x40]
push edi
mov edi, ecx
mov ebx, esi
sub ebx, dword [esp + 0x40]
sub edi, edx
test ebp, ebp
mov dword [esp + 0x10], 1
jne 0x1003476b
mov eax, dword [esp + 0x54]
pop edi
mov dword [eax + 0xc], esi
pop esi
mov dword [eax + 0x10], ebp
mov dword [eax + 4], ecx
mov ecx, dword [esp + 0x38]
pop ebp
mov dword [eax], edx
mov dword [eax + 8], ecx
pop ebx
add esp, 0x24
ret
mov ecx, ebp
fldz
mov esi, 1
shl esi, cl
lea eax, [esi + edx - 1]
cdq
idiv esi
mov edx, dword [esp + 0x40]
mov dword [esp + 0x20], esi
mov ecx, eax
lea eax, [esi + edx - 1]
cdq
idiv esi
cmp ebp, 1
mov dword [esp + 0x18], ecx
mov dword [esp + 0x1c], eax
jl 0x10034b33
and eax, 1
mov dword [esp + 0x28], eax
and ecx, 1
mov eax, ebp
shl eax, 4
mov dword [esp + 0x24], ecx
mov ecx, dword [esp + 0x54]
sub eax, ebp
lea esi, [ecx + eax*8 - 0x4c]
mov eax, dword [esp + 0x10]
lea ebp, [edi + 1]
lea ecx, [ebx + 1]
sar ecx, 1
sar ebp, 1
cmp dword [esp + 0x24], 0
mov dword [esp + 0x14], ecx
je 0x100347e3
mov edx, edi
sub edx, dword [esp + 0x18]
test dl, 1
je 0x100347e3
sub ebp, 1
cmp dword [esp + 0x28], 0
je 0x100347fa
sub ebx, dword [esp + 0x1c]
test bl, 1
je 0x100347fa
sub ecx, 1
mov dword [esp + 0x14], ecx
lea ecx, [eax - 1]
or ebx, 0xffffffff
shl ebx, cl
mov ecx, eax
mov eax, dword [esp + 0x38]
mov edi, 1
shl edi, cl
lea ecx, [ebx + eax]
mov dword [esp + 0x2c], edi
fild dword [esp + 0x2c]
mov dword [esp + 0x2c], ecx
fstp dword [esp + 0x30]
fild dword [esp + 0x2c]
fld dword [esp + 0x30]
fld st(0)
fdivp st(2)
fxch st(1)
fstp dword [esp + 0x30]
fld dword [esp + 0x30]
fst dword [esp + 0x30]
fld dword [esp + 0x30]
fcom st(3)
fnstsw ax
test ah, 1
jne 0x10034878
fld st(0)
call fcn.10060570
fld st(0)
mov ecx, eax
mov dword [esp + 0x30], ecx
fild dword [esp + 0x30]
fucompp
fnstsw ax
test ah, 0x44
jp 0x1003486b
fstp st(0)
mov eax, ecx
jmp 0x1003487d
fadd qword [0x10088720]
call fcn.10060570
jmp 0x1003487d
call fcn.10060570
mov edx, dword [esp + 0x3c]
mov dword [esi - 4], eax
lea eax, [ebx + edx]
mov dword [esp + 0x30], eax
fild dword [esp + 0x30]
fdiv st(2)
fstp dword [esp + 0x30]
fld dword [esp + 0x30]
fst dword [esp + 0x30]
fld dword [esp + 0x30]
fcom st(4)
fnstsw ax
test ah, 1
jne 0x100348d9
fld st(0)
call fcn.10060570
fld st(0)
mov ecx, eax
mov dword [esp + 0x30], ecx
fild dword [esp + 0x30]
fucompp
fnstsw ax
test ah, 0x44
jp 0x100348cc
fstp st(0)
mov eax, ecx
jmp 0x100348de
fadd qword [0x10088720]
call fcn.10060570
jmp 0x100348de
call fcn.10060570
mov ecx, dword [esp + 0x40]
mov dword [esi], eax
lea eax, [edi + ecx - 1]
cdq
idiv edi
mov edx, dword [esp + 0x44]
mov dword [esi + 4], eax
lea eax, [edi + edx - 1]
cdq
idiv edi
mov dword [esi + 8], eax
mov eax, dword [esp + 0x38]
lea eax, [edi + eax - 1]
cdq
idiv edi
mov edx, dword [esp + 0x3c]
mov dword [esi + 0x24], eax
lea eax, [edi + edx - 1]
cdq
idiv edi
mov dword [esi + 0x28], eax
lea eax, [ebx + ecx]
mov dword [esp + 0x30], eax
fild dword [esp + 0x30]
fdiv st(3)
fstp dword [esp + 0x30]
fld dword [esp + 0x30]
fst dword [esp + 0x30]
fld dword [esp + 0x30]
fcom st(5)
fnstsw ax
test ah, 1
jne 0x1003496d
fld st(0)
call fcn.10060570
fld st(0)
mov ecx, eax
mov dword [esp + 0x30], ecx
fild dword [esp + 0x30]
fucompp
fnstsw ax
test ah, 0x44
jp 0x10034960
fstp st(0)
mov eax, ecx
jmp 0x10034972
fadd qword [0x10088720]
call fcn.10060570
jmp 0x10034972
call fcn.10060570
mov ecx, dword [esp + 0x44]
add ebx, ecx
mov dword [esp + 0x30], ebx
fild dword [esp + 0x30]
mov dword [esi + 0x2c], eax
fdivrp st(4)
fxch st(3)
fstp dword [esp + 0x30]
fld dword [esp + 0x30]
fst dword [esp + 0x30]
fld dword [esp + 0x30]
fcom st(5)
fnstsw ax
test ah, 1
jne 0x100349cf
fld st(0)
call fcn.10060570
fld st(0)
mov ecx, eax
mov dword [esp + 0x30], ecx
fild dword [esp + 0x30]
fucompp
fnstsw ax
test ah, 0x44
jp 0x100349c2
fstp st(0)
mov eax, ecx
jmp 0x100349d4
fadd qword [0x10088720]
call fcn.10060570
jmp 0x100349d4
call fcn.10060570
fxch st(2)
mov dword [esi + 0x30], eax
fstp dword [esp + 0x30]
fld dword [esp + 0x30]
fcom st(4)
fnstsw ax
test ah, 1
jne 0x10034a19
fld st(0)
call fcn.10060570
fld st(0)
mov ecx, eax
mov dword [esp + 0x30], ecx
fild dword [esp + 0x30]
fucompp
fnstsw ax
test ah, 0x44
jp 0x10034a0c
fstp st(0)
mov eax, ecx
jmp 0x10034a1e
fld1
fadd st(1), st(0)
fxch st(1)
call fcn.10060570
jmp 0x10034a20
call fcn.10060570
fld1
fxch st(1)
mov dword [esi + 0x4c], eax
fstp dword [esp + 0x30]
fld dword [esp + 0x30]
fcom st(4)
fnstsw ax
test ah, 1
jne 0x10034a61
fld st(0)
call fcn.10060570
fld st(0)
mov ecx, eax
mov dword [esp + 0x30], ecx
fild dword [esp + 0x30]
fucompp
fnstsw ax
test ah, 0x44
jp 0x10034a58
fstp st(0)
mov eax, ecx
jmp 0x10034a66
fadd st(1)
call fcn.10060570
jmp 0x10034a66
call fcn.10060570
fxch st(2)
mov dword [esi + 0x50], eax
fstp dword [esp + 0x30]
fld dword [esp + 0x30]
fcom st(3)
fnstsw ax
test ah, 1
jne 0x10034aa7
fld st(0)
call fcn.10060570
fld st(0)
mov ecx, eax
mov dword [esp + 0x30], ecx
fild dword [esp + 0x30]
fucompp
fnstsw ax
test ah, 0x44
jp 0x10034a9e
fstp st(0)
mov eax, ecx
jmp 0x10034aac
fadd st(2)
call fcn.10060570
jmp 0x10034aac
call fcn.10060570
fstp dword [esp + 0x30]
mov dword [esi + 0x54], eax
fld dword [esp + 0x30]
fcom st(2)
fnstsw ax
test ah, 1
jne 0x10034aed
fld st(0)
call fcn.10060570
fld st(0)
mov ecx, eax
mov dword [esp + 0x30], ecx
fild dword [esp + 0x30]
fucompp
fnstsw ax
test ah, 0x44
jp 0x10034ae4
fstp st(0)
mov eax, ecx
fstp st(0)
jmp 0x10034af4
faddp st(1)
call fcn.10060570
jmp 0x10034af4
fstp st(1)
call fcn.10060570
mov ebx, dword [esp + 0x14]
mov dword [esi + 0x58], eax
mov eax, ebx
imul eax, dword [esp + 0x4c]
mov dword [esi + 0x34], eax
add eax, ebp
mov dword [esi + 0x5c], eax
mov eax, dword [esp + 0x10]
add eax, 1
mov dword [esi + 0xc], ebp
sub esi, 0x78
cmp eax, dword [esp + 0x48]
mov edi, ebp
mov dword [esp + 0x10], eax
jle 0x100347c0
mov ebp, dword [esp + 0x48]
mov esi, dword [esp + 0x20]
mov ecx, dword [esp + 0x18]
mov edx, dword [esp + 0x3c]
fild dword [esp + 0x38]
lea eax, [esi + edx - 1]
cdq
idiv esi
fstp dword [esp + 0x48]
fild dword [esp + 0x20]
fstp dword [esp + 0x38]
fld dword [esp + 0x48]
fld dword [esp + 0x38]
fld st(0)
fdivp st(2)
mov ebx, dword [esp + 0x54]
mov dword [ebx], ecx
mov ecx, dword [esp + 0x44]
mov dword [ebx + 0x10], 0
fxch st(1)
fstp dword [esp + 0x38]
mov dword [ebx + 4], eax
fld dword [esp + 0x38]
mov eax, dword [esp + 0x1c]
fcom st(2)
mov dword [ebx + 8], eax
lea eax, [esi + ecx - 1]
cdq
idiv esi
mov dword [ebx + 0xc], eax
fnstsw ax
test ah, 1
jne 0x10034bc7
fld st(0)
call fcn.10060570
fld st(0)
mov ecx, eax
mov dword [esp + 0x38], ecx
fild dword [esp + 0x38]
fucompp
fnstsw ax
test ah, 0x44
jp 0x10034bb6
fstp st(0)
mov dword [esp + 0x38], ecx
jmp 0x10034bd0
fld1
fadd st(1), st(0)
fxch st(1)
call fcn.10060570
mov dword [esp + 0x38], eax
jmp 0x10034bd2
call fcn.10060570
mov dword [esp + 0x38], eax
fld1
fild dword [esp + 0x40]
fstp dword [esp + 0x20]
fld dword [esp + 0x20]
fdiv st(2)
fstp dword [esp + 0x40]
fld dword [esp + 0x40]
fcom st(3)
fnstsw ax
test ah, 1
jne 0x10034c1e
fld st(0)
call fcn.10060570
fld st(0)
mov ecx, eax
mov dword [esp + 0x40], ecx
fild dword [esp + 0x40]
fucompp
fnstsw ax
test ah, 0x44
jp 0x10034c15
fstp st(0)
mov dword [esp + 0x40], ecx
jmp 0x10034c27
fadd st(1)
call fcn.10060570
jmp 0x10034c23
call fcn.10060570
mov dword [esp + 0x40], eax
fild dword [esp + 0x3c]
fstp dword [esp + 0x3c]
fld dword [esp + 0x3c]
fld st(0)
fdiv st(3)
fstp dword [esp + 0x3c]
fld dword [esp + 0x3c]
fcom st(4)
fnstsw ax
test ah, 1
jne 0x10034c71
fld st(0)
call fcn.10060570
fld st(0)
mov edi, eax
mov dword [esp + 0x3c], edi
fild dword [esp + 0x3c]
fucompp
fnstsw ax
test ah, 0x44
jp 0x10034c68
fstp st(0)
jmp 0x10034c78
fadd st(2)
call fcn.10060570
jmp 0x10034c76
call fcn.10060570
mov edi, eax
fild dword [esp + 0x44]
fstp dword [esp + 0x3c]
fld dword [esp + 0x3c]
fld st(0)
fdivrp st(4)
fxch st(3)
fstp dword [esp + 0x3c]
fld dword [esp + 0x3c]
fcom st(4)
fnstsw ax
test ah, 1
jne 0x10034cc6
fld st(0)
call fcn.10060570
fld st(0)
mov ecx, eax
mov dword [esp + 0x3c], ecx
fild dword [esp + 0x3c]
fucompp
fnstsw ax
test ah, 0x44
jp 0x10034cbd
fstp st(0)
mov eax, ecx
jmp 0x10034ccb
fadd st(2)
call fcn.10060570
jmp 0x10034ccb
call fcn.10060570
cmp ebp, 1
jl 0x10034e4d
lea edx, [ebp - 1]
mov dword [esp + 0x3c], edx
lea esi, [ebx + 0x60]
sub eax, dword [esp + 0x40]
mov ecx, dword [esp + 0x38]
imul eax, dword [esp + 0x4c]
mov dword [esi], eax
sub eax, ecx
add eax, edi
mov dword [esi + 0x28], eax
mov edx, edi
sub edx, ecx
mov ecx, dword [esp + 0x3c]
mov eax, 1
shl eax, cl
mov dword [esi - 0x28], edx
add esi, 0x78
mov dword [esp + 0x40], eax
fild dword [esp + 0x40]
fstp dword [esp + 0x40]
fld dword [esp + 0x48]
fld dword [esp + 0x40]
fld st(0)
fdivp st(2)
fxch st(1)
fstp dword [esp + 0x40]
fld dword [esp + 0x40]
fcom st(5)
fnstsw ax
test ah, 1
jne 0x10034d61
fld st(0)
call fcn.10060570
fld st(0)
mov ecx, eax
mov dword [esp + 0x40], ecx
fild dword [esp + 0x40]
fucompp
fnstsw ax
test ah, 0x44
jp 0x10034d58
fstp st(0)
mov dword [esp + 0x38], ecx
jmp 0x10034d6a
fadd st(3)
call fcn.10060570
jmp 0x10034d66
call fcn.10060570
mov dword [esp + 0x38], eax
fld dword [esp + 0x20]
fdiv st(1)
fstp dword [esp + 0x40]
fld dword [esp + 0x40]
fcom st(5)
fnstsw ax
test ah, 1
jne 0x10034dae
fld st(0)
call fcn.10060570
fld st(0)
mov ecx, eax
mov dword [esp + 0x40], ecx
fild dword [esp + 0x40]
fucompp
fnstsw ax
test ah, 0x44
jp 0x10034da5
fstp st(0)
mov dword [esp + 0x40], ecx
jmp 0x10034db7
fadd st(3)
call fcn.10060570
jmp 0x10034db3
call fcn.10060570
mov dword [esp + 0x40], eax
fld st(1)
fdiv st(1)
fstp dword [esp + 0x44]
fld dword [esp + 0x44]
fcom st(5)
fnstsw ax
test ah, 1
jne 0x10034df5
fld st(0)
call fcn.10060570
fld st(0)
mov edi, eax
mov dword [esp + 0x44], edi
fild dword [esp + 0x44]
fucompp
fnstsw ax
test ah, 0x44
jp 0x10034dec
fstp st(0)
jmp 0x10034dfc
fadd st(3)
call fcn.10060570
jmp 0x10034dfa
call fcn.10060570
mov edi, eax
fdivr st(3)
fstp dword [esp + 0x44]
fld dword [esp + 0x44]
fcom st(4)
fnstsw ax
test ah, 1
jne 0x10034e3a
fld st(0)
call fcn.10060570
fld st(0)
mov ecx, eax
mov dword [esp + 0x44], ecx
fild dword [esp + 0x44]
fucompp
fnstsw ax
test ah, 0x44
jp 0x10034e31
fstp st(0)
mov eax, ecx
jmp 0x10034e3f
fadd st(2)
call fcn.10060570
jmp 0x10034e3f
call fcn.10060570
sub dword [esp + 0x3c], 1
sub ebp, 1
jne 0x10034cde
fstp st(3)
pop edi
fstp st(0)
pop esi
fstp st(0)
pop ebp
fstp st(0)
pop ebx
add esp, 0x24
ret