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

Disassembly:
push ebp
mov ebp, esp
and esp, 0xffffffc0
push edi
push esi
push ebx
sub esp, 0x374
mov eax, dword [ebp + 8]
fild dword [eax + 0x10]
mov ebx, dword [eax + 0x118]
mov eax, dword [eax + 0x78]
fstp dword [esp + 0x360]
cmp eax, 1
je 0x426abc
cmp eax, 2
jne 0x426a67
fldz
fld dword [0x4664d4]
fld dword [0x4664d8]
fxch st(2)
fst dword [esp + 0x348]
fld st(0)
xor esi, esi
jmp 0x426af1
fldz
fstp dword [esp + 0x348]
mov esi, 1
cmp eax, 3
jne 0x426a9a
fld dword [0x4664e8]
fld dword [0x4664ec]
fld dword [0x4664f0]
fld dword [0x4664f4]
fxch st(3)
fxch st(2)
fxch st(1)
jmp 0x426af1
fld dword [0x4664d4]
fld dword [esp + 0x348]
fld dword [esp + 0x348]
fld dword [0x4664d8]
fxch st(3)
fxch st(2)
fxch st(1)
jmp 0x426af1
mov eax, dword [ebp + 8]
mov eax, dword [eax + 0x84]
cmp eax, 1
je 0x426acf
cmp eax, 4
jne 0x426ad3
xor esi, esi
jmp 0x426ad8
mov esi, 1
fldz
fld dword [0x4664d4]
fld dword [0x4664d8]
fxch st(2)
fst dword [esp + 0x348]
fld st(0)
fld1
fstp dword [esp + 0x330]
fld dword [esp + 0x330]
mov dword [ebx + 0x1560c], 0x3e800000
xor eax, eax
mov dword [ebx + 0x15614], eax
mov dword [ebx + 0x15610], eax
lea edi, [ebx + 0x156b8]
mov dword [esp + 0x30], ebx
lea edx, [ebx + 0x15628]
lea eax, [ebx + 0x156c8]
xor ecx, ecx
mov dword [esp + 0x34], eax
mov eax, ebx
mov dword [esp + 0x334], esi
mov dword [esp + 0x364], ebx
lea esi, [eax + 0x1336c]
lea ebx, [eax + 0x1346c]
mov dword [esp + 0x3c], edi
mov edi, 0x60ad78ec
fst dword [esi + 0xc00]
fst dword [esi + 0x800]
mov dword [esi], edi
mov dword [esi + 0x400], edi
add esi, 4
cmp ebx, esi
ja 0x426b5a
mov edi, dword [esp + 0x3c]
mov ebx, dword [esp + 0x364]
mov dword [esp + 0x3c], edi
lea esi, [ebx + ecx]
mov dword [esp + 0x40], esi
lea esi, [ebx + ecx + 0x14378]
mov dword [esp + 0x44], esi
mov edi, esi
lea ebx, [ebx + ecx + 0x143d0]
mov esi, 0x60ad78ec
mov dword [edi + 0x3d0], esi
mov dword [edi], esi
add edi, 4
cmp ebx, edi
ja 0x426ba4
mov edi, dword [esp + 0x3c]
mov esi, dword [esp + 0x40]
mov dword [esp + 0x30], edx
mov dword [esp + 0x38], ecx
mov dword [esp + 0x3c], edi
mov edi, 0x60ad78ec
mov ebx, 0xfffffffd
lea ecx, [esi + 0x143d0]
lea edx, [esi + 0x1446c]
mov dword [ecx + 0x3d0], edi
mov dword [ecx], edi
add ecx, 0xc
cmp edx, ecx
ja 0x426bdd
add esi, 4
add ebx, 1
jne 0x426bd1
mov edx, dword [esp + 0x30]
mov ecx, dword [esp + 0x38]
mov edi, dword [esp + 0x3c]
mov esi, dword [esp + 0x34]
add eax, 0x100
add ecx, 0xf4
mov dword [edi], 0
mov ebx, 0x41200000
mov dword [edx], ebx
mov dword [edx + 4], ebx
mov dword [edx + 8], ebx
mov dword [edx + 0xc], ebx
mov dword [edx + 0x10], ebx
mov dword [edx + 0x14], ebx
mov dword [edx + 0x18], ebx
mov dword [edx + 0x1c], ebx
mov dword [edx + 0x20], ebx
add edx, 0x24
add edi, 4
cmp esi, edi
ja 0x426b45
fld dword [esp + 0x348]
mov esi, dword [esp + 0x334]
mov ebx, dword [esp + 0x364]
fst dword [ebx + 0x14b3c]
fstp dword [ebx + 0x14b38]
fxch st(2)
fstp dword [esp + 0x36c]
fstp dword [esp + 0x358]
fxch st(2)
fstp dword [esp + 0x340]
fstp dword [esp + 0x368]
lea eax, [ebx + 0x151ec]
mov dword [esp + 0x20], 0x400
lea edx, [ebx + 0x14c24]
fstp st(0)
fld dword [esp + 0x360]
mov dword [esp + 0x28], 0x3f638e39
mov dword [esp + 0x2c], 0x16
lea ecx, [ebx + 0x14bcc]
lea edi, [esp + 0x130]
mov dword [esp + 0xc], edi
lea edi, [esp + 0x30]
mov dword [esp + 0x10], edi
lea edi, [ebx + 0x14b40]
mov dword [esp + 0x14], edi
mov edi, dword [ebx + 0x157d0]
add edi, 8
mov dword [esp + 0x18], edi
lea edi, [ebx + 0x130a0]
mov dword [esp + 0x24], edi
call fcn.004277bc
fld dword [esp + 0x368]
fld dword [esp + 0x340]
mov ecx, eax
fld dword [esp + 0x358]
fld dword [esp + 0x36c]
mov dword [ebx + 0x14ce4], ecx
test ecx, ecx
jle 0x4277a6
fld qword [0x466228]
fxch st(1)
fstp dword [esp + 0x36c]
fxch st(2)
fstp dword [esp + 0x340]
fstp dword [esp + 0x358]
fxch st(1)
fstp dword [esp + 0x368]
xor edi, edi
fstp st(0)
fld dword [esp + 0x36c]
fld dword [esp + edi*4 + 0x130]
fcom dword [esp + 0x368]
fnstsw ax
sahf
jb 0x426d9d
fstp st(1)
fld st(0)
fld dword [0x4664fc]
fsubr st(2), st(0)
fxch st(2)
fmul dword [esp + 0x36c]
fld dword [esp + 0x368]
fld dword [esp + 0x368]
fxch st(1)
fsubp st(3)
fxch st(2)
fmul dword [esp + 0x358]
fxch st(3)
fsubrp st(2)
fdiv st(1)
fxch st(1)
fdivp st(2)
fadd st(1), st(0)
fstp st(0)
fld qword [0x466228]
fdiv st(1), st(0)
fstp qword [esp]
fstp qword [esp + 8]
call fcn.00438b34
fstp dword [esp + edi*4 + 0x230]
mov eax, dword [ebx + edi*4 + 0x151ec]
test eax, eax
jle 0x426dd9
fld1
mov dword [esp + 0x350], eax
fild dword [esp + 0x350]
fdivp st(1)
jmp 0x426de0
fld dword [esp + 0x348]
fstp dword [ebx + edi*4 + 0x152ec]
mov ecx, dword [ebx + 0x14ce4]
add edi, 1
cmp edi, ecx
jl 0x426d47
fld dword [esp + 0x340]
fld dword [esp + 0x368]
fxch st(1)
fstp dword [esp + 0x340]
fstp dword [esp + 0x368]
lea eax, [ebx + 0x14370]
lea edx, [ebx + 0x14cec]
lea edi, [esp + 0x130]
mov dword [esp + 0xc], edi
lea edi, [esp + 0x30]
mov dword [esp + 0x10], edi
lea edi, [esp + 0x230]
mov dword [esp + 0x14], edi
mov dword [esp + 0x18], esi
call fcn.00427d20
fld dword [esp + 0x368]
fld dword [esp + 0x340]
test eax, eax
je 0x426e6c
fstp st(0)
fstp st(0)
add esp, 0x374
pop ebx
pop esi
pop edi
mov esp, ebp
pop ebp
ret
mov eax, dword [ebx + 0x14ce4]
test eax, eax
fxch st(1)
jle 0x42701f
fld qword [0x466228]
fld qword [0x466238]
fld qword [0x466240]
fld dword [0x466500]
fld dword [0x466504]
fld qword [0x466260]
fxch st(7)
fstp dword [esp + 0x340]
fxch st(5)
fstp dword [esp + 0x368]
fstp st(5)
mov dword [esp + 0x334], esi
xor eax, eax
xor edi, edi
mov esi, eax
fstp st(3)
fstp st(3)
fstp st(1)
fstp st(1)
fstp st(0)
mov edx, dword [ebx + edi*4 + 0x151ec]
test edx, edx
jle 0x42779b
fld qword [0x466230]
fstp qword [esp + 0x358]
xor eax, eax
mov dword [esp + 0x364], ebx
mov ebx, eax
mov edx, dword [ebp + 8]
mov dword [esp + 0x350], esi
fild dword [esp + 0x350]
fmul dword [esp + 0x360]
fdiv qword [0x466260]
fmul dword [0x466500]
mov dword [esp + 4], edx
fstp dword [esp]
call fcn.00412678
fsub dword [0x466504]
fmul qword [0x466248]
fld qword [0x466228]
fstp qword [esp]
fstp qword [esp + 8]
call fcn.00438b34
fld qword [esp + 0x358]
mov edx, dword [esp + 0x364]
fild dword [edx + edi*4 + 0x151ec]
fmulp st(2)
fcom st(1)
fnstsw ax
add esi, 1
add ebx, 1
sahf
fxch st(1)
jbe 0x426f68
fst st(1)
fstp st(0)
cmp ebx, dword [edx + edi*4 + 0x151ec]
fstp qword [esp + 0x358]
jl 0x426ef2
fld qword [esp + 0x358]
mov ebx, edx
mov edx, dword [ebx + 0x157cc]
fstp dword [edx + edi*4 + 0xd4]
fld dword [esp + edi*4 + 0x130]
fmul dword [0x466504]
fdiv dword [0x4664e4]
fadd dword [0x466508]
fcom qword [0x466250]
fnstsw ax
sahf
jbe 0x426fc0
fstp st(0)
fld qword [0x466258]
fld qword [0x466238]
fcom st(1)
fnstsw ax
sahf
jbe 0x426fcf
fst st(1)
fstp st(0)
fsub qword [0x466240]
fld qword [0x466228]
fdiv st(1), st(0)
fstp qword [esp]
fstp qword [esp + 8]
call fcn.00438b34
fild dword [ebx + edi*4 + 0x151ec]
fmulp st(1)
fstp dword [ebx + edi*4 + 0x1316c]
add edi, 1
cmp edi, dword [ebx + 0x14ce4]
jl 0x426ecb
fld dword [esp + 0x340]
fld dword [esp + 0x368]
mov esi, dword [esp + 0x334]
fld dword [esp + 0x360]
fxch st(2)
fstp dword [esp + 0x340]
fstp dword [esp + 0x368]
mov dword [esp + 0x20], 0x100
mov dword [esp + 0x28], 0x3f2aaaab
lea eax, [ebx + 0x150ec]
lea edx, [ebx + 0x14cb0]
mov dword [esp + 0x2c], 0xd
lea ecx, [ebx + 0x14c7c]
lea edi, [esp + 0x130]
mov dword [esp + 0xc], edi
lea edi, [esp + 0x30]
mov dword [esp + 0x10], edi
lea edi, [ebx + 0x14b98]
mov dword [esp + 0x14], edi
mov edi, dword [ebx + 0x157d0]
add edi, 0x60
mov dword [esp + 0x18], edi
lea edi, [ebx + 0x130fc]
mov dword [esp + 0x24], edi
call fcn.004277bc
fld dword [esp + 0x368]
fld dword [esp + 0x340]
mov ecx, eax
mov dword [ebx + 0x14ce8], ecx
test ecx, ecx
jle 0x4277b1
fld qword [0x466228]
fld qword [0x466270]
fld dword [0x4664fc]
fld dword [0x466514]
fxch st(4)
fstp dword [esp + 0x340]
fxch st(4)
fst dword [esp + 0x368]
fld1
fstp dword [esp + 0x34c]
fsubr st(4)
fstp dword [esp + 0x36c]
fstp st(2)
mov dword [esp + 0x334], esi
xor edi, edi
fstp st(2)
fstp st(0)
fstp st(0)
mov esi, edi
fld dword [esp + esi*4 + 0x130]
fcom dword [esp + 0x368]
fnstsw ax
sahf
jb 0x427148
fld st(0)
fxch st(1)
fsubr dword [0x4664fc]
fmul dword [0x466514]
fxch st(1)
fsub dword [esp + 0x368]
fmul dword [esp + 0x340]
fld dword [esp + 0x36c]
fdiv st(2), st(0)
fdivp st(1)
faddp st(1)
jmp 0x427150
fstp st(0)
fld qword [0x466268]
fld qword [0x466228]
fdiv st(1), st(0)
fstp qword [esp]
fstp qword [esp + 8]
call fcn.00438b34
fstp dword [esp + esi*4 + 0x230]
mov edx, dword [ebx + esi*4 + 0x150ec]
test edx, edx
jle 0x427790
fld qword [0x466230]
fstp qword [esp + 0x358]
xor eax, eax
mov dword [esp + 0x364], ebx
mov ebx, eax
mov edx, dword [ebp + 8]
mov dword [esp + 0x350], edi
fild dword [esp + 0x350]
fmul dword [esp + 0x360]
fdiv qword [0x466298]
fmul dword [0x466500]
mov dword [esp + 4], edx
fstp dword [esp]
call fcn.00412678
fsub dword [0x466504]
fmul qword [0x466248]
fld qword [0x466228]
fstp qword [esp]
fstp qword [esp + 8]
call fcn.00438b34
fld qword [esp + 0x358]
mov edx, dword [esp + 0x364]
fild dword [edx + esi*4 + 0x150ec]
fmulp st(2)
fcom st(1)
fnstsw ax
add edi, 1
add ebx, 1
sahf
fxch st(1)
jbe 0x427208
fst st(1)
fstp st(0)
cmp ebx, dword [edx + esi*4 + 0x150ec]
fstp qword [esp + 0x358]
jl 0x427192
fld qword [esp + 0x358]
mov ebx, edx
fld qword [0x466278]
mov edx, dword [ebx + 0x157cc]
fxch st(1)
fstp dword [edx + esi*4 + 0x1d4]
fld dword [esp + esi*4 + 0x130]
fcom dword [0x466510]
fnstsw ax
fmul st(1), st(0)
fxch st(1)
fdiv qword [0x466280]
fadd qword [0x466270]
sahf
jbe 0x42729e
fld dword [esp + 0x34c]
fxch st(2)
fstp dword [esp + 0x358]
fst qword [esp + 0x338]
faddp st(1)
fstp qword [esp]
call fcn.00438c1c
fmul qword [0x466290]
fadd dword [esp + 0x34c]
fld qword [esp + 0x338]
fmulp st(1)
fld dword [esp + 0x358]
fxch st(1)
fld dword [0x466510]
fcomp st(2)
fnstsw ax
fxch st(1)
fstp st(0)
sahf
jbe 0x4272df
fld dword [esp + 0x34c]
fxch st(1)
fst qword [esp + 0x338]
fsubp st(1)
fstp qword [esp]
call fcn.00438c1c
fmul qword [0x466288]
fadd dword [esp + 0x34c]
fld qword [esp + 0x338]
fmulp st(1)
fld qword [0x466238]
fcom st(1)
fnstsw ax
sahf
jbe 0x4272ee
fst st(1)
fstp st(0)
fsub qword [0x466240]
fld qword [0x466228]
fdiv st(1), st(0)
fstp qword [esp]
fstp qword [esp + 8]
call fcn.00438b34
fild dword [ebx + esi*4 + 0x150ec]
fmulp st(1)
fstp dword [ebx + esi*4 + 0x1326c]
mov ecx, dword [ebx + 0x14ce8]
add esi, 1
cmp esi, ecx
jl 0x427106
mov esi, dword [esp + 0x334]
lea eax, [ebx + 0x1436c]
lea edx, [ebx + 0x14eec]
lea edi, [esp + 0x130]
mov dword [esp + 0xc], edi
lea edi, [esp + 0x30]
mov dword [esp + 0x10], edi
lea edi, [esp + 0x230]
mov dword [esp + 0x14], edi
mov dword [esp + 0x18], esi
call fcn.00427d20
test eax, eax
je 0x427376
add esp, 0x374
pop ebx
pop esi
pop edi
mov esp, ebp
pop ebp
ret
fld qword [0x466228]
fld qword [0x4662a0]
fxch st(1)
fstp qword [esp]
fstp qword [esp + 8]
call fcn.00438b34
fstp dword [0x489920]
push ebx
mov eax, 0x41fcfb72
mov dword [0x489924], eax
mov dword [0x489928], eax
call fcn.0042f644
pop ecx
fld qword [0x4662b0]
fmul dword [esp + 0x360]
fdiv qword [0x4662b8]
fdivr qword [0x4662a8]
fstp qword [esp]
call fcn.00438bf4
mov eax, dword [ebp + 8]
fstp dword [ebx + 0x14374]
mov edx, dword [eax + 0x7c]
test dl, 2
je 0x4273e7
fld dword [esp + 0x330]
jmp 0x4273ed
fld dword [0x46651c]
fldz
mov edx, dword [ebp + 8]
fld dword [edx + 0xe8]
fld dword [edx + 0xe8]
fabs
fcomp st(2)
fnstsw ax
fxch st(1)
fstp st(0)
sahf
jbe 0x427411
fstp st(1)
fld st(0)
fxch st(1)
fstp st(0)
mov eax, dword [ebp + 8]
fstp dword [eax + 0xe8]
mov edx, dword [ebx + 0x14ce4]
test edx, edx
jle 0x42744c
xor eax, eax
mov ecx, dword [ebx + eax*8 + 0x14cf0]
add edx, 0xffffffff
cmp edx, ecx
jl 0x427438
mov edx, ecx
mov dword [ebx + eax*8 + 0x14cf0], edx
mov edx, dword [ebx + 0x14ce4]
add eax, 1
cmp eax, edx
jl 0x427428
fild dword [ebx + 0x7c9c]
fmul qword [0x4662c8]
fdiv dword [esp + 0x360]
fmul qword [0x4662c0]
fld qword [0x466228]
fstp qword [esp]
fstp qword [esp + 8]
call fcn.00438b34
fld dword [esp + 0x330]
mov eax, dword [ebx + 0x157cc]
mov esi, dword [ebp + 8]
fxch st(1)
fstp dword [eax + 0x10]
mov edx, dword [ebx + 0x157cc]
mov dword [edx + 8], 0x3c23d70a
mov ecx, dword [ebx + 0x157cc]
fstp dword [ecx + 0xc]
mov edi, dword [esi + 0xc4]
cmp edi, 0xffffffff
je 0x427586
fld1
fld dword [esp + 0x348]
mov eax, dword [ebp + 8]
fild dword [eax + 0x10]
fmul dword [0x466524]
mov edi, dword [ebp + 8]
fxch st(2)
fstp qword [esp + 0x340]
fstp dword [esp + 0x368]
fstp dword [esp + 0x34c]
mov esi, 0xfffffe00
fld dword [esp + 0x368]
fadd dword [esp + 0x34c]
fst dword [esp]
fstp dword [esp + 0x368]
mov dword [esp + 4], edi
call fcn.00412678
fdiv dword [0x4664e4]
fld qword [0x466228]
fstp qword [esp]
fstp qword [esp + 8]
call fcn.00438b34
fdivr qword [esp + 0x340]
mov eax, dword [ebx + 0x157cc]
fld dword [esp + 0x348]
fxch st(1)
fstp dword [eax + esi*4 + 0xad4]
mov edx, dword [ebx + 0x157cc]
fadd dword [edx + esi*4 + 0xad4]
fstp dword [esp + 0x348]
add esi, 1
jne 0x4274e5
fld qword [esp + 0x340]
fdiv dword [esp + 0x348]
mov eax, 0x1ff
jmp 0x42756f
mov edx, dword [ebx + 0x157cc]
fld dword [edx + eax*4 + 0x2d4]
fmul st(1)
fstp dword [edx + eax*4 + 0x2d4]
add eax, 0xffffffff
jns 0x427569
fstp st(0)
mov eax, dword [ebx + 0x14ce4]
test eax, eax
jle 0x427789
fld1
fld qword [0x4662d0]
fld qword [0x4662d8]
fld qword [0x4662e0]
fld qword [0x4662e8]
fld qword [0x4662f0]
fxch st(5)
fstp dword [esp + 0x358]
xor edi, edi
xor esi, esi
fstp st(4)
fstp st(3)
fstp st(2)
fstp st(1)
fstp st(0)
mov edx, dword [ebx + esi*4 + 0x151ec]
mov eax, edx
shr eax, 0x1f
add edx, eax
sar edx, 1
add edx, edi
mov dword [esp + 0x350], edx
fild dword [esp + 0x350]
fmul dword [esp + 0x360]
fmul qword [0x4662f0]
fstp dword [esp]
call fcn.00412610
fld qword [0x4662d0]
fcom st(1)
fnstsw ax
sahf
ja 0x42760f
fst st(1)
fdivp st(1)
fmul qword [0x4662d8]
fstp qword [esp]
call fcn.00438b5c
fsubr dword [esp + 0x358]
fmul qword [0x4662e0]
fsub qword [0x4662e8]
fld qword [0x466228]
fstp qword [esp]
fstp qword [esp + 8]
call fcn.00438b34
add edi, dword [ebx + esi*4 + 0x151ec]
fstp dword [ebx + esi*4 + 0x153ec]
add esi, 1
cmp esi, dword [ebx + 0x14ce4]
jl 0x4275cb
cmp esi, 0x40
jge 0x42767e
fld dword [esp + 0x330]
fst dword [ebx + esi*4 + 0x153ec]
add esi, 1
cmp esi, 0x40
jl 0x42766d
fstp st(0)
mov eax, dword [ebx + 0x14ce8]
test eax, eax
jle 0x427785
fld1
fld qword [0x4662f8]
fld qword [0x4662d0]
fld qword [0x4662d8]
fld qword [0x4662e0]
fld qword [0x4662e8]
fxch st(5)
fstp dword [esp + 0x358]
xor edi, edi
xor esi, esi
fstp st(4)
fstp st(3)
fstp st(2)
fstp st(1)
fstp st(0)
mov edx, dword [ebx + esi*4 + 0x150ec]
mov eax, edx
shr eax, 0x1f
add edx, eax
sar edx, 1
add edx, edi
mov dword [esp + 0x350], edx
fild dword [esp + 0x350]
fmul dword [esp + 0x360]
fmul qword [0x4662f8]
fstp dword [esp]
call fcn.00412610
fld qword [0x4662d0]
fcom st(1)
fnstsw ax
sahf
ja 0x427707
fst st(1)
fdivp st(1)
fmul qword [0x4662d8]
fstp qword [esp]
call fcn.00438b5c
fsubr dword [esp + 0x358]
fmul qword [0x4662e0]
fsub qword [0x4662e8]
fld qword [0x466228]
fstp qword [esp]
fstp qword [esp + 8]
call fcn.00438b34
add edi, dword [ebx + esi*4 + 0x150ec]
fstp dword [ebx + esi*4 + 0x154ec]
add esi, 1
cmp esi, dword [ebx + 0x14ce8]
jl 0x4276c3
cmp esi, 0x40
jge 0x427776
fld dword [esp + 0x330]
fst dword [ebx + esi*4 + 0x154ec]
add esi, 1
cmp esi, 0x40
jl 0x427765
fstp st(0)
xor eax, eax
add esp, 0x374
pop ebx
pop esi
pop edi
mov esp, ebp
pop ebp
ret
xor esi, esi
jmp 0x42775e
xor esi, esi
jmp 0x427666
fld qword [0x466230]
jmp 0x427227
fld qword [0x466230]
jmp 0x426f87
fstp st(0)
fstp st(0)
fxch st(1)
jmp 0x426e06
fstp st(0)
fstp st(0)
jmp 0x427332