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

Disassembly:
push ebp
mov ebp, esp
and esp, 0xffffffc0
sub esp, 0x274
mov eax, dword [0x59c6b8]
xor eax, esp
mov dword [esp + 0x270], eax
push ebx
mov ebx, ecx
mov ecx, dword [ebx + 8]
mov eax, dword [ecx]
mov edx, dword [eax + 0x10]
push esi
push edi
mov edi, dword [ebp + 8]
mov dword [esp + 0x54], edi
call edx
test eax, eax
je 0x418d8e
mov ecx, dword [ebx + 8]
mov eax, dword [ecx]
mov edx, dword [ebx + 0x1c]
mov eax, dword [eax + 0xe0]
push edi
push edx
call eax
test eax, eax
jne 0x41a2bf
fld qword [edi + 0xc0]
mov ecx, dword [edi + 0xc]
mov edx, dword [ecx]
fstp qword [esp + 0xd0]
fld qword [edi + 0xc8]
mov eax, dword [edx + 0x18]
fstp qword [esp + 0xb0]
fld qword [edi + 0xd0]
fstp qword [esp + 0x88]
fld qword [edi + 0xd8]
fstp qword [esp + 0xf0]
fld qword [edi + 0xe0]
fstp qword [esp + 0xe8]
fld qword [edi + 0xe8]
fstp qword [esp + 0xc0]
fld qword [edi + 0xf0]
fstp qword [esp + 0xf8]
fld qword [edi + 0xf8]
fstp qword [esp + 0x100]
call eax
fld qword [esp + 0xf0]
mov dword [esp + 0x10c], eax
fsub qword [esp + 0xd0]
fst qword [esp + 0x138]
fld qword [esp + 0xe8]
fsub qword [esp + 0xb0]
fst qword [esp + 0x140]
fmul st(0), st(0)
fld st(1)
fmulp st(2)
faddp st(1)
call fcn.005121c0
fld st(0)
fldz
fld st(0)
fucomp st(2)
fnstsw ax
fstp st(1)
test ah, 0x44
jnp 0x418efd
fld qword [esp + 0xc0]
fsub qword [esp + 0x88]
fld st(0)
fld st(2)
fucompp
fnstsw ax
test ah, 0x44
jp 0x418ee6
fstp st(2)
xor esi, esi
fstp st(1)
mov dword [esp + 0x9c], esi
fstp qword [esp + 0xd8]
fld qword [esp + 0x140]
fld qword [esp + 0x138]
call fcn.0051387a
lea ecx, [esp + 0x128]
fstp qword [esp + 0x110]
push ecx
lea edx, [esp + 0x124]
push edx
lea eax, [esp + 0x150]
push eax
lea ecx, [esp + 0x124]
push ecx
mov ecx, dword [ebx + 0x1c]
call fcn.0042d3d0
test esi, esi
je 0x418f2b
fldz
fst qword [esp + 0x90]
fld1
fst qword [esp + 0xa0]
fld qword [esp + 0x88]
jmp 0x4193bb
fld st(0)
fabs
fld st(3)
fsub qword [0x534b68]
fcompp
fnstsw ax
test ah, 0x41
jp 0x418f14
fstp st(2)
fstp st(1)
mov esi, 1
fst qword [esp + 0xd8]
mov dword [esp + 0x9c], esi
jmp 0x418e95
fstp st(1)
xor esi, esi
fdivrp st(1)
mov dword [esp + 0x9c], esi
call fcn.00513a20
jmp 0x418e7b
fld qword [esp + 0xd0]
fld st(0)
fld qword [esp + 0x88]
fadd st(1), st(0)
fld qword [esp + 0xf0]
fld qword [esp + 0xc0]
fadd st(1), st(0)
fxch st(1)
fsub st(3)
fld st(0)
fabs
fld qword [0x534b60]
fcom st(1)
fnstsw ax
fstp st(1)
test ah, 5
jp 0x418f87
fld qword [esp + 0x118]
mov ecx, 1
fsubrp st(5)
mov dword [esp + 0x64], ecx
fxch st(4)
fdivrp st(1)
fstp qword [esp + 0xc8]
fldz
jmp 0x418fa1
fstp st(4)
mov dword [esp + 0x64], 0
fstp st(0)
mov ecx, 1
fldz
fst qword [esp + 0xc8]
fxch st(4)
fsub st(2)
fld qword [esp + 0xf0]
fsub st(2)
fsub st(1)
fld st(0)
fabs
fcomp st(5)
fnstsw ax
test ah, 0x41
jne 0x418fd7
fld qword [esp + 0x120]
mov edx, ecx
fsubrp st(2)
mov dword [esp + 0x48], ecx
fdivp st(1)
fstp qword [esp + 0x80]
jmp 0x418fec
fstp st(1)
xor edx, edx
fstp st(0)
mov dword [esp + 0x48], edx
fxch st(3)
fst qword [esp + 0x80]
fxch st(3)
fld qword [esp + 0xb0]
fadd st(2)
fld qword [esp + 0xe8]
faddp st(2)
fsub st(1), st(0)
fld st(1)
fabs
fcomp st(4)
fnstsw ax
fld qword [esp + 0x148]
test ah, 0x41
jne 0x419028
fld st(0)
mov dword [esp + 0x40], ecx
fsubrp st(2)
fxch st(1)
fdivrp st(2)
fxch st(1)
fstp qword [esp + 0x58]
jmp 0x41903c
fstp st(1)
mov dword [esp + 0x40], 0
fstp st(1)
fxch st(3)
fst qword [esp + 0x58]
fxch st(3)
fld qword [esp + 0xb0]
fsub st(2)
fld qword [esp + 0xe8]
fsub qword [esp + 0xc0]
fsub st(1)
fld st(0)
fabs
fcomp st(5)
fnstsw ax
fld qword [esp + 0x128]
test ah, 0x41
jne 0x419083
fld st(0)
mov esi, ecx
fsubrp st(3)
fxch st(2)
fdivrp st(1)
fstp qword [esp + 0xa8]
fld qword [esp + 0xa8]
jmp 0x419092
fstp st(2)
xor esi, esi
fstp st(0)
fld st(4)
fst qword [esp + 0xa8]
fld qword [esp + 0xc0]
fsub st(4)
fst qword [esp + 0x130]
fld st(0)
fabs
fcomp st(6)
fnstsw ax
fstp st(5)
test ah, 0x41
jne 0x41910f
fstp st(0)
mov dword [esp + 0x3c], ecx
fstp st(4)
fxch st(1)
fdivrp st(2)
fxch st(1)
fchs
fstp qword [esp + 0xb8]
fld qword [esp + 0x120]
fsub qword [esp + 0x118]
fxch st(2)
fsubrp st(1)
fmul st(0), st(0)
fld st(1)
fmulp st(2)
faddp st(1)
call fcn.005121c0
fld qword [esp + 0x88]
fsub st(1), st(0)
mov edx, dword [esp + 0x48]
fxch st(1)
fdiv qword [esp + 0x130]
fstp qword [esp + 0xe0]
fldz
fld qword [esp + 0xa8]
jmp 0x41912f
fstp st(4)
mov dword [esp + 0x3c], 0
fstp st(0)
fstp st(0)
fxch st(2)
fst qword [esp + 0xb8]
fst qword [esp + 0xe0]
fxch st(1)
cmp dword [edi + 0x184], 0
je 0x41926a
fld st(1)
xor ecx, ecx
fst qword [esp + 0x90]
fld qword [esp + 0xf0]
fld qword [esp + 0xd0]
fcom st(1)
fnstsw ax
test ah, 5
jp 0x41918a
cmp dword [esp + 0x64], ecx
je 0x41918a
fld qword [esp + 0xc8]
fcom st(5)
fnstsw ax
test ah, 5
jp 0x419188
fstp st(1)
mov ecx, 1
fstp st(2)
fstp st(0)
fst qword [esp + 0x90]
jmp 0x4191b9
fstp st(0)
fcompp
fnstsw ax
test ah, 0x41
jne 0x4191b9
test edx, edx
je 0x4191b9
fld qword [esp + 0x80]
fcom st(3)
fnstsw ax
test ah, 5
jp 0x4191b7
fstp st(1)
mov ecx, 1
fst qword [esp + 0x90]
jmp 0x4191b9
fstp st(0)
fld qword [esp + 0xe8]
fld qword [esp + 0xb0]
fcom st(1)
fnstsw ax
test ah, 5
jp 0x419209
cmp dword [esp + 0x40], 0
je 0x419209
fld qword [esp + 0x58]
fcom st(5)
fnstsw ax
test ah, 5
jp 0x419207
fstp st(1)
fstp st(3)
fstp st(0)
test ecx, ecx
je 0x4191f7
fcom st(1)
fnstsw ax
test ah, 5
jp 0x41923e
fstp st(0)
mov ecx, 1
fst qword [esp + 0x90]
jmp 0x419244
fstp st(0)
fcompp
fnstsw ax
test ah, 0x41
jne 0x41923e
test esi, esi
je 0x41923e
fxch st(1)
fcom st(2)
fnstsw ax
test ah, 5
jp 0x419242
test ecx, ecx
je 0x41922e
fcom st(1)
fnstsw ax
test ah, 0x41
jne 0x419242
fstp st(1)
mov ecx, 1
fst qword [esp + 0x90]
jmp 0x419244
fstp st(1)
jmp 0x419244
fstp st(0)
cmp dword [esp + 0x3c], 0
je 0x419275
fld qword [esp + 0xb8]
fcom st(2)
fnstsw ax
fstp st(2)
test ah, 0x41
jp 0x419275
test ecx, ecx
je 0x41926a
fcom st(1)
fnstsw ax
test ah, 5
jp 0x419275
fstp st(0)
fst qword [esp + 0x90]
jmp 0x419277
fstp st(1)
cmp dword [edi + 0x188], 0
fld1
je 0x4193aa
fld st(0)
xor ecx, ecx
fst qword [esp + 0xa0]
fld qword [esp + 0xd0]
fld qword [esp + 0xf0]
fcom st(1)
fnstsw ax
test ah, 5
jp 0x4192d4
cmp dword [esp + 0x64], ecx
je 0x4192d4
fld qword [esp + 0xc8]
fcom st(4)
fnstsw ax
test ah, 0x41
jne 0x4192d2
fstp st(3)
mov ecx, 1
fstp st(1)
fstp st(0)
fst qword [esp + 0xa0]
jmp 0x419303
fstp st(0)
fcompp
fnstsw ax
test ah, 0x41
jne 0x419303
test edx, edx
je 0x419303
fld qword [esp + 0x80]
fcom st(2)
fnstsw ax
test ah, 0x41
jne 0x419301
fstp st(1)
mov ecx, 1
fst qword [esp + 0xa0]
jmp 0x419303
fstp st(0)
fld qword [esp + 0xb0]
fld qword [esp + 0xe8]
fcom st(1)
fnstsw ax
test ah, 5
jp 0x419351
cmp dword [esp + 0x40], 0
je 0x419351
fld qword [esp + 0x58]
fcom st(4)
fnstsw ax
test ah, 0x41
jne 0x41934f
fstp st(2)
fstp st(0)
test ecx, ecx
je 0x41933f
fcom st(1)
fnstsw ax
test ah, 5
jp 0x41936e
fstp st(1)
mov ecx, 1
fst qword [esp + 0xa0]
jmp 0x419370
fstp st(0)
fcompp
fnstsw ax
test ah, 0x41
jne 0x419370
test esi, esi
je 0x419370
fld qword [esp + 0xa8]
fcom st(2)
fnstsw ax
test ah, 0x41
je 0x419332
fstp st(0)
cmp dword [esp + 0x3c], 0
je 0x4193b5
fld qword [esp + 0xe0]
fcom st(2)
fnstsw ax
test ah, 0x41
jne 0x4193b3
test ecx, ecx
je 0x41939f
fcom st(1)
fnstsw ax
fstp st(1)
test ah, 5
jp 0x4193b5
fstp qword [esp + 0xa0]
jmp 0x4193b7
fstp st(1)
fstp qword [esp + 0xa0]
jmp 0x4193b7
fst qword [esp + 0xa0]
jmp 0x4193b7
fstp st(1)
fstp st(0)
fxch st(1)
fxch st(2)
mov ecx, dword [ebx + 0x1c]
fld qword [ecx + 0x10]
fabs
fld qword [ecx + 0x18]
fabs
fcom st(1)
fnstsw ax
test ah, 0x41
jne 0x4193d5
fstp st(1)
jmp 0x4193d7
fstp st(0)
fld qword [ecx + 0x20]
fabs
fcom st(1)
fnstsw ax
test ah, 0x41
jne 0x4193e9
fstp st(1)
jmp 0x4193eb
fstp st(0)
fld qword [ecx + 0x28]
fabs
fcom st(1)
fnstsw ax
test ah, 0x41
jne 0x4193fd
fstp st(1)
jmp 0x4193ff
fstp st(0)
fld qword [esp + 0xc0]
fcom st(2)
fnstsw ax
test ah, 5
jp 0x419415
fstp st(0)
fmul st(1)
jmp 0x419417
fmulp st(1)
fcom st(2)
fnstsw ax
test ah, 5
jp 0x41942e
fstp st(0)
mov dword [esp + 0x3c], 3
fstp st(1)
jmp 0x41947c
fstp st(3)
fstp st(0)
fld qword [0x531808]
fdivrp st(2)
fsubrp st(1)
call fcn.005138d0
fdivr qword [0x534b58]
call fcn.00512de0
mov dword [esp + 0x3c], eax
cmp eax, 3
jge 0x41945f
mov dword [esp + 0x3c], 3
jmp 0x41946e
cmp eax, 0xc8
jle 0x41946e
mov dword [esp + 0x3c], 0xc8
fld qword [esp + 0x90]
fld qword [esp + 0x88]
fld qword [esp + 0x100]
mov dword [esp + 0x40], 0
fld st(0)
fld qword [esp + 0xf8]
fsub st(1), st(0)
fxch st(1)
fst qword [esp + 0x160]
fmul st(4)
fadd st(1)
fld qword [esp + 0x138]
fmul st(5)
fadd qword [esp + 0xd0]
fstp qword [esp + 0x70]
fld qword [esp + 0x140]
fmul st(5)
fadd qword [esp + 0xb0]
fstp qword [esp + 0x78]
fld qword [esp + 0xc0]
fsub st(4)
fst qword [esp + 0x130]
fmulp st(5)
fxch st(4)
faddp st(3)
fxch st(2)
fstp qword [esp + 0x48]
fxch st(2)
fcom st(1)
fnstsw ax
test ah, 5
jp 0x4194fe
lea edx, [esp + 0x178]
fstp st(0)
push edx
jmp 0x41951d
fstp st(1)
fcom st(1)
fnstsw ax
test ah, 0x41
jne 0x419515
lea eax, [esp + 0x178]
fstp st(0)
push eax
jmp 0x41951f
lea ecx, [esp + 0x178]
push ecx
fstp st(1)
sub esp, 8
mov ecx, edi
fstp qword [esp]
call fcn.0042b710
fld qword [esp + 0x160]
fmul qword [esp + 0xa0]
fld qword [esp + 0xf8]
fadd st(1), st(0)
fxch st(1)
fstp qword [esp + 0x170]
jmp 0x419557
fld qword [esp + 0xf8]
fld qword [esp + 0xa0]
mov edi, 0x100
fstp qword [esp + 0xb8]
mov dword [esp + 0x64], edi
fld qword [esp + 0x170]
fcom st(1)
fnstsw ax
test ah, 5
jp 0x419588
lea edx, [esp + 0x1f8]
push edx
jmp 0x4195ae
fstp st(1)
fld qword [esp + 0x100]
fcom st(1)
fnstsw ax
test ah, 5
jp 0x4195a6
lea eax, [esp + 0x1f8]
fstp st(1)
push eax
jmp 0x4195b0
lea ecx, [esp + 0x1f8]
push ecx
fstp st(0)
mov ecx, dword [esp + 0x58]
sub esp, 8
fstp qword [esp]
call fcn.0042b710
mov esi, dword [esp + 0x10c]
mov edx, edi
sub edx, dword [esp + 0x40]
cmp edx, 1
jle 0x4196b2
xor ecx, ecx
test esi, esi
jle 0x4195ff
jmp 0x4195e0
mov eax, dword [esp + ecx*4 + 0x1f8]
sub eax, dword [esp + ecx*4 + 0x178]
cdq
xor eax, edx
sub eax, edx
cmp eax, 0x100
jg 0x4195ff
inc ecx
cmp ecx, esi
jl 0x4195e0
cmp ecx, esi
jne 0x41960f
cmp edi, 0x100
jl 0x4196b2
mov eax, dword [esp + 0x40]
add eax, edi
cdq
sub eax, edx
sar eax, 1
mov edi, eax
mov dword [esp + 0x64], edi
fild dword [esp + 0x64]
fmul qword [0x534b50]
fld qword [esp + 0xa0]
fld qword [esp + 0x90]
fsub st(1), st(0)
fxch st(2)
fmulp st(1)
faddp st(1)
fst qword [esp + 0xb8]
fmul qword [esp + 0x160]
fld qword [esp + 0xf8]
fadd st(1), st(0)
fcom st(1)
fnstsw ax
test ah, 0x41
jne 0x41966c
lea ecx, [esp + 0x1f8]
fstp st(1)
push ecx
jmp 0x419694
fstp st(0)
fld qword [esp + 0x100]
fcom st(1)
fnstsw ax
test ah, 5
jp 0x41968a
lea edx, [esp + 0x1f8]
fstp st(1)
push edx
jmp 0x419694
lea eax, [esp + 0x1f8]
fstp st(0)
push eax
mov ecx, dword [esp + 0x58]
sub esp, 8
fstp qword [esp]
call fcn.0042b710
mov ecx, edi
sub ecx, dword [esp + 0x40]
cmp ecx, 1
jg 0x4195d5
fld qword [esp + 0x138]
xor ecx, ecx
fld qword [esp + 0xb8]
fmul st(1), st(0)
fxch st(1)
fadd qword [esp + 0xd0]
fstp qword [esp + 0xc8]
fld qword [esp + 0x140]
fmul st(1)
fadd qword [esp + 0xb0]
fstp qword [esp + 0xa8]
fmul qword [esp + 0x130]
fadd qword [esp + 0x88]
fstp qword [esp + 0x80]
test esi, esi
jle 0x41972f
jmp 0x419710
mov eax, dword [esp + ecx*4 + 0x1f8]
add eax, dword [esp + ecx*4 + 0x178]
inc ecx
cdq
sub eax, edx
sar eax, 1
mov dword [esp + ecx*4 + 0x174], eax
cmp ecx, esi
jl 0x419710
mov edi, dword [ebx + 0x1c]
add edi, 0x7c
mov ecx, 0x20
lea esi, [esp + 0x178]
rep movsd dword es:[edi], dword [esi]
mov ecx, dword [ebx + 8]
mov edx, dword [ecx]
mov eax, dword [ebx + 0x1c]
mov edx, dword [edx + 0x78]
push eax
call edx
cmp dword [esp + 0x9c], 0
je 0x419937
mov eax, dword [ebx + 0x1c]
fld qword [esp + 0x48]
fadd qword [esp + 0x70]
mov ecx, dword [eax + 0x254]
fld qword [esp + 0x78]
sub esp, 0x10
fst qword [eax + 0x260]
fxch st(1)
fst qword [eax + 0x258]
fxch st(1)
fstp qword [esp + 8]
fstp qword [esp]
call fcn.0042cff0
mov edi, 1
mov dword [esp + 0x40], edi
cmp dword [esp + 0x3c], edi
jle 0x419818
fild dword [esp + 0x3c]
fstp qword [esp + 0x68]
fild dword [esp + 0x40]
mov esi, dword [ebx + 0x1c]
fdiv qword [esp + 0x68]
fadd st(0), st(0)
fmul qword [0x534b58]
fst qword [esp + 0x40]
call fcn.005122c0
fmul qword [esp + 0x48]
fadd qword [esp + 0x70]
fstp qword [esp + 0x58]
fld qword [esp + 0x40]
call fcn.005123f0
fmul qword [esp + 0x48]
mov ecx, dword [esi + 0x254]
sub esp, 0x10
fadd qword [esp + 0x88]
fst qword [esi + 0x260]
fld qword [esp + 0x68]
fst qword [esi + 0x258]
fxch st(1)
fstp qword [esp + 8]
fstp qword [esp]
call fcn.0042d010
inc edi
mov dword [esp + 0x40], edi
cmp edi, dword [esp + 0x3c]
jl 0x4197aa
mov esi, dword [ebx + 0x1c]
mov ecx, dword [esi + 0x254]
call fcn.0042d2c0
mov eax, dword [esi + 0x254]
mov edx, dword [eax + 0x18]
mov ecx, dword [eax + 0x1c]
mov ecx, dword [edx + ecx*4 - 4]
mov edx, dword [ecx + 0xc]
mov ecx, dword [ecx]
fld qword [ecx + edx*8 - 8]
sub esp, 0x10
fstp qword [esi + 0x258]
mov edx, dword [eax + 0x1c]
mov eax, dword [eax + 0x18]
mov eax, dword [eax + edx*4 - 4]
mov ecx, dword [eax + 0xc]
mov edx, dword [eax + 4]
fld qword [edx + ecx*8 - 8]
fstp qword [esi + 0x260]
mov eax, dword [ebx + 0x1c]
fld qword [esp + 0x90]
mov ecx, dword [eax + 0x254]
fadd qword [esp + 0xd8]
fld qword [esp + 0xb8]
fst qword [eax + 0x260]
fxch st(1)
fst qword [eax + 0x258]
fxch st(1)
fstp qword [esp + 8]
fstp qword [esp]
call fcn.0042cff0
mov edi, 1
mov dword [esp + 0x40], edi
cmp dword [esp + 0x3c], edi
jle 0x419cf2
fild dword [esp + 0x3c]
fstp qword [esp + 0x68]
fild dword [esp + 0x40]
mov esi, dword [ebx + 0x1c]
fdiv qword [esp + 0x68]
fmul qword [0x534b48]
fmul qword [0x534b58]
fst qword [esp + 0x40]
call fcn.005122c0
fmul qword [esp + 0x80]
fadd qword [esp + 0xc8]
fstp qword [esp + 0x58]
fld qword [esp + 0x40]
call fcn.005123f0
fmul qword [esp + 0x80]
mov ecx, dword [esi + 0x254]
sub esp, 0x10
fadd qword [esp + 0xb8]
fst qword [esi + 0x260]
fld qword [esp + 0x68]
fst qword [esi + 0x258]
fxch st(1)
fstp qword [esp + 8]
fstp qword [esp]
call fcn.0042d010
inc edi
mov dword [esp + 0x40], edi
cmp edi, dword [esp + 0x3c]
jl 0x4198b7
jmp 0x419cf2
fld qword [esp + 0x110]
mov esi, dword [ebx + 0x1c]
fadd qword [esp + 0xd8]
fadd qword [0x534b40]
fst qword [esp + 0x158]
call fcn.005122c0
fmul qword [esp + 0x48]
fadd qword [esp + 0x70]
fstp qword [esp + 0x168]
fld qword [esp + 0x158]
call fcn.005123f0
fmul qword [esp + 0x48]
mov ecx, dword [esi + 0x254]
sub esp, 0x10
fadd qword [esp + 0x88]
fst qword [esp + 0x160]
fst qword [esi + 0x260]
fld qword [esp + 0x178]
fst qword [esi + 0x258]
fxch st(1)
fstp qword [esp + 8]
fstp qword [esp]
call fcn.0042cff0
xor edi, edi
mov dword [esp + 0x40], edi
cmp dword [esp + 0x3c], edi
jle 0x419a5c
fild dword [esp + 0x3c]
fstp qword [esp + 0x68]
fld qword [esp + 0xd8]
fadd st(0), st(0)
fadd qword [0x534b58]
fstp qword [esp + 0xe0]
fild dword [esp + 0x40]
mov esi, dword [ebx + 0x1c]
fdiv qword [esp + 0x68]
fmul qword [esp + 0xe0]
fsubr qword [esp + 0x158]
fst qword [esp + 0x40]
call fcn.005122c0
fmul qword [esp + 0x80]
fadd qword [esp + 0xc8]
fstp qword [esp + 0x58]
fld qword [esp + 0x40]
call fcn.005123f0
fmul qword [esp + 0x80]
mov ecx, dword [esi + 0x254]
sub esp, 0x10
fadd qword [esp + 0xb8]
fst qword [esi + 0x260]
fld qword [esp + 0x68]
fst qword [esi + 0x258]
fxch st(1)
fstp qword [esp + 8]
fstp qword [esp]
call fcn.0042d010
inc edi
mov dword [esp + 0x40], edi
cmp edi, dword [esp + 0x3c]
jl 0x4199df
xor edi, edi
mov dword [esp + 0x40], edi
cmp dword [esp + 0x3c], edi
jle 0x419b14
fild dword [esp + 0x3c]
fstp qword [esp + 0x68]
fld qword [esp + 0xd8]
fld st(0)
fadd st(1)
fsub qword [0x534b58]
fstp qword [esp + 0xe0]
fsubr qword [esp + 0x110]
fsub qword [0x534b40]
fstp qword [esp + 0xb8]
fild dword [esp + 0x40]
mov esi, dword [ebx + 0x1c]
fdiv qword [esp + 0x68]
fmul qword [esp + 0xe0]
fadd qword [esp + 0xb8]
fst qword [esp + 0x40]
call fcn.005122c0
fmul qword [esp + 0x48]
fadd qword [esp + 0x70]
fstp qword [esp + 0x58]
fld qword [esp + 0x40]
call fcn.005123f0
fmul qword [esp + 0x48]
mov ecx, dword [esi + 0x254]
sub esp, 0x10
fadd qword [esp + 0x88]
fst qword [esi + 0x260]
fld qword [esp + 0x68]
fst qword [esi + 0x258]
fxch st(1)
fstp qword [esp + 8]
fstp qword [esp]
call fcn.0042d010
inc edi
mov dword [esp + 0x40], edi
cmp edi, dword [esp + 0x3c]
jl 0x419aa0
mov esi, dword [ebx + 0x1c]
mov ecx, dword [esi + 0x254]
call fcn.0042d2c0
mov eax, dword [esi + 0x254]
mov edx, dword [eax + 0x18]
mov ecx, dword [eax + 0x1c]
mov ecx, dword [edx + ecx*4 - 4]
mov edx, dword [ecx + 0xc]
mov ecx, dword [ecx]
fld qword [ecx + edx*8 - 8]
sub esp, 0x10
fstp qword [esi + 0x258]
mov edx, dword [eax + 0x1c]
mov eax, dword [eax + 0x18]
mov eax, dword [eax + edx*4 - 4]
mov ecx, dword [eax + 0xc]
mov edx, dword [eax + 4]
fld qword [edx + ecx*8 - 8]
fstp qword [esi + 0x260]
mov eax, dword [ebx + 0x1c]
fld qword [esp + 0x160]
mov ecx, dword [eax + 0x254]
fst qword [eax + 0x260]
fld qword [esp + 0x178]
fst qword [eax + 0x258]
fxch st(1)
fstp qword [esp + 8]
fstp qword [esp]
call fcn.0042cff0
xor edi, edi
mov dword [esp + 0x40], edi
cmp dword [esp + 0x3c], edi
jle 0x419c3a
fld qword [esp + 0xd8]
fadd st(0), st(0)
fsubr qword [0x534b58]
fstp qword [esp + 0x150]
fild dword [esp + 0x3c]
fstp qword [esp + 0x68]
fild dword [esp + 0x40]
mov esi, dword [ebx + 0x1c]
fdiv qword [esp + 0x68]
fmul qword [esp + 0x150]
fadd qword [esp + 0x158]
fst qword [esp + 0x40]
call fcn.005122c0
fmul qword [esp + 0x80]
fadd qword [esp + 0xc8]
fstp qword [esp + 0x58]
fld qword [esp + 0x40]
call fcn.005123f0
fmul qword [esp + 0x80]
mov ecx, dword [esi + 0x254]
sub esp, 0x10
fadd qword [esp + 0xb8]
fst qword [esi + 0x260]
fld qword [esp + 0x68]
fst qword [esi + 0x258]
fxch st(1)
fstp qword [esp + 8]
fstp qword [esp]
call fcn.0042d010
inc edi
mov dword [esp + 0x40], edi
cmp edi, dword [esp + 0x3c]
jl 0x419bbd
xor edi, edi
mov dword [esp + 0x40], edi
cmp dword [esp + 0x3c], edi
jle 0x419cf2
fild dword [esp + 0x3c]
fstp qword [esp + 0x68]
fld qword [esp + 0xd8]
fld st(0)
fadd st(1)
fadd qword [0x534b58]
fstp qword [esp + 0xe0]
fsubr qword [esp + 0x110]
fsub qword [0x534b40]
fstp qword [esp + 0xb8]
fild dword [esp + 0x40]
mov esi, dword [ebx + 0x1c]
fdiv qword [esp + 0x68]
fmul qword [esp + 0xe0]
fadd qword [esp + 0xb8]
fst qword [esp + 0x40]
call fcn.005122c0
fmul qword [esp + 0x48]
fadd qword [esp + 0x70]
fstp qword [esp + 0x58]
fld qword [esp + 0x40]
call fcn.005123f0
fmul qword [esp + 0x48]
mov ecx, dword [esi + 0x254]
sub esp, 0x10
fadd qword [esp + 0x88]
fst qword [esi + 0x260]
fld qword [esp + 0x68]
fst qword [esi + 0x258]
fxch st(1)
fstp qword [esp + 8]
fstp qword [esp]
call fcn.0042d010
inc edi
mov dword [esp + 0x40], edi
cmp edi, dword [esp + 0x3c]
jl 0x419c7e
mov esi, dword [ebx + 0x1c]
mov ecx, dword [esi + 0x254]
call fcn.0042d2c0
mov eax, dword [esi + 0x254]
mov edx, dword [eax + 0x18]
mov ecx, dword [eax + 0x1c]
mov ecx, dword [edx + ecx*4 - 4]
mov edx, dword [ecx + 0xc]
mov ecx, dword [ecx]
fld qword [ecx + edx*8 - 8]
fstp qword [esi + 0x258]
mov edx, dword [eax + 0x1c]
mov eax, dword [eax + 0x18]
mov eax, dword [eax + edx*4 - 4]
mov ecx, dword [eax + 0xc]
mov edx, dword [eax + 4]
fld qword [edx + ecx*8 - 8]
fstp qword [esi + 0x260]
mov ecx, dword [ebx + 8]
mov eax, dword [ecx]
mov edx, dword [ebx + 0x1c]
mov eax, dword [eax + 0xcc]
push edx
call eax
mov ecx, dword [ebx + 0x1c]
call fcn.0042f4e0
fld qword [esp + 0xc8]
cmp dword [esp + 0x64], 0x100
fstp qword [esp + 0x70]
mov ecx, dword [esp + 0x64]
fld qword [esp + 0xa8]
fstp qword [esp + 0x78]
mov dword [esp + 0x40], ecx
fld qword [esp + 0x80]
mov ecx, 0x20
lea esi, [esp + 0x1f8]
fstp qword [esp + 0x48]
lea edi, [esp + 0x178]
rep movsd dword es:[edi], dword [esi]
jl 0x419550
cmp dword [esp + 0x9c], 0
je 0x41a2bf
mov ecx, dword [esp + 0x54]
fld qword [esp + 0xc0]
cmp dword [ecx + 0x184], 0
fld qword [esp + 0x88]
je 0x419dd0
fcom st(1)
fnstsw ax
test ah, 0x41
jnp 0x419df3
cmp dword [ecx + 0x188], 0
je 0x419fa0
fcom st(1)
fnstsw ax
test ah, 0x41
jne 0x419fa0
fcom st(1)
fnstsw ax
test ah, 0x41
jp 0x419e16
fstp st(1)
fld qword [esp + 0xf8]
fxch st(1)
fstp qword [esp + 0x48]
fld qword [esp + 0xd0]
fstp qword [esp + 0x70]
fld qword [esp + 0xb0]
jmp 0x419e37
fstp st(0)
fld qword [esp + 0x100]
fxch st(1)
fstp qword [esp + 0x48]
fld qword [esp + 0xf0]
fstp qword [esp + 0x70]
fld qword [esp + 0xe8]
lea edx, [esp + 0x178]
fstp qword [esp + 0x78]
push edx
sub esp, 8
fstp qword [esp]
call fcn.0042b710
mov edi, dword [ebx + 0x1c]
add edi, 0x7c
mov ecx, 0x20
lea esi, [esp + 0x178]
rep movsd dword es:[edi], dword [esi]
mov ecx, dword [ebx + 8]
mov eax, dword [ecx]
mov edx, dword [ebx + 0x1c]
mov eax, dword [eax + 0x78]
push edx
call eax
mov eax, dword [ebx + 0x1c]
fld qword [esp + 0x48]
mov ecx, dword [eax + 0x254]
fadd qword [esp + 0x70]
sub esp, 0x10
fld qword [esp + 0x88]
fst qword [eax + 0x260]
fxch st(1)
fst qword [eax + 0x258]
fxch st(1)
fstp qword [esp + 8]
fstp qword [esp]
call fcn.0042cff0
mov edi, 1
mov dword [esp + 0x40], edi
cmp dword [esp + 0x3c], edi
jle 0x419f2c
fild dword [esp + 0x3c]
fstp qword [esp + 0x68]
fild dword [esp + 0x40]
mov esi, dword [ebx + 0x1c]
fdiv qword [esp + 0x68]
fadd st(0), st(0)
fmul qword [0x534b58]
fst qword [esp + 0x40]
call fcn.005122c0
fmul qword [esp + 0x48]
fadd qword [esp + 0x70]
fstp qword [esp + 0x58]
fld qword [esp + 0x40]
call fcn.005123f0
fmul qword [esp + 0x48]
mov ecx, dword [esi + 0x254]
sub esp, 0x10
fadd qword [esp + 0x88]
fst qword [esi + 0x260]
fld qword [esp + 0x68]
fst qword [esi + 0x258]
fxch st(1)
fstp qword [esp + 8]
fstp qword [esp]
call fcn.0042d010
inc edi
mov dword [esp + 0x40], edi
cmp edi, dword [esp + 0x3c]
jl 0x419ebe
mov esi, dword [ebx + 0x1c]
mov ecx, dword [esi + 0x254]
call fcn.0042d2c0
mov eax, dword [esi + 0x254]
mov edx, dword [eax + 0x18]
mov ecx, dword [eax + 0x1c]
mov ecx, dword [edx + ecx*4 - 4]
mov edx, dword [ecx + 0xc]
mov ecx, dword [ecx]
fld qword [ecx + edx*8 - 8]
fstp qword [esi + 0x258]
mov edx, dword [eax + 0x1c]
mov eax, dword [eax + 0x18]
mov eax, dword [eax + edx*4 - 4]
mov ecx, dword [eax + 0xc]
mov edx, dword [eax + 4]
fld qword [edx + ecx*8 - 8]
fstp qword [esi + 0x260]
mov ecx, dword [ebx + 8]
mov eax, dword [ecx]
mov edx, dword [ebx + 0x1c]
mov eax, dword [eax + 0xcc]
push edx
call eax
mov ecx, dword [ebx + 0x1c]
call fcn.0042f4e0
fld qword [esp + 0x88]
fld qword [esp + 0xc0]
mov ecx, dword [esp + 0x54]
fxch st(1)
cmp dword [ecx + 0x184], 0
je 0x419fb2
fcom st(1)
fnstsw ax
test ah, 0x41
je 0x419fd5
cmp dword [ecx + 0x188], 0
je 0x41a2bb
fcom st(1)
fnstsw ax
test ah, 0x41
jp 0x41a2bb
fcom st(1)
fnstsw ax
test ah, 0x41
jne 0x419ff8
fstp st(1)
fld qword [esp + 0xf8]
fxch st(1)
fstp qword [esp + 0x48]
fld qword [esp + 0xd0]
fstp qword [esp + 0x70]
fld qword [esp + 0xb0]
jmp 0x41a019
fstp st(0)
fld qword [esp + 0x100]
fxch st(1)
fstp qword [esp + 0x48]
fld qword [esp + 0xf0]
fstp qword [esp + 0x70]
fld qword [esp + 0xe8]
lea ecx, [esp + 0x178]
fstp qword [esp + 0x78]
push ecx
mov ecx, dword [esp + 0x58]
sub esp, 8
fstp qword [esp]
call fcn.0042b710
mov edi, dword [ebx + 0x1c]
add edi, 0x7c
mov ecx, 0x20
lea esi, [esp + 0x178]
rep movsd dword es:[edi], dword [esi]
mov ecx, dword [ebx + 8]
mov edx, dword [ecx]
mov eax, dword [ebx + 0x1c]
mov edx, dword [edx + 0x78]
push eax
call edx
mov eax, dword [ebx + 0x1c]
fld qword [esp + 0x118]
mov ecx, dword [eax + 0x254]
fld qword [esp + 0x148]
sub esp, 0x10
fld st(0)
fxch st(1)
fstp qword [eax + 0x260]
fxch st(1)
fst qword [eax + 0x258]
fxch st(1)
fstp qword [esp + 8]
fstp qword [esp]
call fcn.0042cff0
fld qword [esp + 0x118]
mov eax, dword [ebx + 0x1c]
fld qword [esp + 0x128]
mov ecx, dword [eax + 0x254]
fld st(0)
sub esp, 0x10
fxch st(1)
fstp qword [eax + 0x260]
fxch st(1)
fst qword [eax + 0x258]
fxch st(1)
fstp qword [esp + 8]
fstp qword [esp]
call fcn.0042d010
fld qword [esp + 0x120]
mov eax, dword [ebx + 0x1c]
fld qword [esp + 0x128]
mov ecx, dword [eax + 0x254]
fld st(0)
sub esp, 0x10
fxch st(1)
fstp qword [eax + 0x260]
fxch st(1)
fst qword [eax + 0x258]
fxch st(1)
fstp qword [esp + 8]
fstp qword [esp]
call fcn.0042d010
fld qword [esp + 0x120]
mov eax, dword [ebx + 0x1c]
fld qword [esp + 0x148]
mov ecx, dword [eax + 0x254]
fld st(0)
sub esp, 0x10
fxch st(1)
fstp qword [eax + 0x260]
fxch st(1)
fst qword [eax + 0x258]
fxch st(1)
fstp qword [esp + 8]
fstp qword [esp]
call fcn.0042d010
mov esi, dword [ebx + 0x1c]
mov ecx, dword [esi + 0x254]
call fcn.0042d2c0
mov eax, dword [esi + 0x254]
mov ecx, dword [eax + 0x1c]
mov edx, dword [eax + 0x18]
mov ecx, dword [edx + ecx*4 - 4]
mov edx, dword [ecx + 0xc]
mov ecx, dword [ecx]
fld qword [ecx + edx*8 - 8]
sub esp, 0x10
fstp qword [esi + 0x258]
mov edx, dword [eax + 0x1c]
mov eax, dword [eax + 0x18]
mov eax, dword [eax + edx*4 - 4]
mov ecx, dword [eax + 0xc]
mov edx, dword [eax + 4]
fld qword [edx + ecx*8 - 8]
fstp qword [esi + 0x260]
mov eax, dword [ebx + 0x1c]
fld qword [esp + 0x58]
mov ecx, dword [eax + 0x254]
fadd qword [esp + 0x80]
fld qword [esp + 0x88]
fst qword [eax + 0x260]
fxch st(1)
fst qword [eax + 0x258]
fxch st(1)
fstp qword [esp + 8]
fstp qword [esp]
call fcn.0042cff0
mov edi, 1
mov dword [esp + 0x40], edi
cmp dword [esp + 0x3c], edi
jle 0x41a244
fild dword [esp + 0x3c]
fstp qword [esp + 0x68]
fild dword [esp + 0x40]
mov esi, dword [ebx + 0x1c]
fdiv qword [esp + 0x68]
fadd st(0), st(0)
fmul qword [0x534b58]
fst qword [esp + 0x40]
call fcn.005122c0
fmul qword [esp + 0x48]
fadd qword [esp + 0x70]
fstp qword [esp + 0x58]
fld qword [esp + 0x40]
call fcn.005123f0
fmul qword [esp + 0x48]
mov ecx, dword [esi + 0x254]
sub esp, 0x10
fadd qword [esp + 0x88]
fst qword [esi + 0x260]
fld qword [esp + 0x68]
fst qword [esi + 0x258]
fxch st(1)
fstp qword [esp + 8]
fstp qword [esp]
call fcn.0042d010
inc edi
mov dword [esp + 0x40], edi
cmp edi, dword [esp + 0x3c]
jl 0x41a1d6
mov esi, dword [ebx + 0x1c]
mov ecx, dword [esi + 0x254]
call fcn.0042d2c0
mov eax, dword [esi + 0x254]
mov edx, dword [eax + 0x18]
mov ecx, dword [eax + 0x1c]
mov ecx, dword [edx + ecx*4 - 4]
mov edx, dword [ecx + 0xc]
mov ecx, dword [ecx]
fld qword [ecx + edx*8 - 8]
fstp qword [esi + 0x258]
mov edx, dword [eax + 0x1c]
mov eax, dword [eax + 0x18]
mov eax, dword [eax + edx*4 - 4]
mov ecx, dword [eax + 0xc]
mov edx, dword [eax + 4]
fld qword [edx + ecx*8 - 8]
fstp qword [esi + 0x260]
mov ecx, dword [ebx + 8]
mov eax, dword [ecx]
mov edx, dword [ebx + 0x1c]
mov eax, dword [eax + 0xcc]
push edx
call eax
mov ecx, dword [ebx + 0x1c]
call fcn.0042f4e0
pop edi
pop esi
pop ebx
mov ecx, dword [esp + 0x270]
xor ecx, esp
call fcn.00511afd
mov esp, ebp
pop ebp
ret 4
fstp st(0)
fstp st(0)
mov ecx, dword [esp + 0x27c]
pop edi
pop esi
pop ebx
xor ecx, esp
call fcn.00511afd
mov esp, ebp
pop ebp
ret 4