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

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
sub esp, 0x1a8
mov eax, dword [0x10022758]
shr eax, 1
push ebx
mov dword [esp + 8], eax
fild dword [esp + 8]
push esi
mov dword [esp + 0x10], 0xffffffff
jns 0x1000ae2d
fadd dword [0x1001acf8]
mov ecx, dword [0x1002275c]
fstp dword [esp + 0x15c]
shr ecx, 1
mov dword [esp + 0xc], ecx
fild dword [esp + 0xc]
jns 0x1000ae4c
fadd dword [0x1001acf8]
fstp dword [esp + 0x160]
xor ebx, ebx
mov edx, dword [0x10022ce0]
mov ecx, dword [edx + 0x1fc]
mov edx, dword [0x1001ee18]
mov ecx, dword [edx + ecx]
mov al, bl
not al
mov edx, ecx
and al, 1
and edx, 0x80000001
jns 0x1000ae7f
dec edx
or edx, 0xfffffffe
inc edx
sete dl
cmp al, dl
jne 0x1000ae93
cmp dword [0x10022de4], 0
je 0x1000b898
cmp ebx, ecx
je 0x1000b898
push ebx
call fcn.10006b20
add esp, 4
test eax, eax
jle 0x1000b898
mov eax, dword [0x10022ce0]
mov ecx, dword [eax + 0x1fc]
mov edx, dword [0x1001ee18]
mov eax, dword [edx + ecx]
push eax
call fcn.10006b20
add esp, 4
test eax, eax
jle 0x1000b898
mov eax, ebx
call fcn.10008ce0
cmp al, 1
jne 0x1000b898
push ebx
call fcn.100075d0
add esp, 4
cmp al, 1
jne 0x1000b898
push 7
lea eax, [esp + 0x154]
push ebx
push eax
call fcn.10008760
add esp, 0xc
test al, al
jne 0x1000afd0
push 0xb
lea ecx, [esp + 0x10c]
push ebx
push ecx
call fcn.10008760
add esp, 0xc
test al, al
jne 0x1000afd0
push 0xa
lea edx, [esp + 0x13c]
push ebx
push edx
call fcn.10008760
add esp, 0xc
test al, al
jne 0x1000afd0
push 9
lea eax, [esp + 0x124]
push ebx
push eax
call fcn.10008760
add esp, 0xc
test al, al
jne 0x1000afd0
push 8
lea ecx, [esp + 0xf4]
push ebx
push ecx
call fcn.10008760
add esp, 0xc
test al, al
jne 0x1000afd0
push 6
lea edx, [esp + 0x100]
push ebx
push edx
call fcn.10008760
add esp, 0xc
test al, al
jne 0x1000afd0
push 5
lea eax, [esp + 0x118]
push ebx
push eax
call fcn.10008760
add esp, 0xc
test al, al
jne 0x1000afd0
push 4
lea ecx, [esp + 0x130]
push ebx
push ecx
call fcn.10008760
add esp, 0xc
test al, al
jne 0x1000afd0
push 0
lea edx, [esp + 0x148]
push ebx
push edx
call fcn.10008760
add esp, 0xc
test al, al
je 0x1000b898
mov ecx, dword [0x10020210]
mov edx, dword [0x10022ce0]
mov eax, dword [ecx]
mov eax, dword [eax + 4]
add edx, 0x24
push edx
call eax
mov esi, dword [eax]
mov ecx, dword [0x10020210]
mov eax, dword [0x10022ce0]
mov edx, dword [ecx]
mov edx, dword [edx + 4]
add eax, 0x28
push eax
call edx
mov ecx, dword [eax]
mov edx, dword [esp + 0x150]
push edi
lea eax, [esp + 0xe8]
push eax
sub esp, 0xc
mov eax, esp
mov dword [eax], edx
mov edx, dword [esp + 0x168]
mov dword [eax + 4], edx
mov edx, dword [esp + 0x16c]
add ecx, esi
mov dword [eax + 8], edx
call fcn.10006e80
test al, al
jne 0x1000b21c
mov ecx, dword [esp + 0x108]
mov edx, dword [esp + 0x10c]
push edi
lea eax, [esp + 0x28]
push eax
sub esp, 0xc
mov eax, esp
mov dword [eax], ecx
mov ecx, dword [esp + 0x124]
mov dword [eax + 4], edx
mov dword [eax + 8], ecx
call fcn.10007060
mov ecx, eax
call fcn.10006e80
test al, al
jne 0x1000b21c
mov ecx, dword [esp + 0x138]
push edi
lea edx, [esp + 0x34]
push edx
mov edx, dword [esp + 0x144]
sub esp, 0xc
mov eax, esp
mov dword [eax], ecx
mov ecx, dword [esp + 0x154]
mov dword [eax + 4], edx
mov dword [eax + 8], ecx
call fcn.10007060
mov ecx, eax
call fcn.10006e80
test al, al
jne 0x1000b21c
mov ecx, dword [esp + 0x120]
push edi
lea edx, [esp + 0x7c]
push edx
mov edx, dword [esp + 0x12c]
sub esp, 0xc
mov eax, esp
mov dword [eax], ecx
mov ecx, dword [esp + 0x13c]
mov dword [eax + 4], edx
mov dword [eax + 8], ecx
call fcn.10007060
mov ecx, eax
call fcn.10006e80
test al, al
jne 0x1000b21c
mov ecx, dword [esp + 0xf0]
push edi
lea edx, [esp + 0x94]
push edx
mov edx, dword [esp + 0xfc]
sub esp, 0xc
mov eax, esp
mov dword [eax], ecx
mov ecx, dword [esp + 0x10c]
mov dword [eax + 4], edx
mov dword [eax + 8], ecx
call fcn.10007060
mov ecx, eax
call fcn.10006e80
test al, al
jne 0x1000b21c
mov ecx, dword [esp + 0xfc]
push edi
lea edx, [esp + 0xac]
push edx
mov edx, dword [esp + 0x108]
sub esp, 0xc
mov eax, esp
mov dword [eax], ecx
mov ecx, dword [esp + 0x118]
mov dword [eax + 4], edx
mov dword [eax + 8], ecx
call fcn.10007060
mov ecx, eax
call fcn.10006e80
test al, al
jne 0x1000b21c
mov ecx, dword [esp + 0x114]
push edi
lea edx, [esp + 0x40]
push edx
mov edx, dword [esp + 0x120]
sub esp, 0xc
mov eax, esp
mov dword [eax], ecx
mov ecx, dword [esp + 0x130]
mov dword [eax + 4], edx
mov dword [eax + 8], ecx
call fcn.10007060
mov ecx, eax
call fcn.10006e80
test al, al
jne 0x1000b21c
mov ecx, dword [esp + 0x12c]
push edi
lea edx, [esp + 0xdc]
push edx
mov edx, dword [esp + 0x138]
sub esp, 0xc
mov eax, esp
mov dword [eax], ecx
mov ecx, dword [esp + 0x148]
mov dword [eax + 4], edx
mov dword [eax + 8], ecx
call fcn.10007060
mov ecx, eax
call fcn.10006e80
test al, al
jne 0x1000b21c
mov ecx, dword [esp + 0x144]
push edi
lea edx, [esp + 0x58]
push edx
mov edx, dword [esp + 0x150]
sub esp, 0xc
mov eax, esp
mov dword [eax], ecx
mov ecx, dword [esp + 0x160]
mov dword [eax + 4], edx
mov dword [eax + 8], ecx
call fcn.10007060
mov ecx, eax
call fcn.10006e80
test al, al
je 0x1000b898
fld dword [esp + 0xe4]
fld st(0)
fld dword [esp + 0x15c]
fld st(0)
fsubp st(2)
fxch st(1)
fstp dword [esp + 0xc0]
fld dword [esp + 0xe8]
fld st(0)
fld dword [esp + 0x160]
fld st(0)
fsubp st(2)
fxch st(1)
fstp dword [esp + 0xc4]
fld dword [esp + 0xec]
fldz
fsub st(1), st(0)
fxch st(1)
fstp dword [esp + 0xc8]
fld dword [esp + 0x24]
fsub st(4)
fstp dword [esp + 0x9c]
fld dword [esp + 0x28]
fsub st(2)
fstp dword [esp + 0xa0]
fld dword [esp + 0x2c]
fsub st(1)
fstp dword [esp + 0xa4]
fld dword [esp + 0x30]
fsub st(4)
fstp dword [esp + 0x6c]
fld dword [esp + 0x34]
fsub st(2)
fstp dword [esp + 0x70]
fld dword [esp + 0x38]
fsub st(1)
fstp dword [esp + 0x74]
fld dword [esp + 0x78]
fsub st(4)
fstp dword [esp + 0xcc]
fld dword [esp + 0x7c]
fsub st(2)
fstp dword [esp + 0xd0]
fld dword [esp + 0x80]
fsub st(1)
fstp dword [esp + 0xd4]
fld dword [esp + 0x90]
fsub st(4)
fstp dword [esp + 0x84]
fld dword [esp + 0x94]
fsub st(2)
fstp dword [esp + 0x88]
fld dword [esp + 0x98]
fsub st(1)
fstp dword [esp + 0x8c]
fld dword [esp + 0xa8]
fsub st(4)
fstp dword [esp + 0xb4]
fld dword [esp + 0xac]
fsub st(2)
fstp dword [esp + 0xb8]
fld dword [esp + 0xb0]
fsub st(1)
fstp dword [esp + 0xbc]
fld dword [esp + 0x3c]
fsub st(4)
fstp dword [esp + 0x48]
fld dword [esp + 0x40]
fsub st(2)
fstp dword [esp + 0x4c]
fld dword [esp + 0x44]
fsub st(1)
fstp dword [esp + 0x50]
fld dword [esp + 0xd8]
fsub st(4)
fstp dword [esp + 0x18]
fld dword [esp + 0xdc]
fsub st(2)
fstp dword [esp + 0x1c]
fld dword [esp + 0xe0]
fsub st(1)
fstp dword [esp + 0x20]
fld dword [esp + 0x54]
fsubrp st(4)
fxch st(3)
fstp dword [esp + 0x60]
fsubr dword [esp + 0x58]
fstp dword [esp + 0x64]
fld dword [esp + 0x5c]
fsubrp st(2)
fxch st(1)
fstp dword [esp + 0x68]
fld dword [esp + 0xc4]
fld dword [esp + 0xc0]
fld dword [esp + 0xc8]
fld st(1)
fmulp st(2)
fld st(2)
fmulp st(3)
fxch st(1)
faddp st(2)
fmul st(0), st(0)
faddp st(1)
fstp qword [esp + 0x170]
fld dword [esp + 0xa0]
fld dword [esp + 0x9c]
fld dword [esp + 0xa4]
fld st(1)
fmulp st(2)
fld st(2)
fmulp st(3)
fxch st(1)
faddp st(2)
fmul st(0), st(0)
faddp st(1)
fstp qword [esp + 0x188]
fld dword [esp + 0x70]
fld dword [esp + 0x6c]
fld dword [esp + 0x74]
fld st(1)
fmulp st(2)
fld st(2)
fmulp st(3)
fxch st(1)
faddp st(2)
fmul st(0), st(0)
faddp st(1)
fstp qword [esp + 0x168]
fld dword [esp + 0xd0]
fld dword [esp + 0xcc]
fld dword [esp + 0xd4]
fld st(1)
fmulp st(2)
fld st(2)
fmulp st(3)
fxch st(1)
faddp st(2)
fmul st(0), st(0)
faddp st(1)
fstp qword [esp + 0x198]
fld dword [esp + 0x88]
fld dword [esp + 0x84]
fld dword [esp + 0x8c]
fld st(1)
fmulp st(2)
fld st(2)
fmulp st(3)
fxch st(1)
faddp st(2)
fmul st(0), st(0)
faddp st(1)
fstp qword [esp + 0x180]
fld dword [esp + 0xb8]
fld dword [esp + 0xb4]
fld dword [esp + 0xbc]
fld st(1)
fmulp st(2)
fld st(2)
fmulp st(3)
fxch st(1)
faddp st(2)
fmul st(0), st(0)
faddp st(1)
mov edx, dword [0x10022758]
fstp qword [esp + 0x1a0]
fld dword [esp + 0x4c]
fld dword [esp + 0x48]
fld dword [esp + 0x50]
fld st(1)
fmulp st(2)
fld st(2)
fmulp st(3)
fxch st(1)
faddp st(2)
fmul st(0), st(0)
faddp st(1)
fstp qword [esp + 0x178]
fld dword [esp + 0x1c]
fld dword [esp + 0x18]
fld dword [esp + 0x20]
fld st(1)
fmulp st(2)
fld st(2)
fmulp st(3)
fxch st(1)
faddp st(2)
fmul st(0), st(0)
faddp st(1)
fstp qword [esp + 0x1a8]
fld dword [esp + 0x64]
fld dword [esp + 0x60]
fld dword [esp + 0x68]
fld st(1)
fmulp st(2)
fld st(2)
fmulp st(3)
fxch st(1)
faddp st(2)
fmul st(0), st(0)
faddp st(1)
fstp qword [esp + 0x190]
fild dword [0x10022758]
test edx, edx
jns 0x1000b51c
fadd dword [0x1001acf8]
fld qword [0x1001acc0]
mov eax, dword [0x1002275c]
fmul st(1), st(0)
fxch st(1)
fstp dword [esp + 8]
fld dword [esp + 8]
fst dword [esp + 0x14]
fild dword [0x1002275c]
test eax, eax
jns 0x1000b547
fadd dword [0x1001acf8]
fmulp st(2)
or ecx, 0xffffffff
fxch st(1)
fstp dword [esp + 8]
fld dword [esp + 8]
fst dword [esp + 0xc]
fild dword [0x10022ef4]
fstp dword [esp + 8]
fld dword [esp + 8]
fst dword [esp + 8]
fld dword [esp + 0x14]
fsubp st(5)
fld dword [esp + 0xc]
fsubp st(4)
fld dword [esp + 8]
fld st(4)
fmulp st(5)
fld st(5)
fmulp st(6)
fxch st(4)
faddp st(5)
fld st(3)
fmulp st(4)
fxch st(4)
fcomp st(3)
fnstsw ax
fstp st(2)
test ah, 0x41
jp 0x1000b5b9
cmp dword [esp + 0x10], ecx
jne 0x1000b5b9
fld qword [0x1001ad78]
fcom qword [esp + 0x170]
fnstsw ax
test ah, 0x41
jne 0x1000b5bf
mov dword [esp + 0x10], ebx
jmp 0x1000b5bf
fld qword [0x1001ad78]
fxch st(1)
fst dword [esp + 0xc]
fxch st(2)
fst dword [esp + 0x14]
fxch st(3)
fst dword [esp + 8]
fld dword [esp + 0x24]
fsub dword [esp + 0xc]
fld dword [esp + 0x28]
fsub dword [esp + 0x14]
fld dword [esp + 8]
fld st(1)
fmulp st(2)
fld st(2)
fmulp st(3)
fxch st(1)
faddp st(2)
fmul st(0), st(0)
fcompp
fnstsw ax
test ah, 1
jne 0x1000b618
cmp dword [esp + 0x10], ecx
jne 0x1000b618
fxch st(1)
fcom qword [esp + 0x188]
fnstsw ax
test ah, 0x41
jne 0x1000b616
mov dword [esp + 0x10], ebx
fxch st(1)
fxch st(2)
fst dword [esp + 0xc]
fxch st(3)
fst dword [esp + 0x14]
fxch st(2)
fst dword [esp + 8]
fld dword [esp + 0x30]
fsub dword [esp + 0xc]
fld dword [esp + 0x34]
fsub dword [esp + 0x14]
fld dword [esp + 8]
fld st(1)
fmulp st(2)
fld st(2)
fmulp st(3)
fxch st(1)
faddp st(2)
fmul st(0), st(0)
fcompp
fnstsw ax
test ah, 1
jne 0x1000b671
cmp dword [esp + 0x10], ecx
jne 0x1000b671
fxch st(1)
fcom qword [esp + 0x168]
fnstsw ax
test ah, 0x41
jne 0x1000b66f
mov dword [esp + 0x10], ebx
fxch st(1)
fxch st(3)
fst dword [esp + 0xc]
fxch st(2)
fst dword [esp + 0x14]
fxch st(3)
fst dword [esp + 8]
fld dword [esp + 0x78]
fsub dword [esp + 0xc]
fld dword [esp + 0x7c]
fsub dword [esp + 0x14]
fld dword [esp + 8]
fld st(1)
fmulp st(2)
fld st(2)
fmulp st(3)
fxch st(1)
faddp st(2)
fmul st(0), st(0)
fcompp
fnstsw ax
test ah, 1
jne 0x1000b6ca
cmp dword [esp + 0x10], ecx
jne 0x1000b6ca
fxch st(1)
fcom qword [esp + 0x198]
fnstsw ax
test ah, 0x41
jne 0x1000b6c8
mov dword [esp + 0x10], ebx
fxch st(1)
fxch st(2)
fst dword [esp + 0xc]
fxch st(3)
fst dword [esp + 0x14]
fxch st(2)
fst dword [esp + 8]
fld dword [esp + 0x90]
fsub dword [esp + 0xc]
fld dword [esp + 0x94]
fsub dword [esp + 0x14]
fld dword [esp + 8]
fld st(1)
fmulp st(2)
fld st(2)
fmulp st(3)
fxch st(1)
faddp st(2)
fmul st(0), st(0)
fcompp
fnstsw ax
test ah, 1
jne 0x1000b729
cmp dword [esp + 0x10], ecx
jne 0x1000b729
fxch st(1)
fcom qword [esp + 0x180]
fnstsw ax
test ah, 0x41
jne 0x1000b727
mov dword [esp + 0x10], ebx
fxch st(1)
fxch st(3)
fst dword [esp + 0xc]
fxch st(2)
fst dword [esp + 0x14]
fxch st(3)
fst dword [esp + 8]
fld dword [esp + 0xa8]
fsub dword [esp + 0xc]
fld dword [esp + 0xac]
fsub dword [esp + 0x14]
fld dword [esp + 8]
fld st(1)
fmulp st(2)
fld st(2)
fmulp st(3)
fxch st(1)
faddp st(2)
fmul st(0), st(0)
fcompp
fnstsw ax
test ah, 1
jne 0x1000b788
cmp dword [esp + 0x10], ecx
jne 0x1000b788
fxch st(1)
fcom qword [esp + 0x1a0]
fnstsw ax
test ah, 0x41
jne 0x1000b786
mov dword [esp + 0x10], ebx
fxch st(1)
fxch st(2)
fst dword [esp + 0xc]
fxch st(3)
fst dword [esp + 0x14]
fxch st(2)
fst dword [esp + 8]
fld dword [esp + 0x3c]
fsub dword [esp + 0xc]
fld dword [esp + 0x40]
fsub dword [esp + 0x14]
fld dword [esp + 8]
fld st(1)
fmulp st(2)
fld st(2)
fmulp st(3)
fxch st(1)
faddp st(2)
fmul st(0), st(0)
fcompp
fnstsw ax
test ah, 1
jne 0x1000b7e1
cmp dword [esp + 0x10], ecx
jne 0x1000b7e1
fxch st(1)
fcom qword [esp + 0x178]
fnstsw ax
test ah, 0x41
jne 0x1000b7df
mov dword [esp + 0x10], ebx
fxch st(1)
fxch st(3)
fst dword [esp + 0xc]
fxch st(2)
fst dword [esp + 0x14]
fxch st(3)
fst dword [esp + 8]
fld dword [esp + 0xd8]
fsub dword [esp + 0xc]
fld dword [esp + 0xdc]
fsub dword [esp + 0x14]
fld dword [esp + 8]
fld st(1)
fmulp st(2)
fld st(2)
fmulp st(3)
fxch st(1)
faddp st(2)
fmul st(0), st(0)
fcompp
fnstsw ax
test ah, 1
jne 0x1000b840
cmp dword [esp + 0x10], ecx
jne 0x1000b840
fxch st(1)
fcom qword [esp + 0x1a8]
fnstsw ax
test ah, 0x41
jne 0x1000b83e
mov dword [esp + 0x10], ebx
fxch st(1)
fxch st(2)
fstp dword [esp + 0xc]
fxch st(2)
fstp dword [esp + 0x14]
fstp dword [esp + 8]
fld dword [esp + 0x54]
fsub dword [esp + 0xc]
fld dword [esp + 0x58]
fsub dword [esp + 0x14]
fld dword [esp + 8]
fld st(1)
fmulp st(2)
fld st(2)
fmulp st(3)
fxch st(1)
faddp st(2)
fmul st(0), st(0)
fcompp
fnstsw ax
test ah, 1
jne 0x1000b896
cmp dword [esp + 0x10], 0xffffffff
jne 0x1000b896
fcomp qword [esp + 0x190]
fnstsw ax
test ah, 0x41
jne 0x1000b898
mov dword [esp + 0x10], ebx
jmp 0x1000b898
fstp st(0)
inc ebx
cmp ebx, 0x10
jle 0x1000ae55
mov eax, dword [esp + 0x10]
pop esi
pop ebx
mov esp, ebp
pop ebp
ret