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

Disassembly:
mov eax, 0x61d5db
call fcn.0061b168
sub esp, 0x128
fldz
push ebx
fstp qword [ebp - 0xcc]
push esi
fldz
push edi
fstp qword [ebp - 0xd4]
mov ebx, ecx
fldz
fstp qword [ebp - 0xac]
fldz
fstp qword [ebp - 0xb4]
fldz
fstp qword [ebp - 0x48]
fldz
fstp qword [ebp - 0x50]
fldz
fstp qword [ebp - 0x7c]
fldz
fstp qword [ebp - 0x84]
fldz
fstp qword [ebp - 0x6c]
fldz
fstp qword [ebp - 0x74]
fldz
fstp qword [ebp - 0x58]
fldz
fstp qword [ebp - 0x60]
fldz
fstp qword [ebp - 0x8c]
fldz
fstp qword [ebp - 0x94]
fldz
fstp qword [ebp - 0xbc]
fldz
fstp qword [ebp - 0xc4]
fldz
fstp qword [ebp - 0xdc]
fldz
fstp qword [ebp - 0xe4]
fldz
fstp qword [ebp - 0x9c]
fldz
fstp qword [ebp - 0xa4]
jmp 0x6052ee
mov edx, dword [ebx]
or dword [ebx + 0x164], 0xffffffff
lea eax, [ebx + 0x1d0]
push eax
mov ecx, ebx
call dword [edx]
mov edx, dword [ebx + 0x1d8]
cmp dword [edx + 0x14], 0
je 0x6052ee
cmp dword [edx + 0x1c], 0
je 0x6052ee
fld qword [ebx + 0x1f0]
fsub qword [ebx + 0x1f8]
fabs
fcomp qword [0x427f50]
fnstsw ax
test ah, 0x41
jnp 0x6052ee
mov ecx, dword [ebx + 0x228]
mov esi, dword [edx + 0x10]
cmp ecx, esi
je 0x603e01
cmp ecx, dword [edx + 0x18]
je 0x603e01
or eax, 0xffffffff
jmp 0x603e08
mov eax, dword [edx + 0x18]
xor eax, ecx
xor eax, esi
mov esi, dword [ebx + 0x1d4]
lea ecx, [eax + eax*2]
shl ecx, 4
mov dword [ebp - 0x10], eax
mov eax, dword [ebx + 0x138]
add eax, ecx
mov dword [ebp - 0x28], ecx
mov ecx, dword [eax]
cmp esi, ecx
mov dword [ebp - 0x14], ecx
jne 0x603e33
mov ecx, dword [eax + 0xc]
mov edi, dword [eax + 0x14]
jmp 0x603e48
cmp esi, dword [eax + 8]
jne 0x603e3d
mov edi, dword [eax + 0x14]
jmp 0x603e45
cmp esi, dword [eax + 0x10]
jne 0x603e4d
mov edi, dword [eax + 0xc]
mov ecx, dword [eax + 4]
mov dword [ebp - 0x30], edi
jmp 0x603e53
or ecx, 0xffffffff
mov dword [ebp - 0x30], ecx
cmp esi, dword [ebp - 0x14]
mov dword [ebp - 0x20], ecx
jne 0x603e60
mov esi, dword [eax + 8]
jmp 0x603e6a
mov edi, dword [eax + 8]
cmp esi, edi
jne 0x603e72
mov esi, dword [ebp - 0x14]
mov eax, dword [eax + 0x10]
mov dword [ebp - 0x40], esi
jmp 0x603e87
cmp esi, dword [eax + 0x10]
jne 0x603e81
mov eax, dword [ebp - 0x14]
mov dword [ebp - 0x40], eax
mov eax, edi
jmp 0x603e87
or eax, 0xffffffff
mov dword [ebp - 0x40], eax
mov esi, dword [ebx + 0x1dc]
cmp dword [ecx], esi
mov dword [ebp - 0x1c], eax
je 0x603ead
cmp dword [ecx + 8], esi
je 0x603ead
mov edi, ecx
mov ecx, dword [ebp - 0x30]
mov dword [ebp - 0x30], edi
mov edi, dword [ebp - 0x40]
mov dword [ebp - 0x20], ecx
mov dword [ebp - 0x40], eax
mov dword [ebp - 0x1c], edi
mov eax, dword [ecx]
cmp esi, eax
je 0x603ebd
cmp esi, dword [ecx + 8]
je 0x603ebd
or ecx, 0xffffffff
jmp 0x603ec4
mov ecx, dword [ecx + 8]
xor ecx, esi
xor ecx, eax
mov edi, dword [edx]
mov eax, ecx
imul eax, eax, 0x68
mov dword [ebp - 0x2c], ecx
mov ecx, dword [ebx + 0x14c]
mov dword [ebp - 0x18], eax
add eax, ecx
cmp esi, edi
mov dword [ebp - 0x38], eax
je 0x603eeb
cmp esi, dword [edx + 8]
je 0x603eeb
or dword [ebp - 0x24], 0xffffffff
jmp 0x603ef5
mov eax, dword [edx + 8]
xor eax, esi
xor eax, edi
mov dword [ebp - 0x24], eax
fld qword [ebx + 0x1f0]
mov eax, dword [ebp - 0x24]
fstp qword [ebp - 0xd4]
lea esi, [ebx + 0x210]
imul eax, eax, 0x68
fldz
fstp qword [ebp - 0xcc]
fld qword [ebx + 0x1f8]
fst qword [ebp - 0xb4]
fldz
fstp qword [ebp - 0xac]
fldz
lea edi, [ebp - 0x50]
fstp qword [ebp - 0x7c]
movsd dword es:[edi], dword [esi]
fldz
fstp qword [ebp - 0x84]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
fld qword [edx + 0x20]
fstp qword [ebp - 0x74]
fldz
mov dword [ebp - 0x64], eax
fstp qword [ebp - 0x6c]
add eax, ecx
mov dword [ebp - 0x14], eax
fcomp qword [ebp - 0x74]
fnstsw ax
test ah, 0x41
jne 0x603f63
fld qword [ebp - 0x74]
fstp qword [ebp - 0xb4]
lea eax, [ebp - 0x60]
push eax
push dword [ebp - 0x38]
push dword [ebp - 0x14]
push dword [ebx + 0x1e0]
call fcn.004de6b0
fld qword [ebp - 0x58]
lea eax, [ebp - 0x32]
fchs
push eax
fstp qword [ebp - 0x58]
lea eax, [ebp - 0x94]
push eax
lea eax, [ebp - 0xd4]
push eax
lea eax, [ebp - 0x50]
push eax
lea eax, [ebp - 0x60]
push eax
lea eax, [ebp - 0x84]
push eax
call fcn.004de6b0
fld qword [0x401d98]
fld qword [ebp - 0x94]
fucompp
fnstsw ax
test ah, 0x44
jp 0x603fea
fld qword [ebp - 0xd4]
fsub qword [ebp - 0x84]
fabs
fcomp qword [0x427f50]
fnstsw ax
test ah, 5
jp 0x603fea
lea esi, [ebp - 0x84]
lea edi, [ebp - 0x94]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
mov byte [ebp - 0x32], 1
movsd dword es:[edi], dword [esi]
lea eax, [ebp - 0x39]
push eax
lea eax, [ebp - 0xc4]
push eax
lea eax, [ebp - 0xd4]
push eax
lea eax, [ebp - 0x50]
push eax
lea eax, [ebp - 0x60]
push eax
lea eax, [ebp - 0x74]
push eax
call fcn.004de6b0
lea eax, [ebp - 0x33]
push eax
lea eax, [ebp - 0xe4]
push eax
lea eax, [ebp - 0xb4]
push eax
lea eax, [ebp - 0x50]
push eax
lea eax, [ebp - 0x60]
push eax
lea eax, [ebp - 0x84]
push eax
call fcn.004de6b0
lea eax, [ebp - 0x31]
push eax
lea eax, [ebp - 0xa4]
push eax
lea eax, [ebp - 0xb4]
push eax
lea eax, [ebp - 0x50]
push eax
lea eax, [ebp - 0x60]
push eax
lea eax, [ebp - 0x74]
push eax
call fcn.004de6b0
fld qword [0x401d98]
fld qword [ebp - 0xa4]
fucompp
fnstsw ax
test ah, 0x44
jp 0x604094
fld qword [ebp - 0x74]
fsub qword [ebp - 0xb4]
fabs
fcomp qword [0x427f50]
fnstsw ax
test ah, 5
jp 0x604094
lea esi, [ebp - 0x74]
lea edi, [ebp - 0xa4]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
mov byte [ebp - 0x31], 1
movsd dword es:[edi], dword [esi]
cmp byte [ebp - 0x32], 0
je 0x6043b9
cmp byte [ebp - 0x31], 0
je 0x6043b9
cmp byte [ebp - 0x33], 0
jne 0x6043b9
cmp byte [ebp - 0x39], 0
jne 0x6043c3
fld qword [ebp - 0x94]
fsub qword [ebp - 0x60]
fld qword [ebp - 0x8c]
fsub qword [ebp - 0x58]
fld st(0)
fmul st(1)
fld st(2)
fmul st(3)
faddp st(1)
fsqrt
fstp st(2)
fstp st(0)
fst qword [ebx + 0x188]
fcomp qword [0x427f50]
fnstsw ax
test ah, 0x41
jne 0x60423c
fld qword [ebp - 0x84]
fld qword [ebp - 0xd4]
fucompp
fnstsw ax
test ah, 0x44
jp 0x604116
mov eax, dword [ebp - 0x20]
fld qword [eax + 0x20]
fstp qword [ebx + 0x188]
mov eax, dword [ebx + 0x1e4]
lea esi, [ebx + 0x160]
mov dword [esi + 0x14], eax
imul eax, eax, 0x68
add eax, dword [ebx + 0x14c]
mov dword [esi + 0x18], eax
mov eax, dword [ebp - 0x40]
mov dword [esi + 4], eax
shl eax, 6
add eax, dword [ebx + 0x124]
mov dword [esi + 8], eax
fld qword [ebx + 0x220]
mov eax, dword [ebp - 0x10]
fstp qword [ebx + 0x1b0]
mov dword [esi + 0x58], eax
fldz
mov eax, dword [ebx + 0x138]
add eax, dword [ebp - 0x28]
mov dword [esi + 0x5c], eax
fstp qword [ebx + 0x180]
fld qword [ebp - 0x50]
fsub qword [ebp - 0x60]
fld qword [ebp - 0x48]
fsub qword [ebp - 0x58]
fld st(0)
fmul st(1)
fld st(2)
fmul st(3)
faddp st(1)
fsqrt
fstp qword [ebx + 0x190]
fstp st(0)
fstp st(0)
fld qword [ebp - 0x84]
fld qword [ebp - 0xd4]
fucompp
fnstsw ax
test ah, 0x44
jp 0x6041ae
fld qword [ebp - 0x7c]
fsub qword [ebp - 0x48]
fld qword [ebp - 0x84]
jmp 0x6041bd
fld qword [ebp - 0x8c]
fsub qword [ebp - 0x48]
fld qword [ebp - 0x94]
fsub qword [ebp - 0x50]
lea eax, [ebx + 0x1a0]
push eax
lea eax, [ebp - 0x50]
fld st(0)
push eax
fmul st(1)
lea eax, [ebp - 0x84]
fld st(2)
push eax
fmul st(3)
lea eax, [ebp - 0x60]
push eax
faddp st(1)
fsqrt
fstp qword [ebx + 0x198]
fstp st(0)
fstp st(0)
call fcn.004de6b0
mov eax, dword [ebp - 0x2c]
mov dword [esi + 0xc], eax
mov eax, dword [ebx + 0x14c]
add eax, dword [ebp - 0x18]
mov dword [esi + 0x10], eax
fld qword [ebx + 0x238]
mov eax, dword [ebx + 0x1d8]
fstp qword [ebx + 0x1c8]
fld qword [ebx + 0x188]
mov dword [ebx + 0x1c0], eax
fsub qword [ebx + 0x180]
fcomp qword [0x427f50]
fnstsw ax
test ah, 0x41
jne 0x60423c
push esi
mov ecx, ebx
call fcn.006037df
fld qword [ebp - 0xa4]
fsub qword [ebp - 0x60]
fld qword [ebp - 0x9c]
fsub qword [ebp - 0x58]
fld st(0)
fmul st(1)
fld st(2)
fmul st(3)
faddp st(1)
fsqrt
fstp st(2)
fstp st(0)
fst qword [ebx + 0x188]
fcomp qword [0x427f50]
fnstsw ax
test ah, 0x41
jne 0x6052ee
fld qword [ebp - 0x74]
fld qword [ebp - 0xb4]
fucompp
fnstsw ax
test ah, 0x44
jp 0x604293
mov eax, dword [ebp - 0x30]
fld qword [eax + 0x20]
fstp qword [ebx + 0x188]
mov eax, dword [ebx + 0x1e4]
lea esi, [ebx + 0x160]
mov dword [esi + 0x14], eax
imul eax, eax, 0x68
add eax, dword [ebx + 0x14c]
mov dword [esi + 0x18], eax
mov eax, dword [ebp - 0x1c]
mov dword [esi + 4], eax
shl eax, 6
add eax, dword [ebx + 0x124]
mov dword [esi + 8], eax
fld qword [ebx + 0x220]
mov eax, dword [ebp - 0x10]
fstp qword [ebx + 0x1b0]
mov dword [esi + 0x58], eax
fldz
mov eax, dword [ebx + 0x138]
add eax, dword [ebp - 0x28]
mov dword [esi + 0x5c], eax
fstp qword [ebx + 0x180]
fld qword [ebp - 0x50]
fsub qword [ebp - 0x60]
fld qword [ebp - 0x48]
fsub qword [ebp - 0x58]
fld st(0)
fmul st(1)
fld st(2)
fmul st(3)
faddp st(1)
fsqrt
fstp qword [ebx + 0x190]
fstp st(0)
fstp st(0)
fld qword [ebp - 0x74]
fld qword [ebp - 0xb4]
fucompp
fnstsw ax
test ah, 0x44
jp 0x604325
fld qword [ebp - 0x6c]
fsub qword [ebp - 0x48]
fld qword [ebp - 0x74]
jmp 0x604334
fld qword [ebp - 0x9c]
fsub qword [ebp - 0x48]
fld qword [ebp - 0xa4]
fsub qword [ebp - 0x50]
lea eax, [ebx + 0x1a0]
push eax
lea eax, [ebp - 0x50]
fld st(0)
push eax
fmul st(1)
lea eax, [ebp - 0x74]
fld st(2)
push eax
fmul st(3)
lea eax, [ebp - 0x60]
push eax
faddp st(1)
fsqrt
fstp qword [ebx + 0x198]
fstp st(0)
fstp st(0)
call fcn.004de6b0
mov eax, dword [ebp - 0x2c]
mov dword [esi + 0xc], eax
mov eax, dword [ebx + 0x14c]
add eax, dword [ebp - 0x18]
mov dword [esi + 0x10], eax
fld qword [ebx + 0x238]
mov eax, dword [ebx + 0x1d8]
fstp qword [ebx + 0x1c8]
fld qword [ebx + 0x188]
mov dword [ebx + 0x1c0], eax
fsub qword [ebx + 0x180]
fcomp qword [0x427f50]
fnstsw ax
test ah, 0x41
jne 0x6052ee
push esi
mov ecx, ebx
call fcn.006037df
jmp 0x6052ee
cmp byte [ebp - 0x39], 0
je 0x604b36
cmp byte [ebp - 0x31], 0
je 0x604b36
mov eax, dword [ebx + 0x1e4]
mov edi, dword [ebp - 0x1c]
lea esi, [ebx + 0x160]
mov dword [esi + 0x14], eax
imul eax, eax, 0x68
add eax, dword [ebx + 0x14c]
mov dword [esi + 0x18], eax
mov dword [esi + 4], edi
mov eax, dword [ebx + 0x124]
shl edi, 6
add eax, edi
mov dword [esi + 8], eax
mov eax, dword [ebp - 0x10]
mov dword [esi + 0x58], eax
mov eax, dword [ebx + 0x138]
add eax, dword [ebp - 0x28]
mov dword [esi + 0x5c], eax
fld qword [ebx + 0x220]
fstp qword [ebx + 0x1b0]
fld qword [ebp - 0xc4]
fsub qword [ebp - 0x60]
fld qword [ebp - 0xbc]
fsub qword [ebp - 0x58]
fld st(0)
fmul st(1)
fld st(2)
fmul st(3)
faddp st(1)
fsqrt
fstp st(2)
fstp st(0)
fst qword [ebx + 0x180]
fcomp qword [0x427f50]
fnstsw ax
test ah, 5
jp 0x604457
fldz
fstp qword [ebx + 0x180]
fld qword [ebp - 0x74]
fld qword [ebp - 0xb4]
fucompp
fnstsw ax
test ah, 0x44
jp 0x604480
mov eax, dword [ebp - 0x30]
fld qword [eax + 0x20]
fstp qword [ebx + 0x188]
fld qword [ebp - 0x6c]
fsub qword [ebp - 0x48]
fld qword [ebp - 0x74]
jmp 0x6044b7
fld qword [ebp - 0xa4]
fsub qword [ebp - 0x60]
fld qword [ebp - 0x9c]
fsub qword [ebp - 0x58]
fld st(0)
fmul st(1)
fld st(2)
fmul st(3)
faddp st(1)
fsqrt
fstp qword [ebx + 0x188]
fstp st(0)
fstp st(0)
fld qword [ebp - 0x9c]
fsub qword [ebp - 0x48]
fld qword [ebp - 0xa4]
fsub qword [ebp - 0x50]
lea eax, [ebx + 0x1a0]
push eax
lea eax, [ebp - 0x50]
fld st(0)
push eax
fmul st(1)
lea eax, [ebp - 0x74]
fld st(2)
push eax
fmul st(3)
lea eax, [ebp - 0x60]
push eax
faddp st(1)
fsqrt
fstp qword [ebx + 0x198]
fstp st(0)
fstp st(0)
call fcn.004de6b0
fld qword [ebp - 0xbc]
mov eax, dword [ebp - 0x2c]
fsub qword [ebp - 0x48]
fld qword [ebp - 0xc4]
fsub qword [ebp - 0x50]
fld st(0)
fmul st(1)
fld st(2)
fmul st(3)
faddp st(1)
fsqrt
fstp qword [ebx + 0x190]
mov dword [esi + 0xc], eax
mov eax, dword [ebx + 0x14c]
add eax, dword [ebp - 0x18]
fstp st(0)
fstp st(0)
mov dword [esi + 0x10], eax
fld qword [ebx + 0x238]
mov eax, dword [ebx + 0x1d8]
fstp qword [ebx + 0x1c8]
fld qword [ebx + 0x188]
mov dword [ebx + 0x1c0], eax
fsub qword [ebx + 0x180]
fcomp qword [0x427f50]
fnstsw ax
test ah, 0x41
jne 0x60455b
push esi
mov ecx, ebx
call fcn.006037df
fld qword [ebp - 0x84]
fld qword [ebp - 0xd4]
fucompp
fnstsw ax
test ah, 0x44
jp 0x6052ee
mov eax, dword [ebx + 0x1e0]
cmp byte [eax + 0x18], 0
jne 0x604594
fld qword [eax + 0x20]
fcomp qword [0x4165d8]
fnstsw ax
test ah, 0x41
jne 0x6052ee
mov eax, dword [ebx + 0x1dc]
mov dword [esi + 0x14], eax
imul eax, eax, 0x68
add eax, dword [ebx + 0x14c]
mov dword [esi + 0x18], eax
mov eax, dword [ebp - 0x1c]
mov dword [esi + 4], eax
mov eax, dword [ebx + 0x124]
add eax, edi
mov dword [esi + 8], eax
fld qword [ebx + 0x200]
fadd qword [ebx + 0x220]
mov eax, dword [ebp - 0x10]
mov edi, dword [ebp - 0x20]
fstp qword [ebx + 0x1b0]
mov dword [esi + 0x58], eax
mov eax, dword [ebx + 0x138]
fldz
add eax, dword [ebp - 0x28]
mov dword [esi + 0x5c], eax
fstp qword [ebx + 0x180]
fld qword [ebp - 0xc4]
mov eax, dword [ebp - 0x2c]
fsub qword [ebp - 0x60]
fld qword [ebp - 0xbc]
fsub qword [ebp - 0x58]
fld st(0)
fmul st(1)
fld st(2)
fmul st(3)
faddp st(1)
fsqrt
fstp qword [ebx + 0x188]
fstp st(0)
fstp st(0)
fld qword [edi + 0x20]
fstp qword [ebx + 0x190]
fld qword [ebp - 0xc4]
fsub qword [ebp - 0x84]
fld qword [ebp - 0xbc]
fsub qword [ebp - 0x7c]
fld st(0)
fmul st(1)
fld st(2)
fmul st(3)
faddp st(1)
fsqrt
fstp qword [ebx + 0x198]
mov dword [esi + 0xc], eax
mov eax, dword [ebx + 0x14c]
add eax, dword [ebp - 0x18]
fstp st(0)
fstp st(0)
mov dword [esi + 0x10], eax
lea eax, [ebx + 0x1a0]
push eax
push dword [ebx + 0x1e0]
push dword [ebp - 0x14]
push dword [ebp - 0x38]
call fcn.004de6b0
fld qword [ebx + 0x238]
mov eax, dword [ebx + 0x1d8]
fstp qword [ebx + 0x1c8]
fld qword [ebx + 0x188]
mov dword [ebx + 0x1c0], eax
fsub qword [ebx + 0x180]
fcomp qword [0x427f50]
fnstsw ax
test ah, 0x41
jne 0x6046a8
push esi
mov ecx, ebx
call fcn.006037df
mov eax, dword [ebp - 0x38]
cmp byte [eax + 0x3d], 0
jne 0x6052ee
cmp dword [edi + 0x14], 0
je 0x6052ee
cmp dword [edi + 0x1c], 0
je 0x6052ee
mov byte [eax + 0x3d], 1
mov ecx, dword [edi + 0x10]
mov eax, dword [ebp - 0x10]
cmp eax, ecx
mov dword [ebp - 0x18], edi
je 0x6046e8
cmp eax, dword [edi + 0x18]
je 0x6046e4
or edi, 0xffffffff
jmp 0x6046f6
cmp eax, ecx
jne 0x6046f0
mov eax, dword [ebp - 0x20]
mov edi, dword [eax + 0x1c]
jmp 0x6046f6
mov eax, dword [ebp - 0x20]
mov edi, dword [eax + 0x14]
mov edx, dword [ebp - 0x10]
cmp edx, ecx
je 0x60470a
mov eax, dword [ebp - 0x20]
cmp edx, dword [eax + 0x18]
je 0x60470a
or eax, 0xffffffff
jmp 0x604714
mov eax, dword [ebp - 0x20]
mov eax, dword [eax + 0x18]
xor eax, ecx
xor eax, edx
mov edx, dword [edi + 0x18]
mov dword [ebp - 0x1c], eax
mov eax, dword [ebx + 0x1dc]
cmp eax, edx
je 0x604733
cmp eax, dword [edi + 0x20]
je 0x604733
cmp eax, dword [edi + 0x28]
je 0x604733
or ecx, 0xffffffff
jmp 0x60474e
mov ecx, dword [edi + 4]
cmp dword [ecx], eax
je 0x60473f
cmp dword [ecx + 8], eax
jne 0x60474e
mov ecx, dword [edi + 0xc]
cmp dword [ecx], eax
je 0x60474b
cmp dword [ecx + 8], eax
jne 0x60474e
mov ecx, dword [edi + 0x14]
cmp eax, edx
mov dword [ebp - 0x20], ecx
je 0x604764
cmp eax, dword [edi + 0x20]
je 0x604764
cmp eax, dword [edi + 0x28]
je 0x604764
or eax, 0xffffffff
jmp 0x604788
mov edx, dword [edi + 4]
cmp dword [edx], eax
je 0x604774
cmp dword [edx + 8], eax
je 0x604774
mov eax, dword [edi]
jmp 0x604788
mov edx, dword [edi + 0xc]
cmp dword [edx], eax
je 0x604785
cmp dword [edx + 8], eax
je 0x604785
mov eax, dword [edi + 8]
jmp 0x604788
mov eax, dword [edi + 0x10]
mov edx, dword [ecx]
mov dword [ebp - 0x14], eax
mov eax, dword [ebp - 0x2c]
cmp eax, edx
mov dword [ebp - 0x28], eax
je 0x6047a6
cmp eax, dword [ecx + 8]
je 0x6047a2
or dword [ebp - 0x10], 0xffffffff
jmp 0x6047b1
cmp eax, edx
jne 0x6047ab
mov eax, dword [ecx + 0xc]
jmp 0x6047ae
mov eax, dword [ecx + 4]
mov dword [ebp - 0x10], eax
xor eax, eax
push 4
pop ecx
mov dword [ebp - 0xf8], eax
mov dword [ebp - 0xf4], eax
mov dword [ebp - 0xf0], eax
mov dword [ebp - 0xec], eax
mov dword [ebp - 0xe8], ecx
mov dword [ebp - 4], eax
mov dword [ebp - 0x120], eax
mov dword [ebp - 0x11c], eax
mov dword [ebp - 0x118], eax
mov dword [ebp - 0x114], eax
mov dword [ebp - 0x110], ecx
mov byte [ebp - 4], 1
jmp 0x604948
mov eax, dword [ebp - 0x10]
cmp byte [eax + 0x3d], 0
jne 0x604977
mov ecx, dword [ebp - 0x28]
cmp ecx, dword [edi + 0x18]
je 0x604822
cmp ecx, dword [edi + 0x20]
je 0x604822
cmp ecx, dword [edi + 0x28]
je 0x604822
or eax, 0xffffffff
jmp 0x60483d
mov eax, dword [edi + 4]
cmp dword [eax], ecx
je 0x60482e
cmp dword [eax + 8], ecx
jne 0x60483d
mov eax, dword [edi + 0xc]
cmp dword [eax], ecx
je 0x60483a
cmp dword [eax + 8], ecx
jne 0x60483d
mov eax, dword [edi + 0x14]
mov edx, dword [eax + 0x14]
test edx, edx
mov dword [ebp - 0x18], eax
je 0x60497a
cmp dword [eax + 0x1c], 0
je 0x60497a
mov edx, dword [ebp - 0x20]
mov edx, dword [edx]
cmp ecx, edx
mov dword [ebp - 0x24], edx
je 0x60486f
mov edx, dword [ebp - 0x20]
cmp ecx, dword [edx + 8]
je 0x60486f
or dword [ebp - 0x28], 0xffffffff
jmp 0x60487d
mov edx, dword [ebp - 0x20]
mov edx, dword [edx + 8]
xor edx, ecx
xor edx, dword [ebp - 0x24]
mov dword [ebp - 0x28], edx
mov ecx, dword [eax + 0x14]
cmp edi, ecx
je 0x60488e
cmp edi, dword [eax + 0x1c]
je 0x60488e
or edi, 0xffffffff
jmp 0x604893
xor edi, ecx
xor edi, dword [eax + 0x1c]
mov ecx, dword [eax + 0x10]
mov edx, dword [ebp - 0x1c]
cmp edx, ecx
je 0x6048a7
cmp edx, dword [eax + 0x18]
je 0x6048a7
or eax, 0xffffffff
jmp 0x6048ae
mov eax, dword [eax + 0x18]
xor eax, ecx
xor eax, edx
mov edx, dword [edi + 0x18]
mov dword [ebp - 0x1c], eax
mov eax, dword [ebx + 0x1dc]
cmp eax, edx
je 0x6048cd
cmp eax, dword [edi + 0x20]
je 0x6048cd
cmp eax, dword [edi + 0x28]
je 0x6048cd
or ecx, 0xffffffff
jmp 0x6048e8
mov ecx, dword [edi + 4]
cmp dword [ecx], eax
je 0x6048d9
cmp dword [ecx + 8], eax
jne 0x6048e8
mov ecx, dword [edi + 0xc]
cmp dword [ecx], eax
je 0x6048e5
cmp dword [ecx + 8], eax
jne 0x6048e8
mov ecx, dword [edi + 0x14]
cmp eax, edx
mov dword [ebp - 0x20], ecx
je 0x6048fe
cmp eax, dword [edi + 0x20]
je 0x6048fe
cmp eax, dword [edi + 0x28]
je 0x6048fe
or eax, 0xffffffff
jmp 0x604922
mov edx, dword [edi + 4]
cmp dword [edx], eax
je 0x60490e
cmp dword [edx + 8], eax
je 0x60490e
mov eax, dword [edi]
jmp 0x604922
mov edx, dword [edi + 0xc]
cmp dword [edx], eax
je 0x60491f
cmp dword [edx + 8], eax
je 0x60491f
mov eax, dword [edi + 8]
jmp 0x604922
mov eax, dword [edi + 0x10]
mov edx, dword [ebp - 0x28]
mov dword [ebp - 0x14], eax
mov eax, dword [ecx]
cmp edx, eax
je 0x60493d
cmp edx, dword [ecx + 8]
je 0x604939
or dword [ebp - 0x10], 0xffffffff
jmp 0x604948
cmp edx, eax
jne 0x604942
mov eax, dword [ecx + 0xc]
jmp 0x604945
mov eax, dword [ecx + 4]
mov dword [ebp - 0x10], eax
lea eax, [ebp - 0x14]
lea ecx, [ebp - 0xf8]
push eax
call fcn.004de6b0
lea eax, [ebp - 0x1c]
lea ecx, [ebp - 0x120]
push eax
call fcn.004de6b0
mov eax, dword [ebp - 0x38]
cmp dword [ebp - 0x10], eax
jne 0x6047fe
jmp 0x604b01
mov eax, dword [ebp - 0x18]
mov ecx, dword [ebp - 0x10]
cmp ecx, dword [ebp - 0x38]
je 0x604b01
cmp byte [ecx + 0x3d], 0
jne 0x60499c
cmp dword [eax + 0x14], 0
je 0x60499c
cmp dword [eax + 0x1c], 0
jne 0x604b01
mov ecx, dword [ebp - 0xf0]
test ecx, ecx
jbe 0x604b01
mov edi, dword [ebp - 0x120]
mov eax, dword [ebp - 0xf8]
sub eax, edi
mov dword [ebp - 0x14], eax
mov dword [ebp - 0x24], ecx
mov eax, dword [ebp - 0x14]
fldz
mov eax, dword [eax + edi]
mov dword [esi + 4], eax
shl eax, 6
add eax, dword [ebx + 0x124]
mov dword [esi + 8], eax
mov eax, dword [edi]
mov dword [esi + 0x58], eax
lea eax, [eax + eax*2]
shl eax, 4
add eax, dword [ebx + 0x138]
mov dword [esi + 0x5c], eax
mov eax, dword [ebx + 0x168]
mov eax, dword [eax]
mov dword [esi + 0xc], eax
imul eax, eax, 0x68
add eax, dword [ebx + 0x14c]
mov dword [esi + 0x10], eax
mov eax, dword [ebx + 0x1dc]
mov dword [esi + 0x14], eax
imul eax, eax, 0x68
add eax, dword [ebx + 0x14c]
mov dword [esi + 0x18], eax
fstp qword [ebx + 0x180]
mov ecx, dword [ebx + 0x168]
fld qword [ecx + 0x20]
mov eax, dword [ebx + 0x1e0]
fstp qword [ebx + 0x188]
mov edx, dword [ecx + 4]
fld qword [edx + 0x10]
fsub qword [eax + 0x10]
fld qword [edx + 8]
fsub qword [eax + 8]
fld qword [edx]
fsub qword [eax]
fld st(0)
fmul st(1)
fld st(2)
fmul st(3)
faddp st(1)
fld st(3)
fmul st(4)
faddp st(1)
fsqrt
fstp qword [ebx + 0x190]
mov edx, dword [ecx + 0xc]
fstp st(0)
fstp st(0)
fstp st(0)
fld qword [edx + 0x10]
fsub qword [eax + 0x10]
fld qword [edx + 8]
fsub qword [eax + 8]
fld qword [edx]
fsub qword [eax]
lea eax, [ebx + 0x1a0]
push eax
push dword [ebx + 0x178]
fld st(0)
fmul st(1)
fld st(2)
fmul st(3)
faddp st(1)
fld st(3)
fmul st(4)
faddp st(1)
fsqrt
fstp qword [ebx + 0x198]
fstp st(0)
fstp st(0)
fstp st(0)
fld qword [ebx + 0x200]
fadd qword [ebx + 0x220]
fstp qword [ebx + 0x1b0]
push dword [ecx + 0xc]
push dword [ecx + 4]
call fcn.004de6b0
fld qword [ebx + 0x238]
mov eax, dword [ebx + 0x1d8]
fstp qword [ebx + 0x1c8]
fld qword [ebx + 0x188]
mov dword [ebx + 0x1c0], eax
fsub qword [ebx + 0x180]
fcomp qword [0x427f50]
fnstsw ax
test ah, 0x41
jne 0x604af5
push esi
mov ecx, ebx
call fcn.006037df
add edi, 4
dec dword [ebp - 0x24]
jne 0x6049be
cmp dword [ebp - 0x120], 0
mov byte [ebp - 4], 0
je 0x604b1a
push dword [ebp - 0x120]
call sub.msvcrt.dll_void___cdecl_operator_delete_void__
pop ecx
or dword [ebp - 4], 0xffffffff
cmp dword [ebp - 0xf8], 0
je 0x6052ee
push dword [ebp - 0xf8]
jmp 0x6052e8
cmp byte [ebp - 0x32], 0
je 0x6052ee
cmp byte [ebp - 0x33], 0
je 0x6052ee
mov eax, dword [ebx + 0x1e4]
mov edi, dword [ebp - 0x40]
lea esi, [ebx + 0x160]
mov dword [esi + 0x14], eax
imul eax, eax, 0x68
add eax, dword [ebx + 0x14c]
mov dword [esi + 0x18], eax
mov dword [esi + 4], edi
mov eax, dword [ebx + 0x124]
shl edi, 6
add eax, edi
mov dword [esi + 8], eax
mov eax, dword [ebp - 0x10]
mov dword [esi + 0x58], eax
mov eax, dword [ebx + 0x138]
add eax, dword [ebp - 0x28]
mov dword [esi + 0x5c], eax
fld qword [ebx + 0x220]
fstp qword [ebx + 0x1b0]
fld qword [ebp - 0xe4]
fsub qword [ebp - 0x60]
fld qword [ebp - 0xdc]
fsub qword [ebp - 0x58]
fld st(0)
fmul st(1)
fld st(2)
fmul st(3)
faddp st(1)
fsqrt
fstp st(2)
fstp st(0)
fst qword [ebx + 0x180]
fcomp qword [0x427f50]
fnstsw ax
test ah, 5
jp 0x604bd4
fldz
fstp qword [ebx + 0x180]
fld qword [ebp - 0x84]
fld qword [ebp - 0xd4]
fucompp
fnstsw ax
test ah, 0x44
jp 0x604c03
mov eax, dword [ebp - 0x20]
fld qword [eax + 0x20]
fstp qword [ebx + 0x188]
fld qword [ebp - 0x7c]
fsub qword [ebp - 0x48]
fld qword [ebp - 0x84]
jmp 0x604c3a
fld qword [ebp - 0x94]
fsub qword [ebp - 0x60]
fld qword [ebp - 0x8c]
fsub qword [ebp - 0x58]
fld st(0)
fmul st(1)
fld st(2)
fmul st(3)
faddp st(1)
fsqrt
fstp qword [ebx + 0x188]
fstp st(0)
fstp st(0)
fld qword [ebp - 0x8c]
fsub qword [ebp - 0x48]
fld qword [ebp - 0x94]
fsub qword [ebp - 0x50]
lea eax, [ebx + 0x1a0]
push eax
lea eax, [ebp - 0x50]
fld st(0)
push eax
fmul st(1)
lea eax, [ebp - 0x84]
fld st(2)
push eax
fmul st(3)
lea eax, [ebp - 0x60]
push eax
faddp st(1)
fsqrt
fstp qword [ebx + 0x198]
fstp st(0)
fstp st(0)
call fcn.004de6b0
fld qword [ebp - 0xdc]
mov eax, dword [ebp - 0x2c]
fsub qword [ebp - 0x48]
fld qword [ebp - 0xe4]
fsub qword [ebp - 0x50]
fld st(0)
fmul st(1)
fld st(2)
fmul st(3)
faddp st(1)
fsqrt
fstp qword [ebx + 0x190]
mov dword [esi + 0xc], eax
mov eax, dword [ebx + 0x14c]
add eax, dword [ebp - 0x18]
fstp st(0)
fstp st(0)
mov dword [esi + 0x10], eax
fld qword [ebx + 0x238]
mov eax, dword [ebx + 0x1d8]
fstp qword [ebx + 0x1c8]
fld qword [ebx + 0x188]
mov dword [ebx + 0x1c0], eax
fsub qword [ebx + 0x180]
fcomp qword [0x427f50]
fnstsw ax
test ah, 0x41
jne 0x604ce1
push esi
mov ecx, ebx
call fcn.006037df
fld qword [ebp - 0x74]
fld qword [ebp - 0xb4]
fucompp
fnstsw ax
test ah, 0x44
jp 0x6052ee
mov eax, dword [ebp - 0x14]
cmp byte [eax + 0x18], 0
jne 0x604d14
fld qword [eax + 0x20]
fcomp qword [0x4165d8]
fnstsw ax
test ah, 0x41
jne 0x6052ee
mov eax, dword [ebp - 0x24]
mov dword [esi + 0x14], eax
mov eax, dword [ebx + 0x14c]
add eax, dword [ebp - 0x64]
mov dword [esi + 0x18], eax
mov eax, dword [ebp - 0x40]
mov dword [esi + 4], eax
mov eax, dword [ebx + 0x124]
add eax, edi
mov dword [esi + 8], eax
mov eax, dword [ebp - 0x10]
mov dword [esi + 0x58], eax
mov eax, dword [ebx + 0x138]
add eax, dword [ebp - 0x28]
mov edi, dword [ebp - 0x30]
mov dword [esi + 0x5c], eax
fld qword [ebx + 0x220]
fadd qword [ebx + 0x208]
mov eax, dword [ebp - 0x2c]
fstp qword [ebx + 0x1b0]
fldz
fstp qword [ebx + 0x180]
fld qword [ebp - 0xe4]
fsub qword [ebp - 0x60]
fld qword [ebp - 0xdc]
fsub qword [ebp - 0x58]
fld st(0)
fmul st(1)
fld st(2)
fmul st(3)
faddp st(1)
fsqrt
fstp qword [ebx + 0x188]
fstp st(0)
fstp st(0)
fld qword [edi + 0x20]
fstp qword [ebx + 0x190]
fld qword [ebp - 0xdc]
fsub qword [ebp - 0x6c]
fld qword [ebp - 0xe4]
fsub qword [ebp - 0x74]
fld st(0)
fmul st(1)
fld st(2)
fmul st(3)
faddp st(1)
fsqrt
fstp qword [ebx + 0x198]
mov dword [esi + 0xc], eax
mov eax, dword [ebx + 0x14c]
add eax, dword [ebp - 0x18]
fstp st(0)
fstp st(0)
mov dword [esi + 0x10], eax
lea eax, [ebx + 0x1a0]
push eax
push dword [ebp - 0x14]
push dword [ebx + 0x1e0]
push dword [ebp - 0x38]
call fcn.004de6b0
fld qword [ebx + 0x238]
mov eax, dword [ebx + 0x1d8]
fstp qword [ebx + 0x1c8]
fld qword [ebx + 0x188]
mov dword [ebx + 0x1c0], eax
fsub qword [ebx + 0x180]
fcomp qword [0x427f50]
fnstsw ax
test ah, 0x41
jne 0x604e22
push esi
mov ecx, ebx
call fcn.006037df
mov eax, dword [ebp - 0x38]
cmp byte [eax + 0x3d], 0
jne 0x6052ee
cmp dword [edi + 0x14], 0
je 0x6052ee
cmp dword [edi + 0x1c], 0
je 0x6052ee
mov ecx, dword [ebp - 0x10]
mov byte [eax + 0x3d], 1
mov eax, dword [edi + 0x10]
cmp ecx, eax
mov dword [ebp - 0x30], edi
je 0x604e63
cmp ecx, dword [edi + 0x18]
je 0x604e5f
or dword [ebp - 0x1c], 0xffffffff
jmp 0x604e6e
cmp ecx, eax
jne 0x604e68
mov edx, dword [edi + 0x1c]
jmp 0x604e6b
mov edx, dword [edi + 0x14]
mov dword [ebp - 0x1c], edx
cmp ecx, eax
je 0x604e7c
cmp ecx, dword [edi + 0x18]
je 0x604e7c
or edi, 0xffffffff
jmp 0x604e83
mov edi, dword [edi + 0x18]
xor edi, eax
xor edi, ecx
mov eax, dword [ebx + 0x1d8]
mov ecx, dword [ebx + 0x1dc]
mov edx, dword [eax]
cmp ecx, edx
mov dword [ebp - 0x18], edi
je 0x604ea2
cmp ecx, dword [eax + 8]
je 0x604ea2
or edi, 0xffffffff
jmp 0x604ea9
mov edi, dword [eax + 8]
xor edi, edx
xor edi, ecx
mov eax, dword [ebp - 0x1c]
mov edx, dword [eax + 0x18]
cmp edi, edx
mov dword [ebp - 0x28], edi
je 0x604ec5
cmp edi, dword [eax + 0x20]
je 0x604ec5
cmp edi, dword [eax + 0x28]
je 0x604ec5
or ecx, 0xffffffff
jmp 0x604ee0
mov ecx, dword [eax + 4]
cmp dword [ecx], edi
je 0x604ed1
cmp dword [ecx + 8], edi
jne 0x604ee0
mov ecx, dword [eax + 0xc]
cmp dword [ecx], edi
je 0x604edd
cmp dword [ecx + 8], edi
jne 0x604ee0
mov ecx, dword [eax + 0x14]
cmp edi, edx
mov dword [ebp - 0x10], ecx
je 0x604ef6
cmp edi, dword [eax + 0x20]
je 0x604ef6
cmp edi, dword [eax + 0x28]
je 0x604ef6
or eax, 0xffffffff
jmp 0x604f1a
mov edx, dword [eax + 4]
cmp dword [edx], edi
je 0x604f06
cmp dword [edx + 8], edi
je 0x604f06
mov eax, dword [eax]
jmp 0x604f1a
mov edx, dword [eax + 0xc]
cmp dword [edx], edi
je 0x604f17
cmp dword [edx + 8], edi
je 0x604f17
mov eax, dword [eax + 8]
jmp 0x604f1a
mov eax, dword [eax + 0x10]
mov edx, dword [ecx]
mov dword [ebp - 0x24], eax
mov eax, dword [ebp - 0x2c]
cmp eax, edx
mov dword [ebp - 0x14], eax
je 0x604f38
cmp eax, dword [ecx + 8]
je 0x604f34
or dword [ebp - 0x2c], 0xffffffff
jmp 0x604f43
cmp eax, edx
jne 0x604f3d
mov eax, dword [ecx + 0xc]
jmp 0x604f40
mov eax, dword [ecx + 4]
mov dword [ebp - 0x2c], eax
xor ecx, ecx
push 4
pop eax
mov dword [ebp - 0x10c], ecx
mov dword [ebp - 0x108], ecx
mov dword [ebp - 0x104], ecx
mov dword [ebp - 0x100], ecx
mov dword [ebp - 0xfc], eax
mov dword [ebp - 4], 2
mov dword [ebp - 0x134], ecx
mov dword [ebp - 0x130], ecx
mov dword [ebp - 0x12c], ecx
mov dword [ebp - 0x128], ecx
mov dword [ebp - 0x124], eax
mov byte [ebp - 4], 3
jmp 0x6050f0
mov eax, dword [ebp - 0x2c]
cmp byte [eax + 0x3d], 0
jne 0x60511f
mov eax, dword [ebp - 0x14]
mov edx, dword [ebp - 0x1c]
cmp eax, dword [edx + 0x18]
je 0x604fbb
cmp eax, dword [edx + 0x20]
je 0x604fbb
cmp eax, dword [edx + 0x28]
je 0x604fbb
or ecx, 0xffffffff
jmp 0x604fd6
mov ecx, dword [edx + 4]
cmp dword [ecx], eax
je 0x604fc7
cmp dword [ecx + 8], eax
jne 0x604fd6
mov ecx, dword [edx + 0xc]
cmp dword [ecx], eax
je 0x604fd3
cmp dword [ecx + 8], eax
jne 0x604fd6
mov ecx, dword [edx + 0x14]
mov edx, dword [ecx + 0x14]
test edx, edx
mov dword [ebp - 0x30], ecx
je 0x605122
cmp dword [ecx + 0x1c], 0
je 0x605122
mov edx, dword [ebp - 0x10]
mov edx, dword [edx]
cmp eax, edx
mov dword [ebp - 0x64], edx
je 0x605008
mov edx, dword [ebp - 0x10]
cmp eax, dword [edx + 8]
je 0x605008
or dword [ebp - 0x14], 0xffffffff
jmp 0x605019
mov ecx, dword [ebp - 0x10]
mov ecx, dword [ecx + 8]
xor ecx, dword [ebp - 0x64]
xor eax, ecx
mov ecx, dword [ebp - 0x30]
mov dword [ebp - 0x14], eax
mov eax, dword [ecx + 0x14]
mov edx, dword [ebp - 0x1c]
cmp edx, eax
je 0x60502d
cmp edx, dword [ecx + 0x1c]
je 0x60502d
or eax, 0xffffffff
jmp 0x605034
xor edx, eax
xor edx, dword [ecx + 0x1c]
mov eax, edx
mov ecx, dword [ecx + 0x10]
mov edx, dword [ebp - 0x18]
cmp edx, ecx
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x64], ecx
je 0x605051
mov ecx, dword [ebp - 0x30]
cmp edx, dword [ecx + 0x18]
je 0x605051
or ecx, 0xffffffff
jmp 0x60505c
mov ecx, dword [ebp - 0x30]
mov ecx, dword [ecx + 0x18]
xor ecx, edx
xor ecx, dword [ebp - 0x64]
mov edx, dword [eax + 0x18]
cmp edi, edx
mov dword [ebp - 0x18], ecx
je 0x605075
cmp edi, dword [eax + 0x20]
je 0x605075
cmp edi, dword [eax + 0x28]
je 0x605075
or ecx, 0xffffffff
jmp 0x605090
mov ecx, dword [eax + 4]
cmp dword [ecx], edi
je 0x605081
cmp dword [ecx + 8], edi
jne 0x605090
mov ecx, dword [eax + 0xc]
cmp dword [ecx], edi
je 0x60508d
cmp dword [ecx + 8], edi
jne 0x605090
mov ecx, dword [eax + 0x14]
cmp edi, edx
mov dword [ebp - 0x10], ecx
je 0x6050a6
cmp edi, dword [eax + 0x20]
je 0x6050a6
cmp edi, dword [eax + 0x28]
je 0x6050a6
or eax, 0xffffffff
jmp 0x6050ca
mov edx, dword [eax + 4]
cmp dword [edx], edi
je 0x6050b6
cmp dword [edx + 8], edi
je 0x6050b6
mov eax, dword [eax]
jmp 0x6050ca
mov edx, dword [eax + 0xc]
cmp dword [edx], edi
je 0x6050c7
cmp dword [edx + 8], edi
je 0x6050c7
mov eax, dword [eax + 8]
jmp 0x6050ca
mov eax, dword [eax + 0x10]
mov edx, dword [ebp - 0x14]
mov dword [ebp - 0x24], eax
mov eax, dword [ecx]
cmp edx, eax
je 0x6050e5
cmp edx, dword [ecx + 8]
je 0x6050e1
or dword [ebp - 0x2c], 0xffffffff
jmp 0x6050f0
cmp edx, eax
jne 0x6050ea
mov eax, dword [ecx + 0xc]
jmp 0x6050ed
mov eax, dword [ecx + 4]
mov dword [ebp - 0x2c], eax
lea eax, [ebp - 0x24]
lea ecx, [ebp - 0x10c]
push eax
call fcn.004de6b0
lea eax, [ebp - 0x18]
lea ecx, [ebp - 0x134]
push eax
call fcn.004de6b0
mov eax, dword [ebp - 0x38]
cmp dword [ebp - 0x2c], eax
jne 0x604f94
jmp 0x6052bc
mov ecx, dword [ebp - 0x30]
mov eax, dword [ebp - 0x2c]
cmp eax, dword [ebp - 0x38]
je 0x6052bc
cmp byte [eax + 0x3d], 0
jne 0x605144
cmp dword [ecx + 0x14], 0
je 0x605144
cmp dword [ecx + 0x1c], 0
jne 0x6052bc
mov ecx, dword [ebp - 0x104]
test ecx, ecx
jbe 0x6052bc
mov edx, dword [ebp - 0x134]
mov eax, edi
imul eax, eax, 0x68
mov dword [ebp - 0x14], eax
mov eax, dword [ebp - 0x10c]
sub eax, edx
mov dword [ebp - 0x24], edx
mov dword [ebp - 0x64], eax
mov dword [ebp - 0x18], ecx
jmp 0x605179
mov eax, dword [ebp - 0x64]
mov edi, dword [ebp - 0x28]
mov ecx, dword [ebp - 0x24]
fldz
mov eax, dword [eax + ecx]
mov dword [esi + 4], eax
shl eax, 6
add eax, dword [ebx + 0x124]
mov dword [esi + 8], eax
mov eax, dword [ecx]
mov dword [esi + 0x58], eax
lea eax, [eax + eax*2]
shl eax, 4
add eax, dword [ebx + 0x138]
mov dword [esi + 0x5c], eax
mov eax, dword [ebx + 0x168]
mov eax, dword [eax]
mov dword [esi + 0xc], eax
imul eax, eax, 0x68
add eax, dword [ebx + 0x14c]
mov dword [esi + 0x10], eax
mov dword [esi + 0x14], edi
mov eax, dword [ebx + 0x14c]
add eax, dword [ebp - 0x14]
mov edi, dword [ebp - 0x14]
mov dword [esi + 0x18], eax
fstp qword [ebx + 0x180]
mov ecx, dword [ebx + 0x168]
fld qword [ecx + 0x20]
mov eax, dword [ebx + 0x14c]
fstp qword [ebx + 0x188]
mov edx, dword [ecx + 4]
fld qword [edx + 0x10]
add eax, edi
fsub qword [eax + 0x10]
fld qword [edx + 8]
fsub qword [eax + 8]
fld qword [edx]
fsub qword [eax]
fld st(0)
fmul st(1)
fld st(2)
fmul st(3)
faddp st(1)
fld st(3)
fmul st(4)
faddp st(1)
fsqrt
fstp qword [ebx + 0x190]
mov edx, dword [ecx + 0xc]
fstp st(0)
fstp st(0)
fstp st(0)
fld qword [edx + 0x10]
fsub qword [eax + 0x10]
fld qword [edx + 8]
fsub qword [eax + 8]
fld qword [edx]
fsub qword [eax]
lea eax, [ebx + 0x1a0]
push eax
fld st(0)
fmul st(1)
fld st(2)
fmul st(3)
faddp st(1)
fld st(3)
fmul st(4)
faddp st(1)
fsqrt
fstp qword [ebx + 0x198]
fstp st(0)
fstp st(0)
fstp st(0)
fld qword [ebx + 0x220]
fadd qword [ebx + 0x208]
fstp qword [ebx + 0x1b0]
push dword [ebx + 0x178]
push dword [ecx + 0xc]
push dword [ecx + 4]
call fcn.004de6b0
fld qword [ebx + 0x238]
mov eax, dword [ebx + 0x1d8]
fstp qword [ebx + 0x1c8]
fld qword [ebx + 0x188]
mov dword [ebx + 0x1c0], eax
fsub qword [ebx + 0x180]
fcomp qword [0x427f50]
fnstsw ax
test ah, 0x41
jne 0x6052af
push esi
mov ecx, ebx
call fcn.006037df
add dword [ebp - 0x24], 4
dec dword [ebp - 0x18]
jne 0x605173
cmp dword [ebp - 0x134], 0
mov byte [ebp - 4], 2
je 0x6052d5
push dword [ebp - 0x134]
call sub.msvcrt.dll_void___cdecl_operator_delete_void__
pop ecx
or dword [ebp - 4], 0xffffffff
cmp dword [ebp - 0x10c], 0
je 0x6052ee
push dword [ebp - 0x10c]
call sub.msvcrt.dll_void___cdecl_operator_delete_void__
pop ecx
cmp dword [ebx + 0x118], 0
jne 0x603d9d
xor eax, eax
cmp dword [ebx + 0x154], eax
mov dword [ebp - 0x28], eax
jbe 0x605488
mov dword [ebp - 0x18], eax
mov eax, dword [ebx + 0x14c]
mov ecx, dword [ebp - 0x18]
add ecx, eax
cmp byte [ecx + 0x3c], 0
je 0x605472
fld qword [0x401d98]
fld qword [ecx + 0x30]
fucompp
fnstsw ax
test ah, 0x44
jp 0x605472
and dword [ebp - 0x14], 0
cmp dword [ecx + 0x5c], 0
jbe 0x605472
mov ecx, dword [ebp - 0x18]
mov eax, dword [ebx + 0x14c]
mov eax, dword [eax + ecx + 0x54]
mov ecx, dword [ebp - 0x14]
mov edi, dword [eax + ecx*4]
and dword [ebp - 0x1c], 0
cmp dword [edi + 0x30], 0
jbe 0x605459
and dword [ebp - 0x24], 0
mov eax, dword [edi + 0x28]
mov ecx, dword [ebp - 0x24]
lea ecx, [ecx + eax + 8]
mov eax, dword [ebp - 0x28]
cmp dword [ecx + 0xc], eax
jne 0x6053d7
mov edx, dword [ecx + 0x10]
fld qword [ecx + 0x20]
fcomp qword [edx + 0x28]
fnstsw ax
test ah, 5
jp 0x6053a5
fld qword [ecx + 0x20]
mov eax, edx
fstp qword [eax + 0x28]
mov eax, dword [ecx + 0x10]
fld qword [ecx + 0x50]
fadd qword [ecx + 0x30]
fstp qword [eax + 0x30]
jmp 0x6053cc
fld qword [edx + 0x28]
fld qword [ecx + 0x20]
fucompp
fnstsw ax
test ah, 0x44
jp 0x6053cc
fld qword [ecx + 0x50]
fadd qword [ecx + 0x30]
fcom qword [edx + 0x30]
fnstsw ax
test ah, 0x41
jne 0x6053c9
fstp st(0)
fld qword [edx + 0x30]
fstp qword [edx + 0x30]
fld qword [ecx + 0x50]
mov edx, dword [ecx + 0x10]
fadd qword [ecx + 0x30]
jmp 0x605434
mov edx, dword [ebx + 0x14c]
add edx, dword [ebp - 0x18]
mov esi, dword [ecx + 8]
fld qword [esi + 0x20]
fsub qword [edx + 0x28]
fcom qword [ecx + 0x28]
fnstsw ax
test ah, 5
jp 0x605406
fstp st(0)
fld qword [esi + 0x20]
fsub qword [ecx + 0x28]
fstp qword [edx + 0x28]
fld qword [ecx + 0x50]
fadd qword [ecx + 0x38]
jmp 0x60542b
fld st(0)
fld qword [ecx + 0x28]
fucompp
fnstsw ax
fstp st(0)
test ah, 0x44
jp 0x60542e
fld qword [ecx + 0x50]
fadd qword [ecx + 0x38]
fcom qword [edx + 0x30]
fnstsw ax
test ah, 0x41
jne 0x60542b
fstp st(0)
fld qword [edx + 0x30]
fstp qword [edx + 0x30]
fld qword [ecx + 0x50]
fadd qword [ecx + 0x38]
fld qword [edx + 0x30]
fucompp
fnstsw ax
test ah, 0x44
jp 0x605446
mov eax, dword [ecx + 8]
mov dword [edx + 0x38], eax
inc dword [ebp - 0x1c]
mov eax, dword [ebp - 0x1c]
add dword [ebp - 0x24], 0x78
cmp eax, dword [edi + 0x30]
jb 0x60536d
inc dword [ebp - 0x14]
mov eax, dword [ebx + 0x14c]
mov ecx, dword [ebp - 0x18]
mov edx, dword [ebp - 0x14]
cmp edx, dword [eax + ecx + 0x5c]
jb 0x605348
inc dword [ebp - 0x28]
mov eax, dword [ebp - 0x28]
add dword [ebp - 0x18], 0x68
cmp eax, dword [ebx + 0x154]
jb 0x60530f
mov ecx, dword [ebp - 0xc]
pop edi
pop esi
pop ebx
mov dword fs:[0], ecx
leave
ret
and dword [ecx + 0x11c], 0
and dword [ecx + 0x120], 0
jmp 0x603cf8