Function at 0x1006ebf0
Capabilities:
Enumerate pe sections
Terminate process

Disassembly:
push ebp
mov ebp, esp
push ebx
push edi
push esi
and esp, 0xfffffff0
sub esp, 0x1f0
mov esi, esp
mov dword [esi + 0x1d8], ebp
mov edx, dword [ebp + 0xc]
mov dword [esi + 0x1dc], esp
mov dword [esi + 0x1e8], 0xffffffff
lea eax, [esi + 0x1e0]
mov dword [esi + 0x1e4], 0x10070ea0
mov ecx, dword fs:[0]
mov dword [esi + 0x1e0], ecx
mov dword fs:[0], eax
cmp dword [edx + 0x4c], 0
jle 0x10070b94
push edx
call fcn.100690e0
add esp, 4
mov eax, dword [ebp + 0xc]
mov dword [eax + 8], 0
pxor xmm0, xmm0
movdqu xmmword [eax + 0x1c], xmm0
mov dword [eax + 0x30], 0
mov dword [eax + 0x2c], 0
mov ecx, dword [ebp + 0xc]
call fcn.100632c0
mov eax, dword [ebp + 0xc]
mov ecx, dword [eax + 0x4c]
mov dword [esi + 0x14], 0
mov dword [esi + 0x10], 0
mov dword [esi + 0x48], ecx
test ecx, ecx
jle 0x1006eccf
mov ecx, dword [esi + 0x48]
cmp ecx, 9
mov eax, 8
cmovge eax, ecx
shl eax, 4
lea eax, [eax + eax*4]
mov dword [esi + 0x30], 0
mov dword [esi + 0x34], 0
mov dword [esi + 0x1e8], 7
push eax
call fcn.100485a0
add esp, 4
mov dword [esi + 0x10], eax
mov eax, dword [ebp + 0xc]
mov ecx, dword [eax + 0x34]
test ecx, ecx
mov dword [esi + 0x20], ecx
jle 0x1006ed13
cmp ecx, 9
mov eax, 8
cmovge eax, ecx
shl eax, 3
lea eax, [eax + eax*2]
mov dword [esi + 0x30], 0
mov ecx, dword [esi + 0x10]
mov dword [esi + 0x34], ecx
mov dword [esi + 0x1e8], 7
push eax
call fcn.100485a0
add esp, 4
mov dword [esi + 0x14], eax
mov eax, dword [ebp + 0xc]
mov ecx, dword [esi + 0x20]
add eax, 0x1c
mov dword [esi + 0xa0], eax
mov eax, dword [esi + 0x48]
shl eax, 4
lea eax, [eax + eax*4]
push eax
push 0
push dword [esi + 0x10]
mov edi, ecx
call sub.VCRUNTIME140.dll_memset
add esp, 0xc
lea eax, [edi*8]
lea eax, [eax + eax*2]
push eax
push 0
push dword [esi + 0x14]
call sub.VCRUNTIME140.dll_memset
add esp, 0xc
xor ebx, ebx
mov eax, 0x3f
movd xmm0, eax
movdqa xmmword [esi + 0x70], xmm0
jmp 0x1006ed86
mov eax, dword [esi + 8]
lea eax, [eax + eax*2]
mov edi, dword [esi + 0x14]
lea ecx, [edi + eax*8]
inc dword [ecx]
mov ecx, dword [esi + 0x10]
mov edx, dword [esi + 0xc]
mov ecx, dword [ecx + edx + 0x30]
mov edx, dword [edi + eax*8 + 4]
cmp edx, ecx
cmovg ecx, edx
mov dword [edi + eax*8 + 4], ecx
inc ebx
mov eax, dword [ebp + 0xc]
mov ecx, dword [eax + 0x4c]
mov dword [esi + 0xc8], ecx
cmp ebx, ecx
mov dword [esi + 0x84], ebx
jge 0x1006f066
cmp dword [esi + 0x48], ebx
jle 0x10070b94
mov eax, dword [eax + 0x54]
imul ecx, ebx, 0x74
mov dword [esi + 4], eax
mov dword [esi], ecx
mov eax, dword [eax + ecx + 0x70]
test eax, eax
je 0x10070b94
mov eax, dword [eax + 0x38]
test eax, eax
je 0x1006edd0
cmp eax, dword [ebp + 0xc]
jne 0x10070b94
lea ecx, [ebx + ebx*4]
shl ecx, 4
mov eax, dword [esi + 0x10]
mov dword [esi + 0xc], ecx
mov dword [eax + ecx + 0x2c], 0xffffffff
mov eax, dword [ebp + 0xc]
mov ecx, dword [eax + 0x34]
test ecx, ecx
jle 0x10070b94
mov edi, dword [esi + 0xc]
mov eax, dword [esi + 0x10]
add eax, edi
mov dword [esi + 8], eax
mov eax, dword [esi + 4]
mov ebx, dword [esi]
lea edx, [eax + ebx]
mov dword [esi + 0x1c], edx
lea eax, [eax + ebx + 0x70]
mov edx, dword [esi + 0x10]
lea edx, [edx + edi + 0x2c]
mov dword [esi + 0x18], edx
mov edx, dword [eax]
mov eax, dword [ebp + 0xc]
mov eax, dword [eax + 0x3c]
xor ebx, ebx
mov edi, dword [eax + ebx*4]
cmp edx, edi
je 0x1006ee40
inc ebx
cmp ebx, ecx
jge 0x10070b94
cmp edx, edi
jne 0x1006ee20
jmp 0x10070b94
mov eax, dword [esi + 0x18]
mov dword [eax], ebx
mov eax, dword [esi + 8]
lea ebx, [eax + 0x18]
push ebx
mov ecx, dword [esi + 4]
mov eax, dword [esi]
push dword [ecx + eax + 0xc]
push dword [ecx + eax + 4]
mov eax, dword [esi + 0x1c]
push dword [eax]
push dword [ebp + 8]
call fcn.1014f9a0
add esp, 0x14
test eax, eax
jne 0x1006f043
push 0x756e6963
push dword [ebx]
call fcn.10150610
add esp, 8
test eax, eax
jne 0x1006f043
pxor xmm0, xmm0
mov edi, dword [esi + 8]
movdqu xmmword [edi], xmm0
mov dword [edi + 0x14], 0
mov dword [edi + 0x10], 0
mov ecx, dword [esi + 4]
mov eax, dword [esi]
movss xmm0, dword [ecx + eax + 0x10]
cvttss2si eax, xmm0
mov ecx, eax
sar ecx, 0x1f
subss xmm0, dword [0x101a8338]
cvttss2si ebx, xmm0
and ebx, ecx
or ebx, eax
mov dword [esi + 0xd8], 1
mov dword [esi + 0xdc], 0
mov eax, ebx
shl eax, 6
mov dword [esi + 0xe0], eax
mov dword [esi + 0xe4], 0
mov dword [esi + 0xe8], 0
lea eax, [esi + 0xd8]
push eax
push dword [edi + 0x18]
call fcn.1014fb80
add esp, 8
mov eax, dword [edi + 0x18]
mov ecx, dword [eax + 0x58]
mov eax, dword [ecx + 0x24]
movq xmm0, qword [ecx + 0x18]
movd xmm1, dword [ecx + 0x20]
mov dword [edi], ebx
movdqa xmm2, xmm0
paddd xmm2, xmmword [0x101b07f0]
pshufd xmm3, xmm2, 0x55
psubd xmm3, xmm0
movdqa xmm0, xmmword [esi + 0x70]
punpckldq xmm0, xmm3
pshufd xmm1, xmm1, 0x50
paddd xmm1, xmm0
punpcklqdq xmm2, xmm1
psrad xmm2, 6
cvtdq2ps xmm0, xmm2
movups xmmword [edi + 4], xmm0
add eax, 0x3f
sar eax, 6
xorps xmm0, xmm0
cvtsi2ss xmm0, eax
movss dword [edi + 0x14], xmm0
mov eax, dword [esi + 4]
mov ecx, dword [esi]
mov eax, dword [eax + ecx + 0x40]
or eax, dword [ebp + 0x10]
mov dword [edi + 0x1c], eax
mov ecx, eax
and ecx, 2
shl ecx, 0xe
mov edx, eax
and edx, 4
lea ecx, [ecx + edx*8]
mov edx, eax
and edx, 1
lea ecx, [ecx + edx*2]
add ecx, 8
mov dword [edi + 0x20], ecx
mov edx, 0x10000
test al, 8
jne 0x1006efa7
mov edx, 0x20000
test al, 0x10
je 0x1006efaf
or edx, ecx
mov eax, dword [esi + 8]
mov dword [eax + 0x20], edx
mov eax, dword [esi + 0x18]
mov eax, dword [eax]
cmp dword [esi + 0x20], eax
jle 0x10070b94
mov dword [esi + 8], eax
mov eax, dword [esi]
mov ecx, dword [esi + 4]
mov eax, dword [ecx + eax + 0x30]
test eax, eax
mov ebx, dword [esi + 0x84]
jne 0x1006eff7
mov eax, dword [esi + 0x14]
mov dword [esi + 0x30], eax
mov eax, dword [esi + 0x10]
mov dword [esi + 0x34], eax
mov dword [esi + 0x1e8], 7
mov ecx, dword [ebp + 0xc]
call fcn.10063a10
mov ebx, dword [esi + 0x84]
mov ecx, dword [esi + 0x10]
mov edx, dword [esi + 0xc]
mov dword [ecx + edx + 0x28], eax
cmp word [eax], 0
je 0x1006ed60
mov ecx, dword [esi + 0x10]
mov edx, dword [esi + 0xc]
add ecx, edx
add ecx, 0x30
add eax, 4
nop dword [eax]
movzx edx, word [eax - 2]
test edx, edx
je 0x1006ed60
mov edi, dword [ecx]
cmp edi, edx
cmovg edx, edi
mov dword [ecx], edx
cmp word [eax], 0
lea eax, [eax + 4]
jne 0x1006f020
jmp 0x1006ed60
mov eax, dword [esi + 0x14]
test eax, eax
je 0x10070b5b
mov dword [esi + 0x1e8], 5
push eax
call fcn.100485d0
add esp, 4
jmp 0x10070b5b
xor eax, eax
mov dword [esi + 0x40], 0
jmp 0x1006f084
mov eax, dword [esi + 0x70]
inc eax
mov ecx, dword [esi + 0x20]
cmp eax, dword [esi + 0x48]
mov edx, eax
mov eax, dword [esi + 0x10]
jge 0x1006f351
mov dword [esi + 0x70], edx
lea edi, [edx + edx*4]
shl edi, 4
mov ebx, dword [eax + edi + 0x2c]
cmp ecx, ebx
jle 0x10070b94
lea ecx, [eax + edi]
add ecx, 0x38
mov dword [esi + 0x18], ecx
mov ecx, dword [eax + edi + 0x30]
mov eax, dword [eax + edi + 0x3c]
add ecx, 0x20
sar ecx, 5
cmp eax, ecx
jge 0x1006f16e
test eax, eax
je 0x1006f0da
mov edx, eax
shr edx, 0x1f
add edx, eax
sar edx, 1
add edx, eax
jmp 0x1006f0df
mov edx, 8
cmp edx, ecx
cmovle edx, ecx
cmp eax, edx
jge 0x1006f16e
mov dword [esi + 0xc], ecx
mov dword [esi + 4], ebx
mov dword [esi], edi
mov dword [esi + 8], edx
lea eax, [edx*4]
mov ecx, dword [esi + 0x14]
mov dword [esi + 0x30], ecx
mov ecx, dword [esi + 0x10]
mov dword [esi + 0x34], ecx
mov dword [esi + 0x1e8], 7
push eax
call fcn.100485a0
add esp, 4
mov edx, eax
mov eax, dword [esi + 0x18]
mov eax, dword [eax + 8]
test eax, eax
je 0x1006f15a
mov edi, dword [esi + 0x18]
mov ecx, dword [edi]
shl ecx, 2
push ecx
push eax
push edx
mov dword [esi + 0x1c], edx
call sub.VCRUNTIME140.dll_memcpy
add esp, 0xc
mov eax, dword [edi + 8]
mov ecx, dword [esi + 0x14]
mov dword [esi + 0x30], ecx
mov ecx, dword [esi + 0x10]
mov dword [esi + 0x34], ecx
push eax
call fcn.100485d0
mov edx, dword [esi + 0x1c]
add esp, 4
mov eax, dword [esi + 0x18]
mov dword [eax + 8], edx
mov ecx, dword [esi + 8]
mov dword [eax + 4], ecx
mov edi, dword [esi]
mov ebx, dword [esi + 4]
mov ecx, dword [esi + 0xc]
mov eax, dword [esi + 0x18]
mov dword [eax], ecx
shl ecx, 2
push ecx
push 0
push dword [eax + 8]
call sub.VCRUNTIME140.dll_memset
add esp, 0xc
lea ebx, [ebx + ebx*2]
mov eax, dword [esi + 0x14]
lea edx, [eax + ebx*8]
add edx, 0xc
cmp dword [eax + ebx*8 + 0xc], 0
mov dword [esi + 8], edx
mov dword [esi + 4], ebx
jne 0x1006f26c
mov eax, dword [esi + 0x14]
mov ecx, dword [eax + ebx*8 + 4]
add ecx, 0x20
sar ecx, 5
mov eax, dword [edx + 4]
cmp eax, ecx
jge 0x1006f256
test eax, eax
mov dword [esi], eax
je 0x1006f1cc
mov eax, dword [esi]
shr eax, 0x1f
add eax, dword [esi]
sar eax, 1
add eax, dword [esi]
jmp 0x1006f1d1
mov eax, 8
cmp eax, ecx
cmovle eax, ecx
cmp dword [esi], eax
jge 0x1006f256
mov dword [esi + 0xc], ecx
mov dword [esi], edi
mov dword [esi + 0x1c], eax
lea eax, [eax*4]
mov ecx, dword [esi + 0x14]
mov dword [esi + 0x30], ecx
mov ecx, dword [esi + 0x10]
mov dword [esi + 0x34], ecx
mov dword [esi + 0x1e8], 7
push eax
call fcn.100485a0
mov edx, dword [esi + 8]
add esp, 4
mov edi, eax
mov eax, dword [edx + 8]
test eax, eax
je 0x1006f248
mov ecx, dword [edx]
shl ecx, 2
push ecx
push eax
push edi
call sub.VCRUNTIME140.dll_memcpy
add esp, 0xc
mov eax, dword [esi + 8]
mov eax, dword [eax + 8]
mov ecx, dword [esi + 0x14]
mov dword [esi + 0x30], ecx
mov ecx, dword [esi + 0x10]
mov dword [esi + 0x34], ecx
push eax
mov dword [esi + 0x28], edi
call fcn.100485d0
mov edi, dword [esi + 0x28]
mov edx, dword [esi + 8]
add esp, 4
mov dword [edx + 8], edi
mov eax, dword [esi + 0x1c]
mov dword [edx + 4], eax
mov edi, dword [esi]
mov ecx, dword [esi + 0xc]
mov dword [edx], ecx
shl ecx, 2
push ecx
push 0
push dword [edx + 8]
call sub.VCRUNTIME140.dll_memset
mov edx, dword [esi + 8]
add esp, 0xc
mov ecx, dword [esi + 0x10]
mov ebx, dword [ecx + edi + 0x28]
movzx eax, word [ebx]
test ax, ax
je 0x1006f080
add edi, ecx
add edi, 0x18
mov ecx, dword [esi + 0x14]
mov word [esi], ax
mov eax, dword [esi + 4]
lea eax, [ecx + eax*8 + 8]
mov dword [esi + 0x1c], eax
movzx eax, word [esi]
mov dword [esi + 0xc], edi
jmp 0x1006f2b0
movzx eax, word [ebx + 4]
add ebx, 4
test ax, ax
je 0x1006f080
movzx ecx, word [ebx + 2]
test cx, cx
je 0x1006f080
cmp ax, cx
ja 0x1006f2a0
movzx eax, ax
mov dword [esi], ebx
jmp 0x1006f2de
mov edx, dword [esi + 8]
mov ecx, dword [esi + 4]
lea eax, [ecx + 1]
mov ebx, dword [esi]
mov edi, ecx
movzx ecx, word [ebx + 2]
cmp edi, ecx
jae 0x1006f2a0
mov ebx, eax
shr ebx, 5
cmp dword [edx], ebx
jle 0x10070b94
mov edi, 1
mov dword [esi + 4], eax
mov ecx, dword [esi + 4]
shl edi, cl
mov ecx, dword [esi + 4]
mov eax, dword [edx + 8]
mov eax, dword [eax + ebx*4]
bt eax, ecx
jb 0x1006f2cf
push ecx
mov eax, dword [esi + 0xc]
push dword [eax]
call fcn.101506d0
add esp, 8
test eax, eax
je 0x1006f2c9
mov eax, dword [esi + 0xc]
inc dword [eax + 0x1c]
mov eax, dword [esi + 0x1c]
inc dword [eax]
mov eax, dword [esi + 0x18]
cmp dword [eax], ebx
mov ecx, dword [esi + 0x40]
mov edx, dword [esi + 8]
jle 0x10070b94
mov eax, dword [eax + 8]
or dword [eax + ebx*4], edi
cmp dword [edx], ebx
jle 0x10070b94
mov eax, dword [edx + 8]
or dword [eax + ebx*4], edi
inc ecx
mov dword [esi + 0x40], ecx
jmp 0x1006f2cc
xor edx, edx
pxor xmm0, xmm0
jmp 0x1006f374
mov eax, dword [ebx]
mov edx, dword [esi + 0x3c]
inc edx
cmp eax, dword [ecx]
mov eax, dword [esi + 0x10]
mov ecx, dword [esi + 0x20]
jne 0x10070b94
cmp edx, dword [esi + 0x48]
jge 0x1006f5d1
lea edi, [edx + edx*4]
shl edi, 4
mov dword [esi + 0x3c], edx
lea ebx, [eax + edi]
add ebx, 0x44
mov edx, dword [eax + edi + 0x34]
cmp dword [eax + edi + 0x48], edx
mov dword [esi + 0x70], ebx
jge 0x1006f430
mov ecx, eax
lea eax, [edx + edx*8]
lea eax, [eax + eax*2]
mov dword [esi], edx
add eax, edx
mov edx, dword [esi + 0x14]
mov dword [esi + 0x30], edx
mov dword [esi + 0x34], ecx
mov dword [esi + 0x1e8], 7
push eax
mov dword [esi + 4], edi
call fcn.100485a0
mov edi, dword [esi + 4]
add esp, 4
mov ebx, eax
mov eax, dword [esi + 0x10]
lea ecx, [eax + edi]
add ecx, 0x4c
mov eax, dword [eax + edi + 0x4c]
test eax, eax
je 0x1006f41f
mov dword [esi + 0xc], ecx
mov ecx, dword [esi + 0x70]
mov ecx, dword [ecx]
lea edx, [ecx + ecx*8]
lea edx, [edx + edx*2]
add edx, ecx
push edx
push eax
push ebx
call sub.VCRUNTIME140.dll_memcpy
add esp, 0xc
mov eax, dword [esi + 0xc]
mov eax, dword [eax]
mov ecx, dword [esi + 0x14]
mov dword [esi + 0x30], ecx
mov ecx, dword [esi + 0x10]
mov dword [esi + 0x34], ecx
push eax
mov dword [esi + 8], ebx
call fcn.100485d0
mov ecx, dword [esi + 0xc]
mov ebx, dword [esi + 8]
mov edi, dword [esi + 4]
add esp, 4
mov dword [ecx], ebx
mov ebx, dword [esi + 0x70]
mov eax, dword [esi]
mov dword [ebx + 4], eax
mov eax, dword [esi + 0x10]
pxor xmm0, xmm0
lea ecx, [eax + edi]
add ecx, 0x34
mov dword [esi], ecx
mov ecx, eax
mov eax, dword [eax + edi + 0x38]
mov ecx, dword [ecx + edi + 0x40]
lea eax, [ecx + eax*4]
mov dword [esi + 0x2c], eax
mov dword [esi + 0x24], ecx
jmp 0x1006f453
add ecx, 4
cmp ecx, dword [esi + 0x2c]
jae 0x1006f580
mov eax, dword [ecx]
mov dword [esi + 4], eax
test eax, eax
je 0x1006f450
mov eax, ecx
sub eax, dword [esi + 0x24]
shl eax, 3
mov dword [esi + 8], eax
xor edx, edx
mov dword [esi + 0xc], ecx
jmp 0x1006f4c4
mov dword [edi + 0x18], ebx
mov ebx, dword [esi + 0x70]
mov eax, dword [esi + 0x1c]
mov dword [ebx + 4], eax
mov eax, dword [ebx]
pxor xmm0, xmm0
mov edx, dword [esi + 0x18]
mov ecx, dword [esi + 8]
add ecx, edx
movzx ecx, cx
mov edi, edx
lea edx, [eax + eax*8]
lea edx, [edx + edx*2]
add edx, eax
mov eax, dword [esi]
mov eax, dword [eax + 0x18]
movdqu xmmword [eax + edx], xmm0
mov dword [eax + edx + 0x10], 0
mov dword [eax + edx + 0x14], ecx
mov dword [eax + edx + 0x18], 0
mov edx, edi
inc dword [ebx]
mov ecx, dword [esi + 0xc]
inc edx
cmp edx, 0x1f
ja 0x1006f450
mov eax, dword [esi + 4]
bt eax, edx
jae 0x1006f4c3
mov eax, dword [ebx]
cmp eax, dword [ebx + 4]
jne 0x1006f48c
lea edi, [eax + 1]
test eax, eax
je 0x1006f4ec
mov ecx, eax
shr ecx, 0x1f
add ecx, eax
sar ecx, 1
add ecx, eax
jmp 0x1006f4f1
mov ecx, 8
cmp ecx, edi
cmovg edi, ecx
cmp eax, edi
jge 0x1006f48c
mov dword [esi + 0x18], edx
lea eax, [edi + edi*8]
lea eax, [eax + eax*2]
mov dword [esi + 0x1c], edi
add eax, edi
mov ecx, dword [esi + 0x14]
mov dword [esi + 0x30], ecx
mov ecx, dword [esi + 0x10]
mov dword [esi + 0x34], ecx
mov dword [esi + 0x1e8], 7
push eax
call fcn.100485a0
add esp, 4
mov edi, dword [esi]
mov ebx, eax
mov eax, dword [edi + 0x18]
test eax, eax
je 0x1006f477
mov ecx, dword [esi + 0x70]
mov ecx, dword [ecx]
lea edx, [ecx + ecx*8]
lea edx, [edx + edx*2]
add edx, ecx
push edx
push eax
push ebx
call sub.VCRUNTIME140.dll_memcpy
add esp, 0xc
mov eax, dword [edi + 0x18]
mov ecx, dword [esi + 0x14]
mov dword [esi + 0x30], ecx
mov ecx, dword [esi + 0x10]
mov dword [esi + 0x34], ecx
push eax
mov dword [esi + 0x28], ebx
call fcn.100485d0
mov ebx, dword [esi + 0x28]
mov edi, dword [esi]
add esp, 4
jmp 0x1006f477
mov ecx, dword [esi]
mov eax, dword [ecx + 0xc]
test eax, eax
je 0x1006f360
mov dword [ecx + 8], 0
mov dword [ecx + 4], 0
mov ecx, dword [esi + 0x14]
mov dword [esi + 0x30], ecx
mov ecx, dword [esi + 0x10]
mov dword [esi + 0x34], ecx
mov dword [esi + 0x1e8], 7
push eax
call fcn.100485d0
add esp, 4
mov eax, dword [esi]
mov dword [eax + 0xc], 0
mov ecx, eax
pxor xmm0, xmm0
mov ebx, dword [esi + 0x70]
jmp 0x1006f360
xor edx, edx
jmp 0x1006f5e4
inc edx
mov ecx, dword [esi + 0x20]
cmp edx, ecx
mov eax, dword [esi + 0x14]
jge 0x1006f63b
lea ecx, [edx + edx*2]
mov eax, dword [eax + ecx*8 + 0x14]
test eax, eax
je 0x1006f5e0
mov dword [esi + 4], edx
mov edx, dword [esi + 0x14]
lea ecx, [edx + ecx*8]
add ecx, 0xc
mov dword [ecx + 4], 0
mov dword [esi], ecx
mov dword [ecx], 0
mov dword [esi + 0x30], edx
mov ecx, dword [esi + 0x10]
mov dword [esi + 0x34], ecx
mov dword [esi + 0x1e8], 7
push eax
call fcn.100485d0
add esp, 4
mov eax, dword [esi]
mov dword [eax + 8], 0
mov edx, dword [esi + 4]
jmp 0x1006f5e0
test eax, eax
je 0x1006f65e
mov ecx, dword [esi + 0x14]
mov dword [esi + 0x30], ecx
mov eax, dword [esi + 0x10]
mov dword [esi + 0x34], eax
mov dword [esi + 0x1e8], 7
push ecx
call fcn.100485d0
add esp, 4
mov dword [esi + 0x8c], 0
mov dword [esi + 0x88], 0
mov dword [esi + 0x90], 0
mov ecx, dword [esi + 0x40]
test ecx, ecx
jle 0x1006f6bb
cmp ecx, 9
mov eax, 8
cmovge eax, ecx
mov dword [esi + 4], eax
shl eax, 4
mov dword [esi + 0x1e8], 8
push eax
call fcn.100485a0
add esp, 4
mov dword [esi + 0x90], eax
mov ecx, dword [esi + 4]
mov dword [esi + 0x8c], ecx
mov ecx, dword [esi + 0x40]
jmp 0x1006f6bd
xor eax, eax
mov dword [esi + 0x88], ecx
shl ecx, 4
push ecx
push 0
push eax
call sub.VCRUNTIME140.dll_memset
add esp, 0xc
mov dword [esi + 0x60], 0
mov dword [esi + 0x5c], 0
mov dword [esi + 0x64], 0
mov dword [esi + 0x1e8], 9
push 0x40000
call fcn.100485a0
add esp, 4
mov dword [esi + 4], eax
push 0x20
call fcn.100485a0
add esp, 4
mov dword [esi + 0x64], eax
mov dword [esi + 0x60], 8
mov ecx, dword [esi + 4]
mov dword [eax], ecx
inc dword [esi + 0x5c]
xor ecx, ecx
xor ebx, ebx
mov dword [esi + 0x6c], 0
xor edi, edi
mov eax, dword [esi + 0x10]
jmp 0x1006f73a
mov ebx, dword [esi + 0x68]
mov ecx, dword [esi + 0x44]
mov edi, dword [esi + 0x20]
inc ecx
cmp ecx, dword [esi + 0x48]
jge 0x1006fc0a
mov dword [esi + 0x44], ecx
mov ecx, dword [ebp + 0xc]
mov edx, dword [esi + 0x44]
cmp dword [ecx + 0x4c], edx
mov ecx, dword [esi + 0x44]
jle 0x10070b94
lea edx, [ecx + ecx*4]
shl edx, 4
mov dword [esi + 4], edx
mov edx, dword [eax + edx + 0x34]
mov dword [esi + 0x68], edx
test edx, edx
je 0x1006f739
mov dword [esi + 0x20], edi
cmp dword [esi + 0x88], ebx
jle 0x10070b94
mov eax, ebx
shl eax, 4
add eax, dword [esi + 0x90]
mov ecx, dword [ebp + 0xc]
mov ecx, dword [ecx + 0x54]
mov edx, dword [esi + 0x10]
mov edi, dword [esi + 4]
mov dword [edx + edi + 0x24], eax
imul eax, dword [esi + 0x44], 0x74
movss xmm0, dword [ecx + eax + 0x44]
movss dword [esi + 0x38], xmm0
ucomiss xmm0, dword [0x101a8280]
mov eax, 0
mov ecx, ebx
jne 0x1006f7b7
jnp 0x1006f7ed
mov dword [esi + 0x1e8], 9
sub esp, 8
movss xmm0, dword [esi + 0x38]
movss dword [esp + 4], xmm0
lea eax, [esi + 0xd8]
mov dword [esp], eax
mov dword [esi], ecx
call fcn.10068e70
mov ecx, dword [esi]
mov edi, dword [esi + 4]
add esp, 8
lea eax, [esi + 0xd8]
mov dword [esi + 4], eax
mov eax, dword [esi + 0x10]
lea edx, [eax + edi]
lea ebx, [eax + edi]
add ebx, 0x24
add dword [esi + 0x68], ecx
mov ecx, dword [ebp + 0xc]
mov ecx, dword [ecx + 0x10]
mov dword [esi + 0x80], ecx
xor edi, edi
mov dword [esi + 0xb0], edx
mov dword [esi + 0x4c], ebx
jmp 0x1006f871
mov eax, dword [esi + 0x24]
mov ecx, dword [eax]
mov edi, dword [esi + 0x80]
add ecx, edi
mov eax, dword [esi + 0x3c]
shl eax, 4
mov ebx, dword [esi + 0x4c]
mov edx, dword [ebx]
mov word [edx + eax + 4], cx
mov ecx, dword [esi + 0x24]
mov ecx, dword [ecx + 4]
add ecx, edi
mov edx, dword [ebx]
mov word [edx + eax + 6], cx
mov ecx, dword [ebx]
movzx edx, word [ecx + eax + 4]
movzx eax, word [ecx + eax + 6]
mov edi, dword [esi + 0x3c]
imul eax, edx
add dword [esi + 0x6c], eax
mov eax, dword [esi + 0x58]
add dword [esi + 0x20], eax
inc edi
mov eax, dword [esi + 0x10]
mov edx, dword [esi + 0xb0]
cmp edi, dword [ebx + 0x20]
jge 0x1006f730
mov ecx, dword [ebx + 0x28]
lea eax, [edi + edi*8]
lea eax, [eax + eax*2]
mov dword [esi + 0x3c], edi
add eax, edi
mov dword [esi + 0xc], eax
mov dword [esi], ecx
push dword [ecx + eax + 0x14]
push dword [edx + 0x18]
mov ebx, edx
call fcn.101506d0
add esp, 8
test eax, eax
je 0x10070b94
push dword [ebx + 0x20]
push eax
push dword [ebx + 0x18]
call fcn.1014fd90
add esp, 0xc
test eax, eax
jne 0x10070b94
mov eax, dword [ebx + 0x18]
mov edi, dword [eax + 0x54]
cmp dword [edi + 0x48], 0x6f75746c
jne 0x10070b94
mov eax, dword [ebx + 0x1c]
test al, 0x20
je 0x1006f8e3
push edi
call fcn.10157790
add esp, 4
mov eax, dword [ebx + 0x1c]
test al, 0x40
je 0x1006f8f0
push edi
call fcn.10157890
add esp, 4
mov eax, dword [ebx + 0x18]
mov edi, dword [eax + 0x54]
push 0
push edi
call fcn.10150470
add esp, 8
test eax, eax
jne 0x10070b94
mov eax, dword [esi + 0xc]
mov ecx, dword [esi]
mov dword [esi + 0x18], edi
lea edi, [ecx + eax]
mov eax, dword [ebx + 0x18]
mov ecx, dword [eax + 0x54]
mov eax, dword [ecx + 0x50]
mov dword [esi + 8], eax
mov dword [edi], eax
mov dword [esi + 0x1c], ecx
mov eax, dword [ecx + 0x4c]
mov dword [edi + 4], eax
mov ecx, dword [ebx + 0x18]
mov ecx, dword [ecx + 0x54]
mov ecx, dword [ecx + 0x64]
mov dword [edi + 8], ecx
mov ecx, dword [ebx + 0x18]
mov ecx, dword [ecx + 0x54]
xor edx, edx
sub edx, dword [ecx + 0x68]
mov dword [edi + 0xc], edx
mov ecx, dword [esi + 0x18]
mov ecx, dword [ecx + 0x40]
add ecx, 0x3f
sar ecx, 6
cvtsi2ss xmm0, ecx
mov dword [esi + 0x24], edi
movss dword [edi + 0x10], xmm0
imul eax, dword [esi + 8]
mov dword [esi + 0x58], eax
mov ebx, dword [esi + 0x20]
add eax, ebx
cmp eax, 0x40001
jl 0x1006f9b0
mov dword [esi + 0x1e8], 9
push 0x40000
call fcn.100485a0
add esp, 4
mov ecx, eax
mov edi, dword [esi + 0x5c]
cmp edi, dword [esi + 0x60]
jne 0x1006fa19
lea ebx, [edi + 1]
test edi, edi
mov edx, dword [esi]
je 0x1006f9b7
mov eax, edi
shr eax, 0x1f
add eax, edi
sar eax, 1
add eax, edi
jmp 0x1006f9bc
mov eax, dword [esi + 0x5c]
mov edx, dword [esi]
jmp 0x1006fa2a
mov eax, 8
cmp eax, ebx
cmovg ebx, eax
cmp edi, ebx
jge 0x1006fa1b
mov dword [esi + 0x18], edi
mov dword [esi + 0x14], ebx
lea eax, [ebx*4]
push eax
mov dword [esi + 8], ecx
call fcn.100485a0
mov ecx, dword [esi + 8]
add esp, 4
mov edx, dword [esi + 0x64]
test edx, edx
mov edi, dword [esi + 0x18]
je 0x1006fa10
shl edi, 2
push edi
push edx
push eax
mov dword [esi + 0x18], eax
call sub.VCRUNTIME140.dll_memcpy
add esp, 0xc
push dword [esi + 0x64]
call fcn.100485d0
mov eax, dword [esi + 0x18]
mov ecx, dword [esi + 8]
add esp, 4
mov edi, dword [esi + 0x5c]
mov dword [esi + 0x64], eax
mov eax, dword [esi + 0x14]
mov dword [esi + 0x60], eax
mov edx, dword [esi]
mov eax, dword [esi + 0x64]
mov dword [eax + edi*4], ecx
mov eax, dword [esi + 0x5c]
inc eax
mov dword [esi + 0x5c], eax
xor ebx, ebx
test eax, eax
jle 0x10070b94
mov ecx, dword [esi + 0x64]
mov edi, dword [ecx + eax*4 - 4]
mov dword [esi + 0x20], ebx
add edi, ebx
movss xmm0, dword [esi + 0x38]
ucomiss xmm0, dword [0x101a8280]
mov eax, dword [esi + 0xc]
mov dword [edx + eax + 0x18], edi
mov eax, dword [esi + 0x1c]
mov edx, dword [eax + 0x4c]
mov ecx, dword [eax + 0x50]
mov ebx, dword [eax + 0x58]
mov eax, dword [eax + 0x54]
mov dword [esi + 0x18], eax
mov eax, dword [esi + 0x24]
mov eax, dword [eax]
mov dword [esi + 0x1c], eax
mov dword [esi + 8], ecx
jne 0x1006fb30
jp 0x1006fb30
test edx, edx
je 0x1006f820
mov eax, edx
and eax, 3
mov dword [esi], eax
cmp edx, 4
jb 0x1006faf8
and edx, 0xfffffffc
nop word cs:[eax + eax]
mov dword [esi + 0x28], edx
push ecx
push ebx
push edi
call sub.VCRUNTIME140.dll_memcpy
add esp, 0xc
add ebx, dword [esi + 0x18]
add edi, dword [esi + 0x1c]
push dword [esi + 8]
push ebx
push edi
call sub.VCRUNTIME140.dll_memcpy
add esp, 0xc
add ebx, dword [esi + 0x18]
add edi, dword [esi + 0x1c]
push dword [esi + 8]
push ebx
push edi
call sub.VCRUNTIME140.dll_memcpy
add esp, 0xc
add ebx, dword [esi + 0x18]
add edi, dword [esi + 0x1c]
push dword [esi + 8]
push ebx
push edi
call sub.VCRUNTIME140.dll_memcpy
mov edx, dword [esi + 0x28]
mov ecx, dword [esi + 8]
add esp, 0xc
add ebx, dword [esi + 0x18]
add edi, dword [esi + 0x1c]
add edx, 0xfffffffc
jne 0x1006faa0
mov eax, dword [esi]
test eax, eax
je 0x1006f820
nop word cs:[eax + eax]
mov dword [esi], eax
push ecx
push ebx
push edi
call sub.VCRUNTIME140.dll_memcpy
mov eax, dword [esi]
mov ecx, dword [esi + 8]
add esp, 0xc
add ebx, dword [esi + 0x18]
add edi, dword [esi + 0x1c]
dec eax
jne 0x1006fb10
jmp 0x1006f820
test edx, edx
je 0x1006f820
mov eax, ecx
and eax, 3
mov dword [esi + 0x2c], eax
mov eax, ecx
and eax, 0xfffffffc
mov dword [esi + 0xc], eax
xor eax, eax
mov dword [esi + 0x28], edx
jmp 0x1006fb6e
mov eax, dword [esi + 0x40]
inc eax
mov ebx, dword [esi + 0x70]
add ebx, dword [esi + 0x18]
mov edi, dword [esi + 0x14]
add edi, dword [esi + 0x1c]
mov edx, dword [esi + 0x28]
cmp eax, edx
mov ecx, dword [esi + 8]
je 0x1006f820
mov dword [esi + 0x70], ebx
mov dword [esi + 0x14], edi
mov dword [esi + 0x40], eax
test ecx, ecx
je 0x1006fb50
xor edx, edx
cmp dword [esi + 8], 4
mov ebx, dword [esi + 0x70]
mov ecx, dword [esi + 0x14]
jb 0x1006fbd3
xor edx, edx
nop dword [eax + eax]
movzx eax, byte [ebx + edx]
mov edi, ecx
mov ecx, dword [esi + 4]
movzx eax, byte [ecx + eax]
mov byte [edi + edx], al
movzx eax, byte [ebx + edx + 1]
movzx eax, byte [ecx + eax]
mov byte [edi + edx + 1], al
movzx eax, byte [ebx + edx + 2]
movzx eax, byte [ecx + eax]
mov byte [edi + edx + 2], al
movzx eax, byte [ebx + edx + 3]
movzx eax, byte [ecx + eax]
mov ecx, edi
mov byte [edi + edx + 3], al
mov edi, dword [esi + 0xc]
add edx, 4
cmp edi, edx
jne 0x1006fb90
mov edi, dword [esi + 0x2c]
test edi, edi
je 0x1006fb50
mov eax, dword [esi + 0x14]
add eax, edx
mov dword [esi], eax
add edx, dword [esi + 0x70]
xor eax, eax
nop word [eax + eax]
movzx ecx, byte [edx + eax]
mov ebx, dword [esi + 4]
movzx ecx, byte [ebx + ecx]
mov ebx, dword [esi]
mov byte [ebx + eax], cl
inc eax
cmp edi, eax
jne 0x1006fbf0
jmp 0x1006fb50
xorps xmm0, xmm0
cvtsi2ss xmm0, dword [esi + 0x6c]
cvtss2sd xmm0, xmm0
pxor xmm1, xmm1
ucomisd xmm0, xmm1
jb 0x1006fc26
sqrtsd xmm0, xmm0
jmp 0x1006fc44
sub esp, 8
movsd qword [esp], xmm0
call sub.api_ms_win_crt_math_l1_1_0.dll_sqrt
add esp, 8
fstp qword [esi + 0xd0]
movsd xmm0, qword [esi + 0xd0]
mov eax, dword [ebp + 0xc]
mov dword [eax + 0x20], 0
mov ebx, dword [eax + 0xc]
test ebx, ebx
jg 0x1006fc88
cvtsd2ss xmm0, xmm0
cvttss2si eax, xmm0
mov ebx, 0x1000
cmp eax, 0xb32
jg 0x1006fc88
mov ebx, 0x800
cmp eax, 0x598
jg 0x1006fc88
xor ebx, ebx
cmp eax, 0x2cc
setge bl
shl ebx, 9
add ebx, 0x200
mov eax, dword [ebp + 0xc]
mov dword [eax + 0x1c], ebx
mov edx, ebx
sub edx, dword [eax + 0x10]
mov dword [esi + 0xa8], 0
mov dword [esi + 0xa4], 0
mov dword [esi + 0xac], 0
mov dword [esi], edx
jle 0x1006fcfa
cmp edx, 9
mov eax, 8
cmovge eax, edx
mov dword [esi + 4], eax
lea eax, [eax*8]
mov dword [esi + 0x1e8], 0xa
push eax
call fcn.100485a0
add esp, 4
mov ecx, eax
mov eax, dword [esi + 0xa0]
mov ebx, dword [eax]
mov dword [esi + 0xac], ecx
mov eax, dword [esi + 4]
mov dword [esi + 0xa8], eax
mov edx, dword [esi]
jmp 0x1006fcfc
xor ecx, ecx
mov dword [esi + 4], ecx
mov dword [esi + 0xa4], edx
mov dword [esi + 0xc], ebx
cmp ebx, 0xffff
jg 0x10070b94
lea ebx, [edx - 1]
xor eax, eax
cmp edx, 2
mov ecx, edx
jl 0x1006fdb0
add ecx, 0xfffffffe
mov dword [esi + 8], ebx
mov edx, ebx
and edx, 7
xor edi, edi
cmp ecx, 7
jb 0x1006fd89
mov eax, dword [esi + 8]
and eax, 0xfffffff8
xor edi, edi
mov ebx, dword [esi + 4]
nop word cs:[eax + eax]
lea ecx, [ebx + 8]
mov dword [ebx + 4], ecx
lea ecx, [ebx + 0x10]
mov dword [ebx + 0xc], ecx
lea ecx, [ebx + 0x18]
mov dword [ebx + 0x14], ecx
lea ecx, [ebx + 0x20]
mov dword [ebx + 0x1c], ecx
lea ecx, [ebx + 0x28]
mov dword [ebx + 0x24], ecx
lea ecx, [ebx + 0x30]
mov dword [ebx + 0x2c], ecx
lea ecx, [ebx + 0x38]
mov dword [ebx + 0x34], ecx
add edi, 8
lea ecx, [ebx + 0x40]
mov dword [ebx + 0x3c], ecx
mov ebx, ecx
cmp eax, edi
jne 0x1006fd50
mov ebx, dword [esi + 8]
mov eax, ebx
test edx, edx
mov ecx, dword [esi]
je 0x1006fdb0
mov eax, dword [esi + 4]
lea ecx, [eax + edi*8]
add ecx, 8
nop dword [eax]
mov dword [ecx - 4], ecx
add ecx, 8
dec edx
jne 0x1006fda0
mov ebx, dword [esi + 8]
mov eax, ebx
mov ecx, dword [esi]
mov edx, dword [esi + 4]
mov dword [edx + eax*8 + 4], 0
mov dword [esi + 0xe4], 1
mov dword [esi + 0xe8], 0
mov dword [esi + 0xf4], edx
lea eax, [esi + 0xf8]
mov dword [esi + 0xf0], eax
mov edi, dword [esi + 0xc]
mov dword [esi + 0xd8], edi
mov dword [esi + 0xdc], 0x8000
mov dword [esi + 0xec], ecx
add ebx, edi
mov eax, ebx
cdq
idiv ecx
mov dword [esi + 0xe0], eax
mov dword [esi + 0xf8], 0
lea eax, [esi + 0x100]
mov dword [esi + 0xfc], eax
mov word [esi + 0x100], di
mov word [esi + 0x102], 0xffff
mov dword [esi + 0x104], 0
mov dword [esi + 0x1e8], 0xa
lea eax, [esi + 0xd8]
push eax
push dword [ebp + 0xc]
call fcn.10069730
add esp, 8
cmp dword [esi + 0x48], 0
jle 0x100705f3
xor eax, eax
jmp 0x1006fe80
mov eax, dword [esi + 0xcc]
inc eax
cmp eax, dword [esi + 0x48]
je 0x100705f3
mov dword [esi + 0xcc], eax
lea ecx, [eax + eax*4]
shl ecx, 4
mov eax, dword [esi + 0x10]
mov eax, dword [eax + ecx + 0x34]
mov dword [esi + 0x50], eax
test eax, eax
je 0x1006fe70
mov eax, dword [esi + 0x10]
mov dword [esi + 0x94], ecx
mov ecx, dword [eax + ecx + 0x24]
jle 0x10070500
mov dword [esi + 0x54], ecx
mov edx, dword [esi + 0x50]
mov eax, edx
and eax, 3
xor ecx, ecx
cmp edx, 4
jb 0x1006feee
mov edx, dword [esi + 0x50]
and edx, 0xfffffffc
mov ecx, dword [esi + 0x54]
lea edi, [ecx + 0x3c]
xor ecx, ecx
nop dword [eax]
mov dword [edi - 0x30], ecx
lea ebx, [ecx + 1]
mov dword [edi - 0x20], ebx
lea ebx, [ecx + 2]
mov dword [edi - 0x10], ebx
lea ebx, [ecx + 3]
mov dword [edi], ebx
add ecx, 4
add edi, 0x40
cmp ecx, edx
jne 0x1006fed0
test eax, eax
je 0x1006ff1b
mov edx, ecx
shl edx, 4
mov edi, dword [esi + 0x54]
add edx, edi
add edx, 0xc
shl eax, 4
xor edi, edi
nop word cs:[eax + eax]
mov dword [edx + edi], ecx
inc ecx
add edi, 0x10
cmp eax, edi
jne 0x1006ff10
push 0x1006d190
push 0x10
mov ebx, dword [esi + 0x50]
push ebx
mov edi, dword [esi + 0x54]
push edi
call dword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_qsort]
mov edx, ebx
mov eax, edi
add esp, 0x10
mov dword [esi + 0x68], 0
jmp 0x1006ff57
mov dword [eax + edi + 8], 0
mov ecx, dword [esi + 0x68]
inc ecx
mov dword [esi + 0x68], ecx
cmp ecx, edx
je 0x100704b0
mov edi, dword [esi + 0x68]
shl edi, 4
movzx ebx, word [eax + edi + 4]
mov dword [esi + 0x9c], ebx
test ebx, ebx
je 0x1006ff40
movzx ecx, word [eax + edi + 6]
mov ebx, ecx
mov dword [esi + 0x58], ecx
test ecx, ecx
je 0x1006ff40
mov ecx, dword [esi + 0xe0]
mov eax, dword [esi + 0x9c]
lea ebx, [eax + ecx]
dec ebx
mov eax, ebx
cdq
idiv ecx
sub ebx, edx
mov eax, ebx
cdq
idiv ecx
test edx, edx
jne 0x10070b94
mov edx, dword [esi + 0xd8]
mov eax, dword [esi + 0xf0]
mov dword [esi + 0x28], eax
movzx eax, word [eax]
mov word [esi + 0x2c], ax
movzx eax, ax
lea ecx, [ebx + eax]
mov dword [esi + 0x80], edx
mov dword [esi + 0x14], ecx
cmp ecx, edx
mov dword [esi + 0xb0], edi
mov dword [esi + 0x1c], ebx
jle 0x10070003
mov dword [esi + 0x38], 0
mov dword [esi + 0x4c], 0x40000000
mov ecx, dword [esi + 0xe8]
mov dword [esi + 0x24], 0x40000000
mov dword [esi + 0x44], 0
mov ebx, dword [esi + 0x28]
cmp ecx, 1
je 0x100701f2
jmp 0x100703d0
mov edx, ebx
mov ebx, dword [esi + 0xdc]
mov dword [esi + 0x44], ebx
mov ecx, dword [esi + 0xe8]
mov dword [esi + 0x6c], ecx
mov dword [esi + 0x38], 0
mov dword [esi + 0x4c], 0x40000000
mov dword [esi + 0x98], eax
mov dword [esi + 0x70], eax
mov ebx, dword [esi + 0x28]
mov dword [esi + 0x20], ebx
lea eax, [esi + 0xf0]
mov dword [esi + 0x3c], eax
mov dword [esi + 0x24], 0x40000000
movzx eax, word [esi + 0x2c]
jmp 0x10070092
mov eax, dword [esi + 0x24]
mov ecx, dword [esi + 4]
cmp ecx, eax
cmovl eax, ecx
mov dword [esi + 0x24], eax
mov eax, dword [esi + 0x38]
cmovl eax, dword [esi + 0x3c]
mov dword [esi + 0x38], eax
mov ebx, dword [esi + 0x28]
movzx eax, word [esi + 0x2c]
mov edx, dword [esi + 0x1c]
mov ecx, dword [esi + 0x40]
add ecx, 4
movzx edi, ax
mov dword [esi + 0x70], edi
add edi, edx
mov dword [esi + 0x3c], ecx
mov dword [esi + 0x14], edi
cmp edi, dword [esi + 0x80]
jg 0x100701bb
mov edi, dword [esi + 0x20]
mov ecx, eax
mov dword [esi + 0x40], edi
mov eax, dword [edi + 4]
mov dword [esi + 0x20], eax
movzx eax, word [eax]
cmp ax, cx
jbe 0x10070b94
test edx, edx
mov word [esi + 0x2c], ax
jle 0x10070160
xor ebx, ebx
mov eax, dword [esi + 0x70]
mov dword [esi + 8], eax
xor edi, edi
xor ecx, ecx
mov eax, dword [esi + 0x40]
mov dword [esi + 0xc], eax
jmp 0x10070110
mov edi, dword [edi + 4]
mov dword [esi + 0xc], edi
movzx eax, word [edi]
mov dword [esi + 0x18], eax
sub eax, dword [esi + 8]
mov dword [esi + 8], eax
mov eax, dword [esi + 0x1c]
mov edi, dword [esi + 4]
sub eax, edi
mov edx, dword [esi + 8]
add edx, edi
cmp edx, dword [esi + 0x1c]
cmovle eax, dword [esi + 8]
imul ebx, eax
mov edx, ecx
mov ecx, dword [esi]
add ecx, ebx
mov ebx, ecx
add edi, eax
mov eax, dword [esi + 0x18]
mov dword [esi + 8], eax
mov ecx, edx
cmp dword [esi + 0x14], eax
jle 0x10070164
mov dword [esi + 4], edi
mov dword [esi], ebx
mov edi, dword [esi + 0xc]
movzx eax, word [edi + 2]
mov ebx, ecx
sub ebx, eax
jge 0x100700d0
mov edx, eax
mov ebx, eax
sub ebx, ecx
imul ebx, dword [esi + 4]
mov edi, dword [edi + 4]
mov dword [esi + 0xc], edi
movzx eax, word [edi]
mov ecx, dword [esi + 0x70]
mov edi, dword [esi + 8]
cmp edi, ecx
mov dword [esi + 0x18], eax
jae 0x10070150
sub eax, ecx
mov edi, dword [esi + 4]
jmp 0x100700fb
sub eax, edi
mov edi, dword [esi + 4]
jmp 0x100700fb
xor edx, edx
xor ebx, ebx
mov dword [esi + 4], edx
mov ecx, dword [esi + 0x6c]
test ecx, ecx
je 0x10070050
mov dword [esi], ebx
mov eax, dword [esi + 0x58]
mov edx, dword [esi + 4]
add eax, edx
cmp eax, dword [esi + 0x44]
mov ebx, dword [esi + 0x28]
jg 0x1007006b
cmp edx, dword [esi + 0x24]
movzx eax, word [esi + 0x2c]
mov edx, dword [esi + 0x1c]
jl 0x100701a5
jne 0x10070072
mov ecx, dword [esi]
cmp ecx, dword [esi + 0x4c]
jge 0x10070072
mov ecx, dword [esi + 4]
mov dword [esi + 0x24], ecx
mov ecx, dword [esi + 0x3c]
mov dword [esi + 0x38], ecx
mov ecx, dword [esi]
mov dword [esi + 0x4c], ecx
jmp 0x10070072
mov eax, dword [esi + 0x38]
test eax, eax
je 0x100701cc
mov eax, dword [eax]
movzx eax, word [eax]
mov dword [esi + 0x44], eax
jmp 0x100701da
mov dword [esi + 0x38], 0
mov dword [esi + 0x44], 0
mov eax, dword [esi + 0x98]
mov edi, dword [esi + 0xb0]
mov ecx, dword [esi + 0x6c]
cmp ecx, 1
jne 0x100703d0
mov edx, ebx
mov ecx, dword [esi + 0x1c]
cmp ecx, eax
jle 0x1007020a
nop dword [eax + eax]
mov edx, dword [edx + 4]
movzx eax, word [edx]
cmp ecx, eax
jg 0x10070200
mov eax, dword [esi + 0xdc]
mov dword [esi + 0x80], eax
lea eax, [esi + 0xf0]
mov dword [esi + 0x20], eax
mov eax, edx
jmp 0x10070251
mov dword [esi + 0x24], edx
mov edx, dword [esi + 0x20]
mov dword [esi + 0x38], edx
mov edx, edi
mov edi, dword [esi + 4]
mov dword [esi + 0x44], edi
mov edi, edx
mov dword [esi + 0x4c], ecx
mov eax, dword [eax + 4]
test eax, eax
je 0x100703d0
mov dword [esi + 0x3c], eax
movzx eax, word [eax]
mov word [esi], ax
movzx edi, ax
mov dword [esi + 0x40], edi
sub edi, dword [esi + 0x1c]
mov ecx, dword [esi + 0x20]
mov edx, ebx
mov dword [esi + 4], edi
js 0x10070b94
nop word cs:[eax + eax]
mov ebx, edx
mov eax, ecx
lea ecx, [edx + 4]
mov edx, dword [edx + 4]
movzx edi, word [edx]
cmp dword [esi + 4], edi
mov edi, dword [esi + 4]
jge 0x10070280
mov dword [esi + 0x20], eax
movzx ecx, word [ebx]
movzx eax, cx
mov dword [esi + 8], eax
cmp edi, eax
jl 0x10070b94
mov dword [esi + 0xc], 0
cmp word [esi], cx
mov ecx, 0
jbe 0x10070360
xor ecx, ecx
xor eax, eax
xor edx, edx
mov dword [esi + 0x18], ebx
mov dword [esi + 0x28], ebx
jmp 0x10070315
mov edi, dword [edi + 4]
mov dword [esi + 0x18], edi
movzx edi, word [edi]
mov dword [esi], edi
sub edi, dword [esi + 8]
mov ebx, dword [esi + 0x1c]
mov dword [esi + 0x70], eax
sub ebx, eax
mov eax, dword [esi + 0x70]
add eax, edi
cmp eax, dword [esi + 0x1c]
mov eax, ecx
mov ecx, dword [esi + 0x14]
cmovle ebx, edi
imul eax, ebx
mov dword [esi + 0xc], edx
mov edx, eax
mov eax, dword [esi + 0x70]
add ecx, edx
add eax, ebx
mov ebx, dword [esi]
mov dword [esi + 8], ebx
mov edx, dword [esi + 0xc]
cmp ebx, dword [esi + 0x40]
mov ebx, dword [esi + 0x28]
jae 0x10070360
mov dword [esi + 0x14], ecx
mov edi, dword [esi + 0x18]
movzx ebx, word [edi + 2]
mov ecx, edx
sub ecx, ebx
jge 0x100702d0
mov dword [esi + 0xc], ebx
sub ebx, edx
imul ebx, eax
mov dword [esi + 0x2c], ebx
mov edi, dword [edi + 4]
movzx edx, word [edi]
mov dword [esi], edx
mov edx, dword [esi + 4]
mov ebx, dword [esi + 8]
cmp ebx, edx
mov dword [esi + 0x18], edi
jge 0x10070350
mov ebx, dword [esi]
sub ebx, edx
jmp 0x10070356
mov edi, ebx
mov ebx, dword [esi]
sub ebx, edi
mov ecx, dword [esi + 0x14]
mov edx, dword [esi + 0x2c]
jmp 0x10070301
mov eax, dword [esi + 0x58]
mov edx, dword [esi + 0xc]
add eax, edx
cmp eax, dword [esi + 0x80]
mov edi, dword [esi + 0xb0]
jge 0x100703c0
mov eax, dword [esi + 0xc]
mov edx, eax
cmp eax, dword [esi + 0x24]
mov eax, dword [esi + 0x3c]
jg 0x10070246
jl 0x10070230
cmp ecx, dword [esi + 0x4c]
jl 0x10070230
jne 0x10070246
mov edi, dword [esi + 4]
cmp edi, dword [esi + 0x44]
mov edi, dword [esi + 0xb0]
jl 0x10070230
jmp 0x10070246
mov eax, dword [esi + 0x3c]
jmp 0x10070246
cmp dword [esi + 0x38], 0
je 0x10070470
mov ecx, dword [esi + 0x58]
add ecx, dword [esi + 0x24]
cmp ecx, dword [esi + 0xdc]
jg 0x10070470
mov ebx, dword [esi + 0xf4]
test ebx, ebx
je 0x10070470
mov eax, ecx
mov ecx, dword [esi + 0x44]
mov edx, ecx
mov word [esi + 4], cx
mov word [ebx], cx
mov word [ebx + 2], ax
mov eax, dword [ebx + 4]
mov dword [esi + 0xf4], eax
mov edi, dword [esi + 0x38]
mov edx, dword [edi]
movzx eax, word [edx]
cmp ecx, eax
jle 0x1007042b
mov eax, dword [edx + 4]
add edx, 4
mov edi, edx
mov edx, eax
mov dword [esi], ebx
mov dword [edi], ebx
mov eax, dword [edx + 4]
add ecx, dword [esi + 0x9c]
test eax, eax
je 0x10070483
lea ebx, [edx + 4]
nop
mov edi, eax
movzx eax, word [eax]
cmp ecx, eax
jl 0x10070483
mov eax, dword [esi + 0xf4]
mov dword [ebx], eax
mov dword [esi + 0xf4], edx
lea ebx, [edi + 4]
mov eax, dword [edi + 4]
mov edx, edi
test eax, eax
jne 0x10070440
jmp 0x10070485
mov eax, dword [esi + 0x54]
mov dword [eax + edi + 8], 0xffffffff
mov edx, dword [esi + 0x50]
jmp 0x1006ff48
mov edi, edx
mov eax, dword [esi]
mov dword [eax + 4], edi
movzx eax, word [edi]
cmp ecx, eax
jle 0x10070494
mov word [edi], cx
mov eax, dword [esi + 0x54]
mov ecx, dword [esi + 0xb0]
movzx edx, word [esi + 4]
mov word [eax + ecx + 8], dx
mov edx, dword [esi + 0x24]
mov word [eax + ecx + 0xa], dx
jmp 0x1007047b
push 0x1006d1d0
push 0x10
push edx
push eax
mov edi, edx
call dword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_qsort]
add esp, 0x10
xor eax, eax
cmp edi, 1
jne 0x10070597
test byte [esi + 0x50], 1
mov edx, dword [esi + 0x94]
je 0x1007052f
shl eax, 4
mov ecx, 1
mov edi, dword [esi + 0x54]
cmp word [edi + eax + 8], 0xffff
jne 0x100704f9
xor ecx, ecx
cmp word [edi + eax + 0xa], 0xffff
setne cl
mov dword [edi + eax + 0xc], ecx
jmp 0x1007052f
push 0x1006d190
push 0x10
mov edi, dword [esi + 0x50]
push edi
push ecx
mov ebx, ecx
call dword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_qsort]
add esp, 0x10
push 0x1006d1d0
push 0x10
push edi
push ebx
call dword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_qsort]
add esp, 0x10
mov edx, dword [esi + 0x94]
mov eax, dword [esi + 0x10]
add eax, edx
add eax, 0x34
mov dword [esi], eax
mov ebx, dword [eax]
test ebx, ebx
jle 0x1006fe70
mov eax, dword [esi + 0x10]
add eax, edx
add eax, 0x24
mov dword [esi + 4], eax
xor edx, edx
mov edi, 0xc
jmp 0x1007056c
inc edx
add edi, 0x10
cmp edx, ebx
jge 0x1006fe70
mov eax, dword [esi + 4]
mov eax, dword [eax]
cmp dword [eax + edi], 0
je 0x10070560
movzx ebx, word [eax + edi - 2]
movzx eax, word [eax + edi - 6]
add eax, ebx
mov ecx, dword [ebp + 0xc]
mov ebx, dword [ecx + 0x20]
cmp ebx, eax
cmovg eax, ebx
mov dword [ecx + 0x20], eax
mov eax, dword [esi]
mov ebx, dword [eax]
jmp 0x10070560
mov edi, dword [esi + 0x50]
and edi, 0xfffffffe
mov eax, dword [esi + 0x54]
lea edx, [eax + 0x1c]
xor eax, eax
jmp 0x100705c2
mov dword [edx], ebx
add eax, 2
add edx, 0x20
mov ecx, edi
cmp edi, eax
je 0x100704cf
mov ebx, 1
cmp word [edx - 0x14], 0xffff
mov ecx, 1
jne 0x100705dd
xor ecx, ecx
cmp word [edx - 0x12], 0xffff
setne cl
mov dword [edx - 0x10], ecx
cmp word [edx - 4], 0xffff
jne 0x100705b0
xor ebx, ebx
cmp word [edx - 2], 0xffff
setne bl
jmp 0x100705b0
mov eax, dword [ebp + 0xc]
test byte [eax + 4], 1
mov eax, dword [eax + 0x20]
jne 0x1007062c
dec eax
mov ecx, eax
sar ecx, 1
or ecx, eax
mov eax, ecx
sar eax, 2
or eax, ecx
mov ecx, eax
sar ecx, 4
or ecx, eax
mov edx, ecx
sar edx, 8
or edx, ecx
mov eax, edx
sar eax, 0x10
or eax, edx
mov dword [esi + 0x1e8], 0xa
inc eax
mov edx, dword [ebp + 0xc]
mov dword [edx + 0x20], eax
mov ecx, dword [edx + 0x1c]
movd xmm0, eax
movd xmm1, ecx
punpckldq xmm1, xmm0
cvtdq2ps xmm0, xmm1
movaps xmm1, xmmword [0x101a9790]
divps xmm1, xmm0
movlps qword [edx + 0x24], xmm1
imul eax, ecx
mov dword [esi + 0x1e8], 0xa
push eax
call fcn.100485a0
add esp, 4
mov edx, dword [ebp + 0xc]
mov dword [edx + 0x14], eax
mov ecx, dword [edx + 0x20]
imul ecx, dword [edx + 0x1c]
push ecx
push 0
push eax
call sub.VCRUNTIME140.dll_memset
add esp, 0xc
xor ecx, ecx
mov eax, dword [esi + 0x10]
jmp 0x10070698
mov dword [edi - 0x10], 0
inc ecx
cmp ecx, dword [esi + 0x48]
jge 0x10070a39
lea edi, [ecx + ecx*4]
shl edi, 4
cmp dword [eax + edi + 0x34], 0
je 0x10070697
mov edx, dword [ebp + 0xc]
cmp dword [edx + 0x4c], ecx
jle 0x10070b94
add eax, edi
mov ebx, dword [edx + 0x54]
mov dword [esi + 0x58], ecx
imul edx, ecx, 0x74
lea ecx, [ebx + edx]
movss xmm0, dword [eax + 4]
movss xmm1, dword [eax + 8]
mov dword [esi + 4], ebx
mov dword [esi], edx
mov eax, dword [ebx + edx + 0x70]
mov dword [esi + 0x1e8], 0xa
sub esp, 0x14
movss dword [esp + 0x10], xmm1
movss dword [esp + 0xc], xmm0
mov dword [esp + 8], ecx
mov dword [esi + 0x3c], eax
mov dword [esp + 4], eax
mov eax, dword [ebp + 0xc]
mov dword [esp], eax
mov dword [esi + 0xc], edi
call fcn.10069fe0
add esp, 0x14
mov eax, dword [esi + 0x10]
mov ecx, dword [esi + 0xc]
lea edi, [eax + ecx]
add edi, 0x34
mov ecx, dword [esi + 0x3c]
movss xmm0, dword [ecx + 0x48]
addss xmm0, dword [0x101a82c0]
cvttps2dq xmm0, xmm0
cvtdq2ps xmm0, xmm0
mov edx, dword [esi + 4]
mov ebx, dword [esi]
addss xmm0, dword [edx + ebx + 0x2c]
movaps xmmword [esi + 0xb0], xmm0
movss xmm0, dword [edx + ebx + 0x28]
movss dword [esi + 0x24], xmm0
mov ecx, dword [ebp + 0xc]
mov ecx, dword [ecx + 0x10]
mov dword [esi + 0x38], ecx
lea ecx, [edx + ebx]
add ecx, 0x38
mov dword [esi + 0x20], ecx
xor edx, edx
mov dword [esi + 0x4c], edi
nop word [eax + eax]
cmp edx, dword [edi]
mov ecx, dword [esi + 0x58]
jge 0x10070690
cmp dword [edi + 0x10], edx
jle 0x10070b94
mov eax, dword [edi - 0x10]
mov ecx, edx
shl ecx, 4
cmp dword [eax + ecx + 0xc], 0
je 0x10070b94
mov ebx, dword [edi + 0x18]
mov edi, edx
lea edx, [edx + edx*8]
lea edx, [edx + edx*2]
mov dword [esi + 0x28], edi
add edx, edi
mov dword [esi + 0x18], ebx
mov dword [esi + 0x1c], edx
add ebx, edx
mov edx, dword [ebx]
mov dword [esi + 4], edx
mov edi, dword [esi + 0x38]
add edx, edi
mov dword [esi], edx
mov edx, edi
movzx edi, word [eax + ecx + 4]
cmp dword [esi], edi
jg 0x10070b94
mov dword [esi], eax
mov eax, dword [ebx + 4]
lea edi, [eax + edx]
mov dword [esi + 0xc], edi
mov edi, dword [esi]
movzx edi, word [edi + ecx + 6]
cmp dword [esi + 0xc], edi
jg 0x10070b94
mov dword [esi + 0x40], ebx
mov ebx, dword [esi]
movzx edi, word [ebx + ecx + 8]
movzx ecx, word [ebx + ecx + 0xa]
add edi, edx
mov dword [esi + 0x70], edi
add ecx, edx
mov dword [esi + 0x14], ecx
test eax, eax
mov edx, dword [esi + 4]
jle 0x100708c8
mov dword [esi + 0x2c], eax
mov eax, dword [esi + 0xa0]
mov eax, dword [eax]
mov ebx, dword [esi + 0x14]
mov dword [esi], eax
imul ebx, eax
mov eax, dword [ebp + 0xc]
add ebx, dword [eax + 0x14]
add ebx, dword [esi + 0x70]
mov eax, dword [esi + 0x18]
mov ecx, dword [esi + 0x1c]
mov edi, dword [eax + ecx + 0x18]
mov eax, dword [esi + 0x2c]
mov ecx, eax
and ecx, 3
je 0x10070860
mov dword [esi + 8], ecx
nop dword [eax]
mov dword [esi + 0xc], eax
push edx
push edi
push ebx
call sub.VCRUNTIME140.dll_memcpy
mov ecx, dword [esi]
mov eax, dword [esi + 0xc]
mov edx, dword [esi + 4]
add esp, 0xc
dec eax
add ebx, ecx
add edi, edx
dec dword [esi + 8]
jne 0x10070840
cmp dword [esi + 0x2c], 4
jb 0x100708c8
dec eax
nop word [eax + eax]
mov dword [esi + 0xc], eax
push edx
push edi
push ebx
call sub.VCRUNTIME140.dll_memcpy
add esp, 0xc
add ebx, dword [esi]
add edi, dword [esi + 4]
push dword [esi + 4]
push edi
push ebx
call sub.VCRUNTIME140.dll_memcpy
add esp, 0xc
add ebx, dword [esi]
add edi, dword [esi + 4]
push dword [esi + 4]
push edi
push ebx
call sub.VCRUNTIME140.dll_memcpy
add esp, 0xc
add ebx, dword [esi]
add edi, dword [esi + 4]
push dword [esi + 4]
push edi
push ebx
call sub.VCRUNTIME140.dll_memcpy
mov ecx, dword [esi]
mov eax, dword [esi + 0xc]
mov edx, dword [esi + 4]
add esp, 0xc
add ebx, ecx
add edi, edx
add eax, 0xfffffffc
cmp eax, 0xfffffffe
jb 0x10070870
mov ecx, dword [esi + 0x40]
movss xmm0, dword [ecx + 0x10]
mov eax, dword [esi + 0x20]
movss xmm1, dword [eax]
movss xmm3, dword [eax - 4]
minss xmm1, xmm0
movaps xmm2, xmm0
cmpltss xmm2, xmm3
movaps xmm4, xmm2
andnps xmm4, xmm1
andps xmm2, xmm3
orps xmm2, xmm4
ucomiss xmm0, xmm2
movss xmm1, dword [esi + 0x24]
jne 0x10070900
jnp 0x1007092e
mov eax, dword [esi + 0x20]
cmp byte [eax - 0x1c], 0
movaps xmm1, xmm2
subss xmm1, xmm0
mulss xmm1, dword [0x101a82c0]
je 0x1007091f
cvttps2dq xmm1, xmm1
cvtdq2ps xmm1, xmm1
addss xmm1, dword [esi + 0x24]
mov dword [esi + 0x1e8], 0xa
mov eax, dword [ecx]
xorps xmm0, xmm0
cvtsi2ss xmm0, eax
movss dword [esi], xmm0
mov edx, dword [esi + 0x70]
xorps xmm0, xmm0
cvtsi2ss xmm0, edx
movss dword [esi + 4], xmm0
add eax, edx
xorps xmm4, xmm4
cvtsi2ss xmm4, eax
mov eax, dword [ecx + 4]
xorps xmm0, xmm0
cvtsi2ss xmm0, eax
movss dword [esi + 0xc], xmm0
mov edx, dword [esi + 0x14]
cvtsi2ss xmm6, edx
add eax, edx
cvtsi2ss xmm7, eax
movaps xmm0, xmm1
xorps xmm1, xmm1
cvtsi2ss xmm1, dword [ecx + 8]
mov eax, dword [ebp + 0xc]
xorps xmm3, xmm3
cvtsi2ss xmm3, dword [eax + 0x1c]
addss xmm1, xmm0
xorps xmm0, xmm0
cvtsi2ss xmm0, dword [eax + 0x20]
movss xmm5, dword [esi + 4]
divss xmm5, xmm3
movss dword [esi + 4], xmm5
divss xmm4, xmm3
divss xmm6, xmm0
divss xmm7, xmm0
xorps xmm0, xmm0
cvtsi2ss xmm0, dword [ecx + 0xc]
mov eax, dword [esi + 0x18]
mov ecx, dword [esi + 0x1c]
movzx eax, word [eax + ecx + 0x14]
addss xmm0, dword [esi + 0xb0]
movss xmm3, dword [esi]
addss xmm3, xmm1
movss xmm5, dword [esi + 0xc]
addss xmm5, xmm0
mov dword [esi + 0x1e8], 0xa
sub esp, 0x28
movss dword [esp + 0x24], xmm2
movss dword [esp + 0x20], xmm7
movss dword [esp + 0x1c], xmm4
movss dword [esp + 0x18], xmm6
movss xmm2, dword [esi + 4]
movss dword [esp + 0x14], xmm2
movss dword [esp + 0x10], xmm5
movss dword [esp + 0xc], xmm3
movss dword [esp + 8], xmm0
movss dword [esp + 4], xmm1
mov dword [esp], eax
mov ecx, dword [esi + 0x3c]
call fcn.1006a0d0
mov edx, dword [esi + 0x28]
inc edx
mov eax, dword [esi + 0x10]
mov edi, dword [esi + 0x4c]
jmp 0x10070770
xor ecx, ecx
mov eax, dword [esi + 0x5c]
mov dword [esi], eax
cmp ecx, dword [esi]
jge 0x10070a74
nop word cs:[eax + eax]
mov eax, dword [esi + 0x64]
mov dword [esi + 4], ecx
mov eax, dword [eax + ecx*4]
mov dword [esi + 0x1e8], 0xa
push eax
call fcn.100485d0
add esp, 4
mov ecx, dword [esi + 4]
inc ecx
cmp ecx, dword [esi]
jl 0x10070a50
cmp dword [esi + 0x48], 0
jle 0x10070aec
mov eax, dword [esi + 0x10]
lea edi, [eax + 0x18]
jmp 0x10070a98
add edi, 0x50
dec dword [esi + 0x48]
je 0x10070aec
mov eax, dword [edi + 0x34]
test eax, eax
mov dword [esi + 4], edi
je 0x10070ab8
mov dword [esi + 0x1e8], 0
push eax
call fcn.100485d0
mov edi, dword [esi + 4]
add esp, 4
mov eax, dword [edi + 0x28]
test eax, eax
je 0x10070ad5
mov dword [esi + 0x1e8], 1
push eax
call fcn.100485d0
mov edi, dword [esi + 4]
add esp, 4
mov eax, dword [edi]
test eax, eax
je 0x10070a90
push eax
call fcn.1014fa10
add esp, 4
mov dword [edi], 0
jmp 0x10070a90
mov dword [esi + 0x1e8], 0xa
push dword [ebp + 0xc]
call fcn.1006a260
add esp, 4
mov eax, dword [esi + 0xac]
test eax, eax
je 0x10070b1e
mov dword [esi + 0x1e8], 2
push eax
call fcn.100485d0
add esp, 4
mov eax, dword [esi + 0x64]
test eax, eax
je 0x10070b38
mov dword [esi + 0x1e8], 3
push eax
call fcn.100485d0
add esp, 4
mov eax, dword [esi + 0x90]
test eax, eax
je 0x10070b55
mov dword [esi + 0x1e8], 4
push eax
call fcn.100485d0
add esp, 4
cmp dword [esi + 0x10], 0
je 0x10070b70
mov dword [esi + 0x1e8], 6
push dword [esi + 0x10]
call fcn.100485d0
add esp, 4
mov eax, dword [esi + 0xc8]
cmp dword [esi + 0x84], eax
setge al
mov ecx, dword [esi + 0x1e0]
mov dword fs:[0], ecx
lea esp, [ebp - 0xc]
pop esi
pop edi
pop ebx
pop ebp
ret
push 0
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll_exit]
nop dword [eax]
push ebp
sub esp, 0x28
lea esi, [ebp - 0x1ec]
mov ebp, dword [esi + 0x1d8]
call sub.VCRUNTIME140.dll___std_terminate
nop word cs:[eax + eax]
push ebp
sub esp, 0x28
lea esi, [ebp - 0x1ec]
mov ebp, dword [esi + 0x1d8]
call sub.VCRUNTIME140.dll___std_terminate
nop word cs:[eax + eax]
push ebp
sub esp, 0x28
lea esi, [ebp - 0x1ec]
mov ebp, dword [esi + 0x1d8]
call sub.VCRUNTIME140.dll___std_terminate
nop word cs:[eax + eax]
push ebp
sub esp, 0x28
lea esi, [ebp - 0x1ec]
mov ebp, dword [esi + 0x1d8]
call sub.VCRUNTIME140.dll___std_terminate
nop word cs:[eax + eax]
push ebp
sub esp, 0x28
lea esi, [ebp - 0x1ec]
mov ebp, dword [esi + 0x1d8]
call sub.VCRUNTIME140.dll___std_terminate
nop word cs:[eax + eax]
push ebp
sub esp, 0x28
lea esi, [ebp - 0x1ec]
mov ebp, dword [esi + 0x1d8]
call sub.VCRUNTIME140.dll___std_terminate
nop word cs:[eax + eax]
push ebp
sub esp, 0x28
lea esi, [ebp - 0x1ec]
mov ebp, dword [esi + 0x1d8]
call sub.VCRUNTIME140.dll___std_terminate
nop word cs:[eax + eax]
push ebp
sub esp, 0x28
lea esi, [ebp - 0x1ec]
mov ebp, dword [esi + 0x1d8]
lea ecx, [esi + 0xa4]
call fcn.1005f200
add esp, 0x28
pop ebp
ret