Function at 0x100225f0
Capabilities:
Write file on windows

Disassembly:
push ebp
push ebx
push edi
push esi
sub esp, 0xa4
mov eax, dword [0x1017f528]
xor eax, esp
mov dword [esp + 0xa0], eax
mov ebx, dword [0x1017f770]
mov eax, dword [ebx + 0x2f54]
test eax, eax
jle 0x100226a9
lea esi, [eax + 1]
lea ecx, [eax + eax*4]
lea edi, [ecx*4 - 0x14]
mov ebp, eax
neg ebp
jmp 0x1002263a
dec esi
add edi, 0xffffffec
inc ebp
cmp esi, 1
jbe 0x10022671
mov ecx, dword [ebx + 0x2f5c]
cmp dword [ecx + edi + 4], 7
jne 0x10022630
lea edx, [ecx + edi]
add edx, 0x14
add ecx, edi
add eax, ebp
shl eax, 2
lea eax, [eax + eax*4]
push eax
push edx
push ecx
call sub.VCRUNTIME140.dll_memmove
add esp, 0xc
mov eax, dword [ebx + 0x2f54]
dec eax
mov dword [ebx + 0x2f54], eax
jmp 0x10022630
test eax, eax
jle 0x100226a9
xor esi, esi
xor edi, edi
jmp 0x10022688
inc edi
add esi, 0x14
cmp edi, eax
jge 0x100226a9
mov ecx, dword [ebx + 0x2f5c]
cmp dword [ecx + esi + 4], 0
jne 0x10022680
lea eax, [ecx + esi]
push eax
push ebx
call dword [ecx + esi + 0xc]
add esp, 8
mov eax, dword [ebx + 0x2f54]
jmp 0x10022680
mov ebp, dword [0x1017f770]
cmp byte [ebp + 0xb4], 0
je 0x100226c5
test byte [ebp + 0xc], 2
jne 0x100226c5
mov byte [ebp + 0xb4], 0
cmp byte [ebp + 0x2f1d], 0
jne 0x10022734
mov eax, dword [ebp + 0x20]
test eax, eax
je 0x1002272d
mov dword [esp + 0x98], 0
lea ecx, [esp + 0x98]
push 0
push ecx
push 0x1016ed9f
push eax
call fcn.1001ce20
add esp, 0x10
test eax, eax
je 0x1002272d
mov esi, eax
push dword [esp + 0x98]
push eax
call fcn.10033e40
add esp, 8
mov eax, dword [0x1017f770]
test eax, eax
je 0x1002271d
dec dword [eax + 0x36c]
push dword [0x1017f778]
push esi
call dword [0x10175018]
add esp, 8
mov byte [ebp + 0x2f1d], 1
vmovss xmm1, dword [ebp + 0x2f20]
vxorps xmm0, xmm0, xmm0
vucomiss xmm1, xmm0
jbe 0x100227d5
vsubss xmm1, xmm1, dword [ebp + 0x18]
vmovss dword [ebp + 0x2f20], xmm1
vucomiss xmm0, xmm1
jb 0x100227d5
mov edi, dword [ebp + 0x20]
test edi, edi
je 0x100227c4
mov eax, dword [0x1017f770]
mov dword [eax + 0x2f20], 0
mov dword [esp + 0x98], 0
lea eax, [esp + 0x98]
push eax
call fcn.100341b0
add esp, 4
mov esi, eax
push 0x1016bbe7
push edi
call fcn.1001cd50
add esp, 8
test eax, eax
je 0x100227cb
mov edi, eax
push eax
push dword [esp + 0x9c]
push 1
push esi
call dword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll_fwrite]
add esp, 0x10
push edi
call dword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll_fclose]
add esp, 4
jmp 0x100227cb
mov byte [ebp + 0x354], 1
mov dword [ebp + 0x2f20], 0
vmovss xmm0, dword [ebx + 0x18]
vcvtss2sd xmm1, xmm0, xmm0
vaddsd xmm1, xmm1, qword [ebx + 0x1b30]
vmovsd qword [ebx + 0x1b30], xmm1
mov byte [ebx + 0x1b44], 1
inc dword [ebx + 0x1b38]
mov word [ebx + 0x2eee], 0
mov dword [ebx + 0x1b8c], 0
cmp dword [ebx + 0x2f04], 0
jns 0x10022896
mov eax, dword [0x1017f770]
test eax, eax
je 0x10022826
inc dword [eax + 0x36c]
push dword [0x1017f778]
push 0
call dword [0x10175014]
add esp, 8
mov esi, eax
mov eax, dword [ebx + 0x2f08]
test eax, eax
je 0x10022881
mov ecx, dword [ebx + 0x2f00]
shl ecx, 2
push ecx
push eax
push esi
call sub.VCRUNTIME140.dll_memcpy
add esp, 0xc
mov eax, dword [ebx + 0x2f08]
test eax, eax
je 0x10022871
mov ecx, dword [0x1017f770]
test ecx, ecx
je 0x10022871
dec dword [ecx + 0x36c]
push dword [0x1017f778]
push eax
call dword [0x10175018]
add esp, 8
mov dword [ebx + 0x2f08], esi
mov dword [ebx + 0x2f04], 0
vmovss xmm0, dword [ebx + 0x18]
mov dword [ebx + 0x2f00], 0
mov eax, dword [ebx + 0x31a8]
vsubss xmm1, xmm0, dword [ebx + eax*4 + 0x2fc8]
vaddss xmm1, xmm1, dword [ebx + 0x31b0]
vmovss dword [ebx + 0x31b0], xmm1
vmovss dword [ebx + eax*4 + 0x2fc8], xmm0
mov esi, dword [ebx + 0x31a8]
mov ecx, dword [ebx + 0x31ac]
lea eax, [esi + 1]
mov edx, 0x88888889
imul edx
lea eax, [edx + esi]
inc eax
mov edx, eax
shr edx, 0x1f
sar eax, 6
add eax, edx
imul eax, eax, 0x78
neg eax
add eax, esi
inc eax
mov dword [ebx + 0x31a8], eax
cmp ecx, 0x77
mov eax, 0x77
cmovl eax, ecx
inc eax
mov dword [ebx + 0x31ac], eax
vmovss xmm0, dword [ebx + 0x31b0]
vxorps xmm1, xmm1, xmm1
vucomiss xmm0, xmm1
jbe 0x10022934
vcvtsi2ss xmm1, xmm2, eax
vdivss xmm0, xmm0, xmm1
vmovss xmm1, dword [0x10129710]
vdivss xmm0, xmm1, xmm0
jmp 0x1002293c
vmovss xmm0, dword [0x101296d0]
vmovss dword [ebx + 0x358], xmm0
mov eax, dword [0x1017f770]
mov ecx, dword [eax + 0x1d3c]
mov ecx, dword [ecx]
vmovsd xmm0, qword [0x10129850]
vmovsd qword [ecx], xmm0
mov dword [ecx + 8], 0
vmovsd xmm0, qword [eax + 0x10]
vmovsd qword [ecx + 0xc], xmm0
cmp dword [eax + 0x1d34], 0
jle 0x100229d7
xor ecx, ecx
vxorps xmm0, xmm0, xmm0
nop dword [eax]
mov edx, dword [eax + 0x1d3c]
mov edx, dword [edx + ecx*4]
vmovups xmm1, xmmword [edx + 0x88]
vmovups xmmword [edx + 0x78], xmm1
vmovddup xmm2, qword [edx + 0x90]
vmovups xmmword [edx + 0x88], xmm0
vmovsd xmm3, qword [edx + 4]
vmovsd xmm4, qword [edx + 0xc]
vaddps xmm3, xmm3, xmm1
vsubps xmm1, xmm4, xmm1
vaddps xmm1, xmm1, xmm2
vcmpnleps xmm2, xmm1, xmm0
vandps xmm1, xmm2, xmm1
vmovlhps xmm1, xmm3, xmm1
vmovups xmmword [edx + 0x14], xmm1
inc ecx
cmp ecx, dword [eax + 0x1d34]
jl 0x10022980
mov eax, dword [ebx + 0x98]
mov byte [eax + 0x10], 1
mov eax, dword [0x1017f770]
mov ecx, dword [eax + 0xa4]
test ecx, ecx
jne 0x100229fb
mov ecx, dword [eax + 0x98]
mov ecx, dword [ecx + 0x3c]
mov ecx, dword [ecx]
mov dword [eax + 0x1930], ecx
vmovss xmm0, dword [eax + 0x9c]
vmulss xmm0, xmm0, dword [ecx + 0x10]
vmulss xmm0, xmm0, dword [ecx + 0x44]
vmovss xmm1, dword [0x10129710]
vmaxss xmm0, xmm1, xmm0
vmovss dword [eax + 0x1938], xmm0
mov edx, dword [eax + 0x1b98]
test edx, edx
je 0x10022a4d
vmulss xmm0, xmm0, dword [edx + 0x238]
mov edx, dword [edx + 0x2d4]
test edx, edx
je 0x10022a51
vmulss xmm0, xmm0, dword [edx + 0x238]
jmp 0x10022a51
vxorps xmm0, xmm0, xmm0
vmovss dword [eax + 0x1934], xmm0
mov edx, dword [ecx + 0x30]
mov esi, dword [edx + 0x2c]
mov edi, dword [edx + 0x30]
mov dword [eax + 0x193c], esi
mov dword [eax + 0x1940], edi
add edx, 0x58
mov dword [eax + 0x1b2c], edx
mov dword [eax + 0x1944], ecx
vmovss dword [eax + 0x1948], xmm0
mov eax, dword [ebx + 0x1d34]
test eax, eax
jle 0x10022ade
mov ecx, dword [ebx + 0x1d3c]
vmovaps xmm0, xmmword [0x10129860]
xor edx, edx
nop
mov esi, dword [ecx + edx*4]
vmovsd xmm1, qword [esi + 4]
vmovsd xmm2, qword [esi + 0xc]
vaddps xmm2, xmm1, xmm2
vinsertps xmm3, xmm0, xmm2, 0x70
vmovlhps xmm1, xmm1, xmm2
vblendps xmm2, xmm1, xmm0, 8
vcmpltps xmm4, xmm2, xmm3
vcmpltps xmm2, xmm3, xmm2
vblendps xmm2, xmm4, xmm2, 4
vblendvps xmm0, xmm0, xmm1, xmm2
inc edx
cmp eax, edx
jne 0x10022aa0
jmp 0x10022ae6
vmovaps xmm0, xmmword [0x10129860]
lea ecx, [ebx + 0x193c]
vmovups xmmword [ebx + 0x1954], xmm0
vmovss xmm0, dword [ebx + 0x15d8]
vmovss xmm1, dword [ebx + 0x15dc]
vmovss dword [ebx + 0x194c], xmm0
sub esp, 4
vmovss dword [esp], xmm1
call fcn.10035240
movzx eax, byte [ebx + 0x15d4]
mov dword [ebx + 0x1964], eax
cmp byte [ebx + 0x15d5], 0
je 0x10022b46
mov ecx, dword [ebx + 0x1930]
mov ecx, dword [ecx + 0x30]
test byte [ecx], 4
jne 0x10022b46
or eax, 2
mov dword [ebx + 0x1964], eax
cmp byte [ebx + 0x15d6], 0
je 0x10022b58
or eax, 4
mov dword [ebx + 0x1964], eax
test byte [ebx + 0xc], 8
je 0x10022b67
or eax, 8
mov dword [ebx + 0x1964], eax
cmp dword [ebx + 0x1d34], 0
jle 0x10022b9c
xor eax, eax
vxorps xmm0, xmm0, xmm0
nop word cs:[eax + eax]
mov ecx, dword [ebx + 0x1d3c]
mov ecx, dword [ecx + eax*4]
vmovups ymmword [ecx + 0x40], ymm0
vmovups ymmword [ecx + 0x34], ymm0
inc eax
cmp eax, dword [ebx + 0x1d34]
jl 0x10022b80
cmp byte [ebx + 0x1e8c], 0
je 0x10022bd6
mov eax, dword [ebx + 0x1ea4]
cmp eax, dword [ebx + 0x1bd0]
jne 0x10022bd6
mov ecx, dword [0x1017f770]
cmp dword [ecx + 0x1bd0], eax
jne 0x10022bc7
mov dword [ecx + 0x1bd4], eax
cmp dword [ecx + 0x1c0c], eax
jne 0x10022bd6
mov byte [ecx + 0x1c10], 1
cmp dword [ebx + 0x1bc0], 0
je 0x10022bfd
mov eax, dword [ebx + 0x1bbc]
test eax, eax
je 0x10022c42
cmp dword [ebx + 0x1bd0], eax
jne 0x10022c13
mov dword [ebx + 0x1bcc], 0
jmp 0x10022c13
mov eax, dword [ebx + 0x1bbc]
vxorps xmm0, xmm0, xmm0
vmovlps qword [ebx + 0x1bc8], xmm0
test eax, eax
je 0x10022c42
vmovss xmm0, dword [ebx + 0x18]
vaddss xmm1, xmm0, dword [ebx + 0x1bc8]
vmovss dword [ebx + 0x1bc8], xmm1
cmp dword [ebx + 0x1bd0], eax
je 0x10022c44
vaddss xmm0, xmm0, dword [ebx + 0x1bcc]
vmovss dword [ebx + 0x1bcc], xmm0
jmp 0x10022c44
xor eax, eax
mov dword [ebx + 0x1bc0], eax
movzx eax, byte [ebx + 0x1bc5]
mov byte [ebx + 0x1bc6], al
mov dword [ebx + 0x1bbc], 0
mov word [ebx + 0x1bc4], 0
mov byte [ebx + 0x1bc7], 0
mov eax, dword [ebx + 0x1bd4]
mov ecx, dword [ebx + 0x1bd0]
cmp eax, ecx
je 0x10022d1d
test ecx, ecx
je 0x10022d1b
mov eax, ecx
cmp dword [ebx + 0x1c0c], ecx
jne 0x10022d1d
mov eax, dword [0x1017f770]
cmp dword [eax + 0x1bd0], 0
setne byte [eax + 0x1bdc]
je 0x10022ccd
mov dword [eax + 0x1bd8], 0
mov word [eax + 0x1bdf], 0
mov dword [eax + 0x1c08], 0xffffffff
mov dword [eax + 0x1bd0], 0
mov word [eax + 0x1bdd], 0
mov dword [eax + 0x1c00], 0
mov word [eax + 0x1be1], 0
vxorps xmm0, xmm0, xmm0
vmovlps qword [eax + 0x1be4], xmm0
mov dword [eax + 0x1bf0], 0
mov dword [eax + 0x1bf4], 0
mov eax, dword [ebx + 0x1bd0]
jmp 0x10022d1d
mov eax, ecx
vmovss xmm1, dword [ebx + 0x18]
test eax, eax
je 0x10022d36
vaddss xmm0, xmm1, dword [ebx + 0x1bd8]
vmovss dword [ebx + 0x1bd8], xmm0
vaddss xmm0, xmm1, dword [ebx + 0x1c1c]
vmovss dword [ebx + 0x1c1c], xmm0
mov dword [ebx + 0x1c0c], eax
mov ecx, dword [ebx + 0x1c00]
mov dword [ebx + 0x1c14], ecx
movzx ecx, byte [ebx + 0x1be0]
mov byte [ebx + 0x1c11], cl
mov dword [ebx + 0x1bd4], 0
mov byte [ebx + 0x1be1], 0
mov byte [ebx + 0x1c10], 0
mov byte [ebx + 0x1bdc], 0
mov ecx, dword [ebx + 0x2e80]
test ecx, ecx
je 0x10022d9c
cmp eax, ecx
je 0x10022d9c
mov dword [ebx + 0x2e80], 0
test eax, eax
jne 0x10022dc0
vxorps xmm0, xmm0, xmm0
vmovlps qword [ebx + 0x1be4], xmm0
mov dword [ebx + 0x1bf4], 0
mov dword [ebx + 0x1bf0], 0
vmovups xmmword [esp], xmm1
mov eax, dword [ebx + 0x1ef0]
mov dword [ebx + 0x1ef4], eax
mov dword [ebx + 0x1ef0], 0
mov dword [ebx + 0x1eec], 0x7f7fffff
mov word [ebx + 0x1e8d], 0
mov dword [ebx + 0x1efc], 0
cmp byte [ebx + 0x1508], 0
je 0x10022f86
vxorps xmm0, xmm0, xmm0
vmovups ymmword [ebx + 0x2e0], ymm0
vmovups ymmword [ebx + 0x2c0], ymm0
vmovups ymmword [ebx + 0x2a0], ymm0
vmovups ymmword [ebx + 0x280], ymm0
vmovups ymmword [ebx + 0x260], ymm0
vmovups ymmword [ebx + 0x240], ymm0
vmovups ymmword [ebx + 0x220], ymm0
vmovups ymmword [ebx + 0x200], ymm0
vmovups ymmword [ebx + 0x1e0], ymm0
vmovups ymmword [ebx + 0x1c0], ymm0
vmovups ymmword [ebx + 0x1a0], ymm0
vmovups ymmword [ebx + 0x180], ymm0
vmovups ymmword [ebx + 0x160], ymm0
vmovups ymmword [ebx + 0x140], ymm0
vmovups ymmword [ebx + 0x120], ymm0
vmovups ymmword [ebx + 0x100], ymm0
mov eax, 0xfffffe00
vbroadcastss ymm0, dword [0x101296d4]
nop word [eax + eax]
vmovups ymmword [ebx + eax*4 + 0x1464], ymm0
vmovups ymmword [ebx + eax*4 + 0x1484], ymm0
vmovups ymmword [ebx + eax*4 + 0x14a4], ymm0
vmovups ymmword [ebx + eax*4 + 0x14c4], ymm0
vmovups ymmword [ebx + eax*4 + 0xc64], ymm0
vmovups ymmword [ebx + eax*4 + 0xc84], ymm0
vmovups ymmword [ebx + eax*4 + 0xca4], ymm0
vmovups ymmword [ebx + eax*4 + 0xcc4], ymm0
vmovups ymmword [ebx + eax*4 + 0x14e4], ymm0
vmovups ymmword [ebx + eax*4 + 0x1504], ymm0
vmovups ymmword [ebx + eax*4 + 0x1524], ymm0
vmovups ymmword [ebx + eax*4 + 0x1544], ymm0
vmovups ymmword [ebx + eax*4 + 0xce4], ymm0
vmovups ymmword [ebx + eax*4 + 0xd04], ymm0
vmovups ymmword [ebx + eax*4 + 0xd24], ymm0
vmovups ymmword [ebx + eax*4 + 0xd44], ymm0
add eax, 0x40
jne 0x10022ea0
vxorps xmm1, xmm1, xmm1
vmovlps qword [ebx + 0x37c], xmm1
mov dword [ebx + 0xfc], 0
vmovups ymmword [ebx + 0x14b4], ymm0
vmovups ymmword [ebx + 0x1464], ymm0
vmovups ymmword [ebx + 0x14d4], ymm0
vmovups ymmword [ebx + 0x1484], ymm0
vmovups xmmword [ebx + 0x14f4], xmm0
vmovups xmmword [ebx + 0x14a4], xmm0
mov byte [ebx + 0x1508], 0
mov eax, dword [0x1017f770]
movzx ecx, byte [eax + 0xfc]
mov edx, ecx
or edx, 2
cmp byte [eax + 0xfd], 0
cmove edx, ecx
mov ecx, edx
or ecx, 4
cmp byte [eax + 0xfe], 0
cmove ecx, edx
mov edx, ecx
or edx, 8
cmp byte [eax + 0xff], 0
cmove edx, ecx
mov dword [ebx + 0x37c], edx
lea esi, [ebx + 0x464]
lea edi, [ebx + 0xc64]
push 0x800
push esi
push edi
vzeroupper
call sub.VCRUNTIME140.dll_memcpy
add esp, 0xc
lea eax, [ebx + 0x100]
lea ecx, [ebx + 0x300]
cmp esi, ecx
setb cl
cmp eax, edi
setb al
test cl, al
jne 0x100234c5
cmp esi, edi
jb 0x100234c5
vbroadcastss ymm0, dword [esp]
vmovups ymmword [esp + 0x58], ymm0
mov eax, 0x131
vbroadcastss ymm0, dword [0x101296d4]
vmovups ymmword [esp + 0x78], ymm0
nop dword [eax]
vmovq xmm0, qword [ebx + eax - 0x31]
vmovdqu xmmword [esp], xmm0
vmovq xmm3, qword [ebx + eax - 0x29]
vmovdqu xmmword [esp + 0x24], xmm3
vmovq xmm1, qword [ebx + eax - 0x21]
vmovdqu xmmword [esp + 0x10], xmm1
vxorps xmm4, xmm4, xmm4
vpcmpeqb xmm0, xmm0, xmm4
vpcmpeqd xmm5, xmm5, xmm5
vpxor xmm0, xmm0, xmm5
vpmovsxbd ymm2, xmm0
vpcmpeqb xmm0, xmm3, xmm4
vpxor xmm0, xmm0, xmm5
vpcmpeqd xmm6, xmm6, xmm6
vpmovsxbd ymm7, xmm0
vpcmpeqb xmm0, xmm1, xmm4
vmaskmovps ymm3, ymm2, ymmword [ebx + eax*4 - 0x60]
vpxor xmm1, xmm1, xmm1
vcmpltps ymm5, ymm3, ymm1
vandps ymm2, ymm2, ymm5
vmaskmovps ymm5, ymm7, ymmword [ebx + eax*4 - 0x40]
vpxor xmm0, xmm0, xmm6
vpmovsxbd ymm4, xmm0
vmovups ymm0, ymmword [esp + 0x58]
vaddps ymm3, ymm3, ymm0
vandnps ymm2, ymm2, ymm3
vmovups ymmword [esp + 0x34], ymm2
vmaskmovps ymm3, ymm4, ymmword [ebx + eax*4 - 0x20]
vcmpltps ymm6, ymm5, ymm1
vandps ymm2, ymm7, ymm6
vaddps ymm5, ymm5, ymm0
vandnps ymm7, ymm2, ymm5
vcmpltps ymm5, ymm3, ymm1
vandps ymm2, ymm4, ymm5
vmovq xmm5, qword [ebx + eax - 0x19]
vpcmpeqb xmm6, xmm5, xmmword [0x10128020]
vpxor xmm6, xmm6, xmmword [0x101285d0]
vpmovsxbd ymm6, xmm6
vmaskmovps ymm4, ymm6, ymmword [ebx + eax*4]
vaddps ymm3, ymm3, ymm0
vandnps ymm2, ymm2, ymm3
vcmpltps ymm3, ymm4, ymm1
vandps ymm3, ymm6, ymm3
vaddps ymm4, ymm4, ymm0
vandnps ymm3, ymm3, ymm4
vpmovzxbd ymm4, qword [esp]
vpcmpeqd ymm4, ymm4, ymm1
vmovups ymm0, ymmword [esp + 0x78]
vmovups ymm6, ymmword [esp + 0x34]
vblendvps ymm6, ymm6, ymm0, ymm4
vpmovzxbd ymm4, qword [esp + 0x24]
vpcmpeqd ymm4, ymm4, ymm1
vblendvps ymm7, ymm7, ymm0, ymm4
vpmovzxbd ymm4, qword [esp + 0x10]
vpcmpeqd ymm4, ymm4, ymm1
vblendvps ymm2, ymm2, ymm0, ymm4
vpmovzxbd ymm4, xmm5
vpcmpeqd ymm4, ymm4, ymm1
vblendvps ymm3, ymm3, ymm0, ymm4
vmovups ymmword [ebx + eax*4 - 0x60], ymm6
vmovups ymmword [ebx + eax*4 - 0x40], ymm7
vmovups ymmword [ebx + eax*4 - 0x20], ymm2
vmovups ymmword [ebx + eax*4], ymm3
add eax, 0x20
cmp eax, 0x331
jne 0x10023030
mov esi, dword [0x1017f770]
mov byte [esi + 0x353], 0
mov ecx, dword [esi + 8]
test cl, 2
je 0x100231a1
test byte [esi + 0xc], 1
jne 0x1002370a
mov dword [esp + 0x24], 0
test cl, 1
je 0x100232db
mov eax, dword [esi + 0x64]
test eax, eax
js 0x100231d7
cmp byte [esi + eax + 0x100], 0
je 0x100231d7
mov dword [esi + 0x300], 0x3f800000
mov dword [esi + 0x1d78], 2
mov eax, dword [esi + 0x68]
test eax, eax
js 0x100231fc
cmp byte [esi + eax + 0x100], 0
je 0x100231fc
mov dword [esi + 0x308], 0x3f800000
mov dword [esi + 0x1d78], 2
mov eax, dword [esi + 0x6c]
test eax, eax
js 0x10023221
cmp byte [esi + eax + 0x100], 0
je 0x10023221
mov dword [esi + 0x304], 0x3f800000
mov dword [esi + 0x1d78], 2
mov eax, dword [esi + 0x38]
test eax, eax
js 0x10023246
cmp byte [esi + eax + 0x100], 0
je 0x10023246
mov dword [esi + 0x340], 0x3f800000
mov dword [esi + 0x1d78], 2
mov eax, dword [esi + 0x3c]
test eax, eax
js 0x1002326b
cmp byte [esi + eax + 0x100], 0
je 0x1002326b
mov dword [esi + 0x344], 0x3f800000
mov dword [esi + 0x1d78], 2
mov eax, dword [esi + 0x40]
test eax, eax
js 0x10023290
cmp byte [esi + eax + 0x100], 0
je 0x10023290
mov dword [esi + 0x348], 0x3f800000
mov dword [esi + 0x1d78], 2
mov eax, dword [esi + 0x44]
test eax, eax
js 0x100232b5
cmp byte [esi + eax + 0x100], 0
je 0x100232b5
mov dword [esi + 0x34c], 0x3f800000
mov dword [esi + 0x1d78], 2
cmp byte [esi + 0xfc], 0
je 0x100232c8
mov dword [esi + 0x338], 0x3f800000
cmp byte [esi + 0xfd], 0
je 0x100232db
mov dword [esi + 0x33c], 0x3f800000
vmovups ymm0, ymmword [esi + 0x1494]
vmovups ymmword [esi + 0x14e4], ymm0
vmovups ymm0, ymmword [esi + 0x1464]
vmovups ymm1, ymmword [esi + 0x1484]
vmovups ymmword [esi + 0x14d4], ymm1
vmovups ymmword [esi + 0x14b4], ymm0
xor eax, eax
vmovss xmm0, dword [0x101296d4]
vxorps xmm1, xmm1, xmm1
jmp 0x10023331
vmovss dword [esi + eax*4 + 0x1468], xmm2
add eax, 2
cmp eax, 0x14
je 0x10023392
vmovss xmm2, dword [esi + eax*4 + 0x300]
vucomiss xmm2, xmm1
vmovaps xmm2, xmm0
jbe 0x1002335c
vmovss xmm3, dword [esi + eax*4 + 0x1464]
vxorps xmm2, xmm2, xmm2
vucomiss xmm2, xmm3
ja 0x1002335c
vaddss xmm2, xmm3, dword [esi + 0x18]
vmovss dword [esi + eax*4 + 0x1464], xmm2
vmovss xmm2, dword [esi + eax*4 + 0x304]
vucomiss xmm2, xmm1
vmovaps xmm2, xmm0
jbe 0x10023320
vmovss xmm3, dword [esi + eax*4 + 0x1468]
vxorps xmm2, xmm2, xmm2
vucomiss xmm2, xmm3
ja 0x10023320
vaddss xmm2, xmm3, dword [esi + 0x18]
jmp 0x10023320
mov dword [esp + 0x58], ecx
cmp dword [esi + 0x1d8c], 0
je 0x1002340b
mov eax, dword [0x1017f770]
mov ecx, dword [eax + 0x1d40]
test ecx, ecx
je 0x1002340b
mov edx, dword [eax + 0x1d7c]
mov edi, dword [eax + 0x1d8c]
mov dword [eax + 0x1d44], edi
mov dword [eax + 0x1d48], 0
mov dword [ecx + edx*4 + 0x2ec], edi
mov ecx, dword [eax + 0x1d40]
shl edx, 4
vmovups xmm0, xmmword [eax + 0x1d90]
vmovups xmmword [ecx + edx + 0x2f4], xmm0
mov byte [eax + 0x1d84], 1
cmp byte [eax + 0x1d8a], 0
je 0x1002340b
mov word [eax + 0x1d85], 1
mov byte [eax + 0x1d87], 1
mov word [esi + 0x1d89], 0
mov dword [esi + 0x1d8c], 0
mov dword [esi + 0x1d64], 0
cmp byte [esi + 0x1da0], 0
je 0x10023439
vzeroupper
call fcn.10032f20
mov dword [esi + 0x1dd0], 0
mov word [esi + 0x1da0], 0
cmp byte [esi + 0x1d85], 0
je 0x1002347e
cmp byte [esi + 0x1d84], 0
je 0x1002347e
test byte [esi + 8], 4
je 0x10023477
test byte [esi + 0xc], 4
je 0x10023477
cmp byte [esi + 0x1d86], 0
je 0x1002397c
mov byte [esi + 0x1d85], 0
mov byte [esi + 0x1d84], 0
mov dword [esi + 0x1d60], 0
mov eax, dword [esi + 0x1d40]
test eax, eax
je 0x10023568
mov ecx, eax
nop
cmp dword [ecx + 0x2d8], ecx
je 0x10023538
test byte [ecx + 0xb], 0x14
jne 0x10023538
mov ecx, dword [ecx + 0x2d4]
test ecx, ecx
jne 0x100234a0
jmp 0x10023548
mov eax, 0x11a
vmovss xmm0, dword [0x101296d4]
vmovups xmm3, xmmword [esp]
jmp 0x100234f3
vmovss dword [ebx + eax*4], xmm1
add eax, 2
cmp eax, 0x31a
je 0x10023182
cmp byte [ebx + eax - 0x1a], 0
vmovaps xmm1, xmm0
je 0x10023512
vmovss xmm2, dword [ebx + eax*4 - 4]
vxorps xmm1, xmm1, xmm1
vucomiss xmm1, xmm2
ja 0x10023512
vaddss xmm1, xmm2, xmm3
vmovss dword [ebx + eax*4 - 4], xmm1
cmp byte [ebx + eax - 0x19], 0
vmovaps xmm1, xmm0
je 0x100234e0
vmovss xmm2, dword [ebx + eax*4]
vxorps xmm1, xmm1, xmm1
vucomiss xmm1, xmm2
ja 0x100234e0
vaddss xmm1, xmm2, xmm3
jmp 0x100234e0
cmp ecx, eax
je 0x10023548
mov dword [ecx + 0x2e8], eax
mov eax, dword [esi + 0x1d40]
test eax, eax
je 0x10023568
cmp dword [eax + 0x2e8], 0
je 0x10023568
cmp dword [esi + 0x1d7c], 0
jne 0x10023568
mov dword [eax + 0x2e8], 0
mov ebp, dword [0x1017f770]
mov ecx, dword [ebp + 0x1d1c]
mov dl, 1
test ecx, ecx
jle 0x100235b1
mov edi, dword [ebp + 0x1d24]
lea eax, [ecx + 1]
lea ecx, [ecx + ecx*8]
lea ecx, [edi + ecx*4]
add ecx, 0xffffffe0
jmp 0x10023599
dec eax
add ecx, 0xffffffdc
cmp eax, 1
jbe 0x100235b1
mov edi, dword [ecx]
test edi, edi
je 0x10023590
test byte [edi + 0xb], 8
je 0x10023590
mov dword [ebp + 0x1e58], 0
xor edx, edx
cmp dword [ebp + 0x1e5c], 0
je 0x10023608
cmp dword [ebp + 0x1e58], 0
jne 0x10023608
vmovss xmm0, dword [ebp + 0x18]
vmovss xmm1, dword [0x10129870]
vfmadd213ss xmm1, xmm0, dword [ebp + 0x1e68]
vxorps xmm0, xmm0, xmm0
vcmpless xmm2, xmm0, xmm1
vandps xmm1, xmm2, xmm1
vmovss dword [ebp + 0x1e68], xmm1
vucomiss xmm0, dword [ebp + 0x1e84]
jb 0x10023608
vucomiss xmm0, xmm1
jb 0x10023608
mov dword [ebp + 0x1e5c], 0
mov eax, dword [ebp + 8]
mov dword [esp + 0x34], eax
xor eax, eax
mov ecx, 0
test dl, dl
mov dword [esp], ebp
je 0x1002372d
xor eax, eax
cmp dword [ebp + 0x1e58], 0
mov ecx, 0
jne 0x1002372d
vmovss xmm0, dword [ebp + 0x1470]
vxorps xmm1, xmm1, xmm1
vcmpeqss xmm2, xmm0, xmm1
vmovss xmm3, dword [0x10129710]
vandps xmm2, xmm2, xmm3
vcmpltss xmm0, xmm0, xmm1
vandnps xmm0, xmm0, xmm2
vucomiss xmm0, xmm1
seta al
test byte [esp + 0x34], 1
je 0x1002372b
cmp byte [ebp + 0xfc], 0
je 0x1002372b
mov ecx, dword [ebp + 0x34]
test ecx, ecx
js 0x1002372b
vmovss xmm0, dword [ebp + ecx*4 + 0x464]
mov cl, 1
vxorps xmm1, xmm1, xmm1
vucomiss xmm0, xmm1
jne 0x100236a0
jnp 0x10023735
vmovss xmm1, dword [ebp + 0x8c]
xor ecx, ecx
vucomiss xmm0, xmm1
jbe 0x1002372d
vsubss xmm3, xmm0, dword [ebp + 0x18]
vucomiss xmm3, xmm0
jae 0x1002501d
vmovss xmm2, dword [ebp + 0x90]
vxorps xmm4, xmm4, xmm4
vucomiss xmm4, xmm2
jae 0x10025008
mov ecx, 0xffffffff
vucomiss xmm1, xmm3
mov edx, 0xffffffff
ja 0x100236f1
vsubss xmm3, xmm3, xmm1
vdivss xmm3, xmm3, xmm2
vcvttss2si edx, xmm3
vucomiss xmm1, xmm0
ja 0x10023703
vsubss xmm0, xmm0, xmm1
vdivss xmm0, xmm0, xmm2
vcvttss2si ecx, xmm0
sub ecx, edx
jmp 0x1002501d
cmp dword [esi + 0x1d78], 3
jne 0x100238da
mov al, 1
mov dword [esp + 0x24], eax
test cl, 1
jne 0x100231b2
jmp 0x100232db
xor ecx, ecx
test al, al
jne 0x10023735
test cl, cl
je 0x10023779
mov edi, dword [esp]
mov edx, dword [edi + 0x1d40]
test edx, edx
je 0x1002388d
mov edi, dword [edx + 0x2d8]
mov edx, dword [esp]
mov dword [edx + 0x1e5c], edi
mov dword [edx + 0x1e58], edi
vxorps xmm0, xmm0, xmm0
vmovlps qword [edx + 0x1e64], xmm0
mov byte [edx + 0x1e6c], al
movzx eax, cl
xor eax, 3
mov dword [edx + 0x1d78], eax
mov ebp, dword [esp]
vmovss xmm1, dword [ebp + 0x18]
vaddss xmm0, xmm1, dword [ebp + 0x1e64]
vmovss dword [ebp + 0x1e64], xmm0
cmp dword [ebp + 0x1e58], 0
je 0x10023b94
mov edx, dword [ebp + 0x1d78]
mov ecx, ebp
cmp edx, 3
jne 0x10023afb
vaddss xmm0, xmm0, dword [0x10129874]
vdivss xmm0, xmm0, dword [0x10129878]
vmovss xmm2, dword [0x10129710]
vminss xmm3, xmm2, xmm0
vxorps xmm2, xmm2, xmm2
vcmpltss xmm0, xmm0, xmm2
vandnps xmm0, xmm0, xmm3
vmovss xmm3, dword [ebp + 0x1e68]
vcmpless xmm4, xmm0, xmm3
vblendvps xmm0, xmm0, xmm3, xmm4
vmovss dword [ebp + 0x1e68], xmm0
vmovss xmm3, dword [ebp + 0x1494]
vucomiss xmm2, xmm3
vxorps xmm4, xmm4, xmm4
ja 0x100239f0
mov eax, 1
vxorps xmm4, xmm4, xmm4
vucomiss xmm3, xmm4
jne 0x1002381e
jnp 0x100239ec
vsubss xmm6, xmm3, xmm1
xor eax, eax
vucomiss xmm6, xmm3
jae 0x100239ec
vmovss xmm4, dword [ebp + 0x8c]
vmovss xmm5, dword [ebp + 0x90]
vmulss xmm4, xmm4, dword [0x1012987c]
vaddss xmm5, xmm5, xmm5
vxorps xmm7, xmm7, xmm7
vucomiss xmm7, xmm5
jae 0x100239d7
mov eax, 0xffffffff
vucomiss xmm4, xmm6
mov ecx, 0xffffffff
ja 0x10023874
vsubss xmm6, xmm6, xmm4
vdivss xmm6, xmm6, xmm5
vcvttss2si ecx, xmm6
vucomiss xmm4, xmm3
ja 0x10023886
vsubss xmm3, xmm3, xmm4
vdivss xmm3, xmm3, xmm5
vcvttss2si eax, xmm3
sub eax, ecx
jmp 0x100239ec
mov edx, dword [edi + 0x1b5c]
test edx, edx
jle 0x10023779
mov edi, dword [esp]
mov ebp, dword [edi + 0x1b64]
inc edx
jmp 0x100238ba
dec edx
cmp edx, 1
jbe 0x10023779
mov edi, dword [ebp + edx*4 - 8]
cmp byte [edi + 0x8b], 0
je 0x100238b0
cmp dword [edi + 0x2d8], edi
jne 0x100238b0
test byte [edi + 0xa], 8
jne 0x100238b0
jmp 0x1002374c
vmovss xmm1, dword [esi + 0x300]
vxorps xmm0, xmm0, xmm0
vucomiss xmm1, xmm0
ja 0x1002395e
vmovss xmm1, dword [esi + 0x308]
vucomiss xmm1, xmm0
ja 0x1002395e
vmovss xmm1, dword [esi + 0x304]
vxorps xmm0, xmm0, xmm0
vucomiss xmm1, xmm0
ja 0x1002395e
vmovss xmm1, dword [esi + 0x30c]
vucomiss xmm1, xmm0
ja 0x1002395e
vmovss xmm1, dword [esi + 0x310]
vxorps xmm0, xmm0, xmm0
vucomiss xmm1, xmm0
ja 0x1002395e
vmovss xmm1, dword [esi + 0x314]
vucomiss xmm1, xmm0
ja 0x1002395e
vmovss xmm1, dword [esi + 0x318]
vxorps xmm0, xmm0, xmm0
vucomiss xmm1, xmm0
ja 0x1002395e
vmovss xmm1, dword [esi + 0x31c]
vucomiss xmm1, xmm0
jbe 0x10023717
mov al, 1
mov dword [esp + 0x24], eax
mov dword [esi + 0x1d78], 3
test cl, 1
je 0x100232db
jmp 0x100231b2
cmp byte [esi + 0x1d87], 0
je 0x10023477
cmp dword [esi + 0x1d40], 0
je 0x10023477
lea ecx, [esp + 0x98]
vzeroupper
call fcn.10031dd0
mov eax, dword [esp + 0x98]
mov ecx, dword [esp + 0x9c]
mov dword [esi + 0x388], ecx
mov dword [esi + 0x384], eax
mov dword [esi + 0xe8], ecx
mov dword [esi + 0xe4], eax
mov byte [esi + 0x353], 1
jmp 0x10023477
vcmpltps xmm5, xmm6, xmm4
vcmpleps xmm3, xmm4, xmm3
vandps xmm3, xmm3, xmm5
vmovd eax, xmm3
and eax, 1
vcvtsi2ss xmm4, xmm1, eax
xor ecx, ecx
vucomiss xmm4, xmm2
seta cl
vmovss xmm3, dword [ebp + 0x1498]
vucomiss xmm2, xmm3
ja 0x10023a9d
mov eax, 1
vxorps xmm2, xmm2, xmm2
vucomiss xmm3, xmm2
jne 0x10023a1c
jnp 0x10023a95
vsubss xmm4, xmm3, xmm1
xor eax, eax
vucomiss xmm4, xmm3
jae 0x10023a95
vmovss xmm1, dword [ebp + 0x8c]
vmovss xmm2, dword [ebp + 0x90]
vmulss xmm1, xmm1, dword [0x1012987c]
vaddss xmm2, xmm2, xmm2
vpxor xmm5, xmm5, xmm5
vucomiss xmm5, xmm2
jae 0x10023a80
mov eax, 0xffffffff
vucomiss xmm1, xmm4
mov edx, 0xffffffff
ja 0x10023a6a
vsubss xmm4, xmm4, xmm1
vdivss xmm4, xmm4, xmm2
vcvttss2si edx, xmm4
vucomiss xmm1, xmm3
ja 0x10023a7c
vsubss xmm1, xmm3, xmm1
vdivss xmm1, xmm1, xmm2
vcvttss2si eax, xmm1
sub eax, edx
jmp 0x10023a95
vcmpltps xmm2, xmm4, xmm1
vcmpleps xmm1, xmm1, xmm3
vandps xmm1, xmm1, xmm2
vmovd eax, xmm1
and eax, 1
vxorps xmm7, xmm7, xmm7
vcvtsi2ss xmm2, xmm7, eax
vxorps xmm3, xmm3, xmm3
xor eax, eax
vucomiss xmm2, xmm3
seta al
sub ecx, eax
je 0x10023ad4
vzeroupper
call fcn.100349e0
vxorps xmm3, xmm3, xmm3
mov dword [ebp + 0x1e68], 0x3f800000
mov ecx, dword [0x1017f770]
vmovss xmm0, dword [0x10129710]
jmp 0x10023ad6
mov ecx, ebp
vmovss xmm1, dword [ecx + 0x30c]
vucomiss xmm1, xmm3
jbe 0x10023ba3
cmp dword [ebp + 0x1e58], 0
je 0x10023b94
mov edx, dword [ebp + 0x1d78]
mov dword [esp + 0x10], 0
mov eax, 0
cmp edx, 2
jne 0x10023cba
vmovss xmm0, dword [ebp + 0x1e64]
vaddss xmm0, xmm0, dword [0x10129874]
vdivss xmm0, xmm0, dword [0x10129878]
vmovss xmm2, dword [ebp + 0x1e68]
vmovss xmm1, dword [0x10129710]
vminss xmm3, xmm1, xmm0
vxorps xmm1, xmm1, xmm1
vcmpltss xmm0, xmm0, xmm1
vandnps xmm0, xmm0, xmm3
vcmpless xmm3, xmm0, xmm2
vblendvps xmm0, xmm0, xmm2, xmm3
vmovss dword [ebp + 0x1e68], xmm0
mov eax, dword [ecx + 0x34]
test eax, eax
js 0x10023c96
vmovss xmm0, dword [ecx + eax*4 + 0x464]
vucomiss xmm0, xmm1
jne 0x10023be9
jp 0x10023be9
xor ecx, ecx
cmp byte [ebp + 0xfd], 1
sbb ecx, ecx
or ecx, 1
vzeroupper
call fcn.100349e0
jmp 0x10023c96
mov dword [esp + 0x10], 0
xor eax, eax
jmp 0x10023cba
vmovss xmm1, dword [0x10129710]
xor eax, eax
vucomiss xmm1, xmm0
seta al
movzx ecx, byte [ebp + 0x1e6c]
and ecx, eax
mov byte [ebp + 0x1e6c], cl
je 0x10023c5f
cmp dword [ebp + 0x1d40], 0
je 0x10023c4e
xor eax, eax
mov cl, 1
mov dword [esp + 0x10], ecx
mov dword [ebp + 0x1e58], 0
jmp 0x10023cba
vmovss xmm1, dword [ecx + 0x8c]
vucomiss xmm0, xmm1
jbe 0x10023c96
vsubss xmm3, xmm0, dword [ecx + 0x18]
vucomiss xmm3, xmm0
jae 0x10023c96
vmovss xmm2, dword [ecx + 0x90]
vxorps xmm4, xmm4, xmm4
vucomiss xmm4, xmm2
jae 0x10023c79
mov eax, 0xffffffff
vucomiss xmm1, xmm3
mov ecx, 0xffffffff
ja 0x10023c38
vsubss xmm3, xmm3, xmm1
vdivss xmm3, xmm3, xmm2
vcvttss2si ecx, xmm3
vucomiss xmm1, xmm0
ja 0x10023c4a
vsubss xmm0, xmm0, xmm1
vdivss xmm0, xmm0, xmm2
vcvttss2si eax, xmm0
sub eax, ecx
jmp 0x10023c8e
mov dword [esp + 0x10], 0
mov eax, 0
test cl, cl
jne 0x10023c6d
mov eax, dword [ebp + 0x1e58]
mov dword [esp + 0x10], 0
mov dword [ebp + 0x1e58], 0
jmp 0x10023cba
vcmpltps xmm2, xmm3, xmm1
vcmpleps xmm0, xmm1, xmm0
vandps xmm0, xmm0, xmm2
vmovd eax, xmm0
and eax, 1
test eax, eax
jg 0x10023b79
mov dword [esp + 0x10], 0
cmp byte [ebp + 0xfc], 0
mov eax, 0
jne 0x10023cba
mov eax, dword [ebp + 0x1e58]
mov dword [esp + 0x10], 0
test byte [esp + 0x34], 1
je 0x10023ce4
cmp dword [ebp + 0x37c], 4
jne 0x10023ce4
test byte [ebp + 0x380], 4
jne 0x10023ce4
mov byte [ebp + 0x1e6c], 1
mov dword [ebp + 0x1d78], 2
cmp byte [ebp + 0x1e6c], 0
je 0x10023dce
cmp dword [ebp + 0x1d78], 2
jne 0x10023dce
cmp dword [ebp + 0x150c], 0
jg 0x10023d26
cmp byte [ebp + 0xfc], 0
jne 0x10023d26
cmp byte [ebp + 0xfd], 0
jne 0x10023d26
cmp byte [ebp + 0xff], 0
je 0x10024da8
mov byte [ebp + 0x1e6c], 0
mov cl, 1
test byte [ebp + 0x37c], 4
jne 0x10023dbe
test byte [ebp + 0x380], 4
sete dl
or cl, dl
jne 0x10023dbe
cmp dword [ebp + 0x1bd0], 0
je 0x10023d5c
cmp byte [ebp + 0x1bdd], 0
je 0x10023dbe
vmovss xmm0, dword [ebp + 0xe4]
vmovss xmm1, dword [ebp + 0xe8]
vmovss xmm2, dword [0x10129848]
vcmpleps xmm1, xmm2, xmm1
vcmpleps xmm0, xmm2, xmm0
vandps xmm0, xmm0, xmm1
vmovd ecx, xmm0
vmovss xmm0, dword [ebp + 0x388]
vcmpleps xmm0, xmm2, xmm0
vmovss xmm1, dword [ebp + 0x384]
vcmpleps xmm1, xmm2, xmm1
vandps xmm0, xmm1, xmm0
vmovd edx, xmm0
xor edx, ecx
movzx ecx, byte [esp + 0x10]
test dl, 1
mov edx, 1
cmovne edx, ecx
mov dword [esp + 0x10], edx
cmp byte [ebp + 0xfe], 0
jne 0x10023dce
mov byte [ebp + 0x1e6c], 0
mov ecx, dword [ebp + 0x1e58]
test ecx, ecx
je 0x10023f60
test byte [ecx + 8], 4
jne 0x10023f60
mov edx, dword [ebp + 0x1d78]
cmp edx, 3
je 0x10023e27
vxorps xmm0, xmm0, xmm0
cmp edx, 2
jne 0x10023e5f
cmp byte [ebp + 0xfd], 0
jne 0x10023e5f
mov edx, dword [0x1017f770]
vmovss xmm0, dword [edx + 0x34c]
vsubss xmm0, xmm0, dword [edx + 0x348]
lea edi, [edx + 0x344]
add edx, 0x340
jmp 0x10023e49
mov edx, dword [0x1017f770]
vmovss xmm0, dword [edx + 0x32c]
vsubss xmm0, xmm0, dword [edx + 0x328]
lea edi, [edx + 0x324]
add edx, 0x320
vmovss xmm1, dword [edi]
vsubss xmm1, xmm1, dword [edx]
vinsertps xmm0, xmm1, xmm0, 0x10
vxorps xmm1, xmm1, xmm1
vaddps xmm0, xmm0, xmm1
vxorps xmm1, xmm1, xmm1
vucomiss xmm0, xmm1
jne 0x10023e7b
jp 0x10023e7b
vmovshdup xmm2, xmm0
vucomiss xmm2, xmm1
jne 0x10023e7b
jnp 0x10023f60
mov ecx, dword [ecx + 0x2d8]
mov edx, dword [ecx + 0xb0]
test dl, 1
je 0x10023f32
vmovss xmm1, dword [ebp + 0x18]
vmulss xmm1, xmm1, dword [0x10129880]
vmovss xmm2, dword [ebp + 0xa8]
vminss xmm2, xmm2, dword [ebp + 0xac]
vmulss xmm1, xmm1, xmm2
vcvttps2dq xmm1, xmm1
vcvtdq2ps xmm1, xmm1
and edx, 0xfffffff1
mov dword [ecx + 0xb0], edx
vbroadcastss xmm2, dword [0x101296d0]
vmovlps qword [ecx + 0xb4], xmm2
vbroadcastss xmm1, xmm1
vmulps xmm0, xmm0, xmm1
vmovsd xmm1, qword [ecx + 0xc]
vmovsd xmm2, qword [ecx + 0xd0]
vaddps xmm0, xmm1, xmm0
vcvttps2dq xmm0, xmm0
vcvtdq2ps xmm0, xmm0
vmovlps qword [ecx + 0xc], xmm0
vsubps xmm0, xmm0, xmm1
vaddps xmm1, xmm2, xmm0
vmovlps qword [ecx + 0xd0], xmm1
vmovsd xmm1, qword [ecx + 0xf0]
vaddps xmm1, xmm0, xmm1
vmovlps qword [ecx + 0xf0], xmm1
vmovddup xmm0, xmm0
vaddps xmm0, xmm0, xmmword [ecx + 0xe0]
vmovups xmmword [ecx + 0xe0], xmm0
test byte [ecx + 9], 1
jne 0x10023f59
mov ecx, dword [0x1017f770]
vxorps xmm0, xmm0, xmm0
vucomiss xmm0, dword [ecx + 0x2f20]
jb 0x10023f59
vmovss xmm0, dword [ecx + 0x1c]
vmovss dword [ecx + 0x2f20], xmm0
mov byte [ebp + 0x1d87], 1
test eax, eax
je 0x10024100
mov ecx, dword [ebp + 0x1d40]
test ecx, ecx
je 0x10023f7e
cmp eax, dword [ecx + 0x2d8]
je 0x100240f6
mov ecx, dword [0x1017f770]
cmp dword [ecx + 0x1bd0], 0
setne byte [ecx + 0x1bdc]
je 0x10023fb1
mov dword [ecx + 0x1bd8], 0
mov word [ecx + 0x1bdf], 0
mov dword [ecx + 0x1c08], 0xffffffff
mov dword [ecx + 0x1bd0], 0
mov word [ecx + 0x1bdd], 0
mov dword [ecx + 0x1c00], 0
mov word [ecx + 0x1be1], 0
vxorps xmm0, xmm0, xmm0
vmovlps qword [ecx + 0x1be4], xmm0
mov dword [ecx + 0x1bf4], 0
mov dword [ecx + 0x1bf0], 0
mov word [ebp + 0x1d86], 0x100
mov edi, dword [eax + 0x2e8]
test edi, edi
je 0x10024013
cmp byte [edi + 0x8b], 0
jne 0x10024015
mov edi, eax
mov eax, dword [ecx + 0x1d1c]
mov dword [esp + 0x34], eax
test eax, eax
je 0x100240c6
jle 0x100242dd
mov eax, dword [ecx + 0x1d24]
mov dword [esp + 0x54], eax
add eax, 4
mov dword [esp + 0x78], eax
xor ecx, ecx
mov ebp, dword [esp + 0x34]
mov dword [esp + 0x20], esi
jmp 0x10024063
inc ecx
dec ebp
add dword [esp + 0x78], 0x24
cmp ecx, dword [esp + 0x34]
mov edi, esi
mov esi, dword [esp + 0x20]
je 0x100240c6
mov esi, edi
lea eax, [ecx + ecx*8]
mov edx, dword [esp + 0x54]
mov eax, dword [edx + eax*4 + 4]
test eax, eax
je 0x10024050
test byte [eax + 0xb], 1
jne 0x10024050
mov edx, dword [esp + 0x78]
mov eax, ebp
jmp 0x10024096
add edx, 0x24
dec eax
je 0x100240ac
mov edi, dword [edx]
test edi, edi
je 0x10024090
mov edi, dword [edi + 0x2d8]
cmp edi, dword [esi + 0x2d8]
jne 0x10024090
jmp 0x10024050
mov edi, esi
mov esi, dword [esp + 0x20]
cmp ecx, dword [esp + 0x34]
jge 0x100240c6
push 0
push ecx
vzeroupper
call fcn.10031ed0
add esp, 8
push edi
vzeroupper
call fcn.10021730
add esp, 4
cmp dword [edi + 0x2ec], 0
mov ebp, dword [esp]
je 0x100241ea
cmp word [edi + 0x122], 2
jne 0x100240f6
mov dword [ebp + 0x1d7c], 1
mov dword [ebp + 0x1e58], 0
cmp byte [esp + 0x10], 0
je 0x10024401
cmp dword [ebp + 0x1d40], 0
je 0x10024401
mov eax, dword [0x1017f770]
cmp dword [eax + 0x1bd0], 0
setne byte [eax + 0x1bdc]
je 0x1002414a
mov dword [eax + 0x1bd8], 0
mov word [eax + 0x1bdf], 0
mov dword [eax + 0x1c08], 0xffffffff
mov dword [eax + 0x1bd0], 0
mov word [eax + 0x1bdd], 0
mov dword [eax + 0x1c00], 0
mov word [eax + 0x1be1], 0
vxorps xmm0, xmm0, xmm0
vmovlps qword [eax + 0x1be4], xmm0
mov dword [eax + 0x1bf0], 0
mov dword [eax + 0x1bf4], 0
mov edi, dword [ebp + 0x1d40]
mov eax, 0x15000000
mov ecx, edi
nop dword [eax]
mov ebp, ecx
mov ecx, dword [ecx + 0x2d4]
test ecx, ecx
je 0x100241c2
test byte [ebp + 0x120], 2
jne 0x100241c2
mov edx, dword [ebp + 8]
and edx, eax
cmp edx, 0x1000000
je 0x100241a0
cmp ebp, edi
je 0x10024279
push ebp
vzeroupper
call fcn.10021730
add esp, 4
mov dword [ebp + 0x2e8], edi
mov eax, dword [esp]
mov edi, dword [eax + 0x1d40]
jmp 0x1002427c
mov eax, dword [0x1017f770]
test byte [edi + 0xa], 4
jne 0x100242ee
mov ecx, dword [eax + 0x1d40]
mov edx, dword [eax + 0x1d7c]
vxorps xmm0, xmm0, xmm0
vmovlps qword [eax + 0x1d44], xmm0
mov dword [ecx + edx*4 + 0x2ec], 0
mov ecx, dword [eax + 0x1d40]
shl edx, 4
vmovups xmmword [ecx + edx + 0x2f4], xmm0
mov word [eax + 0x1d89], 1
vmovups xmmword [eax + 0x1d8c], xmm0
mov dword [eax + 0x1d9c], 0
mov eax, dword [0x1017f770]
mov cl, 1
cmp byte [eax + 0x1da1], 0
jne 0x10024260
movzx ecx, byte [eax + 0x1d89]
mov byte [eax + 0x1d88], cl
cmp word [edi + 0x122], 2
jne 0x100240f6
jmp 0x100240ec
mov eax, dword [esp]
test byte [edi + 0x120], 2
mov ecx, dword [eax + 0x1d7c]
jne 0x100242a6
test ecx, ecx
je 0x10024401
mov eax, dword [0x1017f770]
lea edi, [eax + 0x1d40]
mov edx, dword [eax + 0x1d40]
jmp 0x100242c0
test ecx, ecx
je 0x1002430d
mov eax, dword [0x1017f770]
lea edi, [eax + 0x1d40]
xor ecx, 1
mov edx, dword [eax + 0x1d40]
jne 0x1002432d
mov ebp, dword [edx + 0x2e8]
test ebp, ebp
je 0x100242d3
cmp byte [ebp + 0x8b], 0
jne 0x100242d5
mov ebp, edx
mov dword [edi], ebp
xor ecx, ecx
mov edx, ebp
jmp 0x1002432d
xor ecx, ecx
cmp ecx, dword [esp + 0x34]
jl 0x100240b8
jmp 0x100240c6
vxorps xmm0, xmm0, xmm0
vmovlps qword [eax + 0x1d44], xmm0
cmp word [edi + 0x122], 2
je 0x100240ec
jmp 0x100240f6
mov dword [edi + 0x2f0], 0
mov eax, dword [0x1017f770]
lea edi, [eax + 0x1d40]
mov edx, dword [eax + 0x1d40]
mov ecx, 1
mov dword [esp], edi
mov ebp, dword [edx + ecx*4 + 0x2ec]
test ebp, ebp
je 0x10024376
mov edi, ecx
shl edi, 4
mov dword [eax + 0x1d44], ebp
mov dword [eax + 0x1d7c], ecx
mov dword [eax + 0x1d48], 0
mov dword [edx + ecx*4 + 0x2ec], ebp
mov ecx, dword [esp]
mov ecx, dword [ecx]
vmovups xmm0, xmmword [edx + edi + 0x2f4]
vmovups xmmword [ecx + edi + 0x2f4], xmm0
jmp 0x100243f1
mov dword [eax + 0x1d7c], ecx
test byte [edx + 0xa], 4
jne 0x100243e5
vxorps xmm0, xmm0, xmm0
vmovlps qword [eax + 0x1d44], xmm0
mov dword [edx + ecx*4 + 0x2ec], 0
mov edx, dword [esp]
mov edx, dword [edx]
shl ecx, 4
vmovups xmmword [edx + ecx + 0x2f4], xmm0
mov word [eax + 0x1d89], 1
vmovups xmmword [eax + 0x1d8c], xmm0
mov dword [eax + 0x1d9c], 0
mov ecx, dword [0x1017f770]
mov dl, 1
cmp byte [ecx + 0x1da1], 0
jne 0x100243dd
movzx edx, byte [ecx + 0x1d89]
mov byte [ecx + 0x1d88], dl
jmp 0x100243f1
vxorps xmm0, xmm0, xmm0
vmovlps qword [eax + 0x1d44], xmm0
mov word [eax + 0x1d85], 1
mov byte [eax + 0x1d87], 1
mov eax, dword [esp + 0x24]
or al, byte [esp + 0x58]
mov dword [esp + 0x24], eax
test al, 1
je 0x1002444a
mov eax, dword [esi + 0x1d40]
test eax, eax
je 0x1002444a
mov ecx, 0x40000
and ecx, dword [eax + 8]
mov eax, ecx
shr eax, 0x12
xor al, 1
mov byte [esi + 0x355], al
test ecx, ecx
jne 0x10024451
cmp dword [esi + 0x1d44], 0
je 0x10024451
cmp byte [esi + 0x1d86], 0
jne 0x10024451
mov al, 1
jmp 0x1002445b
mov byte [esi + 0x355], 0
cmp dword [esi + 0x1e58], 0
setne al
mov byte [esi + 0x356], al
mov eax, dword [0x1017f770]
vmovss xmm0, dword [eax + 0x1468]
vxorps xmm1, xmm1, xmm1
vucomiss xmm0, xmm1
jne 0x100246f3
jp 0x100246f3
cmp dword [eax + 0x1bd0], 0
je 0x100244ff
test byte [eax + 0x1be8], 2
jne 0x100246f3
mov dword [eax + 0x1bd8], 0
mov byte [eax + 0x1be0], 0
mov dword [eax + 0x1c08], 0xffffffff
mov dword [eax + 0x1bd0], 0
mov dword [eax + 0x1bdc], 1
mov dword [eax + 0x1c00], 0
mov word [eax + 0x1be1], 0
vxorps xmm0, xmm0, xmm0
vmovlps qword [eax + 0x1be4], xmm0
mov dword [eax + 0x1bf4], 0
mov dword [eax + 0x1bf0], 0
jmp 0x100246f3
cmp dword [eax + 0x1d7c], 0
mov edi, dword [eax + 0x1d40]
je 0x10024572
mov ecx, dword [edi + 0x2e8]
test ecx, ecx
je 0x10024521
cmp byte [ecx + 0x8b], 0
jne 0x10024523
mov ecx, edi
mov dword [eax + 0x1d40], ecx
mov edx, dword [ecx + 0x2ec]
test edx, edx
je 0x10024619
mov dword [eax + 0x1d44], edx
mov dword [eax + 0x1d7c], 0
mov dword [eax + 0x1d48], 0
mov dword [ecx + 0x2ec], edx
mov edx, dword [eax + 0x1d40]
vmovups xmm0, xmmword [ecx + 0x2f4]
vmovups xmmword [edx + 0x2f4], xmm0
jmp 0x100246e3
test edi, edi
je 0x1002469b
cmp edi, dword [edi + 0x2d8]
je 0x10024675
test byte [edi + 0xb], 4
jne 0x10024675
mov ebp, dword [edi + 0x2d4]
test ebp, ebp
je 0x10024675
vmovsd xmm1, qword [edi + 0xc]
vmovups xmmword [esp + 0x10], xmm1
vmovsd xmm0, qword [edi + 0x14]
vaddps xmm0, xmm1, xmm0
vmovups xmmword [esp], xmm0
push ebp
vzeroupper
call fcn.10021730
add esp, 4
mov eax, dword [edi + 0x54]
mov ecx, dword [0x1017f770]
mov edx, dword [ecx + 0x1d40]
vmovddup xmm0, qword [ebp + 0xc]
vmovups xmm1, xmmword [esp + 0x10]
vunpcklpd xmm1, xmm1, xmmword [esp]
vsubps xmm0, xmm1, xmm0
mov dword [ecx + 0x1d44], eax
mov dword [ecx + 0x1d7c], 0
mov dword [ecx + 0x1d48], 0
mov dword [edx + 0x2ec], eax
mov eax, dword [ecx + 0x1d40]
vmovups xmmword [eax + 0x2f4], xmm0
jmp 0x100246f3
mov dword [eax + 0x1d7c], 0
test byte [ecx + 0xa], 4
jne 0x100246d7
vxorps xmm0, xmm0, xmm0
vmovlps qword [eax + 0x1d44], xmm0
mov dword [ecx + 0x2ec], 0
mov ecx, dword [eax + 0x1d40]
vmovups xmmword [ecx + 0x2f4], xmm0
mov byte [eax + 0x1d8a], 0
vmovups xmmword [eax + 0x1d8c], xmm0
mov dword [eax + 0x1d9c], 0
mov word [eax + 0x1d88], 0x101
jmp 0x100246e3
mov ecx, dword [eax + 0x1d1c]
test ecx, ecx
jg 0x100246a5
mov ecx, 0x5000000
and ecx, dword [edi + 8]
cmp ecx, 0x1000000
je 0x100246c9
mov dword [edi + 0x2ec], 0
jmp 0x100246c9
mov ecx, dword [eax + 0x1d1c]
test ecx, ecx
jle 0x100246c9
mov eax, dword [eax + 0x1d24]
dec ecx
lea edx, [ecx + ecx*8]
mov eax, dword [eax + edx*4 + 4]
test byte [eax + 0xb], 8
jne 0x100246f3
push 1
push ecx
vzeroupper
call fcn.10031ed0
add esp, 8
jmp 0x100246f3
vxorps xmm0, xmm0, xmm0
vmovlps qword [eax + 0x1d44], xmm0
jmp 0x100246f3
vxorps xmm0, xmm0, xmm0
vmovlps qword [eax + 0x1d44], xmm0
mov word [eax + 0x1d85], 1
mov byte [eax + 0x1d87], 1
vxorps xmm0, xmm0, xmm0
vmovups xmmword [esi + 0x1d4c], xmm0
mov dword [esi + 0x1d5c], 0
mov eax, dword [esi + 0x1d44]
test eax, eax
je 0x10024729
cmp byte [esi + 0x1d86], 0
jne 0x10024729
cmp dword [esi + 0x1e58], 0
je 0x100248ad
mov eax, dword [esi + 0x1d40]
test eax, eax
je 0x10024740
test byte [eax + 0xa], 4
je 0x10024740
mov byte [esi + 0x1d86], 1
mov eax, dword [esi + 0x1d70]
test eax, eax
je 0x10024775
mov ecx, dword [esi + 0x1d74]
test cl, 1
jne 0x10024769
mov dword [esi + 0x1d54], eax
mov dword [esi + 0x1d50], eax
mov dword [esi + 0x1d4c], eax
jmp 0x1002476f
mov dword [esi + 0x1d58], eax
mov dword [esi + 0x1d5c], ecx
mov dword [esi + 0x1d70], 0
mov eax, dword [0x1017f770]
mov ecx, dword [eax + 0x1d40]
mov dword [esp], eax
cmp byte [eax + 0x1da2], 0
je 0x100247a7
test ecx, ecx
je 0x100247a7
test ecx, ecx
jne 0x10024be7
jmp 0x1002522c
mov eax, dword [esp]
mov dword [eax + 0x1db0], 0xffffffff
vxorps xmm0, xmm0, xmm0
vmovlps qword [eax + 0x1da4], xmm0
mov ebp, 0xffffffff
test ecx, ecx
je 0x10024bd6
cmp dword [eax + 0x1e58], 0
jne 0x10024bd6
test byte [ecx + 0xa], 4
jne 0x10024bd6
mov eax, dword [esp]
mov edx, dword [eax + 0x1be4]
mov ebp, 0xffffffff
mov edi, edx
test dl, 1
jne 0x10024939
vmovss xmm1, dword [eax + 0x1474]
vxorps xmm0, xmm0, xmm0
vucomiss xmm0, xmm1
jbe 0x1002491a
mov eax, dword [esp]
vmovss xmm1, dword [eax + 0x14a4]
vucomiss xmm0, xmm1
ja 0x10024939
vxorps xmm0, xmm0, xmm0
vucomiss xmm1, xmm0
jne 0x10024838
jnp 0x1002492a
mov eax, dword [esp]
vsubss xmm3, xmm1, dword [eax + 0x18]
vucomiss xmm3, xmm1
jae 0x10024939
vmovss xmm0, dword [eax + 0x8c]
vmovss xmm2, dword [eax + 0x90]
vmulss xmm2, xmm2, dword [0x10129884]
vmulss xmm0, xmm0, dword [0x10129888]
vxorps xmm4, xmm4, xmm4
vucomiss xmm4, xmm2
jae 0x100250b7
mov eax, 0xffffffff
vucomiss xmm0, xmm3
mov edx, 0xffffffff
ja 0x10024894
vsubss xmm3, xmm3, xmm0
vdivss xmm3, xmm3, xmm2
vcvttss2si edx, xmm3
vucomiss xmm0, xmm1
ja 0x100248a6
vsubss xmm0, xmm1, xmm0
vdivss xmm0, xmm0, xmm2
vcvttss2si eax, xmm0
sub eax, edx
jmp 0x100250cc
mov ecx, dword [esi + 0x1d40]
test ecx, ecx
je 0x10024740
test byte [ecx + 0xa], 4
jne 0x10024729
mov ecx, dword [0x1017f770]
vmovss xmm0, dword [ecx + 0x300]
vmovss xmm1, dword [ecx + 0x308]
vxorps xmm2, xmm2, xmm2
vucomiss xmm0, xmm2
jbe 0x10024c56
vmovss xmm3, dword [ecx + 0x1464]
vcmpeqss xmm4, xmm3, xmm2
vmovss xmm5, dword [0x10129710]
vandps xmm4, xmm4, xmm5
vcmpltss xmm3, xmm3, xmm2
vandnps xmm3, xmm3, xmm4
vucomiss xmm3, xmm2
seta dl
mov dword [esp], edx
jmp 0x10024c5d
vucomiss xmm1, xmm0
jne 0x10024dbc
jp 0x10024dbc
mov eax, dword [esp]
mov dword [eax + 0x1db0], 0
xor ebp, ebp
mov eax, edi
test al, 2
jne 0x10024a18
mov eax, dword [esp]
vmovss xmm1, dword [eax + 0x1478]
vxorps xmm0, xmm0, xmm0
vucomiss xmm0, xmm1
jbe 0x100249f6
mov eax, dword [esp]
vmovss xmm1, dword [eax + 0x14a8]
vucomiss xmm0, xmm1
ja 0x10024a18
vxorps xmm0, xmm0, xmm0
vucomiss xmm1, xmm0
jne 0x10024981
jnp 0x10024a06
mov eax, dword [esp]
vsubss xmm3, xmm1, dword [eax + 0x18]
vucomiss xmm3, xmm1
jae 0x10024a18
vmovss xmm0, dword [eax + 0x8c]
vmovss xmm2, dword [eax + 0x90]
vmulss xmm2, xmm2, dword [0x10129884]
vmulss xmm0, xmm0, dword [0x10129888]
vxorps xmm4, xmm4, xmm4
vucomiss xmm4, xmm2
jae 0x100250d9
mov eax, 0xffffffff
vucomiss xmm0, xmm3
mov edx, 0xffffffff
ja 0x100249dd
vsubss xmm3, xmm3, xmm0
vdivss xmm3, xmm3, xmm2
vcvttss2si edx, xmm3
vucomiss xmm0, xmm1
ja 0x100249ef
vsubss xmm0, xmm1, xmm0
vdivss xmm0, xmm0, xmm2
vcvttss2si eax, xmm0
sub eax, edx
jmp 0x100250ee
vucomiss xmm1, xmm0
jne 0x10024e34
jp 0x10024e34
mov eax, dword [esp]
mov dword [eax + 0x1db0], 1
mov ebp, 1
mov eax, edi
test al, 4
jne 0x10024af7
mov eax, dword [esp]
vmovss xmm1, dword [eax + 0x147c]
vxorps xmm0, xmm0, xmm0
vucomiss xmm0, xmm1
jbe 0x10024ad5
mov eax, dword [esp]
vmovss xmm1, dword [eax + 0x14ac]
vucomiss xmm0, xmm1
ja 0x10024af7
vxorps xmm0, xmm0, xmm0
vucomiss xmm1, xmm0
jne 0x10024a60
jnp 0x10024ae5
mov eax, dword [esp]
vsubss xmm3, xmm1, dword [eax + 0x18]
vucomiss xmm3, xmm1
jae 0x10024af7
vmovss xmm0, dword [eax + 0x8c]
vmovss xmm2, dword [eax + 0x90]
vmulss xmm2, xmm2, dword [0x10129884]
vmulss xmm0, xmm0, dword [0x10129888]
vxorps xmm4, xmm4, xmm4
vucomiss xmm4, xmm2
jae 0x100250fb
mov eax, 0xffffffff
vucomiss xmm0, xmm3
mov edx, 0xffffffff
ja 0x10024abc
vsubss xmm3, xmm3, xmm0
vdivss xmm3, xmm3, xmm2
vcvttss2si edx, xmm3
vucomiss xmm0, xmm1
ja 0x10024ace
vsubss xmm0, xmm1, xmm0
vdivss xmm0, xmm0, xmm2
vcvttss2si eax, xmm0
sub eax, edx
jmp 0x10025110
vucomiss xmm1, xmm0
jne 0x10024eac
jp 0x10024eac
mov eax, dword [esp]
mov dword [eax + 0x1db0], 2
mov ebp, 2
mov eax, edi
test al, 8
jne 0x10024bd6
mov eax, dword [esp]
vmovss xmm1, dword [eax + 0x1480]
vxorps xmm0, xmm0, xmm0
vucomiss xmm0, xmm1
jbe 0x10024bb4
mov eax, dword [esp]
vmovss xmm1, dword [eax + 0x14b0]
vucomiss xmm0, xmm1
ja 0x10024bd6
vxorps xmm0, xmm0, xmm0
vucomiss xmm1, xmm0
jne 0x10024b3f
jnp 0x10024bc4
mov eax, dword [esp]
vsubss xmm3, xmm1, dword [eax + 0x18]
vucomiss xmm3, xmm1
jae 0x10024bd6
vmovss xmm0, dword [eax + 0x8c]
vmovss xmm2, dword [eax + 0x90]
vmulss xmm2, xmm2, dword [0x10129884]
vmulss xmm0, xmm0, dword [0x10129888]
vxorps xmm4, xmm4, xmm4
vucomiss xmm4, xmm2
jae 0x1002511d
mov eax, 0xffffffff
vucomiss xmm0, xmm3
mov edx, 0xffffffff
ja 0x10024b9b
vsubss xmm3, xmm3, xmm0
vdivss xmm3, xmm3, xmm2
vcvttss2si edx, xmm3
vucomiss xmm0, xmm1
ja 0x10024bad
vsubss xmm0, xmm1, xmm0
vdivss xmm0, xmm0, xmm2
vcvttss2si eax, xmm0
sub eax, edx
jmp 0x10025132
vucomiss xmm1, xmm0
jne 0x10024f24
jp 0x10024f24
mov eax, dword [esp]
mov dword [eax + 0x1db0], 3
mov ebp, 3
mov eax, dword [esp]
mov dword [eax + 0x1db8], ebp
test ecx, ecx
je 0x1002522c
mov eax, dword [esp]
cmp dword [eax + 0x1db0], 0xffffffff
jne 0x1002522c
mov eax, dword [eax + 8]
and eax, 1
je 0x1002522c
test byte [ecx + 0xa], 4
jne 0x1002522c
mov edi, dword [esp]
cmp dword [edi + 0x1e58], 0
jne 0x1002522c
cmp dword [edi + 0x1d7c], 0
jne 0x1002522c
mov ebp, dword [edi + 0x48]
test ebp, ebp
js 0x10024d07
cmp byte [edi + ebp + 0x100], 0
je 0x10024d07
test byte [edi + 0x1bf0], 0x20
sete al
mov dword [esp + 0x10], eax
jmp 0x10024d0f
mov dword [esp], 0
vucomiss xmm1, xmm2
jbe 0x10024c94
vmovss xmm1, dword [ecx + 0x146c]
vxorps xmm2, xmm2, xmm2
vcmpeqss xmm3, xmm1, xmm2
vmovss xmm4, dword [0x10129710]
vandps xmm3, xmm3, xmm4
vcmpltss xmm1, xmm1, xmm2
vandnps xmm1, xmm1, xmm3
vucomiss xmm1, xmm2
seta cl
mov ebp, ecx
jmp 0x10024c96
xor ebp, ebp
mov edi, dword [esi + 0x1bd0]
test edi, edi
setne dl
mov ecx, dword [esp]
mov ch, cl
xor ch, 1
or ch, dl
jne 0x10024cbd
mov dword [esi + 0x1d4c], eax
mov dword [esi + 0x1d5c], 2
test edi, edi
je 0x10024d6d
cmp edi, eax
sete cl
mov edx, ebp
test dl, cl
je 0x10024ce0
mov dword [esi + 0x1d58], eax
mov dword [esi + 0x1d5c], 1
vxorps xmm1, xmm1, xmm1
vucomiss xmm0, xmm1
jbe 0x10024cf4
cmp edi, eax
jne 0x10024cf4
mov dword [esi + 0x1d50], eax
cmp edi, eax
sete cl
test byte [esp], cl
je 0x10024729
jmp 0x10024d9d
mov dword [esp + 0x10], 0
mov eax, dword [edi + 0x4c]
test eax, eax
mov dword [esp + 0x58], eax
js 0x10024d30
cmp byte [edi + eax + 0x100], 0
je 0x10024d30
test byte [edi + 0x1bf0], 0x40
sete dl
jmp 0x10024d32
xor edx, edx
mov eax, dword [edi + 0x50]
test eax, eax
js 0x1002515f
vmovss xmm0, dword [edi + eax*4 + 0x464]
vxorps xmm1, xmm1, xmm1
vucomiss xmm0, xmm1
jne 0x10024f9c
jp 0x10024f9c
test byte [edi + 0x1bf0], 0x80
sete al
mov dword [esp + 0x34], eax
jmp 0x10025167
mov ecx, ebp
test cl, cl
je 0x10024d83
mov dword [esi + 0x1d58], eax
mov dword [esi + 0x1d5c], 1
vxorps xmm1, xmm1, xmm1
vucomiss xmm0, xmm1
jbe 0x10024d93
mov dword [esi + 0x1d50], eax
cmp byte [esp], 0
je 0x10024729
mov dword [esi + 0x1d54], eax
jmp 0x10024729
xor ecx, ecx
test byte [ebp + 0x37c], 4
je 0x10023d3c
jmp 0x10023dbe
mov eax, dword [esp]
vsubss xmm4, xmm1, dword [eax + 0x18]
vucomiss xmm4, xmm1
jae 0x10024813
mov eax, dword [esp]
vmovss xmm2, dword [eax + 0x8c]
vmovss xmm3, dword [eax + 0x90]
vmulss xmm3, xmm3, dword [0x10129884]
vmulss xmm2, xmm2, dword [0x10129888]
vpxor xmm5, xmm5, xmm5
vucomiss xmm5, xmm3
jae 0x1002502f
mov eax, 0xffffffff
vucomiss xmm2, xmm4
mov edx, 0xffffffff
ja 0x10024e1b
vsubss xmm4, xmm4, xmm2
vdivss xmm4, xmm4, xmm3
vcvttss2si edx, xmm4
vucomiss xmm2, xmm1
ja 0x10024e2d
vsubss xmm1, xmm1, xmm2
vdivss xmm1, xmm1, xmm3
vcvttss2si eax, xmm1
sub eax, edx
jmp 0x10025044
mov eax, dword [esp]
vsubss xmm4, xmm1, dword [eax + 0x18]
vucomiss xmm4, xmm1
jae 0x1002495c
mov eax, dword [esp]
vmovss xmm2, dword [eax + 0x8c]
vmovss xmm3, dword [eax + 0x90]
vmulss xmm3, xmm3, dword [0x10129884]
vmulss xmm2, xmm2, dword [0x10129888]
vpxor xmm5, xmm5, xmm5
vucomiss xmm5, xmm3
jae 0x10025051
mov eax, 0xffffffff
vucomiss xmm2, xmm4
mov edx, 0xffffffff
ja 0x10024e93
vsubss xmm4, xmm4, xmm2
vdivss xmm4, xmm4, xmm3
vcvttss2si edx, xmm4
vucomiss xmm2, xmm1
ja 0x10024ea5
vsubss xmm1, xmm1, xmm2
vdivss xmm1, xmm1, xmm3
vcvttss2si eax, xmm1
sub eax, edx
jmp 0x10025066
mov eax, dword [esp]
vsubss xmm4, xmm1, dword [eax + 0x18]
vucomiss xmm4, xmm1
jae 0x10024a3b
mov eax, dword [esp]
vmovss xmm2, dword [eax + 0x8c]
vmovss xmm3, dword [eax + 0x90]
vmulss xmm3, xmm3, dword [0x10129884]
vmulss xmm2, xmm2, dword [0x10129888]
vpxor xmm5, xmm5, xmm5
vucomiss xmm5, xmm3
jae 0x10025073
mov eax, 0xffffffff
vucomiss xmm2, xmm4
mov edx, 0xffffffff
ja 0x10024f0b
vsubss xmm4, xmm4, xmm2
vdivss xmm4, xmm4, xmm3
vcvttss2si edx, xmm4
vucomiss xmm2, xmm1
ja 0x10024f1d
vsubss xmm1, xmm1, xmm2
vdivss xmm1, xmm1, xmm3
vcvttss2si eax, xmm1
sub eax, edx
jmp 0x10025088
mov eax, dword [esp]
vsubss xmm4, xmm1, dword [eax + 0x18]
vucomiss xmm4, xmm1
jae 0x10024b1a
mov eax, dword [esp]
vmovss xmm2, dword [eax + 0x8c]
vmovss xmm3, dword [eax + 0x90]
vmulss xmm3, xmm3, dword [0x10129884]
vmulss xmm2, xmm2, dword [0x10129888]
vpxor xmm5, xmm5, xmm5
vucomiss xmm5, xmm3
jae 0x10025095
mov eax, 0xffffffff
vucomiss xmm2, xmm4
mov edx, 0xffffffff
ja 0x10024f83
vsubss xmm4, xmm4, xmm2
vdivss xmm4, xmm4, xmm3
vcvttss2si edx, xmm4
vucomiss xmm2, xmm1
ja 0x10024f95
vsubss xmm1, xmm1, xmm2
vdivss xmm1, xmm1, xmm3
vcvttss2si eax, xmm1
sub eax, edx
jmp 0x100250aa
vmovss xmm1, dword [edi + 0x8c]
vucomiss xmm0, xmm1
jbe 0x1002515f
vsubss xmm3, xmm0, dword [edi + 0x18]
vucomiss xmm3, xmm0
jae 0x1002515f
vmovss xmm2, dword [edi + 0x90]
vxorps xmm4, xmm4, xmm4
vucomiss xmm4, xmm2
jae 0x1002513f
mov eax, 0xffffffff
vucomiss xmm1, xmm3
mov edi, 0xffffffff
ja 0x10024fef
vsubss xmm3, xmm3, xmm1
vdivss xmm3, xmm3, xmm2
vcvttss2si edi, xmm3
vucomiss xmm1, xmm0
ja 0x10025001
vsubss xmm0, xmm0, xmm1
vdivss xmm0, xmm0, xmm2
vcvttss2si eax, xmm0
sub eax, edi
jmp 0x10025154
vcmpltps xmm2, xmm3, xmm1
vcmpleps xmm0, xmm1, xmm0
vandps xmm0, xmm0, xmm2
vmovd ecx, xmm0
and ecx, 1
test ecx, ecx
setg cl
test al, al
je 0x10023731
jmp 0x10023735
vcmpltps xmm3, xmm4, xmm2
vcmpleps xmm1, xmm2, xmm1
vandps xmm1, xmm1, xmm3
vmovd eax, xmm1
and eax, 1
test eax, eax
jg 0x1002492a
jmp 0x10024813
vcmpltps xmm3, xmm4, xmm2
vcmpleps xmm1, xmm2, xmm1
vandps xmm1, xmm1, xmm3
vmovd eax, xmm1
and eax, 1
test eax, eax
jg 0x10024a06
jmp 0x1002495c
vcmpltps xmm3, xmm4, xmm2
vcmpleps xmm1, xmm2, xmm1
vandps xmm1, xmm1, xmm3
vmovd eax, xmm1
and eax, 1
test eax, eax
jg 0x10024ae5
jmp 0x10024a3b
vcmpltps xmm3, xmm4, xmm2
vcmpleps xmm1, xmm2, xmm1
vandps xmm1, xmm1, xmm3
vmovd eax, xmm1
and eax, 1
test eax, eax
jg 0x10024bc4
jmp 0x10024b1a
vcmpltps xmm2, xmm3, xmm0
vcmpleps xmm0, xmm0, xmm1
vandps xmm0, xmm0, xmm2
vmovd eax, xmm0
and eax, 1
test eax, eax
jg 0x1002492a
jmp 0x10024939
vcmpltps xmm2, xmm3, xmm0
vcmpleps xmm0, xmm0, xmm1
vandps xmm0, xmm0, xmm2
vmovd eax, xmm0
and eax, 1
test eax, eax
jg 0x10024a06
jmp 0x10024a18
vcmpltps xmm2, xmm3, xmm0
vcmpleps xmm0, xmm0, xmm1
vandps xmm0, xmm0, xmm2
vmovd eax, xmm0
and eax, 1
test eax, eax
jg 0x10024ae5
jmp 0x10024af7
vcmpltps xmm2, xmm3, xmm0
vcmpleps xmm0, xmm0, xmm1
vandps xmm0, xmm0, xmm2
vmovd eax, xmm0
and eax, 1
test eax, eax
jg 0x10024bc4
jmp 0x10024bd6
vcmpltps xmm2, xmm3, xmm1
vcmpleps xmm0, xmm1, xmm0
vandps xmm0, xmm0, xmm2
vmovd eax, xmm0
and eax, 1
test eax, eax
mov edi, dword [esp]
jg 0x10024d5a
mov dword [esp + 0x34], 0
mov eax, dword [edi + 0x54]
test eax, eax
js 0x10025212
vmovss xmm0, dword [edi + eax*4 + 0x464]
vxorps xmm1, xmm1, xmm1
vucomiss xmm0, xmm1
jne 0x10025195
jp 0x10025195
test byte [edi + 0x1bf1], 1
sete al
mov edi, eax
jmp 0x10025214
vmovss xmm1, dword [edi + 0x8c]
vucomiss xmm0, xmm1
jbe 0x10025212
vsubss xmm3, xmm0, dword [edi + 0x18]
vucomiss xmm3, xmm0
jae 0x10025212
vmovss xmm2, dword [edi + 0x90]
vxorps xmm4, xmm4, xmm4
vucomiss xmm4, xmm2
jae 0x100251f2
mov eax, 0xffffffff
vucomiss xmm1, xmm3
mov edi, 0xffffffff
ja 0x100251dc
vsubss xmm3, xmm3, xmm1
vdivss xmm3, xmm3, xmm2
vcvttss2si edi, xmm3
vucomiss xmm1, xmm0
ja 0x100251ee
vsubss xmm0, xmm0, xmm1
vdivss xmm0, xmm0, xmm2
vcvttss2si eax, xmm0
sub eax, edi
jmp 0x10025207
vcmpltps xmm2, xmm3, xmm1
vcmpleps xmm0, xmm1, xmm0
vandps xmm0, xmm0, xmm2
vmovd eax, xmm0
and eax, 1
test eax, eax
mov edi, dword [esp]
jg 0x10025187
xor edi, edi
cmp byte [esp + 0x10], dl
jne 0x10026862
mov eax, dword [esp + 0x34]
mov edx, edi
xor al, dl
jne 0x10026862
vpxor xmm5, xmm5, xmm5
mov edi, dword [esp]
mov byte [edi + 0x1da2], 0
mov eax, dword [edi + 0x1db0]
cmp eax, 0xffffffff
je 0x10025310
mov edx, dword [edi + 0x1da4]
mov ebp, edx
shr ebp, 5
and ebp, 0x10
or ebp, edx
mov word [edi + 0x1da0], 0x101
mov dword [edi + 0x1db4], eax
mov dword [edi + 0x1da4], ebp
mov eax, dword [edi + 0x37c]
mov dword [edi + 0x1dac], eax
mov dword [edi + 0x1df0], 0
vxorps xmm0, xmm0, xmm0
vmovups xmmword [edi + 0x1dd0], xmm0
mov dword [edi + 0x1dfc], 0x7f7fffff
vbroadcastss xmm1, dword [0x101296d0]
vmovlps qword [edi + 0x1df4], xmm1
mov dword [edi + 0x1e00], 0
vmovlps qword [edi + 0x1e04], xmm0
mov dword [edi + 0x1e1c], 0
mov dword [edi + 0x1e28], 0x7f7fffff
vmovlps qword [edi + 0x1e20], xmm1
mov dword [edi + 0x1e2c], 0
vmovlps qword [edi + 0x1e30], xmm0
mov dword [edi + 0x1e48], 0
mov dword [edi + 0x1e54], 0x7f7fffff
vmovlps qword [edi + 0x1e4c], xmm1
mov byte [edi + 0x1d88], 1
jmp 0x1002531d
cmp byte [edi + 0x1da0], 0
je 0x1002546b
mov eax, dword [esp]
cmp dword [eax + 0x1d44], 0
je 0x10025337
cmp dword [eax + 0x1d78], 3
je 0x1002535e
jmp 0x1002546b
mov word [eax + 0x1d89], 0x101
mov dword [eax + 0x1d8c], 0
mov byte [eax + 0x1d86], 0
cmp dword [eax + 0x1d78], 3
jne 0x1002546b
mov eax, dword [esp]
cmp dword [eax + 0x1d7c], 0
jne 0x1002546b
test ecx, ecx
je 0x1002546b
vmovsd xmm0, qword [ecx + 0x1b4]
vmovsd xmm2, qword [ecx + 0xc]
vmovsd xmm3, qword [ecx + 0x1ac]
vsubps xmm0, xmm0, xmm2
vbroadcastss xmm1, dword [0x10129710]
vaddps xmm1, xmm0, xmm1
vsubps xmm0, xmm3, xmm2
vbroadcastss xmm2, dword [0x101296d4]
vaddps xmm3, xmm0, xmm2
vmovss xmm2, dword [ecx + 0x2f4]
vucomiss xmm2, xmm3
jb 0x100253e9
vmovss xmm0, dword [ecx + 0x2f8]
vmovshdup xmm4, xmm3
vucomiss xmm0, xmm4
jb 0x100253e9
vucomiss xmm1, dword [ecx + 0x2fc]
jb 0x100253e9
vmovshdup xmm0, xmm1
vucomiss xmm0, dword [ecx + 0x300]
jae 0x1002546b
mov eax, dword [esp]
vmovss xmm0, dword [eax + 0x1938]
vmulss xmm4, xmm0, dword [ecx + 0x238]
mov eax, dword [ecx + 0x2d4]
test eax, eax
je 0x1002540e
vmulss xmm4, xmm4, dword [eax + 0x238]
vmulss xmm0, xmm4, dword [0x10129738]
vsubps xmm4, xmm1, xmm3
vbroadcastss xmm0, xmm0
vminps xmm0, xmm4, xmm0
vaddps xmm3, xmm3, xmm0
vmovddup xmm3, xmm3
vsubps xmm0, xmm1, xmm0
vmovddup xmm0, xmm0
vinsertps xmm1, xmm2, dword [ecx + 0x2f8], 0x10
vmovhps xmm1, xmm1, qword [ecx + 0x2fc]
vcmpltps xmm2, xmm1, xmm3
vminps xmm0, xmm0, xmm1
vblendvps xmm0, xmm0, xmm3, xmm2
vmovups xmmword [ecx + 0x2f4], xmm0
vxorps xmm0, xmm0, xmm0
mov eax, dword [esp]
vmovlps qword [eax + 0x1d44], xmm0
test ecx, ecx
je 0x100254d3
vmovups xmmword [esp + 0x10], xmm5
mov eax, dword [esp]
mov eax, dword [eax + 0x1d7c]
shl eax, 4
vmovss xmm3, dword [ecx + eax + 0x2f4]
vmovss xmm5, dword [ecx + eax + 0x2fc]
vucomiss xmm3, xmm5
vxorps xmm0, xmm0, xmm0
ja 0x100254e1
vmovss xmm7, dword [ecx + eax + 0x2f8]
vmovss xmm1, dword [ecx + eax + 0x300]
vucomiss xmm7, xmm1
vxorps xmm2, xmm2, xmm2
vxorps xmm4, xmm4, xmm4
vxorps xmm6, xmm6, xmm6
ja 0x100254ed
vmovaps xmm0, xmm1
vmovaps xmm2, xmm5
vmovaps xmm4, xmm7
vmovaps xmm6, xmm3
jmp 0x100254ed
vxorps xmm0, xmm0, xmm0
vxorps xmm2, xmm2, xmm2
vxorps xmm1, xmm1, xmm1
jmp 0x10025521
vxorps xmm2, xmm2, xmm2
vxorps xmm4, xmm4, xmm4
vxorps xmm6, xmm6, xmm6
vmovss xmm1, dword [ecx + 0xc]
vmovss xmm3, dword [ecx + 0x10]
vaddss xmm0, xmm0, xmm3
vaddss xmm2, xmm2, xmm1
vaddss xmm3, xmm4, xmm3
vaddss xmm4, xmm6, xmm1
vmovups xmm5, xmmword [esp + 0x10]
vaddss xmm1, xmm5, xmm3
vaddss xmm0, xmm5, xmm0
vaddss xmm3, xmm4, dword [0x10129710]
vminss xmm2, xmm3, xmm2
mov ecx, dword [esp]
vmovss dword [ecx + 0x1dbc], xmm2
vmovss dword [ecx + 0x1dc0], xmm1
vmovss dword [ecx + 0x1dc4], xmm2
vmovss dword [ecx + 0x1dc8], xmm0
mov al, 1
cmp byte [ecx + 0x1da1], 0
jne 0x10025556
movzx eax, byte [ecx + 0x1d89]
mov byte [ecx + 0x1d88], al
mov ecx, dword [esi + 0x1d40]
test ecx, ecx
je 0x100256b5
test byte [ecx + 0xa], 4
jne 0x100256b5
cmp dword [esi + 0x1e58], 0
jne 0x100256b5
mov eax, dword [esp]
vmovss xmm0, dword [eax + 0x1938]
vmulss xmm0, xmm0, dword [ecx + 0x238]
mov eax, dword [ecx + 0x2d4]
test eax, eax
je 0x100255a6
vmulss xmm0, xmm0, dword [eax + 0x238]
vmulss xmm0, xmm0, dword [0x1012988c]
vmovss xmm1, dword [esi + 0x18]
vfmadd213ss xmm1, xmm0, dword [0x10129738]
vcvttps2dq xmm0, xmm1
vcvtdq2ps xmm0, xmm0
cmp word [ecx + 0x120], 0
je 0x100263b3
mov eax, dword [esp]
vmovss xmm1, dword [eax + 0x324]
vmovss xmm2, dword [eax + 0x32c]
vsubss xmm2, xmm2, dword [eax + 0x328]
vsubss xmm1, xmm1, dword [eax + 0x320]
vxorps xmm3, xmm3, xmm3
vaddss xmm1, xmm1, xmm3
vaddss xmm2, xmm2, xmm3
vmovss xmm5, dword [eax + 0x338]
vucomiss xmm5, xmm3
vmovss xmm4, dword [0x10129898]
vmulss xmm6, xmm2, xmm4
vcmpltss xmm5, xmm3, xmm5
vblendvps xmm2, xmm2, xmm6, xmm5
jbe 0x1002562a
vmulss xmm1, xmm1, xmm4
mov eax, dword [esp]
vmovss xmm5, dword [eax + 0x33c]
vucomiss xmm5, xmm3
vmovss xmm4, dword [0x1012989c]
vmulss xmm6, xmm2, xmm4
vcmpltss xmm5, xmm3, xmm5
vblendvps xmm2, xmm2, xmm6, xmm5
jbe 0x10025656
vmulss xmm1, xmm1, xmm4
vucomiss xmm1, xmm3
jne 0x1002565e
jnp 0x10025688
cmp byte [ecx + 0x88], 0
je 0x10025688
vfmadd213ss xmm1, xmm0, dword [ecx + 0x58]
vcvttps2dq xmm1, xmm1
vcvtdq2ps xmm1, xmm1
vmovss dword [ecx + 0x68], xmm1
mov dword [ecx + 0x70], 0
mov dword [ecx + 0x78], 0
vxorps xmm1, xmm1, xmm1
vucomiss xmm2, xmm1
jne 0x10025694
jnp 0x100256b5
vfmadd213ss xmm0, xmm2, dword [ecx + 0x5c]
vcvttps2dq xmm0, xmm0
vcvtdq2ps xmm0, xmm0
vmovss dword [ecx + 0x6c], xmm0
mov dword [ecx + 0x74], 0
mov dword [ecx + 0x7c], 0
test byte [esp + 0x24], 1
jne 0x100256cc
mov word [esi + 0x1d85], 0x100
mov byte [esi + 0x1d87], 0
mov dword [esi + 0x1dcc], 0
mov ecx, dword [esp]
vmovsd xmm0, qword [ecx + 0xe4]
vucomiss xmm0, dword [0x10129848]
jb 0x10025711
vmovshdup xmm1, xmm0
vucomiss xmm1, dword [0x10129848]
jb 0x10025711
vcvttps2dq xmm0, xmm0
vcvtdq2ps xmm0, xmm0
vmovlps qword [ecx + 0x1fa4], xmm0
vmovlps qword [ecx + 0xe4], xmm0
vucomiss xmm0, dword [0x10129848]
vmovshdup xmm2, xmm0
jb 0x10025776
vucomiss xmm2, dword [0x10129848]
jb 0x10025776
vmovsd xmm1, qword [ecx + 0x384]
vucomiss xmm1, dword [0x10129848]
jb 0x10025776
vmovshdup xmm3, xmm1
vucomiss xmm3, dword [0x10129848]
jb 0x10025776
vsubps xmm0, xmm0, xmm1
vmovlps qword [ecx + 0x370], xmm0
vxorps xmm1, xmm1, xmm1
vucomiss xmm0, xmm1
jne 0x1002576d
jp 0x1002576d
vmovshdup xmm0, xmm0
vucomiss xmm0, xmm1
jne 0x1002576d
jnp 0x10025782
mov byte [ecx + 0x1d87], 0
jmp 0x10025782
vxorps xmm0, xmm0, xmm0
vmovlps qword [ecx + 0x370], xmm0
mov edi, dword [ecx + 0xe4]
mov edx, dword [ecx + 0xe8]
mov dword [ecx + 0x388], edx
mov dword [ecx + 0x384], edi
vmovsd xmm0, qword [ecx + 0xe4]
vpermilps xmm1, xmm0, 0xf5
vmovss xmm3, dword [0x10129848]
vcmpleps xmm2, xmm3, xmm2
vcmpleps xmm3, xmm3, xmm0
vandps xmm2, xmm3, xmm2
vmovd eax, xmm2
lea esi, [ecx + 0x450]
xor ebp, ebp
vxorps xmm2, xmm2, xmm2
vxorps xmm4, xmm4, xmm4
jmp 0x10025834
vmulps xmm6, xmm5, xmm5
vmovshdup xmm6, xmm6
vfmadd231ss xmm6, xmm5, xmm5
vmovss xmm7, dword [esi + ebp*4]
vcmpless xmm3, xmm6, xmm7
vblendvps xmm3, xmm6, xmm7, xmm3
vbroadcastss xmm6, dword [0x10129734]
vmovss dword [esi + ebp*4], xmm3
vxorps xmm3, xmm5, xmm6
vmaxps xmm3, xmm3, xmm5
vmovsd xmm5, qword [esi + ebp*8 - 0x28]
vcmpleps xmm6, xmm3, xmm5
vblendvps xmm3, xmm3, xmm5, xmm6
vmovlps qword [esi + ebp*8 - 0x28], xmm3
inc ebp
cmp ebp, 5
je 0x100259a4
cmp byte [esi + ebp - 0x364], 0
je 0x10025930
vmovss xmm5, dword [esi + ebp*4 - 0x50]
vucomiss xmm2, xmm5
seta byte [esi + ebp - 0x70]
mov byte [esi + ebp - 0x66], 0
vmovss dword [esi + ebp*4 - 0x3c], xmm5
jbe 0x10025970
mov dword [ecx + ebp*4 + 0x400], 0
mov byte [ecx + ebp + 0x3e5], 0
vmovsd xmm6, qword [ecx + 0x1b30]
vsubsd xmm5, xmm6, qword [ecx + ebp*8 + 0x3b8]
vcvtsd2ss xmm7, xmm5, xmm5
vmovss xmm5, dword [ecx + 0x28]
vucomiss xmm5, xmm7
jbe 0x100258dc
vxorpd xmm6, xmm6, xmm6
vxorps xmm7, xmm7, xmm7
test al, 1
je 0x100258b3
vsubss xmm7, xmm1, dword [esi + ebp*8 - 0xc0]
vsubss xmm6, xmm0, dword [esi + ebp*8 - 0xc4]
vmulss xmm7, xmm7, xmm7
vfmadd231ss xmm7, xmm6, xmm6
vmovss xmm6, dword [ecx + 0x2c]
vmulss xmm6, xmm6, xmm6
vucomiss xmm6, xmm7
jbe 0x100258d0
mov byte [esi + ebp - 0x6b], 1
vmulss xmm5, xmm5, dword [0x101298a0]
vcvtss2sd xmm6, xmm5, xmm5
vmovsd qword [esi + ebp*8 - 0x98], xmm6
mov dword [esi + ebp*8 - 0xc4], edi
mov dword [esi + ebp*8 - 0xc0], edx
movzx ecx, byte [esi + ebp - 0x6b]
mov byte [esi + ebp - 0x57], cl
mov ecx, dword [esp]
vmovlps qword [esi + ebp*8 - 0x28], xmm4
mov dword [esi + ebp*4], 0
cmp byte [esi + ebp - 0x70], 0
je 0x1002582a
mov byte [ecx + 0x1d87], 0
jmp 0x1002582a
mov byte [esi + ebp - 0x70], 0
vmovss xmm3, dword [esi + ebp*4 - 0x50]
vucomiss xmm3, xmm2
setae byte [esi + ebp - 0x66]
vmovss dword [esi + ebp*4 - 0x3c], xmm3
mov dword [esi + ebp*4 - 0x50], 0xbf800000
mov byte [esi + ebp - 0x6b], 0
jae 0x1002582a
mov byte [esi + ebp - 0x57], 0
jmp 0x1002582a
vaddss xmm5, xmm5, dword [ecx + 0x18]
vmovss dword [ecx + ebp*4 + 0x400], xmm5
mov byte [ecx + ebp + 0x3e5], 0
vxorps xmm5, xmm5, xmm5
test al, 1
je 0x100257e0
vmovsd xmm5, qword [esi + ebp*8 - 0xc4]
vsubps xmm5, xmm0, xmm5
jmp 0x100257e0
vzeroupper
call fcn.100220a0
call fcn.100219d0
mov ecx, dword [0x1017f770]
mov edx, dword [ecx + 0x1d1c]
test edx, edx
jle 0x100259f7
mov esi, dword [ecx + 0x1d24]
lea eax, [edx + 1]
lea edx, [edx + edx*8]
lea edx, [esi + edx*4]
add edx, 0xffffffe0
jmp 0x100259e9
dec eax
add edx, 0xffffffdc
cmp eax, 1
jbe 0x100259f7
mov esi, dword [edx]
test esi, esi
je 0x100259e0
test byte [esi + 0xb], 8
je 0x100259e0
jmp 0x10025a12
cmp dword [ebx + 0x1e58], 0
je 0x10025a32
vmovss xmm0, dword [ebx + 0x1e68]
vxorps xmm1, xmm1, xmm1
vucomiss xmm0, xmm1
jbe 0x10025a32
vmovss xmm0, dword [ebx + 0x18]
vmovss xmm1, dword [0x10129788]
vfmadd213ss xmm1, xmm0, dword [ebx + 0x1e84]
vminss xmm0, xmm1, dword [0x10129710]
jmp 0x10025a55
vmovss xmm0, dword [ebx + 0x18]
vmovss xmm1, dword [0x10129870]
vfmadd213ss xmm1, xmm0, dword [ebx + 0x1e84]
vxorps xmm0, xmm0, xmm0
vcmpless xmm0, xmm0, xmm1
vandps xmm0, xmm0, xmm1
vmovss dword [ebx + 0x1e84], xmm0
mov dword [ebx + 0x1e88], 0
mov dword [ebx + 0x31bc], 0xffffffff
vpcmpeqd xmm0, xmm0, xmm0
vmovq qword [ebx + 0x31b4], xmm0
vbroadcastss xmm0, dword [0x10129710]
vmovlps qword [ebx + 0x2f0c], xmm0
mov edx, dword [ecx + 0x1ba8]
test edx, edx
je 0x10025b17
vmovss xmm0, dword [ecx + 0x1bb4]
vsubss xmm0, xmm0, dword [ecx + 0x18]
vmovss dword [ecx + 0x1bb4], xmm0
vmovss xmm1, dword [ecx + 0xe4]
vucomiss xmm1, dword [0x10129848]
jb 0x10025af9
vmovss xmm2, dword [ecx + 0xe8]
vucomiss xmm2, dword [0x10129848]
jb 0x10025af9
vsubss xmm2, xmm2, dword [ecx + 0x1bb0]
vsubss xmm1, xmm1, dword [ecx + 0x1bac]
vmulss xmm2, xmm2, xmm2
vfmadd231ss xmm2, xmm1, xmm1
vmovss xmm1, dword [ecx + 0x30]
vmulss xmm1, xmm1, xmm1
vucomiss xmm2, xmm1
ja 0x10025b03
vxorps xmm1, xmm1, xmm1
vucomiss xmm1, xmm0
jb 0x10025b19
mov dword [ecx + 0x1ba8], 0
mov dword [ecx + 0x1bb4], 0
xor edx, edx
vmovss xmm1, dword [ecx + 0xf4]
vxorps xmm0, xmm0, xmm0
vucomiss xmm1, xmm0
jne 0x10025b3d
jp 0x10025b3d
vmovss xmm2, dword [ecx + 0xf8]
vucomiss xmm2, xmm0
jne 0x10025b3d
jnp 0x10025b7e
cmp dword [ecx + 0x1bd0], 0
je 0x10025b4f
cmp byte [ecx + 0x1be2], 0
jne 0x10025b7e
cmp dword [ecx + 0x1bc0], 0
je 0x10025b61
cmp byte [ecx + 0x1bc6], 0
jne 0x10025b7e
mov edi, edx
test edx, edx
jne 0x10025b71
mov edi, dword [ecx + 0x1b9c]
test edi, edi
je 0x10025b7e
cmp byte [edi + 0x8d], 0
je 0x10026251
mov byte [ecx + 0x1e80], 0
mov eax, dword [ecx + 0x1d40]
test eax, eax
je 0x10025bb4
cmp byte [eax + 0x8a], 0
je 0x10025bb4
test byte [eax + 0xa], 4
jne 0x10025bb4
cmp byte [ecx + 0xfc], 0
jne 0x10025bb4
cmp byte [ecx + 0xfe], 0
je 0x1002644a
mov dword [ecx + 0x1e70], 0
mov dword [ecx + 0x1e78], 0x7fffffff
mov eax, dword [ecx + 0x1e74]
test eax, eax
je 0x10025c13
mov dword [ecx + 0x1e70], eax
mov edx, dword [ecx + 0x1e7c]
cmp edx, 0x7fffffff
je 0x10025bff
mov esi, dword [eax + 0x178]
cmp esi, 0xffffffff
je 0x10025bff
lea eax, [esi + edx]
inc eax
inc esi
cdq
idiv esi
mov dword [ecx + 0x1e78], edx
mov dword [ecx + 0x1e74], 0
mov dword [ecx + 0x1e7c], 0x7fffffff
mov dword [ecx + 0x1d80], 0x7fffffff
vmovss xmm0, dword [0x101296d0]
vmovss dword [esp], xmm0
cmp byte [ebx + 0x1b47], 0
jne 0x10025c5a
vmovss xmm0, dword [ebx + 0xb8]
vxorps xmm1, xmm1, xmm1
vucomiss xmm1, xmm0
ja 0x10025c5a
vmovsd xmm1, qword [ebx + 0x1b30]
vcvtsd2ss xmm1, xmm1, xmm1
vsubss xmm0, xmm1, xmm0
vmovss dword [esp], xmm0
cmp dword [ebx + 0x1b50], 0
je 0x10025ccd
xor esi, esi
jmp 0x10025c79
inc esi
cmp esi, dword [ebx + 0x1b50]
je 0x10025ccd
mov eax, dword [ebx + 0x1b58]
mov eax, dword [eax + esi*4]
movzx ecx, byte [eax + 0x8a]
mov byte [eax + 0x8b], cl
mov word [eax + 0x96], 0
mov byte [eax + 0x8a], 0
mov byte [eax + 0x8c], 0
test cl, cl
jne 0x10025c70
cmp byte [eax + 0x31c], 0
jne 0x10025c70
vmovss xmm0, dword [esp]
vucomiss xmm0, dword [eax + 0x218]
jbe 0x10025c70
push eax
call fcn.1001ffb0
add esp, 4
jmp 0x10025c70
mov eax, dword [ebx + 0x1f50]
test eax, eax
jle 0x10025d34
xor esi, esi
vxorps xmm2, xmm2, xmm2
xor edi, edi
jmp 0x10025cfb
inc edi
add esi, 0x1c8
cmp edi, eax
jge 0x10025d34
mov ecx, dword [ebx + 0x1f58]
vmovss xmm0, dword [ecx + edi*4]
vucomiss xmm0, xmm2
jb 0x10025cf0
vmovss xmm1, dword [esp]
vucomiss xmm1, xmm0
jbe 0x10025cf0
mov eax, dword [ebx + 0x1f38]
add eax, esi
push eax
call fcn.10043530
vxorps xmm2, xmm2, xmm2
add esp, 4
mov eax, dword [ebx + 0x1f50]
jmp 0x10025cf0
mov eax, dword [ebx + 0x1f24]
test eax, eax
jle 0x10025d8c
xor esi, esi
vxorps xmm2, xmm2, xmm2
xor edi, edi
jmp 0x10025d58
inc edi
add esi, 0x68
cmp edi, eax
jge 0x10025d8c
mov ecx, dword [ebx + 0x1f2c]
vmovss xmm0, dword [ecx + esi + 4]
vucomiss xmm0, xmm2
jb 0x10025d50
vmovss xmm1, dword [esp]
vucomiss xmm1, xmm0
jbe 0x10025d50
add ecx, esi
push ecx
call fcn.10043600
vxorps xmm2, xmm2, xmm2
add esp, 4
mov eax, dword [ebx + 0x1f24]
jmp 0x10025d50
cmp byte [ebx + 0x1b47], 0
je 0x10025e1a
mov esi, dword [0x1017f770]
mov eax, dword [esi + 0x1d0c]
test eax, eax
je 0x10025dd5
vxorps xmm0, xmm0, xmm0
vmovlps qword [esi + 0x1d04], xmm0
dec dword [esi + 0x36c]
push dword [0x1017f778]
push eax
call dword [0x10175018]
add esp, 8
mov dword [esi + 0x1d0c], 0
mov eax, dword [esi + 0x1d18]
test eax, eax
je 0x10025e15
vxorps xmm0, xmm0, xmm0
vmovlps qword [esi + 0x1d10], xmm0
mov ecx, dword [0x1017f770]
test ecx, ecx
je 0x10025dfb
dec dword [ecx + 0x36c]
push dword [0x1017f778]
push eax
call dword [0x10175018]
add esp, 8
mov dword [esi + 0x1d18], 0
call fcn.10043620
mov byte [ebx + 0x1b47], 0
mov eax, dword [ebx + 0x1d40]
test eax, eax
je 0x10025e38
cmp byte [eax + 0x8b], 0
je 0x10025ebf
cmp dword [ebx + 0x1b78], 0
jns 0x10025f33
mov eax, dword [0x1017f770]
test eax, eax
je 0x10025e54
inc dword [eax + 0x36c]
push dword [0x1017f778]
push 0
call dword [0x10175014]
add esp, 8
mov esi, eax
mov eax, dword [ebx + 0x1b7c]
test eax, eax
je 0x10025ead
imul ecx, dword [ebx + 0x1b74], 0x54
push ecx
push eax
push esi
call sub.VCRUNTIME140.dll_memcpy
add esp, 0xc
mov eax, dword [ebx + 0x1b7c]
test eax, eax
je 0x10025e9d
mov ecx, dword [0x1017f770]
test ecx, ecx
je 0x10025e9d
dec dword [ecx + 0x36c]
push dword [0x1017f778]
push eax
call dword [0x10175018]
add esp, 8
mov dword [ebx + 0x1b7c], esi
mov dword [ebx + 0x1b78], 0
jmp 0x10025f33
mov ecx, dword [0x1017f770]
mov eax, dword [ecx + 0x1b5c]
test eax, eax
jle 0x10025f1c
mov ecx, dword [ecx + 0x1b64]
inc eax
jmp 0x10025ee6
dec eax
cmp eax, 1
jbe 0x10025f1c
mov edx, dword [ecx + eax*4 - 8]
test edx, edx
je 0x10025ee0
cmp byte [edx + 0x8b], 0
je 0x10025ee0
mov esi, dword [edx + 8]
not esi
test esi, 0x40200
je 0x10025ee0
mov eax, dword [edx + 0x2e8]
test eax, eax
je 0x10025f17
cmp byte [eax + 0x8b], 0
jne 0x10025f19
mov eax, edx
push eax
jmp 0x10025f1e
push 0
call fcn.10021730
add esp, 4
cmp dword [ebx + 0x1b78], 0
js 0x10025e45
mov dword [ebx + 0x1b74], 0
cmp dword [ebx + 0x1d2c], 0
jns 0x10025fc3
mov eax, dword [0x1017f770]
test eax, eax
je 0x10025f55
inc dword [eax + 0x36c]
push dword [0x1017f778]
push 0
call dword [0x10175014]
add esp, 8
mov esi, eax
mov eax, dword [ebx + 0x1d30]
test eax, eax
je 0x10025fb3
mov ecx, dword [ebx + 0x1d28]
shl ecx, 2
lea ecx, [ecx + ecx*8]
push ecx
push eax
push esi
call sub.VCRUNTIME140.dll_memcpy
add esp, 0xc
mov eax, dword [ebx + 0x1d30]
test eax, eax
je 0x10025fa3
mov ecx, dword [0x1017f770]
test ecx, ecx
je 0x10025fa3
dec dword [ecx + 0x36c]
push dword [0x1017f778]
push eax
call dword [0x10175018]
add esp, 8
mov dword [ebx + 0x1d30], esi
mov dword [ebx + 0x1d2c], 0
mov dword [ebx + 0x1d28], 0
cmp dword [ebx + 0x1d08], 0
js 0x10025ff3
mov dword [ebx + 0x1d04], 0
je 0x1002606f
mov esi, dword [ebx + 0x1d0c]
xor eax, eax
jmp 0x100260ef
mov eax, dword [0x1017f770]
test eax, eax
je 0x10026002
inc dword [eax + 0x36c]
push dword [0x1017f778]
push 0
call dword [0x10175014]
add esp, 8
mov esi, eax
mov eax, dword [ebx + 0x1d0c]
test eax, eax
je 0x1002605d
mov ecx, dword [ebx + 0x1d04]
shl ecx, 2
push ecx
push eax
push esi
call sub.VCRUNTIME140.dll_memcpy
add esp, 0xc
mov eax, dword [ebx + 0x1d0c]
test eax, eax
je 0x1002604d
mov ecx, dword [0x1017f770]
test ecx, ecx
je 0x1002604d
dec dword [ecx + 0x36c]
push dword [0x1017f778]
push eax
call dword [0x10175018]
add esp, 8
mov dword [ebx + 0x1d0c], esi
vxorps xmm0, xmm0, xmm0
vmovlps qword [ebx + 0x1d04], xmm0
mov eax, dword [0x1017f770]
test eax, eax
je 0x1002607e
inc dword [eax + 0x36c]
push dword [0x1017f778]
push 0x20
call dword [0x10175014]
add esp, 8
mov esi, eax
mov eax, dword [ebx + 0x1d0c]
test eax, eax
je 0x100260d9
mov ecx, dword [ebx + 0x1d04]
shl ecx, 2
push ecx
push eax
push esi
call sub.VCRUNTIME140.dll_memcpy
add esp, 0xc
mov eax, dword [ebx + 0x1d0c]
test eax, eax
je 0x100260c9
mov ecx, dword [0x1017f770]
test ecx, ecx
je 0x100260c9
dec dword [ecx + 0x36c]
push dword [0x1017f778]
push eax
call dword [0x10175018]
add esp, 8
mov dword [ebx + 0x1d0c], esi
mov dword [ebx + 0x1d08], 8
mov eax, dword [ebx + 0x1d04]
mov dword [esi + eax*4], 0
inc dword [ebx + 0x1d04]
cmp dword [ebx + 0x1d14], 0
jns 0x10026182
mov eax, dword [0x1017f770]
test eax, eax
je 0x10026114
inc dword [eax + 0x36c]
push dword [0x1017f778]
push 0
call dword [0x10175014]
add esp, 8
mov esi, eax
mov eax, dword [ebx + 0x1d18]
test eax, eax
je 0x10026172
mov ecx, dword [ebx + 0x1d10]
shl ecx, 4
lea ecx, [ecx + ecx*2]
push ecx
push eax
push esi
call sub.VCRUNTIME140.dll_memcpy
add esp, 0xc
mov eax, dword [ebx + 0x1d18]
test eax, eax
je 0x10026162
mov ecx, dword [0x1017f770]
test ecx, ecx
je 0x10026162
dec dword [ecx + 0x36c]
push dword [0x1017f778]
push eax
call dword [0x10175018]
add esp, 8
mov dword [ebx + 0x1d18], esi
mov dword [ebx + 0x1d14], 0
mov dword [ebx + 0x1d10], 0
mov edi, dword [0x1017f770]
mov dword [edi + 0x2f9c], 0
cmp byte [edi + 0x2f98], 0
je 0x1002668f
mov esi, dword [edi + 0x1bc0]
mov dword [edi + 0x1e88], 7
mov eax, dword [edi + 0x6c]
test eax, eax
js 0x100265f6
vmovss xmm0, dword [edi + eax*4 + 0x464]
vxorps xmm1, xmm1, xmm1
vucomiss xmm0, xmm1
jne 0x100261e5
jp 0x100261e5
mov byte [edi + 0x2f98], 0
jmp 0x100265f6
vmovss xmm1, dword [edi + 0x8c]
vucomiss xmm0, xmm1
jbe 0x100265f6
vsubss xmm3, xmm0, dword [edi + 0x18]
vucomiss xmm3, xmm0
jae 0x100265f6
vmovss xmm2, dword [edi + 0x90]
vxorps xmm4, xmm4, xmm4
vucomiss xmm4, xmm2
jae 0x100265d9
mov eax, 0xffffffff
vucomiss xmm1, xmm3
mov ecx, 0xffffffff
ja 0x10026238
vsubss xmm3, xmm3, xmm1
vdivss xmm3, xmm3, xmm2
vcvttss2si ecx, xmm3
vucomiss xmm1, xmm0
ja 0x1002624a
vsubss xmm0, xmm0, xmm1
vdivss xmm0, xmm0, xmm2
vcvttss2si eax, xmm0
sub eax, ecx
jmp 0x100265ee
vxorps xmm0, xmm0, xmm0
vucomiss xmm1, xmm0
movzx eax, byte [ecx + 0xfc]
mov byte [esp], al
jne 0x1002626b
jnp 0x100264c1
cmp byte [esp], 0
je 0x100264cb
cmp byte [ecx + 0xa0], 0
je 0x10025b7e
cmp edx, edi
je 0x100262ae
mov dword [ecx + 0x1ba8], edi
mov edx, dword [ecx + 0xe4]
mov esi, dword [ecx + 0xe8]
mov dword [ecx + 0x1bb0], esi
mov dword [ecx + 0x1bac], edx
mov dword [ecx + 0x1bb4], 0x40000000
vmovss xmm0, dword [edi + 0x238]
vfmadd132ss xmm1, xmm0, dword [0x10129898]
vmovss xmm2, dword [0x101298a4]
vcmpltss xmm3, xmm1, dword [0x10129738]
vminss xmm1, xmm2, xmm1
vbroadcastss xmm2, dword [0x10129738]
vblendvps xmm1, xmm1, xmm2, xmm3
vmovss dword [edi + 0x238], xmm1
cmp edi, dword [edi + 0x2d8]
jne 0x10025b7e
vdivss xmm0, xmm1, xmm0
vmovss xmm1, dword [0x10129710]
vsubss xmm1, xmm1, xmm0
vmovsd xmm2, qword [ecx + 0xe4]
vmovsd xmm3, qword [edi + 0xc]
vmovsd xmm4, qword [edi + 0x14]
vsubps xmm2, xmm2, xmm3
vbroadcastss xmm1, xmm1
vmulps xmm1, xmm1, xmm4
vmulps xmm1, xmm2, xmm1
vdivps xmm1, xmm1, xmm4
and dword [edi + 0xb0], 0xfffffff1
vaddps xmm1, xmm3, xmm1
vbroadcastss xmm2, dword [0x101296d0]
vmovlps qword [edi + 0xb4], xmm2
vcvttps2dq xmm1, xmm1
vcvtdq2ps xmm1, xmm1
vmovlps qword [edi + 0xc], xmm1
vsubps xmm1, xmm1, xmm3
vmovsd xmm2, qword [edi + 0xd0]
vaddps xmm2, xmm1, xmm2
vmovlps qword [edi + 0xd0], xmm2
vmovsd xmm2, qword [edi + 0xf0]
vaddps xmm2, xmm1, xmm2
vmovlps qword [edi + 0xf0], xmm2
vmovddup xmm1, xmm1
vaddps xmm1, xmm1, xmmword [edi + 0xe0]
vmovups xmmword [edi + 0xe0], xmm1
vbroadcastss xmm0, xmm0
vmulps xmm0, xmm0, xmmword [edi + 0x14]
vcvttps2dq xmm0, xmm0
vcvtdq2ps xmm0, xmm0
vmovups xmmword [edi + 0x14], xmm0
jmp 0x10025b7e
cmp byte [ecx + 0x129], 0
je 0x100255d2
mov eax, dword [esi + 0x1db0]
cmp eax, 0xffffffff
je 0x100255d2
cmp eax, 1
ja 0x10026405
xor edx, edx
test eax, eax
sete dl
vmovss xmm1, dword [edx*4 + 0x10129890]
vfmadd213ss xmm1, xmm0, dword [ecx + 0x58]
vcvttps2dq xmm1, xmm1
vcvtdq2ps xmm1, xmm1
vmovss dword [ecx + 0x68], xmm1
mov dword [ecx + 0x70], 0
mov dword [ecx + 0x78], 0
mov edx, eax
and edx, 0xfffffffe
cmp edx, 2
jne 0x100255d2
xor edx, edx
cmp eax, 2
sete dl
vmovss xmm1, dword [edx*4 + 0x10129890]
vfmadd213ss xmm1, xmm0, dword [ecx + 0x5c]
vcvttps2dq xmm1, xmm1
vcvtdq2ps xmm1, xmm1
vmovss dword [ecx + 0x6c], xmm1
mov dword [ecx + 0x74], 0
mov dword [ecx + 0x7c], 0
jmp 0x100255d2
mov edx, dword [ecx + 0x34]
test edx, edx
js 0x10025bb4
vmovss xmm0, dword [ecx + edx*4 + 0x464]
vxorps xmm1, xmm1, xmm1
vucomiss xmm0, xmm1
jne 0x10026925
jp 0x10026925
test byte [ecx + 0x1bf0], 1
jne 0x10025bb4
mov byte [ecx + 0x1e80], 1
cmp dword [ecx + 0x1bd0], 0
jne 0x10025bb4
mov dword [ecx + 0x1e74], eax
cmp dword [ecx + 0x1d44], 0
je 0x100264b3
mov eax, dword [ecx + 0x1d80]
cmp eax, 0x7fffffff
jne 0x10026b75
movsx eax, byte [ecx + 0xfd]
neg eax
jmp 0x10026b7e
cmp byte [esp], 0
jne 0x10025b7e
cmp byte [ecx + 0xfd], 0
je 0x100264e1
cmp byte [ecx + 0xb1], 0
je 0x10026991
vxorps xmm0, xmm0, xmm0
vucomiss xmm1, xmm0
vmovss xmm0, dword [ecx + 0xf8]
jne 0x100264f9
jnp 0x10026995
cmp edx, edi
je 0x10026525
mov dword [ecx + 0x1ba8], edi
mov edx, dword [ecx + 0xe4]
mov esi, dword [ecx + 0xe8]
mov dword [ecx + 0x1bb0], esi
mov dword [ecx + 0x1bac], edx
mov dword [ecx + 0x1bb4], 0x40000000
mov edx, dword [edi + 8]
test edx, 0x1000000
je 0x10026561
vxorps xmm2, xmm2, xmm2
jmp 0x10026547
mov edi, dword [edi + 0x2d4]
mov edx, dword [edi + 8]
test edx, 0x1000000
je 0x10026561
vmovss xmm3, dword [edi + 0x64]
vucomiss xmm3, xmm2
jne 0x10026554
jnp 0x10026536
mov esi, edx
and esi, 0x210
cmp esi, 0x10
je 0x10026536
test edx, 0x210
jne 0x10026995
vmovss xmm2, dword [edi + 0x1b8]
vsubss xmm2, xmm2, dword [edi + 0x1b0]
vmulss xmm2, xmm2, dword [0x101298a8]
vmovss xmm3, dword [ecx + 0x1938]
vmulss xmm3, xmm3, dword [edi + 0x238]
mov edx, dword [edi + 0x2d4]
test edx, edx
je 0x100265a7
vmulss xmm3, xmm3, dword [edx + 0x238]
vmulss xmm3, xmm3, dword [0x101298ac]
vminss xmm2, xmm3, xmm2
vcvttps2dq xmm2, xmm2
vcvtdq2ps xmm2, xmm2
vfnmadd213ss xmm2, xmm1, dword [edi + 0x5c]
vmovss dword [edi + 0x6c], xmm2
mov dword [edi + 0x74], 0
mov dword [edi + 0x7c], 0
jmp 0x10026995
vcmpltps xmm2, xmm3, xmm1
vcmpleps xmm0, xmm1, xmm0
vandps xmm0, xmm0, xmm2
vmovd eax, xmm0
and eax, 1
test eax, eax
jg 0x100261d9
vmovss xmm0, dword [edi + 0x400]
vxorps xmm1, xmm1, xmm1
vucomiss xmm0, xmm1
jne 0x1002661f
jp 0x1002661f
test esi, esi
je 0x1002662a
mov dword [edi + 0x2f9c], esi
mov byte [edi + 0x2f98], 0
xor ebp, ebp
jmp 0x1002662f
xor eax, eax
test esi, esi
sete al
mov ebp, eax
jmp 0x1002662f
mov ebp, 1
or byte [edi + 0x1c74], 0x40
mov dword [edi + 0x1cc8], 0x3f19999a
push 0
push 0
call fcn.10031710
add esp, 8
push esi
push str.HoveredId:_0x_08X
call fcn.100442e0
add esp, 8
push str.Press_ESC_to_abort_picking.
call fcn.100442e0
add esp, 4
mov eax, dword [0x1017f770]
shl ebp, 4
add eax, ebp
add eax, 0x15e0
push str.Click_to_break_in_debugger_
push eax
call fcn.100443c0
add esp, 8
call fcn.1002daa0
mov edi, dword [0x1017f770]
mov dword [edi + 0x1bb8], 0
mov eax, dword [edi + 0x2fb0]
inc eax
cmp dword [edi + 0x1b38], eax
jne 0x100267cc
mov ebp, dword [edi + 0x1bd0]
test ebp, ebp
je 0x100266cb
cmp dword [edi + 0x2fb8], ebp
jne 0x100266d9
test ebp, ebp
jne 0x10026771
jmp 0x100267cc
mov ebp, dword [edi + 0x1bc0]
cmp dword [edi + 0x2fb8], ebp
je 0x100266be
mov dword [edi + 0x2fb8], ebp
mov dword [edi + 0x2fb4], 0xffffffff
cmp dword [edi + 0x2fc0], 0
jns 0x10026763
inc dword [edi + 0x36c]
push dword [0x1017f778]
push 0
call dword [0x10175014]
add esp, 8
mov esi, eax
mov eax, dword [edi + 0x2fc4]
test eax, eax
je 0x10026753
mov ecx, dword [edi + 0x2fbc]
shl ecx, 6
push ecx
push eax
push esi
call sub.VCRUNTIME140.dll_memcpy
add esp, 0xc
mov eax, dword [edi + 0x2fc4]
test eax, eax
je 0x10026743
mov ecx, dword [0x1017f770]
test ecx, ecx
je 0x10026743
dec dword [ecx + 0x36c]
push dword [0x1017f778]
push eax
call dword [0x10175018]
add esp, 8
mov dword [edi + 0x2fc4], esi
mov dword [edi + 0x2fc0], 0
mov dword [edi + 0x2fbc], 0
test ebp, ebp
je 0x100267cc
mov eax, dword [edi + 0x2fb4]
test eax, eax
js 0x100267c1
mov ecx, dword [edi + 0x2fbc]
cmp eax, ecx
jge 0x100267a5
mov edx, dword [edi + 0x2fc4]
mov esi, eax
shl esi, 6
cmp byte [edx + esi + 5], 0
jne 0x1002679e
cmp byte [edx + esi + 4], 3
jl 0x100267a5
inc eax
mov dword [edi + 0x2fb4], eax
cmp eax, ecx
jge 0x100267cc
mov ecx, dword [edi + 0x2fc4]
shl eax, 6
mov edx, dword [ecx + eax]
mov dword [edi + 0x1bb8], edx
inc byte [ecx + eax + 4]
jmp 0x100267cc
cmp eax, 0xffffffff
jne 0x100267cc
mov dword [edi + 0x1bb8], ebp
mov byte [ebx + 0x1b45], 1
mov eax, dword [0x1017f770]
or dword [eax + 0x1c74], 2
vbroadcastss xmm0, dword [0x101298b0]
vmovlps qword [eax + 0x1c94], xmm0
mov dword [eax + 0x1c7c], 4
push 0
push 0
push str.DebugDefault
call fcn.10026fa0
add esp, 0xc
mov eax, dword [ebx + 0x2f54]
test eax, eax
jle 0x10026849
xor esi, esi
xor edi, edi
jmp 0x10026828
inc edi
add esi, 0x14
cmp edi, eax
jge 0x10026849
mov ecx, dword [ebx + 0x2f5c]
cmp dword [ecx + esi + 4], 1
jne 0x10026820
lea eax, [ecx + esi]
push eax
push ebx
call dword [ecx + esi + 0xc]
add esp, 8
mov eax, dword [ebx + 0x2f54]
jmp 0x10026820
mov ecx, dword [esp + 0xa0]
xor ecx, esp
call fcn.100d7fe0
add esp, 0xa4
pop esi
pop edi
pop ebx
pop ebp
ret
cmp word [ecx + 0x120], 0
je 0x10026a85
vmovss xmm0, dword [ecx + 0x1b8]
vsubss xmm0, xmm0, dword [ecx + 0x1b0]
mov eax, dword [esp]
vmovss xmm1, dword [eax + 0x1938]
vmulss xmm1, xmm1, dword [ecx + 0x238]
mov eax, dword [ecx + 0x2d4]
test eax, eax
mov edx, dword [esp + 0x58]
je 0x100268a9
vmulss xmm1, xmm1, dword [eax + 0x238]
vsubss xmm0, xmm0, xmm1
vmovss xmm1, dword [ecx + 0x300]
vsubss xmm1, xmm1, dword [ecx + 0x2f8]
vaddss xmm1, xmm0, xmm1
vxorps xmm0, xmm0, xmm0
vcmpless xmm2, xmm1, xmm0
vandnps xmm5, xmm2, xmm1
test ebp, ebp
js 0x10026c23
mov eax, dword [esp]
vmovss xmm1, dword [eax + ebp*4 + 0x464]
vucomiss xmm1, xmm0
jne 0x10026adc
jp 0x10026adc
vbroadcastss xmm0, dword [0x10129734]
vxorps xmm5, xmm5, xmm0
mov eax, dword [esp]
mov dword [eax + 0x1db0], 3
mov dword [eax + 0x1db8], 2
mov dword [eax + 0x1da4], 0x30
jmp 0x10025230
vmovss xmm1, dword [ecx + 0x8c]
vucomiss xmm0, xmm1
jbe 0x10025bb4
vsubss xmm3, xmm0, dword [ecx + 0x18]
vucomiss xmm3, xmm0
jae 0x10025bb4
vmovss xmm2, dword [ecx + 0x90]
vxorps xmm4, xmm4, xmm4
vucomiss xmm4, xmm2
jae 0x10026b53
mov edx, 0xffffffff
vucomiss xmm1, xmm3
mov esi, 0xffffffff
ja 0x10026978
vsubss xmm3, xmm3, xmm1
vdivss xmm3, xmm3, xmm2
vcvttss2si esi, xmm3
vucomiss xmm1, xmm0
ja 0x1002698a
vsubss xmm0, xmm0, xmm1
vdivss xmm0, xmm0, xmm2
vcvttss2si edx, xmm0
sub edx, esi
jmp 0x10026b68
vmovaps xmm0, xmm1
vxorps xmm1, xmm1, xmm1
vucomiss xmm0, xmm1
jne 0x100269a5
jnp 0x10025b7e
cmp dword [ecx + 0x1ba8], edi
je 0x100269d5
mov dword [ecx + 0x1ba8], edi
mov edx, dword [ecx + 0xe4]
mov esi, dword [ecx + 0xe8]
mov dword [ecx + 0x1bb0], esi
mov dword [ecx + 0x1bac], edx
mov dword [ecx + 0x1bb4], 0x40000000
mov edx, dword [edi + 8]
test edx, 0x1000000
je 0x10026a11
vxorps xmm1, xmm1, xmm1
jmp 0x100269f7
mov edi, dword [edi + 0x2d4]
mov edx, dword [edi + 8]
test edx, 0x1000000
je 0x10026a11
vmovss xmm2, dword [edi + 0x60]
vucomiss xmm2, xmm1
jne 0x10026a04
jnp 0x100269e6
mov esi, edx
and esi, 0x210
cmp esi, 0x10
je 0x100269e6
test edx, 0x210
jne 0x10025b7e
vmovss xmm1, dword [edi + 0x1b4]
vsubss xmm1, xmm1, dword [edi + 0x1ac]
vmulss xmm1, xmm1, dword [0x101298a8]
vmovss xmm2, dword [ecx + 0x1938]
vmulss xmm2, xmm2, dword [edi + 0x238]
mov edx, dword [edi + 0x2d4]
test edx, edx
je 0x10026a57
vmulss xmm2, xmm2, dword [edx + 0x238]
vaddss xmm2, xmm2, xmm2
vminss xmm1, xmm2, xmm1
vcvttps2dq xmm1, xmm1
vcvtdq2ps xmm1, xmm1
vfnmadd213ss xmm1, xmm0, dword [edi + 0x58]
vmovss dword [edi + 0x68], xmm1
mov dword [edi + 0x70], 0
mov dword [edi + 0x78], 0
jmp 0x10025b7e
cmp byte [ecx + 0x129], 0
je 0x10026870
test ebp, ebp
mov edx, dword [esp + 0x58]
js 0x10026de5
mov eax, dword [esp]
vmovss xmm1, dword [eax + ebp*4 + 0x464]
vpxor xmm5, xmm5, xmm5
vucomiss xmm1, xmm5
jne 0x10026b89
jp 0x10026b89
vmovss xmm0, dword [ecx + 0x5c]
vmovss xmm1, dword [ecx + 0x1b8]
vsubss xmm1, xmm1, dword [ecx + 0x1b0]
vsubss xmm0, xmm0, xmm1
jmp 0x10026e1a
mov eax, dword [esp]
vmovss xmm2, dword [eax + 0x8c]
vucomiss xmm1, xmm2
jbe 0x10026c23
mov eax, dword [esp]
vsubss xmm4, xmm1, dword [eax + 0x18]
vucomiss xmm4, xmm1
jae 0x10026c23
mov ebp, edx
mov eax, dword [esp]
vmovss xmm3, dword [eax + 0x90]
vxorps xmm0, xmm0, xmm0
vucomiss xmm0, xmm3
jae 0x10026c04
mov edx, 0xffffffff
vucomiss xmm2, xmm4
mov eax, 0xffffffff
ja 0x10026b3a
vsubss xmm0, xmm4, xmm2
vdivss xmm0, xmm0, xmm3
vcvttss2si eax, xmm0
vucomiss xmm2, xmm1
ja 0x10026b4c
vsubss xmm0, xmm1, xmm2
vdivss xmm0, xmm0, xmm3
vcvttss2si edx, xmm0
sub edx, eax
jmp 0x10026c19
vcmpltps xmm2, xmm3, xmm1
vcmpleps xmm0, xmm1, xmm0
vandps xmm0, xmm0, xmm2
vmovd edx, xmm0
and edx, 1
test edx, edx
jg 0x10026472
jmp 0x10025bb4
movsx edx, byte [ecx + 0xfd]
sub eax, edx
mov dword [ecx + 0x1e7c], eax
jmp 0x10025bb4
mov eax, dword [esp]
vmovss xmm2, dword [eax + 0x8c]
vucomiss xmm1, xmm2
jbe 0x10026de5
mov eax, dword [esp]
vsubss xmm4, xmm1, dword [eax + 0x18]
vucomiss xmm4, xmm1
jae 0x10026de5
mov ebp, edx
mov eax, dword [esp]
vmovss xmm3, dword [eax + 0x90]
vxorps xmm0, xmm0, xmm0
vucomiss xmm0, xmm3
jae 0x10026dc6
mov edx, 0xffffffff
vucomiss xmm2, xmm4
mov eax, 0xffffffff
ja 0x10026be7
vsubss xmm0, xmm4, xmm2
vdivss xmm0, xmm0, xmm3
vcvttss2si eax, xmm0
vucomiss xmm2, xmm1
ja 0x10026bf9
vsubss xmm0, xmm1, xmm2
vdivss xmm0, xmm0, xmm3
vcvttss2si edx, xmm0
sub edx, eax
vxorps xmm5, xmm5, xmm5
jmp 0x10026ddb
vcmpltps xmm0, xmm4, xmm2
vcmpleps xmm1, xmm2, xmm1
vandps xmm0, xmm1, xmm0
vmovd edx, xmm0
and edx, 1
test edx, edx
mov edx, ebp
jg 0x100268f2
test edx, edx
js 0x10026cec
mov eax, dword [esp]
vmovss xmm1, dword [eax + edx*4 + 0x464]
vxorps xmm0, xmm0, xmm0
vucomiss xmm1, xmm0
jne 0x10026c69
jp 0x10026c69
mov eax, dword [esp]
mov dword [eax + 0x1db0], 2
mov dword [eax + 0x1db8], 3
mov dword [eax + 0x1da4], 0x30
jmp 0x10025230
mov eax, dword [esp]
vmovss xmm2, dword [eax + 0x8c]
vucomiss xmm1, xmm2
jbe 0x10026cec
mov eax, dword [esp]
vsubss xmm4, xmm1, dword [eax + 0x18]
vucomiss xmm4, xmm1
jae 0x10026cec
mov eax, dword [esp]
vmovss xmm3, dword [eax + 0x90]
vxorps xmm0, xmm0, xmm0
vucomiss xmm0, xmm3
jae 0x10026ccf
mov eax, 0xffffffff
vucomiss xmm2, xmm4
mov edx, 0xffffffff
ja 0x10026cb9
vsubss xmm0, xmm4, xmm2
vdivss xmm0, xmm0, xmm3
vcvttss2si edx, xmm0
vucomiss xmm2, xmm1
ja 0x10026ccb
vsubss xmm0, xmm1, xmm2
vdivss xmm0, xmm0, xmm3
vcvttss2si eax, xmm0
sub eax, edx
jmp 0x10026ce4
vcmpltps xmm0, xmm4, xmm2
vcmpleps xmm1, xmm2, xmm1
vandps xmm0, xmm1, xmm0
vmovd eax, xmm0
and eax, 1
test eax, eax
jg 0x10026c43
cmp byte [esp + 0x34], 0
je 0x10026d57
vbroadcastss xmm0, dword [0x10129734]
vmovss xmm1, dword [ecx + 0x5c]
vxorps xmm0, xmm1, xmm0
vmovss dword [ecx + 0x300], xmm0
vmovss dword [ecx + 0x2f8], xmm0
vmovss xmm0, dword [ecx + 0x2f4]
vucomiss xmm0, dword [ecx + 0x2fc]
jbe 0x10026d3b
mov dword [ecx + 0x2fc], 0
mov dword [ecx + 0x2f4], 0
mov eax, dword [esp]
mov dword [eax + 0x1db0], 3
mov dword [eax + 0x1da4], 0x50
jmp 0x1002522c
vxorps xmm5, xmm5, xmm5
mov eax, edi
test al, al
je 0x10025230
vmovss xmm0, dword [ecx + 0x64]
vaddss xmm0, xmm0, dword [ecx + 0x20]
vsubss xmm0, xmm0, dword [ecx + 0x5c]
vmovss dword [ecx + 0x300], xmm0
vmovss dword [ecx + 0x2f8], xmm0
vmovss xmm0, dword [ecx + 0x2f4]
vucomiss xmm0, dword [ecx + 0x2fc]
jbe 0x10026daa
mov dword [ecx + 0x2fc], 0
mov dword [ecx + 0x2f4], 0
mov eax, dword [esp]
mov dword [eax + 0x1db0], 2
mov dword [eax + 0x1da4], 0x50
jmp 0x10025230
vcmpltps xmm0, xmm4, xmm2
vcmpleps xmm1, xmm2, xmm1
vandps xmm0, xmm1, xmm0
vmovd edx, xmm0
and edx, 1
test edx, edx
mov edx, ebp
jg 0x10026abe
test edx, edx
js 0x10026eb9
mov eax, dword [esp]
vmovss xmm1, dword [eax + edx*4 + 0x464]
vpxor xmm5, xmm5, xmm5
vucomiss xmm1, xmm5
jne 0x10026e32
jp 0x10026e32
vmovss xmm0, dword [ecx + 0x1b8]
vsubss xmm0, xmm0, dword [ecx + 0x1b0]
vaddss xmm0, xmm0, dword [ecx + 0x5c]
vmovss dword [ecx + 0x6c], xmm0
mov dword [ecx + 0x74], 0
mov dword [ecx + 0x7c], 0
jmp 0x10025230
mov eax, dword [esp]
vmovss xmm2, dword [eax + 0x8c]
vucomiss xmm1, xmm2
jbe 0x10026eb9
mov eax, dword [esp]
vsubss xmm4, xmm1, dword [eax + 0x18]
vucomiss xmm4, xmm1
jae 0x10026eb9
mov eax, dword [esp]
vmovss xmm3, dword [eax + 0x90]
vxorps xmm0, xmm0, xmm0
vucomiss xmm0, xmm3
jae 0x10026e98
mov eax, 0xffffffff
vucomiss xmm2, xmm4
mov edx, 0xffffffff
ja 0x10026e82
vsubss xmm0, xmm4, xmm2
vdivss xmm0, xmm0, xmm3
vcvttss2si edx, xmm0
vucomiss xmm2, xmm1
ja 0x10026e94
vsubss xmm0, xmm1, xmm2
vdivss xmm0, xmm0, xmm3
vcvttss2si eax, xmm0
sub eax, edx
jmp 0x10026ead
vcmpltps xmm0, xmm4, xmm2
vcmpleps xmm1, xmm2, xmm1
vandps xmm0, xmm1, xmm0
vmovd eax, xmm0
and eax, 1
test eax, eax
vxorps xmm5, xmm5, xmm5
jg 0x10026e05
cmp byte [esp + 0x34], 0
je 0x10026ec9
mov dword [ecx + 0x6c], 0
jmp 0x10026edd
mov eax, edi
test al, al
je 0x1002522c
vmovss xmm0, dword [ecx + 0x64]
vmovss dword [ecx + 0x6c], xmm0
mov dword [ecx + 0x74], 0
mov dword [ecx + 0x7c], 0
jmp 0x1002522c