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

Disassembly:
push ebp
push ebx
push edi
push esi
sub esp, 0x120
mov edi, edx
mov edx, ecx
mov ecx, dword [ecx + 0x7c]
mov eax, dword [edx + 0x8c]
cmp eax, ecx
jae 0x5e80d3
mov eax, ecx
mov dword [edx + 0x8c], ecx
mov ebx, dword [edx + 0x74]
mov ebp, dword [esp + 0x134]
cmp dword [edx + 0x84], 0
mov dword [esp], edx
mov dword [esp + 0x28], edi
mov dword [esp + 4], ebx
je 0x5e81c8
test eax, eax
je 0x5e9ae7
mov eax, ebx
xorps xmm0, xmm0
mov dword [esp + 0xb4], 0
add eax, ebx
movups xmmword [esp + 0xa4], xmm0
movups xmmword [esp + 0x94], xmm0
movups xmmword [esp + 0x84], xmm0
mov dword [esp + 0x14], eax
je 0x5e8386
cmp eax, 0x1fc07f
ja 0x5e9d31
imul esi, ebx, 0x810
test esi, esi
js 0x5e9d31
movzx eax, byte [0x94bfc5]
xor ecx, ecx
mov edx, esi
call fcn.0071ee80
test eax, eax
je 0x5e9d3b
mov edx, dword [esp + 0x14]
mov ecx, eax
mov esi, ecx
mov dword [esp + 0x10], ecx
lea edi, [edx - 1]
nop word cs:[eax + eax]
nop dword [eax + eax]
push 0x404
push 0
push esi
call fcn.007bdf30
add esp, 0xc
mov dword [esi + 0x404], 0x7f7ff023
add esi, 0x408
dec edi
jne 0x5e8180
push 0x404
push 0
push esi
call fcn.007bdf30
add esp, 0xc
mov edx, dword [esp]
xorps xmm0, xmm0
mov dword [esi + 0x404], 0x7f7ff023
jmp 0x5e838e
cmp dword [edi + 0xc], 0
je 0x5e9bfe
mov ecx, dword [edi + 8]
mov dword [ecx], eax
cmp dword [edi + 4], 0
je 0x5e9c0c
mov eax, dword [edi]
test ebx, ebx
mov byte [eax], 0
je 0x5e9621
mov esi, 0x1a
xor edi, edi
sub esi, ebx
cmovb esi, edi
cmp dword [esp + 0x138], 0x1b
jae 0x5e94b9
movapd xmm1, xmmword [0x7d45c0]
movsd xmm2, qword [0x7d45d0]
xor edi, edi
nop word [eax + eax]
mov ecx, dword [esp + 0x138]
cmp edi, ecx
je 0x5e9b59
mov ecx, edx
mov eax, edi
mov ecx, dword [ecx + 0x70]
shl eax, 0xa
lea edx, [eax + edi*8]
add edx, ebp
test cl, 1
jne 0x5e8250
mov ebp, pe_nt_image_headers32
xor eax, eax
xorps xmm3, xmm3
jmp 0x5e827d
movss xmm0, dword [edx]
mov eax, dword [edx]
xorps xmm3, xmm3
add edx, 4
mov ebp, 0xff
orpd xmm0, xmm1
movzx ebx, ax
subsd xmm0, xmm2
cvtsd2ss xmm0, xmm0
mulss xmm0, dword [ebx*4 + 0x8b17a0]
subss xmm3, xmm0
mov ebx, ecx
and ebx, 0xfffffffe
cmp ebx, ebp
ja 0x5e9ca2
test ebx, ebx
je 0x5e82cc
shl ecx, 2
and ecx, 0xfffffff8
nop word cs:[eax + eax]
nop
movss xmm0, dword [edx]
mov ebx, dword [edx]
add edx, 4
orpd xmm0, xmm1
movzx ebp, bx
add eax, ebx
add ecx, 0xfffffffc
subsd xmm0, xmm2
cvtsd2ss xmm0, xmm0
mulss xmm0, dword [ebp*4 + 0x8b17a0]
subss xmm3, xmm0
jne 0x5e82a0
movd xmm0, eax
test eax, eax
por xmm0, xmm1
subsd xmm0, xmm2
xorps xmm4, xmm4
cvtsd2ss xmm4, xmm0
je 0x5e8300
mov ebx, dword [esp + 4]
mov ebp, dword [esp + 0x134]
cmp eax, 0x100
jae 0x5e8310
movss xmm0, dword [eax*4 + 0x8f1b80]
jmp 0x5e8352
mov ebx, dword [esp + 4]
mov edx, dword [esp]
mov ebp, dword [esp + 0x134]
jmp 0x5e835d
sub esp, 4
movss dword [esp], xmm4
movss dword [esp + 0x14], xmm3
movss dword [esp + 0x10], xmm4
call sub.api_ms_win_crt_math_l1_1_0.dll_log2f
movss xmm4, dword [esp + 0x10]
movss xmm3, dword [esp + 0x14]
movsd xmm2, qword [0x7d45d0]
movapd xmm1, xmmword [0x7d45c0]
add esp, 4
fstp dword [esp + 0x68]
movss xmm0, dword [esp + 0x68]
mov edx, dword [esp]
mulss xmm0, xmm4
addss xmm3, xmm0
maxss xmm4, xmm3
lea ecx, [edi + ebx]
cmp edi, esi
movss dword [edx + edi*4 + 8], xmm4
je 0x5e9b25
inc edi
movss dword [edx + ecx*4 + 8], xmm4
cmp edi, ebx
jne 0x5e8220
jmp 0x5e9621
mov dword [esp + 0x10], 4
test ebx, ebx
movups xmmword [esp + 0x108], xmm0
movups xmmword [esp + 0xf8], xmm0
movups xmmword [esp + 0xe8], xmm0
movups xmmword [esp + 0xd8], xmm0
movups xmmword [esp + 0xc8], xmm0
movups xmmword [esp + 0xb8], xmm0
mov dword [esp + 0x11c], 0
mov dword [esp + 0x118], 0
je 0x5e8f4e
mov ecx, dword [esp + 0x10]
lea eax, [ebp + 0x10]
movapd xmm2, xmmword [0x7d45c0]
movsd xmm3, qword [0x7d45d0]
xorps xmm1, xmm1
xorps xmm0, xmm0
mov dword [esp + 0x24], eax
mov eax, ebx
movss dword [esp + 0x34], xmm1
shl eax, 0xa
lea eax, [eax + ebx*8]
lea ebp, [ecx + eax + 0x10]
lea edi, [ecx + 0x10]
xor eax, eax
jmp 0x5e8477
mov ebx, dword [esp + 4]
mov edx, dword [esp]
movss xmm0, dword [esp + 0x54]
maxss xmm4, xmm1
mov ecx, dword [esp + 0x1c]
mov eax, dword [esp + 0xc]
movss xmm1, dword [esp + 0x34]
addss xmm0, dword [esp + 0x20]
add dword [esp + 0x24], 0x408
add edi, 0x408
add ebp, 0x408
movss dword [esp + ecx*4 + 0xb8], xmm4
subss xmm4, dword [esp + 8]
inc eax
cmp eax, ebx
subss xmm4, dword [edx + ecx*4 + 8]
addss xmm1, xmm4
movss dword [esp + 0x34], xmm1
je 0x5e8f5a
mov ecx, dword [edx + 0x90]
add ecx, eax
cmp ecx, dword [esp + 0x138]
jae 0x5e9b34
mov ebx, dword [esp + 0x134]
mov esi, eax
mov eax, ecx
movss dword [esp + 0x54], xmm0
shl eax, 0xa
mov dword [esp + 0xc], esi
lea ecx, [eax + ecx*8]
mov dword [esp + 0x20], ecx
add ebx, ecx
mov ecx, dword [edx + 0x70]
mov dword [esp + 0x18], ebx
test cl, 1
jne 0x5e84d0
mov esi, pe_nt_image_headers32
xor eax, eax
xorps xmm4, xmm4
mov edx, ebx
jmp 0x5e84fd
movss xmm0, dword [ebx]
mov eax, dword [ebx]
xorps xmm4, xmm4
lea edx, [ebx + 4]
orpd xmm0, xmm2
movzx esi, ax
subsd xmm0, xmm3
cvtsd2ss xmm0, xmm0
mulss xmm0, dword [esi*4 + 0x8b17a0]
mov esi, 0xff
subss xmm4, xmm0
mov ebx, ecx
and ebx, 0xfffffffe
cmp ebx, esi
ja 0x5e9c5e
test ebx, ebx
je 0x5e854c
shl ecx, 2
and ecx, 0xfffffff8
nop word cs:[eax + eax]
nop
movss xmm0, dword [edx]
mov esi, dword [edx]
add edx, 4
orpd xmm0, xmm2
movzx ebx, si
add eax, esi
add ecx, 0xfffffffc
subsd xmm0, xmm3
cvtsd2ss xmm0, xmm0
mulss xmm0, dword [ebx*4 + 0x8b17a0]
subss xmm4, xmm0
jne 0x5e8520
movd xmm0, eax
test eax, eax
por xmm0, xmm2
subsd xmm0, xmm3
xorps xmm1, xmm1
cvtsd2ss xmm1, xmm0
je 0x5e8580
mov ebx, dword [esp + 0xc]
cmp eax, 0x100
jae 0x5e8590
movss xmm0, dword [eax*4 + 0x8f1b80]
jmp 0x5e85c8
mov eax, dword [esp]
mov ecx, dword [esp + 0x14]
mov ebx, dword [esp + 0xc]
jmp 0x5e85d7
sub esp, 4
movss dword [esp], xmm1
movss dword [esp + 0xc], xmm1
movss dword [esp + 0x20], xmm4
call sub.api_ms_win_crt_math_l1_1_0.dll_log2f
movss xmm4, dword [esp + 0x20]
movss xmm1, dword [esp + 0xc]
add esp, 4
fstp dword [esp + 0x80]
movss xmm0, dword [esp + 0x80]
mov eax, dword [esp]
mov ecx, dword [esp + 0x14]
mulss xmm0, xmm1
addss xmm4, xmm0
cmp ebx, 0xd
je 0x5e9b45
mov eax, dword [eax]
cmp ecx, 0x1a
mov ecx, dword [esp + 0x20]
maxss xmm1, xmm4
movss dword [esp + 8], xmm1
movss dword [esp + ebx*4 + 0x84], xmm1
lea esi, [eax + ebx]
mov dword [esp + 0x58], eax
mov eax, dword [esp + 0x134]
lea edx, [eax + ecx + 0x400]
movss xmm0, dword [eax + ecx + 0x404]
mov eax, dword [eax + ecx + 0x400]
mov dword [esp + 0x2c], edx
mov dword [esp + 0x20], eax
movss dword [esp + 0x1c], xmm0
ja 0x5e8750
cmp ebx, dword [esp + 0x14]
jae 0x5e9b65
mov ecx, dword [esp + 0x10]
mov eax, ebx
shl eax, 0xa
lea eax, [eax + ebx*8]
mov dword [esp + 0x30], eax
lea ebx, [ecx + eax]
push 0x400
push dword [esp + 0x1c]
push ebx
call fcn.007bd9b0
add esp, 0xc
mov edx, dword [esp + 0x20]
cmp esi, dword [esp + 0x138]
mov eax, dword [esp + 0x30]
mov ecx, dword [esp + 0x10]
movss xmm0, dword [esp + 0x1c]
mov dword [ecx + eax + 0x400], edx
movss dword [ecx + eax + 0x404], xmm0
jae 0x5e9b12
mov ecx, dword [esp + 0x134]
mov eax, esi
shl eax, 0xa
lea eax, [eax + esi*8]
add edx, dword [ecx + eax + 0x400]
mov ecx, dword [esp + 0x58]
mov eax, ecx
mov dword [ebx + 0x400], edx
shl eax, 0xa
lea eax, [eax + ecx*8]
mov ecx, 0xffffff00
add eax, dword [esp + 0x24]
nop word cs:[eax + eax]
nop
movdqu xmm0, xmmword [edi + ecx*4 + 0x3f0]
movdqu xmm2, xmmword [eax + ecx*4 + 0x3f0]
movdqu xmm1, xmmword [edi + ecx*4 + 0x400]
movdqu xmm3, xmmword [eax + ecx*4 + 0x400]
paddd xmm2, xmm0
paddd xmm3, xmm1
movdqu xmmword [edi + ecx*4 + 0x3f0], xmm2
movdqu xmmword [edi + ecx*4 + 0x400], xmm3
add ecx, 8
jne 0x5e86d0
mov eax, dword [esp]
movsd xmm2, qword [0x7d45d0]
mov ecx, dword [eax + 0x70]
test cl, 1
jne 0x5e8910
movapd xmm1, xmmword [0x7d45c0]
mov esi, pe_nt_image_headers32
xor eax, eax
pxor xmm3, xmm3
jmp 0x5e8946
mov ecx, dword [esp + 0x10]
mov eax, ebx
shl eax, 0xa
lea eax, [eax + ebx*8]
mov dword [esp + 0x30], eax
lea ebx, [ecx + eax]
push 0x400
push dword [esp + 0x1c]
push ebx
call fcn.007bd9b0
add esp, 0xc
mov edx, dword [esp + 0x20]
cmp esi, dword [esp + 0x138]
mov eax, dword [esp + 0x30]
mov ecx, dword [esp + 0x10]
movss xmm0, dword [esp + 0x1c]
mov dword [ecx + eax + 0x400], edx
movss dword [ecx + eax + 0x404], xmm0
jae 0x5e9b12
mov ecx, dword [esp + 0x134]
mov eax, esi
shl eax, 0xa
lea eax, [eax + esi*8]
add edx, dword [ecx + eax + 0x400]
mov ecx, dword [esp + 0x58]
mov eax, ecx
mov dword [ebx + 0x400], edx
shl eax, 0xa
lea eax, [eax + ecx*8]
mov ecx, 0xffffff00
add eax, dword [esp + 0x24]
nop word cs:[eax + eax]
nop
movdqu xmm0, xmmword [edi + ecx*4 + 0x3f0]
movdqu xmm2, xmmword [eax + ecx*4 + 0x3f0]
movdqu xmm1, xmmword [edi + ecx*4 + 0x400]
movdqu xmm3, xmmword [eax + ecx*4 + 0x400]
paddd xmm2, xmm0
paddd xmm3, xmm1
movdqu xmmword [edi + ecx*4 + 0x3f0], xmm2
movdqu xmmword [edi + ecx*4 + 0x400], xmm3
add ecx, 8
jne 0x5e87e0
mov eax, dword [esp]
movsd xmm2, qword [0x7d45d0]
mov ecx, dword [eax + 0x70]
test cl, 1
jne 0x5e8850
movapd xmm1, xmmword [0x7d45c0]
mov esi, pe_nt_image_headers32
xor eax, eax
pxor xmm3, xmm3
jmp 0x5e8886
movss xmm0, dword [ebx]
movapd xmm1, xmmword [0x7d45c0]
mov eax, dword [ebx]
pxor xmm3, xmm3
add ebx, 4
mov esi, 0xff
orpd xmm0, xmm1
movzx edx, ax
subsd xmm0, xmm2
cvtsd2ss xmm0, xmm0
mulss xmm0, dword [edx*4 + 0x8b17a0]
subss xmm3, xmm0
mov edx, ecx
and edx, 0xfffffffe
cmp edx, esi
ja 0x5e9c5e
test edx, edx
je 0x5e88cc
shl ecx, 2
and ecx, 0xfffffff8
nop dword [eax]
movss xmm0, dword [ebx]
mov edx, dword [ebx]
add ebx, 4
orpd xmm0, xmm1
movzx esi, dx
add eax, edx
add ecx, 0xfffffffc
subsd xmm0, xmm2
cvtsd2ss xmm0, xmm0
mulss xmm0, dword [esi*4 + 0x8b17a0]
subss xmm3, xmm0
jne 0x5e88a0
movd xmm0, eax
test eax, eax
por xmm0, xmm1
subsd xmm0, xmm2
xorps xmm2, xmm2
cvtsd2ss xmm2, xmm0
je 0x5e89c4
mov esi, dword [esp + 4]
mov ebx, dword [esp + 0xc]
cmp eax, 0x100
jae 0x5e89f5
movss xmm0, dword [eax*4 + 0x8f1b80]
jmp 0x5e8a27
movss xmm0, dword [ebx]
movapd xmm1, xmmword [0x7d45c0]
mov eax, dword [ebx]
pxor xmm3, xmm3
add ebx, 4
mov esi, 0xff
orpd xmm0, xmm1
movzx edx, ax
subsd xmm0, xmm2
cvtsd2ss xmm0, xmm0
mulss xmm0, dword [edx*4 + 0x8b17a0]
subss xmm3, xmm0
mov edx, ecx
and edx, 0xfffffffe
cmp edx, esi
ja 0x5e9c5e
test edx, edx
je 0x5e898c
shl ecx, 2
and ecx, 0xfffffff8
nop dword [eax]
movss xmm0, dword [ebx]
mov edx, dword [ebx]
add ebx, 4
orpd xmm0, xmm1
movzx esi, dx
add eax, edx
add ecx, 0xfffffffc
subsd xmm0, xmm2
cvtsd2ss xmm0, xmm0
mulss xmm0, dword [esi*4 + 0x8b17a0]
subss xmm3, xmm0
jne 0x5e8960
movd xmm0, eax
test eax, eax
por xmm0, xmm1
subsd xmm0, xmm2
xorps xmm2, xmm2
cvtsd2ss xmm2, xmm0
je 0x5e89db
mov esi, dword [esp + 4]
mov ebx, dword [esp + 0xc]
cmp eax, 0x100
jae 0x5e8c3d
movss xmm0, dword [eax*4 + 0x8f1b80]
jmp 0x5e8c6f
mov esi, dword [esp + 4]
mov eax, dword [esp]
mov edx, dword [esp + 0x14]
mov ebx, dword [esp + 0xc]
movss xmm1, dword [esp + 8]
jmp 0x5e8a3c
mov esi, dword [esp + 4]
mov eax, dword [esp]
mov edx, dword [esp + 0x14]
mov ebx, dword [esp + 0xc]
movss xmm1, dword [esp + 8]
jmp 0x5e8c84
sub esp, 4
movss dword [esp], xmm2
movss dword [esp + 0x24], xmm2
movss dword [esp + 0x20], xmm3
call sub.api_ms_win_crt_math_l1_1_0.dll_log2f
movss xmm3, dword [esp + 0x20]
movss xmm2, dword [esp + 0x24]
add esp, 4
fstp dword [esp + 0x7c]
movss xmm0, dword [esp + 0x7c]
mov eax, dword [esp]
mov edx, dword [esp + 0x14]
movss xmm1, dword [esp + 8]
mulss xmm0, xmm2
addss xmm3, xmm0
lea ecx, [esi + ebx]
maxss xmm2, xmm3
cmp ecx, edx
movss dword [esp + ebx*4 + 0xb8], xmm2
jae 0x5e9b67
subss xmm2, xmm1
mov dword [esp + 0x1c], ecx
subss xmm2, dword [eax + ebx*4 + 8]
mov eax, dword [eax + 4]
mov dword [esp + 0x50], eax
lea esi, [eax + ebx]
mov eax, dword [esp + 0x2c]
movss dword [esp + 0x20], xmm2
mov edx, dword [eax]
movss xmm0, dword [eax + 4]
mov eax, ecx
shl eax, 0xa
lea eax, [eax + ecx*8]
mov dword [esp + 0x2c], eax
mov dword [esp + 0x30], edx
mov edx, dword [esp + 0x10]
movss dword [esp + 0x58], xmm0
lea ebx, [edx + eax]
push 0x400
push dword [esp + 0x1c]
push ebx
call fcn.007bd9b0
mov edx, dword [esp + 0x3c]
add esp, 0xc
cmp esi, dword [esp + 0x138]
mov eax, dword [esp + 0x10]
mov ecx, dword [esp + 0x2c]
movss xmm0, dword [esp + 0x58]
mov dword [eax + ecx + 0x400], edx
movss dword [eax + ecx + 0x404], xmm0
jae 0x5e9b12
mov ecx, dword [esp + 0x134]
mov eax, esi
shl eax, 0xa
lea eax, [eax + esi*8]
add edx, dword [ecx + eax + 0x400]
mov ecx, dword [esp + 0x50]
mov eax, ecx
mov dword [ebx + 0x400], edx
shl eax, 0xa
lea eax, [eax + ecx*8]
mov ecx, 0xffffff00
add eax, dword [esp + 0x24]
nop dword [eax]
movdqu xmm0, xmmword [ebp + ecx*4 + 0x3f0]
movdqu xmm2, xmmword [eax + ecx*4 + 0x3f0]
movdqu xmm1, xmmword [ebp + ecx*4 + 0x400]
movdqu xmm3, xmmword [eax + ecx*4 + 0x400]
paddd xmm2, xmm0
paddd xmm3, xmm1
movdqu xmmword [ebp + ecx*4 + 0x3f0], xmm2
movdqu xmmword [ebp + ecx*4 + 0x400], xmm3
add ecx, 8
jne 0x5e8b10
mov eax, dword [esp]
movsd xmm3, qword [0x7d45d0]
mov ecx, dword [eax + 0x70]
test cl, 1
jne 0x5e8b80
movapd xmm2, xmmword [0x7d45c0]
mov esi, pe_nt_image_headers32
xor eax, eax
pxor xmm1, xmm1
jmp 0x5e8bb6
movss xmm0, dword [ebx]
movapd xmm2, xmmword [0x7d45c0]
mov eax, dword [ebx]
pxor xmm1, xmm1
add ebx, 4
mov esi, 0xff
orpd xmm0, xmm2
movzx edx, ax
subsd xmm0, xmm3
cvtsd2ss xmm0, xmm0
mulss xmm0, dword [edx*4 + 0x8b17a0]
subss xmm1, xmm0
mov edx, ecx
and edx, 0xfffffffe
cmp edx, esi
ja 0x5e9c5e
test edx, edx
je 0x5e8bfc
shl ecx, 2
and ecx, 0xfffffff8
nop dword [eax]
movss xmm0, dword [ebx]
mov edx, dword [ebx]
add ebx, 4
orpd xmm0, xmm2
movzx esi, dx
add eax, edx
add ecx, 0xfffffffc
subsd xmm0, xmm3
cvtsd2ss xmm0, xmm0
mulss xmm0, dword [esi*4 + 0x8b17a0]
subss xmm1, xmm0
jne 0x5e8bd0
test eax, eax
movd xmm4, eax
je 0x5e8c31
movdqa xmm0, xmm4
mov ebx, dword [esp + 4]
cmp eax, 0x100
por xmm0, xmm2
subsd xmm0, xmm3
cvtsd2ss xmm5, xmm0
jae 0x5e8e81
movss xmm0, dword [eax*4 + 0x8f1b80]
jmp 0x5e8ecf
mov ebx, dword [esp + 4]
mov edx, dword [esp]
jmp 0x5e8eda
sub esp, 4
movss dword [esp], xmm2
movss dword [esp + 0x24], xmm2
movss dword [esp + 0x20], xmm3
call sub.api_ms_win_crt_math_l1_1_0.dll_log2f
movss xmm3, dword [esp + 0x20]
movss xmm2, dword [esp + 0x24]
add esp, 4
fstp dword [esp + 0x74]
movss xmm0, dword [esp + 0x74]
mov eax, dword [esp]
mov edx, dword [esp + 0x14]
movss xmm1, dword [esp + 8]
mulss xmm0, xmm2
addss xmm3, xmm0
lea ecx, [esi + ebx]
maxss xmm2, xmm3
cmp ecx, edx
movss dword [esp + ebx*4 + 0xb8], xmm2
jae 0x5e9b67
subss xmm2, xmm1
mov dword [esp + 0x1c], ecx
subss xmm2, dword [eax + ebx*4 + 8]
mov eax, dword [eax + 4]
mov dword [esp + 0x50], eax
lea esi, [eax + ebx]
mov eax, dword [esp + 0x2c]
movss dword [esp + 0x20], xmm2
mov edx, dword [eax]
movss xmm0, dword [eax + 4]
mov eax, ecx
shl eax, 0xa
lea eax, [eax + ecx*8]
mov dword [esp + 0x2c], eax
mov dword [esp + 0x30], edx
mov edx, dword [esp + 0x10]
movss dword [esp + 0x58], xmm0
lea ebx, [edx + eax]
push 0x400
push dword [esp + 0x1c]
push ebx
call fcn.007bd9b0
mov edx, dword [esp + 0x3c]
add esp, 0xc
cmp esi, dword [esp + 0x138]
mov eax, dword [esp + 0x10]
mov ecx, dword [esp + 0x2c]
movss xmm0, dword [esp + 0x58]
mov dword [eax + ecx + 0x400], edx
movss dword [eax + ecx + 0x404], xmm0
jae 0x5e9b12
mov ecx, dword [esp + 0x134]
mov eax, esi
shl eax, 0xa
lea eax, [eax + esi*8]
add edx, dword [ecx + eax + 0x400]
mov ecx, dword [esp + 0x50]
mov eax, ecx
mov dword [ebx + 0x400], edx
shl eax, 0xa
lea eax, [eax + ecx*8]
mov ecx, 0xffffff00
add eax, dword [esp + 0x24]
nop word cs:[eax + eax]
nop
movdqu xmm0, xmmword [ebp + ecx*4 + 0x3f0]
movdqu xmm2, xmmword [eax + ecx*4 + 0x3f0]
movdqu xmm1, xmmword [ebp + ecx*4 + 0x400]
movdqu xmm3, xmmword [eax + ecx*4 + 0x400]
paddd xmm2, xmm0
paddd xmm3, xmm1
movdqu xmmword [ebp + ecx*4 + 0x3f0], xmm2
movdqu xmmword [ebp + ecx*4 + 0x400], xmm3
add ecx, 8
jne 0x5e8d60
mov eax, dword [esp]
movsd xmm3, qword [0x7d45d0]
mov ecx, dword [eax + 0x70]
test cl, 1
jne 0x5e8dd0
movapd xmm2, xmmword [0x7d45c0]
mov esi, pe_nt_image_headers32
xor eax, eax
pxor xmm1, xmm1
jmp 0x5e8e06
movss xmm0, dword [ebx]
movapd xmm2, xmmword [0x7d45c0]
mov eax, dword [ebx]
pxor xmm1, xmm1
add ebx, 4
mov esi, 0xff
orpd xmm0, xmm2
movzx edx, ax
subsd xmm0, xmm3
cvtsd2ss xmm0, xmm0
mulss xmm0, dword [edx*4 + 0x8b17a0]
subss xmm1, xmm0
mov edx, ecx
and edx, 0xfffffffe
cmp edx, esi
ja 0x5e9c5e
test edx, edx
je 0x5e8e4c
shl ecx, 2
and ecx, 0xfffffff8
nop dword [eax]
movss xmm0, dword [ebx]
mov edx, dword [ebx]
add ebx, 4
orpd xmm0, xmm2
movzx esi, dx
add eax, edx
add ecx, 0xfffffffc
subsd xmm0, xmm3
cvtsd2ss xmm0, xmm0
mulss xmm0, dword [esi*4 + 0x8b17a0]
subss xmm1, xmm0
jne 0x5e8e20
movd xmm0, eax
test eax, eax
por xmm0, xmm2
subsd xmm0, xmm3
cvtsd2ss xmm4, xmm0
je 0x5e8416
mov ebx, dword [esp + 4]
cmp eax, 0x100
jae 0x5e8efc
movss xmm0, dword [eax*4 + 0x8f1b80]
jmp 0x5e8f3e
sub esp, 4
movss dword [esp], xmm5
movss dword [esp + 0x1c], xmm1
movdqu xmmword [esp + 0x5c], xmm4
movss dword [esp + 0x30], xmm5
call sub.api_ms_win_crt_math_l1_1_0.dll_log2f
movss xmm5, dword [esp + 0x30]
movdqu xmm4, xmmword [esp + 0x5c]
movss xmm1, dword [esp + 0x1c]
movsd xmm3, qword [0x7d45d0]
movapd xmm2, xmmword [0x7d45c0]
add esp, 4
fstp dword [esp + 0x78]
movss xmm0, dword [esp + 0x78]
mov edx, dword [esp]
mulss xmm0, xmm5
addss xmm1, xmm0
cmp dword [esp + 0x1c], 0x19
movss xmm0, dword [esp + 0x54]
ja 0x5e9cef
por xmm4, xmm2
subsd xmm4, xmm3
cvtsd2ss xmm4, xmm4
jmp 0x5e8423
sub esp, 4
movss dword [esp], xmm4
movss dword [esp + 0x1c], xmm1
movss dword [esp + 0x5c], xmm4
call sub.api_ms_win_crt_math_l1_1_0.dll_log2f
movss xmm4, dword [esp + 0x5c]
movss xmm1, dword [esp + 0x1c]
movsd xmm3, qword [0x7d45d0]
movapd xmm2, xmmword [0x7d45c0]
add esp, 4
fstp dword [esp + 0x70]
movss xmm0, dword [esp + 0x70]
mov edx, dword [esp]
mulss xmm0, xmm4
addss xmm1, xmm0
jmp 0x5e841d
xorps xmm1, xmm1
xorps xmm0, xmm0
movss dword [esp + 0x34], xmm1
mov edi, dword [esp + 0x28]
mov eax, dword [edi + 0x10]
cmp eax, dword [edx + 0x78]
mov dword [esp + 0xc], eax
jae 0x5e9300
movaps xmm2, xmm0
movss xmm0, dword [edx + 0x80]
mov ecx, dword [edx + 0x84]
mov ebp, dword [esp + 0x134]
movaps xmm1, xmm2
ucomiss xmm2, xmm0
jbe 0x5e96b6
movss xmm2, dword [esp + 0x34]
ucomiss xmm2, xmm0
jbe 0x5e96b6
mov edx, dword [edi + 0xc]
cmp ecx, edx
jae 0x5e9c46
mov esi, dword [esp]
mov eax, dword [edi + 8]
mov edx, dword [esi + 0x8c]
mov dword [eax + ecx*4], edx
mov ecx, dword [esi + 0x84]
mov edx, dword [edi + 4]
cmp ecx, edx
mov eax, ecx
mov dword [esp + 8], ecx
jae 0x5e9c50
mov eax, dword [esp + 0xc]
mov edx, dword [edi]
mov ecx, dword [esp + 8]
imul eax, ebx
test ebx, ebx
mov dword [esp + 0x24], eax
mov eax, dword [esp + 0xc]
mov byte [edx + ecx], al
mov eax, dword [esp + 0x24]
mov edx, esi
mov ecx, dword [esi]
mov dword [esi + 4], ecx
mov dword [esi], eax
je 0x5e9253
mov eax, 0x1a
xor ecx, ecx
sub eax, ebx
cmovb eax, ecx
cmp ebx, 0x19
ja 0x5e9d70
movss xmm0, dword [edx + 8]
movss xmm1, dword [esp + 0x84]
cmp ebx, 1
movss dword [edx + ebx*4 + 8], xmm0
movss dword [edx + 8], xmm1
je 0x5e9253
cmp eax, 1
je 0x5e9c94
movss xmm0, dword [edx + 0xc]
movss xmm1, dword [esp + 0x88]
cmp ebx, 2
movss dword [edx + ebx*4 + 0xc], xmm0
movss dword [edx + 0xc], xmm1
je 0x5e9253
cmp eax, 2
je 0x5e9c9a
movss xmm0, dword [edx + 0x10]
movss xmm1, dword [esp + 0x8c]
cmp ebx, 3
movss dword [edx + ebx*4 + 0x10], xmm0
movss dword [edx + 0x10], xmm1
je 0x5e9253
cmp eax, 3
je 0x5e9cea
movss xmm0, dword [edx + 0x14]
movss xmm1, dword [esp + 0x90]
cmp ebx, 4
movss dword [edx + ebx*4 + 0x14], xmm0
movss dword [edx + 0x14], xmm1
je 0x5e9253
cmp eax, 4
je 0x5e9d02
movss xmm0, dword [edx + 0x18]
movss xmm1, dword [esp + 0x94]
cmp ebx, 5
movss dword [edx + ebx*4 + 0x18], xmm0
movss dword [edx + 0x18], xmm1
je 0x5e9253
cmp eax, 5
je 0x5e9d2c
movss xmm0, dword [edx + 0x1c]
movss xmm1, dword [esp + 0x98]
cmp ebx, 6
movss dword [edx + ebx*4 + 0x1c], xmm0
movss dword [edx + 0x1c], xmm1
je 0x5e9253
cmp eax, 6
je 0x5e9d36
movss xmm0, dword [edx + 0x20]
movss xmm1, dword [esp + 0x9c]
cmp ebx, 7
movss dword [edx + ebx*4 + 0x20], xmm0
movss dword [edx + 0x20], xmm1
je 0x5e9253
cmp eax, 7
je 0x5e9d47
movss xmm0, dword [edx + 0x24]
movss xmm1, dword [esp + 0xa0]
cmp ebx, 8
movss dword [edx + ebx*4 + 0x24], xmm0
movss dword [edx + 0x24], xmm1
je 0x5e9253
cmp eax, 8
je 0x5e9d64
movss xmm0, dword [edx + 0x28]
movss xmm1, dword [esp + 0xa4]
cmp ebx, 9
movss dword [edx + ebx*4 + 0x28], xmm0
movss dword [edx + 0x28], xmm1
je 0x5e9253
cmp eax, 9
je 0x5e9d69
movss xmm0, dword [edx + 0x2c]
movss xmm1, dword [esp + 0xa8]
cmp ebx, 0xa
movss dword [edx + ebx*4 + 0x2c], xmm0
movss dword [edx + 0x2c], xmm1
je 0x5e9253
cmp eax, 0xa
je 0x5e9d8f
mov edx, dword [esp]
mov ebx, dword [esp + 4]
movss xmm1, dword [esp + 0xac]
mov edi, dword [esp + 0x28]
movss xmm0, dword [edx + 0x30]
cmp ebx, 0xb
movss dword [edx + ebx*4 + 0x30], xmm0
movss dword [edx + 0x30], xmm1
je 0x5e9253
cmp eax, 0xb
je 0x5e9da7
mov edx, dword [esp]
mov ebx, dword [esp + 4]
movss xmm1, dword [esp + 0xb0]
mov edi, dword [esp + 0x28]
movss xmm0, dword [edx + 0x34]
cmp ebx, 0xc
movss dword [edx + ebx*4 + 0x34], xmm0
movss dword [edx + 0x34], xmm1
je 0x5e9253
cmp eax, 0xc
je 0x5e9dbf
mov edx, dword [esp]
mov ebx, dword [esp + 4]
movss xmm1, dword [esp + 0xb4]
mov edi, dword [esp + 0x28]
movss xmm0, dword [edx + 0x38]
cmp ebx, 0xd
movss dword [edx + ebx*4 + 0x38], xmm0
movss dword [edx + 0x38], xmm1
jne 0x5e9dd7
inc dword [edx + 0x84]
mov eax, dword [esp + 0xc]
mov ecx, dword [edx + 0x90]
inc eax
add ecx, ebx
mov dword [edi + 0x10], eax
mov dword [edx + 0x90], ecx
mov edx, dword [esp + 0x13c]
cmp ecx, dword [edx]
jae 0x5e92e4
mov eax, dword [esp + 0x138]
mov edx, eax
sub edx, ecx
jb 0x5e9d83
mov eax, dword [esp]
mov eax, dword [eax + 0x74]
cmp eax, edx
ja 0x5e9d4c
test eax, eax
je 0x5e92e4
mov edx, ecx
shl edx, 0xa
lea ecx, [edx + ecx*8]
mov edx, eax
shl edx, 0xa
add ebp, ecx
lea esi, [edx + eax*8]
add esi, ebp
nop word cs:[eax + eax]
nop dword [eax + eax]
push 0x404
push 0
push ebp
call fcn.007bdf30
add esp, 0xc
mov dword [ebp + 0x404], 0x7f7ff023
add ebp, 0x408
cmp ebp, esi
jne 0x5e92c0
mov edx, dword [esp]
mov dword [edx + 0x8c], 0
mov dword [edx + 0x94], 0
jmp 0x5e9ac1
mov ecx, dword [edx + 0x84]
addss xmm0, dword [0x7d5270]
mov edx, dword [edi + 0xc]
ucomiss xmm0, dword [esp + 0x34]
jbe 0x5e96cf
cmp ecx, edx
jae 0x5e9c1a
mov esi, dword [esp]
mov eax, dword [edi + 8]
mov edx, dword [esi + 0x8c]
mov dword [eax + ecx*4], edx
mov ecx, dword [esi + 0x84]
mov edx, dword [edi + 4]
lea eax, [ecx - 2]
cmp eax, edx
jae 0x5e9c30
cmp ecx, edx
jae 0x5e9c3c
mov eax, dword [edi]
test ebx, ebx
movzx edx, byte [eax + ecx - 2]
mov byte [eax + ecx], dl
mov edx, dword [esp]
mov ecx, ebx
movsd xmm0, qword [edx]
shufps xmm0, xmm0, 0xe1
movlps qword [edx], xmm0
je 0x5e9aa5
mov eax, dword [esp + 0x14]
xor ebx, ebx
mov esi, eax
sub esi, ecx
cmovb esi, ebx
cmp eax, 0x1a
mov dword [esp + 0xc], esi
ja 0x5e996b
lea eax, [esp + ecx*4 + 0xb8]
mov esi, dword [esp + 0x10]
xor ebp, ebp
mov dword [esp + 0x18], eax
lea eax, [edx + ecx*4 + 8]
mov dword [esp + 0x20], eax
mov eax, ecx
shl eax, 0xa
lea eax, [eax + ecx*8]
lea esi, [esi + eax + 0x404]
nop word cs:[eax + eax]
nop dword [eax]
cmp dword [esp + 0xc], ebp
je 0x5e9bd4
mov ecx, dword [edx]
add ecx, ebp
cmp ecx, dword [esp + 0x138]
jae 0x5e9b97
movss xmm0, dword [esi]
mov eax, dword [esi - 4]
mov edi, dword [esp + 0x134]
mov edx, ecx
shl edx, 0xa
lea ebx, [edx + ecx*8]
mov dword [esp + 0x24], eax
movss dword [esp + 8], xmm0
lea eax, [esi - 0x404]
lea ecx, [edi + ebx]
push 0x400
push eax
push ecx
call fcn.007bd9b0
add esp, 0xc
mov eax, dword [esp + 0x24]
movss xmm0, dword [esp + 8]
cmp ebp, 0x1a
mov dword [edi + ebx + 0x400], eax
movss dword [edi + ebx + 0x404], xmm0
je 0x5e9bea
mov eax, dword [esp]
mov ecx, dword [esp + 0x20]
movss xmm0, dword [eax + ebp*4 + 8]
movss dword [ecx + ebp*4], xmm0
mov ecx, dword [esp + 0x18]
movss xmm0, dword [ecx + ebp*4]
movss dword [eax + ebp*4 + 8], xmm0
mov ecx, dword [eax + 0x90]
add ecx, ebp
cmp ecx, dword [esp + 0x138]
jae 0x5e9ba8
mov ebx, dword [esp + 0x134]
mov eax, ecx
inc ebp
shl eax, 0xa
lea edi, [eax + ecx*8]
lea eax, [ebx + edi]
push 0x404
push 0
push eax
call fcn.007bdf30
mov edx, dword [esp + 0xc]
add esp, 0xc
mov ecx, dword [esp + 4]
mov dword [ebx + edi + 0x404], 0x7f7ff023
mov edi, dword [esp + 0x28]
add esi, 0x408
cmp ecx, ebp
jne 0x5e93c0
jmp 0x5e9aa5
movapd xmm1, xmmword [0x7d45c0]
movsd xmm2, qword [0x7d45d0]
nop dword [eax]
mov ecx, edx
mov eax, edi
mov ecx, dword [ecx + 0x70]
shl eax, 0xa
lea edx, [eax + edi*8]
add edx, ebp
test cl, 1
jne 0x5e94f0
mov ebp, pe_nt_image_headers32
xor eax, eax
xorps xmm3, xmm3
jmp 0x5e951d
movss xmm0, dword [edx]
mov eax, dword [edx]
xorps xmm3, xmm3
add edx, 4
mov ebp, 0xff
orpd xmm0, xmm1
movzx ebx, ax
subsd xmm0, xmm2
cvtsd2ss xmm0, xmm0
mulss xmm0, dword [ebx*4 + 0x8b17a0]
subss xmm3, xmm0
mov ebx, ecx
and ebx, 0xfffffffe
cmp ebx, ebp
ja 0x5e9ca2
test ebx, ebx
je 0x5e956c
shl ecx, 2
and ecx, 0xfffffff8
nop word cs:[eax + eax]
nop
movss xmm0, dword [edx]
mov ebx, dword [edx]
add edx, 4
orpd xmm0, xmm1
movzx ebp, bx
add eax, ebx
add ecx, 0xfffffffc
subsd xmm0, xmm2
cvtsd2ss xmm0, xmm0
mulss xmm0, dword [ebp*4 + 0x8b17a0]
subss xmm3, xmm0
jne 0x5e9540
movd xmm0, eax
test eax, eax
por xmm0, xmm1
subsd xmm0, xmm2
xorps xmm4, xmm4
cvtsd2ss xmm4, xmm0
je 0x5e95a0
mov ebx, dword [esp + 4]
mov ebp, dword [esp + 0x134]
cmp eax, 0x100
jae 0x5e95b0
movss xmm0, dword [eax*4 + 0x8f1b80]
jmp 0x5e95f2
mov ebx, dword [esp + 4]
mov edx, dword [esp]
mov ebp, dword [esp + 0x134]
jmp 0x5e95fd
sub esp, 4
movss dword [esp], xmm4
movss dword [esp + 0x14], xmm3
movss dword [esp + 0x10], xmm4
call sub.api_ms_win_crt_math_l1_1_0.dll_log2f
movss xmm4, dword [esp + 0x10]
movss xmm3, dword [esp + 0x14]
movsd xmm2, qword [0x7d45d0]
movapd xmm1, xmmword [0x7d45c0]
add esp, 4
fstp dword [esp + 0x6c]
movss xmm0, dword [esp + 0x6c]
mov edx, dword [esp]
mulss xmm0, xmm4
addss xmm3, xmm0
maxss xmm4, xmm3
lea ecx, [edi + ebx]
cmp edi, esi
movss dword [edx + edi*4 + 8], xmm4
je 0x5e9b25
inc edi
movss dword [edx + ecx*4 + 8], xmm4
cmp edi, ebx
jne 0x5e94d0
inc dword [edx + 0x84]
mov edi, dword [esp + 0x28]
mov eax, dword [esp + 0x13c]
mov ecx, dword [edx + 0x90]
inc dword [edi + 0x10]
add ecx, ebx
cmp ecx, dword [eax]
mov dword [edx + 0x90], ecx
jae 0x5e96a4
mov eax, dword [esp + 0x138]
mov edx, eax
sub edx, ecx
jb 0x5e9d58
mov eax, dword [esp]
mov eax, dword [eax + 0x74]
cmp eax, edx
ja 0x5e9d4c
test eax, eax
je 0x5e96a4
mov edx, ecx
shl edx, 0xa
lea ecx, [edx + ecx*8]
mov edx, eax
shl edx, 0xa
add ebp, ecx
lea esi, [edx + eax*8]
add esi, ebp
nop
push 0x404
push 0
push ebp
call fcn.007bdf30
add esp, 0xc
mov dword [ebp + 0x404], 0x7f7ff023
add ebp, 0x408
cmp ebp, esi
jne 0x5e9680
mov edx, dword [esp]
mov dword [edx + 0x8c], 0
jmp 0x5e9ae7
movaps xmm0, xmm1
addss xmm0, dword [0x7d5270]
mov edx, dword [edi + 0xc]
ucomiss xmm0, dword [esp + 0x34]
ja 0x5e931c
lea eax, [ecx - 1]
cmp eax, edx
jae 0x5e9c24
mov esi, dword [esp]
mov eax, dword [edi + 8]
mov edx, dword [esi + 0x8c]
add dword [eax + ecx*4 - 4], edx
mov edx, esi
test ebx, ebx
je 0x5e9939
cmp dword [esp + 0x14], 0x1b
jae 0x5e9822
mov eax, dword [esp + 0x10]
lea ecx, [edx + ebx*4 + 8]
xor ebp, ebp
mov dword [esp + 0x18], ecx
lea esi, [eax + 0x404]
nop word cs:[eax + eax]
nop dword [eax]
mov ecx, dword [esp + 0x14]
cmp ecx, ebp
je 0x5e9bc8
mov ecx, dword [edx]
add ecx, ebp
cmp ecx, dword [esp + 0x138]
jae 0x5e9b75
mov eax, dword [esi - 4]
movss xmm0, dword [esi]
mov edi, dword [esp + 0x134]
mov edx, ecx
shl edx, 0xa
lea ebx, [edx + ecx*8]
mov dword [esp + 0x24], eax
lea eax, [esi - 0x404]
movss dword [esp + 8], xmm0
lea ecx, [edi + ebx]
push 0x400
push eax
push ecx
call fcn.007bd9b0
mov eax, dword [esp + 0xc]
add esp, 0xc
mov ecx, dword [esp + 0x24]
movss xmm0, dword [esp + 8]
cmp dword [esp + 0xc], 1
mov dword [edi + ebx + 0x400], ecx
movss dword [edi + ebx + 0x404], xmm0
movss xmm0, dword [esp + ebp*4 + 0xb8]
mov ebx, dword [esp + 4]
movss dword [eax + ebp*4 + 8], xmm0
jne 0x5e97c2
lea ecx, [ebx + ebp]
cmp ecx, 0x19
ja 0x5e9bb9
mov ecx, dword [esp + 0x18]
movss dword [ecx + ebp*4], xmm0
mov ecx, dword [eax + 0x90]
add ecx, ebp
cmp ecx, dword [esp + 0x138]
jae 0x5e9b86
mov eax, ecx
inc ebp
shl eax, 0xa
lea edi, [eax + ecx*8]
mov eax, dword [esp + 0x134]
add eax, edi
push 0x404
push 0
push eax
call fcn.007bdf30
mov edx, dword [esp + 0xc]
add esp, 0xc
mov eax, dword [esp + 0x134]
add esi, 0x408
cmp ebx, ebp
mov dword [eax + edi + 0x404], 0x7f7ff023
jne 0x5e9720
jmp 0x5e9939
mov ecx, dword [esp + 0x10]
lea eax, [edx + ebx*4 + 8]
xor ebp, ebp
mov dword [esp + 0x18], eax
lea edi, [ecx + 0x404]
nop word cs:[eax + eax]
mov ecx, dword [edx]
add ecx, ebp
cmp ecx, dword [esp + 0x138]
jae 0x5e9b75
movss xmm0, dword [edi]
mov eax, dword [edi - 4]
mov esi, dword [esp + 0x134]
mov edx, ecx
shl edx, 0xa
lea ebx, [edx + ecx*8]
mov dword [esp + 0x24], eax
movss dword [esp + 8], xmm0
lea eax, [edi - 0x404]
lea ecx, [esi + ebx]
push 0x400
push eax
push ecx
call fcn.007bd9b0
add esp, 0xc
mov eax, dword [esp + 0x24]
movss xmm0, dword [esp + 8]
cmp ebp, 0x1a
mov dword [esi + ebx + 0x400], eax
movss dword [esi + ebx + 0x404], xmm0
je 0x5e9d07
cmp dword [esp + 0xc], 1
movss xmm0, dword [esp + ebp*4 + 0xb8]
mov eax, dword [esp]
mov ebx, dword [esp + 4]
movss dword [eax + ebp*4 + 8], xmm0
jne 0x5e98de
lea ecx, [ebx + ebp]
cmp ecx, 0x19
ja 0x5e9bb9
mov ecx, dword [esp + 0x18]
movss dword [ecx + ebp*4], xmm0
mov ecx, dword [eax + 0x90]
add ecx, ebp
cmp ecx, dword [esp + 0x138]
jae 0x5e9b86
mov eax, ecx
inc ebp
shl eax, 0xa
lea esi, [eax + ecx*8]
mov eax, dword [esp + 0x134]
add eax, esi
push 0x404
push 0
push eax
call fcn.007bdf30
mov edx, dword [esp + 0xc]
add esp, 0xc
mov eax, dword [esp + 0x134]
add edi, 0x408
cmp ebx, ebp
mov dword [eax + esi + 0x404], 0x7f7ff023
jne 0x5e9840
mov dword [edx + 0x8c], 0
mov edi, dword [esp + 0x28]
mov eax, dword [edx + 0x94]
inc eax
cmp eax, 2
mov dword [edx + 0x94], eax
jb 0x5e9aca
mov eax, dword [edx + 0x7c]
add dword [edx + 0x88], eax
jmp 0x5e9aca
mov eax, 0x1a
mov esi, dword [esp + 0x10]
sub eax, ecx
cmovb eax, ebx
mov dword [esp + 0x18], eax
lea eax, [esp + ecx*4 + 0xb8]
mov dword [esp + 0x20], eax
lea eax, [edx + ecx*4 + 8]
mov dword [esp + 0x1c], eax
mov eax, ecx
shl eax, 0xa
lea eax, [eax + ecx*8]
lea ebp, [esi + eax + 0x404]
nop
cmp dword [esp + 0xc], ebx
lea edi, [ecx + ebx]
je 0x5e9bda
mov ecx, dword [edx]
add ecx, ebx
cmp ecx, dword [esp + 0x138]
jae 0x5e9b97
mov edx, ecx
movss xmm0, dword [ebp]
mov eax, dword [ebp - 4]
shl edx, 0xa
lea esi, [edx + ecx*8]
mov ecx, dword [esp + 0x134]
mov dword [esp + 0x24], eax
movss dword [esp + 8], xmm0
lea eax, [ebp - 0x404]
add ecx, esi
push 0x400
push eax
push ecx
call fcn.007bd9b0
add esp, 0xc
cmp dword [esp + 0x18], ebx
mov eax, dword [esp + 0x24]
mov ecx, dword [esp + 0x134]
movss xmm0, dword [esp + 8]
mov dword [ecx + esi + 0x400], eax
movss dword [ecx + esi + 0x404], xmm0
je 0x5e9d1b
mov eax, dword [esp]
mov ecx, dword [esp + 0x1c]
mov edi, dword [esp + 0x28]
movss xmm0, dword [eax + ebx*4 + 8]
movss dword [ecx + ebx*4], xmm0
mov ecx, dword [esp + 0x20]
movss xmm0, dword [ecx + ebx*4]
movss dword [eax + ebx*4 + 8], xmm0
mov ecx, dword [eax + 0x90]
add ecx, ebx
cmp ecx, dword [esp + 0x138]
jae 0x5e9ba8
mov eax, ecx
inc ebx
shl eax, 0xa
lea esi, [eax + ecx*8]
mov eax, dword [esp + 0x134]
add eax, esi
push 0x404
push 0
push eax
call fcn.007bdf30
mov edx, dword [esp + 0xc]
add esp, 0xc
mov ecx, dword [esp + 4]
mov eax, dword [esp + 0x134]
add ebp, 0x408
cmp ecx, ebx
mov dword [eax + esi + 0x404], 0x7f7ff023
jne 0x5e99a0
inc dword [edx + 0x84]
mov dword [edx + 0x8c], 0
mov dword [edx + 0x94], 0
mov ebx, ecx
mov eax, dword [edx + 0x7c]
mov dword [edx + 0x88], eax
cmp dword [esp + 0x14], 0
mov eax, dword [esp + 0x10]
je 0x5e9ae7
push eax
push 0
push dword [0x94bf18]
call dword [sym.imp.kernel32.dll_HeapFree]
mov edx, dword [esp]
cmp dword [esp + 0x140], 0
je 0x5e9b07
imul ebx, dword [edi + 0x10]
mov eax, dword [esp + 0x13c]
mov ecx, dword [edx + 0x84]
mov dword [eax], ebx
mov dword [edi + 0x14], ecx
add esp, 0x120
pop esi
pop edi
pop ebx
pop ebp
ret
mov edx, dword [esp + 0x138]
mov ecx, esi
push 0x92606c
call fcn.007c1be0
mov edx, 0x1a
push 0x925efc
call fcn.007c1be0
mov edx, dword [esp + 0x138]
push 0x92603c
call fcn.007c1be0
mov ecx, 0xd
mov edx, 0xd
push 0x92604c
call fcn.007c1be0
mov edx, ecx
push 0x925eec
call fcn.007c1be0
mov ecx, ebx
mov edx, dword [esp + 0x14]
push 0x92605c
call fcn.007c1be0
mov edx, dword [esp + 0x138]
push 0x925f2c
call fcn.007c1be0
mov edx, dword [esp + 0x138]
push 0x925f5c
call fcn.007c1be0
mov edx, dword [esp + 0x138]
push 0x925fac
call fcn.007c1be0
mov edx, dword [esp + 0x138]
push 0x925fdc
call fcn.007c1be0
mov edx, 0x1a
push 0x925f4c
call fcn.007c1be0
mov edx, ecx
push 0x925f1c
call fcn.007c1be0
mov edi, dword [esp + 4]
add edi, ebp
mov edx, dword [esp + 0x14]
mov ecx, edi
push 0x925f9c
call fcn.007c1be0
mov ecx, 0x1a
mov edx, 0x1a
push 0x925fbc
call fcn.007c1be0
xor ecx, ecx
xor edx, edx
push 0x925ebc
call fcn.007c1be0
xor ecx, ecx
xor edx, edx
push 0x925ecc
call fcn.007c1be0
push 0x925f6c
call fcn.007c1be0
mov ecx, eax
push 0x925f0c
call fcn.007c1be0
mov ecx, eax
push 0x925f7c
call fcn.007c1be0
push 0x925f8c
call fcn.007c1be0
push 0x925fec
call fcn.007c1be0
mov ecx, dword [esp + 8]
push 0x925ffc
call fcn.007c1be0
lea ecx, [esp + 0x38]
mov edx, 0x7d951c
mov dword [esp + 0x38], 0x93a1fc
mov dword [esp + 0x3c], 1
mov dword [esp + 0x48], 0
mov dword [esp + 0x40], 0x93d1f8
mov dword [esp + 0x44], 0
call fcn.007c1b50
inc ebx
jmp 0x5e9d6c
add ebx, 2
jmp 0x5e9d6c
lea ecx, [esp + 0xb8]
mov edx, 0x7d951c
mov dword [esp + 0xb8], 0x93a1fc
mov dword [esp + 0xbc], 1
mov dword [esp + 0xc8], 0
mov dword [esp + 0xc0], 0x93d1f8
mov dword [esp + 0xc4], 0
call fcn.007c1b50
add ebx, 3
jmp 0x5e9d6c
mov ecx, dword [esp + 0x1c]
mov edx, 0x1a
push 0x92607c
call fcn.007c1be0
add ebx, 4
jmp 0x5e9d6c
mov ecx, 0x1a
mov edx, 0x1a
push 0x925f3c
call fcn.007c1be0
mov ecx, edi
mov edx, 0x1a
push 0x925fcc
call fcn.007c1be0
add ebx, 5
jmp 0x5e9d6c
call fcn.00418cb0
add ebx, 6
jmp 0x5e9d6c
mov ecx, 4
mov edx, esi
call fcn.007c1490
add ebx, 7
jmp 0x5e9d6c
mov ecx, eax
push 0x9257a4
call fcn.007c1c40
mov edx, eax
push 0x925edc
call fcn.007c1b80
add ebx, 8
jmp 0x5e9d6c
add ebx, 9
mov dword [esp + 4], ebx
mov ecx, dword [esp + 4]
mov edx, 0x1a
push 0x92601c
call fcn.007c1be0
mov edx, eax
push 0x92600c
call fcn.007c1b80
add dword [esp + 4], 0xa
mov ecx, dword [esp + 4]
mov edx, 0x1a
push 0x92601c
call fcn.007c1be0
add dword [esp + 4], 0xb
mov ecx, dword [esp + 4]
mov edx, 0x1a
push 0x92601c
call fcn.007c1be0
add dword [esp + 4], 0xc
mov ecx, dword [esp + 4]
mov edx, 0x1a
push 0x92601c
call fcn.007c1be0
cmp eax, 0xd
je 0x5e9e02
mov ecx, dword [esp]
mov eax, dword [esp + 4]
mov edx, 0xd
movss xmm0, dword [ecx + 0x3c]
movss dword [ecx + eax*4 + 0x3c], xmm0
mov ecx, 0xd
push 0x92602c
call fcn.007c1be0
add dword [esp + 4], 0xd
mov ecx, dword [esp + 4]
mov edx, 0x1a
push 0x92601c
call fcn.007c1be0
int3