Function at 0x100020f6
Capabilities:
Terminate process

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x64
push ebx
push esi
push edi
lea eax, [ebp - 0x34]
xorps xmm0, xmm0
push eax
lea eax, [ebp - 0x3c]
movlpd qword [ebp - 0x3c], xmm0
push eax
movlpd qword [ebp - 0x34], xmm0
call fcn.1000279b
pop ecx
pop ecx
call fcn.100039a4
movsx ebx, al
call fcn.100039a1
movsx eax, al
imul ebx, eax
call fcn.100039ad
movsx esi, al
xor edx, edx
movsx eax, byte [0x1000c004]
mov dword [ebp - 0xc], esi
lea ecx, [esi + ebx*2]
add eax, ecx
mov dword [ebp - 0x2c], ecx
movsx ecx, byte [0x1000c003]
div ecx
movsx ecx, byte [section..data]
sub eax, ecx
je 0x100021cd
cmp dword [ebp - 0x30], 0
ja 0x10002173
jb 0x1000216c
cmp dword [ebp - 0x34], 0
ja 0x10002173
xor ecx, ecx
inc ecx
xor edi, edi
jmp 0x10002181
xorps xmm0, xmm0
movlpd qword [ebp - 0x28], xmm0
mov edi, dword [ebp - 0x24]
mov ecx, dword [ebp - 0x28]
movsx eax, byte [0x1000c004]
xor edx, edx
imul esi, ebx, 3
add esi, dword [ebp - 0xc]
add eax, esi
movsx esi, byte [0x1000c003]
div esi
mov edx, edi
mov esi, eax
call fcn.10006df0
push ecx
push ecx
movsd qword [esp], xmm0
call fcn.10004e73
pop ecx
pop ecx
movsx ecx, byte [section..data]
sub esi, ecx
imul eax, esi
test eax, eax
je 0x100021ca
push 1
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll_exit]
mov esi, dword [ebp - 0xc]
xorps xmm0, xmm0
push 8
movlpd qword [ebp - 0x1c], xmm0
call dword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_malloc]
pop ecx
mov ecx, dword [ebp - 0x34]
mov edi, eax
mov eax, dword [ebp - 0x30]
add ecx, 0xfffffff8
mov dword [ebp - 0x14], ecx
adc eax, 0xffffffff
imul edx, ebx, 9
mov dword [ebp - 0x24], eax
mov eax, dword [ebp - 0x1c]
mov dword [ebp - 4], eax
add edx, esi
mov esi, dword [ebp - 0x18]
mov dword [ebp - 0x10], edx
mov dword [ebp - 8], esi
cmp esi, dword [ebp - 0x24]
ja 0x1000221a
jb 0x10002211
cmp eax, ecx
jae 0x1000221a
xor ecx, ecx
inc ecx
and dword [ebp - 0x18], 0
jmp 0x1000222b
xorps xmm0, xmm0
movlpd qword [ebp - 0x34], xmm0
mov eax, dword [ebp - 0x30]
mov ecx, dword [ebp - 0x34]
mov dword [ebp - 0x18], eax
movsx eax, byte [0x1000c004]
movsx esi, byte [0x1000c003]
add eax, edx
xor edx, edx
div esi
mov edx, dword [ebp - 0x18]
mov esi, eax
call fcn.10006df0
push ecx
push ecx
movsd qword [esp], xmm0
call fcn.10004e73
pop ecx
pop ecx
movsx ecx, byte [section..data]
sub esi, ecx
imul eax, esi
test eax, eax
je 0x1000249a
mov ecx, dword [ebp - 4]
movsx eax, byte [0x1000c004]
add ecx, 1
mov esi, dword [ebp - 0x3c]
adc dword [ebp - 8], 0
add esi, ecx
add eax, dword [ebp - 0x10]
xor edx, edx
mov dword [ebp - 4], ecx
movsx ecx, byte [0x1000c003]
div ecx
movsx ecx, byte [section..data]
mov dword [ebp - 0x30], esi
sub eax, ecx
je 0x10002313
lea eax, [ebp - 0x20]
push eax
push 8
push edi
push esi
push 0xffffffffffffffff
call dword [sym.imp.KERNEL32.dll_ReadProcessMemory]
test eax, eax
jne 0x100022bc
xor ecx, ecx
inc ecx
and dword [ebp - 0x18], eax
jmp 0x100022cd
xorps xmm0, xmm0
movlpd qword [ebp - 0x44], xmm0
mov eax, dword [ebp - 0x40]
mov ecx, dword [ebp - 0x44]
mov dword [ebp - 0x18], eax
movsx eax, byte [0x1000c004]
xor edx, edx
imul esi, ebx, 0xa
add esi, dword [ebp - 0xc]
add eax, esi
movsx esi, byte [0x1000c003]
div esi
mov edx, dword [ebp - 0x18]
mov esi, eax
call fcn.10006df0
push ecx
push ecx
movsd qword [esp], xmm0
call fcn.10004e73
pop ecx
pop ecx
movsx ecx, byte [section..data]
sub esi, ecx
imul eax, esi
test eax, eax
jne 0x100021c2
movsx eax, byte [0x1000c004]
xor edx, edx
mov esi, dword [ebp - 0xc]
imul ecx, ebx, 0xa
add ecx, esi
add eax, ecx
movsx ecx, byte [0x1000c003]
div ecx
movsx ecx, byte [section..data]
sub eax, ecx
je 0x100023ab
cmp dword [ebp - 0x20], 8
je 0x10002349
xor ecx, ecx
inc ecx
and dword [ebp - 0x18], 0
jmp 0x1000235a
xorps xmm0, xmm0
movlpd qword [ebp - 0x44], xmm0
mov eax, dword [ebp - 0x40]
mov ecx, dword [ebp - 0x44]
mov dword [ebp - 0x18], eax
movsx eax, byte [0x1000c004]
xor edx, edx
add eax, esi
movsx esi, byte [0x1000c003]
add eax, ebx
div esi
mov edx, dword [ebp - 0x18]
mov esi, eax
call fcn.10006df0
push ecx
push ecx
movsd qword [esp], xmm0
call fcn.10004e73
mov edx, dword [ebp - 0x10]
pop ecx
pop ecx
movsx ecx, byte [section..data]
sub esi, ecx
mov ecx, dword [ebp - 0x14]
imul eax, esi
mov esi, dword [ebp - 8]
test eax, eax
mov eax, dword [ebp - 4]
jne 0x10002206
mov esi, dword [ebp - 0xc]
movsx eax, byte [0x1000c004]
xor edx, edx
imul ecx, ebx, 7
add ecx, esi
mov esi, dword [ebp - 8]
add eax, ecx
movsx ecx, byte [0x1000c003]
div ecx
movsx ecx, byte [section..data]
mov edx, dword [ebp - 0x10]
sub eax, ecx
mov eax, dword [ebp - 4]
mov ecx, dword [ebp - 0x14]
je 0x10002206
mov ecx, dword [ebp + 8]
mov eax, dword [ecx]
cmp eax, dword [edi]
jne 0x100023f9
mov eax, dword [ecx + 4]
cmp eax, dword [edi + 4]
jne 0x100023f9
xor ecx, ecx
inc ecx
and dword [ebp - 0x18], 0
jmp 0x1000240a
xorps xmm0, xmm0
movlpd qword [ebp - 0x44], xmm0
mov eax, dword [ebp - 0x40]
mov ecx, dword [ebp - 0x44]
mov dword [ebp - 0x18], eax
movsx eax, byte [0x1000c004]
xor edx, edx
add eax, dword [ebp - 0x2c]
movsx esi, byte [0x1000c003]
div esi
mov edx, dword [ebp - 0x18]
mov esi, eax
call fcn.10006df0
push ecx
push ecx
movsd qword [esp], xmm0
call fcn.10004e73
mov edx, dword [ebp - 0x10]
pop ecx
pop ecx
movsx ecx, byte [section..data]
sub esi, ecx
mov ecx, dword [ebp - 0x14]
imul eax, esi
mov esi, dword [ebp - 8]
test eax, eax
mov eax, dword [ebp - 4]
je 0x10002206
movaps xmm0, xmmword [0x10008bd0]
lea eax, [ebp - 0x64]
push eax
push dword [0x1000c118]
movups xmmword [ebp - 0x64], xmm0
mov word [ebp - 0x54], 0x7972
mov byte [ebp - 0x52], 0
call dword [0x1000c11c]
lea ecx, [ebp - 0x20]
push ecx
push 8
push dword [ebp + 0xc]
push dword [ebp - 0x30]
push 0xffffffffffffffff
call eax
mov eax, dword [ebp - 4]
mov edx, dword [ebp - 0x10]
mov ecx, dword [ebp - 0x14]
jmp 0x10002206
push edi
call dword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_free]
pop ecx
pop edi
pop esi
pop ebx
leave
ret