Function at 0x1400398a0
Capabilities:
Accept command line arguments
Contain obfuscated stackstrings
Create process on windows
Create thread
Enumerate gui resources
Execute command
Hide graphical window
Terminate process

Disassembly:
mov rax, rsp
mov qword [rax + 8], rbx
mov qword [rax + 0x10], rsi
mov qword [rax + 0x18], rdi
mov qword [rax + 0x20], r12
push r13
push r14
push r15
sub rsp, 0x3e0
movaps xmmword [rax - 0x28], xmm6
mov rax, qword [0x1401c67c0]
xor rax, rsp
mov qword [rsp + 0x3c0], rax
xor r14d, r14d
mov ecx, 0xfffffff6
call qword [sym.imp.KERNEL32.dll_GetStdHandle]
mov edx, 0xffffffbf
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_SetConsoleMode]
xorps xmm0, xmm0
xor eax, eax
movups xmmword [rsp + 0x340], xmm0
movups xmmword [rsp + 0x350], xmm0
movups xmmword [rsp + 0x360], xmm0
movups xmmword [rsp + 0x370], xmm0
movups xmmword [rsp + 0x380], xmm0
movups xmmword [rsp + 0x390], xmm0
movups xmmword [rsp + 0x3a0], xmm0
mov qword [rsp + 0x3b0], rax
lea rcx, [rsp + 0x340]
call fcn.14003b700
nop
lea rcx, [rsp + 0x280]
call fcn.14002de40
nop
mov r8, rax
cmp qword [rax + 0x18], 7
jbe 0x140039962
mov r8, qword [rax]
mov rax, qword [rax + 0x10]
lea r9, [r8 + rax*2]
lea rdx, [rsp + 0x1e8]
lea rcx, [rsp + 0x340]
call fcn.14003c100
mov rdx, qword [reloc.WS2_32.dll_ntohs]
cmp rdx, 0xf
jbe 0x1400399c5
mov rcx, qword [0x1401c6938]
inc rdx
cmp rdx, 0x1000
jb 0x1400399bb
add rdx, 0x27
mov r8, qword [rcx - 8]
sub rcx, r8
lea rax, [rcx - 8]
cmp rax, 0x1f
ja 0x140039c6b
mov rcx, r8
nop dword [rax + rax]
call fcn.1401042cc
movups xmm0, xmmword [rsp + 0x1e8]
movups xmmword [0x1401c6938], xmm0
movups xmm1, xmmword [rsp + 0x1f8]
movups xmmword [0x1401c6948], xmm1
mov qword [rsp + 0x1f8], r14
mov qword [rsp + 0x200], reloc.WS2_32.dll_ntohs
mov byte [rsp + 0x1e8], 0
lea rcx, [rsp + 0x1e8]
call fcn.1400041e0
nop
lea rcx, [rsp + 0x280]
call fcn.140004160
call fcn.140038be0
nop
call fcn.140036f40
call fcn.140037800
mov edx, 5
mov rcx, qword [0x1401c86d0]
call qword [sym.imp.USER32.dll_ShowWindow]
nop dword [rax]
call fcn.140036900
call fcn.14002e1a0
call fcn.140035ca0
mov edx, 5
mov rcx, qword [0x1401c86d0]
call qword [sym.imp.USER32.dll_ShowWindow]
mov cl, 0x20
mov word [rsp + 0x210], 0x20
movsx ecx, cl
movzx eax, cx
xor ax, 0x43
mov word [rsp + 0x212], ax
movzx eax, cx
xor ax, 0x53
mov word [rsp + 0x214], ax
movzx eax, cx
xor ax, 0x12
mov word [rsp + 0x216], ax
movzx eax, cx
xor ax, 0xe
mov word [rsp + 0x218], ax
movzx eax, cx
xor ax, 0x45
mov word [rsp + 0x21a], ax
xor cx, 0x58
mov word [rsp + 0x21c], cx
mov word [rsp + 0x21e], ax
mov word [rsp + 0x220], r14w
xorps xmm0, xmm0
movups xmmword [rsp + 0x1e8], xmm0
mov qword [rsp + 0x1f8], r14
mov qword [rsp + 0x200], r14
lea rax, [rsp + 0x212]
mov rdi, 0xffffffffffffffff
mov r8, rdi
nop word [rax + rax]
inc r8
cmp word [rax + r8*2], 0
jne 0x140039b10
lea rdx, [rsp + 0x212]
lea rcx, [rsp + 0x1e8]
call fcn.1400257e0
lea rcx, [rsp + 0x1e8]
call fcn.140034820
nop dword [rax]
test eax, eax
jne 0x140039b80
movdqa xmm0, xmmword [0x1401a7860]
movdqu xmmword [rsp + 0x210], xmm0
mov word [rsp + 0x220], 0xa2e
mov byte [rsp + 0x222], al
lea rdx, [rsp + 0x211]
mov rcx, qword [sym.imp.MSVCP140.dll_class_std::basic_ostream_char__struct_std::char_traits_char___std::cout]
call fcn.140004600
nop word [rax + rax]
mov cl, 0x36
mov word [rsp + 0x250], gethostname
movsx ecx, cl
movzx eax, cx
xor ax, 0x55
mov word [rsp + 0x252], ax
movzx eax, cx
xor ax, 0x45
mov word [rsp + 0x254], ax
movzx eax, cx
xor ax, 4
mov word [rsp + 0x256], ax
movzx eax, cx
xor ax, 0x18
mov word [rsp + 0x258], ax
movzx eax, cx
xor ax, 0x53
mov word [rsp + 0x25a], ax
xor cx, 0x4e
mov word [rsp + 0x25c], cx
mov word [rsp + 0x25e], ax
mov word [rsp + 0x260], r14w
xorps xmm0, xmm0
movups xmmword [rsp + 0x1e8], xmm0
mov qword [rsp + 0x1f8], r14
mov qword [rsp + 0x200], r14
lea rax, [rsp + 0x252]
mov r8, rdi
nop dword [rax]
inc r8
cmp word [rax + r8*2], 0
jne 0x140039c20
lea rdx, ds:[rsp + 0x252]
lea rcx, [rsp + 0x1e8]
call fcn.1400257e0
lea rcx, [rsp + 0x1e8]
call fcn.140034820
mov ebx, eax
test eax, eax
jne 0x140039c72
lea ecx, ds:[rax + 0x64]
call qword [sym.imp.KERNEL32.dll_Sleep]
jmp 0x140039b80
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
nop
mov qword [rsp + 0x210], r14
mov dword [rsp + 0x218], ebx
lea rdx, [rsp + 0x210]
lea rcx, [0x14002b4e0]
call qword [sym.imp.USER32.dll_EnumWindows]
test eax, eax
jne 0x140039cb8
nop word [rax + rax]
call qword [sym.imp.KERNEL32.dll_GetLastError]
cmp eax, 0xffffffff
jne 0x140039cb8
mov rax, qword [rsp + 0x210]
test rax, rax
jne 0x140039cbb
mov rax, r14
mov qword [0x1401c82c0], rax
lea rcx, str.win32u.dll
call qword [sym.imp.KERNEL32.dll_LoadLibraryA]
test rax, rax
je 0x140039d30
movdqa xmm0, xmmword [0x1401a7a80]
movdqu xmmword [rsp + 0x1e8], xmm0
mov dword [rsp + 0x1f8], 0x6f725072
mov dword [rsp + 0x1fc], 0x65697270
mov dword [rsp + 0x200], 0x79726174
mov word [rsp + 0x204], 0x6449
mov byte [rsp + 0x206], 0
lea rdx, [rsp + 0x1e9]
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [0x1401c8198], rax
call fcn.14002aec0
cmp eax, 0x45
je 0x140039d3f
call fcn.1400349e0
nop
call fcn.14002aec0
cmp eax, 0x45
jne 0x14003acd3
mov dword [0x1401c81a0], ebx
mov dword [rsp + 0x230], 0x736c6312
mov byte [rsp + 0x234], 0
lea rcx, [rsp + 0x231]
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll_system]
mov ebx, r14d
mov qword [rsp + 0x288], r14
mov qword [rsp + 0x290], r14
mov qword [rsp + 0x298], r14
mov qword [rsp + 0x2a8], r14
mov qword [rsp + 0x2b0], r14
mov dword [rsp + 0x2b8], r14d
mov dword [rsp + 0x2a0], 0x80000002
mov eax, dword [0x1401c81a0]
mov dword [rsp + 0x280], eax
lea rcx, [rsp + 0x280]
call qword [0x1401c8198]
cmp qword [rsp + 0x2a8], rbx
jne 0x140039e5c
nop dword [rax]
inc ebx
cmp ebx, 0x1e
jg 0x14003af0e
mov qword ds:[rsp + 0x308], r14
mov qword [rsp + 0x310], r14
mov qword [rsp + 0x318], r14
mov qword [rsp + 0x328], r14
mov qword [rsp + 0x330], r14
mov dword [rsp + 0x338], r14d
mov dword [rsp + 0x320], 0x80000002
mov eax, dword [0x1401c81a0]
mov dword [rsp + 0x300], eax
lea rcx, [rsp + 0x300]
call qword [0x1401c8198]
mov ecx, 0x3e8
call qword [sym.imp.KERNEL32.dll_Sleep]
cmp qword [rsp + 0x328], 0
je 0x140039de0
mov rcx, qword [0x1401c86d0]
call qword [sym.imp.USER32.dll_SetForegroundWindow]
mov edx, 6
xor ecx, ecx
call qword [sym.imp.ole32.dll_CoInitializeEx]
mov ebx, r14d
call qword [sym.imp.KERNEL32.dll_GetCurrentProcess]
mov rcx, rax
lea r8, [rsp + 0x250]
mov edx, 8
call qword [sym.imp.ADVAPI32.dll_OpenProcessToken]
test eax, eax
je 0x140039fb6
lea rax, [rsp + 0x230]
mov qword [rsp + 0x20], rax
mov r9d, 4
lea r8, [rsp + 0x270]
lea edx, [r9 + 0x16]
mov rcx, qword [rsp + 0x250]
call qword [sym.imp.ADVAPI32.dll_GetTokenInformation]
test eax, eax
je 0x140039ed5
mov ebx, 1
jmp 0x140039edb
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov rcx, qword [rsp + 0x250]
call qword [sym.imp.KERNEL32.dll_CloseHandle]
test ebx, ebx
je 0x140039fbc
cmp dword [rsp + 0x270], 0
jne 0x140039fbc
lea rcx, [rsp + 0x210]
call fcn.140097140
test eax, eax
jne 0x140039fbc
lea rcx, ds:[rsp + 0x280]
call qword [sym.imp.KERNEL32.dll_GetStartupInfoW]
call qword [sym.imp.KERNEL32.dll_GetCommandLineW]
mov r8, rax
lea rax, [rsp + 0x1e8]
mov qword [rsp + 0x50], rax
lea rax, [rsp + 0x280]
mov qword [rsp + 0x48], rax
mov qword [rsp + 0x40], r14
mov qword [rsp + 0x38], r14
mov dword [rsp + 0x30], r14d
mov dword [rsp + 0x28], r14d
mov qword [rsp + 0x20], r14
xor r9d, r9d
xor edx, edx
mov rcx, qword [rsp + 0x210]
call qword [sym.imp.ADVAPI32.dll_CreateProcessAsUserW]
test eax, eax
je 0x140039f9e
mov rcx, qword [rsp + 0x1e8]
call qword [sym.imp.KERNEL32.dll_CloseHandle]
mov rcx, qword [rsp + 0x1f0]
call qword [sym.imp.KERNEL32.dll_CloseHandle]
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_ExitProcess]
nop
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov rcx, qword [rsp + 0x210]
call qword [sym.imp.KERNEL32.dll_CloseHandle]
jmp 0x140039fbc
call qword [sym.imp.KERNEL32.dll_GetLastError]
xor edx, edx
mov rcx, qword [0x1401c86d0]
call qword [sym.imp.USER32.dll_ShowWindow]
call fcn.140037520
mov ecx, gethostname
call fcn.14010459c
mov rdx, rax
mov qword [0x1401c82e0], rax
mov rax, qword [0x1401c8e00]
cmp qword [rax + 0x18], 0xf
jbe 0x140039ff5
mov rax, qword [rax]
mov qword [rdx], rax
mov rcx, qword [0x1401c8e00]
add rcx, 0x20
cmp qword [rcx + 0x18], 0xf
jbe 0x14003a00d
mov rcx, qword [rcx]
mov qword [rdx + 8], rcx
mov rax, qword [0x1401c8e00]
add rax, 0x40
cmp qword [rax + 0x18], 0xf
jbe 0x14003a026
mov rax, qword [rax]
mov qword [rdx + 0x10], rax
mov rax, qword [0x1401c8e00]
add rax, 0x60
cmp qword [rax + 0x18], 0xf
jbe 0x14003a03f
mov rax, qword [rax]
mov qword [rdx + 0x18], rax
mov rax, qword [0x1401c8e00]
sub rax, 0xffffffffffffff80
cmp qword [rax + 0x18], 0xf
jbe 0x14003a058
mov rax, qword [rax]
mov qword [rdx + 0x20], rax
mov rax, qword [0x1401c8e00]
add rax, 0xa0
cmp qword [rax + 0x18], 0xf
jbe 0x14003a073
mov rax, qword [rax]
mov qword [rdx + 0x28], rax
mov rax, qword [0x1401c8e00]
add rax, 0xc0
cmp qword [rax + 0x18], 0xf
jbe 0x14003a08e
mov rax, qword [rax]
mov qword [rdx + 0x30], rax
mov rbx, qword [0x1401c8e00]
mov rsi, qword [0x1401c8e08]
cmp rbx, rsi
je 0x14003a96e
movabs r15, 0x7fffffffffffffff
lea rdx, [0x14019e148]
lea r12, [0x14019e150]
lea r13, [0x14019e158]
nop dword [rax + rax]
mov rcx, qword ds:[rbx + 0x10]
mov rax, r15
sub rax, rcx
cmp rax, 3
jb 0x14003b0f8
mov r9, rbx
cmp qword [rbx + 0x18], 0xf
jbe 0x14003a0f7
mov r9, qword [rbx]
mov qword [rsp + 0x30], 3
mov qword [rsp + 0x28], rdx
mov qword [rsp + 0x20], rcx
lea rcx, [rsp + 0x60]
call fcn.140026cc0
nop
lea rdx, [rsp + 0x60]
call fcn.140021800
cmp byte [rax + 0x10], 1
je 0x14003a129
mov byte [rax + 0x10], 1
mov byte [rax], 0
lea rcx, [rsp + 0x60]
call fcn.1400041e0
mov rcx, qword [rbx + 0x10]
mov rax, r15
sub rax, rcx
cmp rax, 7
jb 0x14003b0f2
mov r9, rbx
cmp qword [rbx + 0x18], 0xf
jbe 0x14003a157
mov r9, qword [rbx]
mov qword [rsp + 0x30], 7
mov qword [rsp + 0x28], r12
mov qword [rsp + 0x20], rcx
lea rcx, [rsp + 0x1e8]
call fcn.140026cc0
nop
lea rdx, [rsp + 0x1e8]
call fcn.140021800
cmp byte [rax + 0x10], 0
je 0x14003a18f
mov byte [rax + 0x10], 0
mov dword ds:[rax], 1
lea rcx, [rsp + 0x1e8]
call fcn.1400041e0
mov rcx, qword [rbx + 0x10]
mov rax, r15
sub rax, rcx
cmp rax, 7
jb 0x14003b0ec
mov r9, rbx
cmp qword [rbx + 0x18], 0xf
jbe 0x14003a1c6
mov r9, qword [rbx]
mov qword [rsp + 0x30], 7
mov qword [rsp + 0x28], r13
mov qword [rsp + 0x20], rcx
lea rcx, [rsp + 0x210]
call fcn.140026cc0
nop
lea rdx, [rsp + 0x210]
call fcn.140021800
cmp byte [rax + 0x10], 0
je 0x14003a1fe
mov byte [rax + 0x10], 0
mov dword [rax], 1
lea rcx, [rsp + 0x210]
call fcn.1400041e0
mov rcx, qword ds:[rbx + 0x10]
mov rax, r15
sub rax, rcx
cmp rax, 6
jb 0x14003b0e6
mov r9, rbx
cmp qword [rbx + 0x18], 0xf
jbe 0x14003a237
mov r9, qword [rbx]
mov qword [rsp + 0x30], 6
lea rax, [0x14019e160]
mov qword [rsp + 0x28], rax
mov qword [rsp + 0x20], rcx
lea rcx, [rsp + 0x250]
call fcn.140026cc0
nop
lea rdx, [rsp + 0x250]
call fcn.140021800
cmp byte [rax + 0x10], 1
je 0x14003a276
mov byte [rax + 0x10], 1
mov byte [rax], 0
lea rcx, [rsp + 0x250]
call fcn.1400041e0
mov rcx, qword [rbx + 0x10]
mov rax, r15
sub rax, rcx
cmp rax, 7
jb 0x14003b0de
mov r9, rbx
cmp qword [rbx + 0x18], 0xf
jbe 0x14003a2a7
mov r9, qword [rbx]
mov qword [rsp + 0x30], 7
lea rax, [0x14019e168]
mov qword [rsp + 0x28], rax
mov qword [rsp + 0x20], rcx
lea rcx, [rsp + 0x230]
call fcn.140026cc0
nop
lea rdx, [rsp + 0x230]
call fcn.140021800
cmp byte [rax + 0x10], 0
je 0x14003a2e6
mov byte [rax + 0x10], 0
mov dword [rax], 1
lea rcx, [rsp + 0x230]
call fcn.1400041e0
mov rcx, qword [rbx + 0x10]
mov rax, r15
sub rax, rcx
cmp rax, 7
jb 0x14003b0d8
mov r9, rbx
cmp qword [rbx + 0x18], 0xf
jbe 0x14003a31a
mov r9, qword [rbx]
mov qword ss:[rsp + 0x30], 7
lea rax, [0x14019e170]
mov qword [rsp + 0x28], rax
mov qword [rsp + 0x20], rcx
lea rcx, [rsp + 0xa8]
call fcn.140026cc0
nop
lea rdx, [rsp + 0xa8]
call fcn.140021800
cmp byte [rax + 0x10], 0
je 0x14003a35d
mov byte [rax + 0x10], 0
mov dword [rax], 1
lea rcx, [rsp + 0xa8]
call fcn.1400041e0
mov rcx, qword ds:[rbx + 0x10]
mov rax, r15
sub rax, rcx
cmp rax, 7
jb 0x14003b0d2
mov r9, rbx
cmp qword [rbx + 0x18], 0xf
jbe 0x14003a397
mov r9, qword [rbx]
mov qword [rsp + 0x30], 7
lea rax, [0x14019e178]
mov qword [rsp + 0x28], rax
mov qword [rsp + 0x20], rcx
lea rcx, [rsp + 0xc8]
call fcn.140026cc0
nop
lea rdx, [rsp + 0xc8]
call fcn.140021800
cmp byte [rax + 0x10], 1
je 0x14003a3d6
mov byte [rax + 0x10], 1
mov byte [rax], 0
lea rcx, [rsp + 0xc8]
call fcn.1400041e0
mov rcx, qword [rbx + 0x10]
mov rax, r15
sub rax, rcx
cmp rax, 0xf
jb 0x14003b0cc
mov r9, rbx
cmp qword [rbx + 0x18], 0xf
jbe 0x14003a407
mov r9, qword [rbx]
mov qword [rsp + 0x30], reloc.WS2_32.dll_ntohs
lea rax, [0x14019e180]
mov qword [rsp + 0x28], rax
mov qword [rsp + 0x20], rcx
lea rcx, [rsp + 0xe8]
call fcn.140026cc0
nop
lea rdx, [rsp + 0xe8]
call fcn.140021800
cmp byte [rax + 0x10], 1
je 0x14003a446
mov byte [rax + 0x10], 1
mov byte [rax], 0
lea rcx, [rsp + 0xe8]
call fcn.1400041e0
mov rcx, qword [rbx + 0x10]
mov rax, r15
sub rax, rcx
cmp rax, 6
jb 0x14003b0c6
mov r9, rbx
cmp qword [rbx + 0x18], 0xf
jbe 0x14003a477
mov r9, qword [rbx]
mov qword [rsp + 0x30], 6
lea rax, [0x14019e1b0]
mov qword [rsp + 0x28], rax
mov qword [rsp + 0x20], rcx
lea rcx, [rsp + 0x108]
call fcn.140026cc0
nop
lea rdx, [rsp + 0x108]
call fcn.140021800
mov ecx, r14d
cmp byte [rax + 0x10], 0
je 0x14003a4b9
mov byte [rax + 0x10], 0
mov dword [rax], ecx
lea rcx, [rsp + 0x108]
call fcn.1400041e0
mov rcx, qword [rbx + 0x10]
mov rax, r15
sub rax, rcx
cmp rax, 3
jb 0x14003b0be
mov r9, rbx
cmp qword [rbx + 0x18], 0xf
jbe 0x14003a4e9
mov r9, qword [rbx]
mov qword [rsp + 0x30], 3
lea rax, [0x14019e1c0]
mov qword [rsp + 0x28], rax
mov qword [rsp + 0x20], rcx
lea rcx, [rsp + 0x128]
call fcn.140026cc0
nop
lea rdx, [rsp + 0x128]
call fcn.140021800
mov dword [rax], 0x3f800000
cmp byte [rax + 0x10], 2
je 0x14003a52e
mov byte [rax + 0x10], 2
lea rcx, [rsp + 0x128]
call fcn.1400041e0
mov rcx, qword [rbx + 0x10]
mov rax, r15
sub rax, rcx
cmp rax, 0x11
jb 0x14003b0b8
mov r9, rbx
cmp qword [rbx + 0x18], 0xf
jbe 0x14003a55c
mov r9, qword [rbx]
mov qword ss:[rsp + 0x30], reloc.WS2_32.dll_recvfrom
lea rax, [0x14019e1c8]
mov qword [rsp + 0x28], rax
mov qword [rsp + 0x20], rcx
lea rcx, [rsp + 0x148]
call fcn.140026cc0
nop
lea rdx, [rsp + 0x148]
call fcn.140021800
mov ecx, 0xc8
cmp byte [rax + 0x10], 0
je 0x14003a5a2
mov byte [rax + 0x10], 0
mov dword [rax], ecx
lea rcx, [rsp + 0x148]
call fcn.1400041e0
mov rcx, qword ds:[rbx + 0x10]
mov rax, r15
sub rax, rcx
cmp rax, 7
jb 0x14003b0b2
mov r9, rbx
cmp qword [rbx + 0x18], 0xf
jbe 0x14003a5d7
mov r9, qword [rbx]
mov qword [rsp + 0x30], 7
lea rax, [0x14019e1e0]
mov qword [rsp + 0x28], rax
mov qword [rsp + 0x20], rcx
lea rcx, [rsp + 0x168]
call fcn.140026cc0
nop
lea rdx, [rsp + 0x168]
call fcn.140021800
cmp byte [rax + 0x10], 1
je 0x14003a616
mov byte [rax + 0x10], 1
mov byte [rax], 0
lea rcx, [rsp + 0x168]
call fcn.1400041e0
mov rcx, qword [rbx + 0x10]
mov rax, r15
sub rax, rcx
cmp rax, 0xc
jb 0x14003b0ac
mov r9, rbx
cmp qword [rbx + 0x18], 0xf
jbe 0x14003a647
mov r9, qword [rbx]
mov qword [rsp + 0x30], send
lea rax, [0x14019e1e8]
mov qword [rsp + 0x28], rax
mov qword [rsp + 0x20], rcx
lea rcx, [rsp + 0x188]
call fcn.140026cc0
nop
lea rdx, [rsp + 0x188]
call fcn.140021800
mov ecx, reloc.WS2_32.dll_ntohs
cmp byte [rax + 0x10], 0
je 0x14003a68b
mov byte [rax + 0x10], 0
mov dword [rax], ecx
lea rcx, [rsp + 0x188]
call fcn.1400041e0
mov rcx, qword [rbx + 0x10]
mov rax, r15
sub rax, rcx
cmp rax, 0xf
jb 0x14003b0a6
mov r9, rbx
cmp qword [rbx + 0x18], 0xf
jbe 0x14003a6bb
mov r9, qword [rbx]
mov qword ss:[rsp + 0x30], reloc.WS2_32.dll_ntohs
lea rax, [0x14019e1f8]
mov qword [rsp + 0x28], rax
mov qword [rsp + 0x20], rcx
lea rcx, [rsp + 0x1a8]
call fcn.140026cc0
nop
lea rdx, [rsp + 0x1a8]
call fcn.140021800
mov dword [rax], 0x3f800000
cmp byte [rax + 0x10], 2
je 0x14003a703
mov byte [rax + 0x10], 2
lea rcx, [rsp + 0x1a8]
call fcn.1400041e0
mov rcx, qword ds:[rbx + 0x10]
mov rax, r15
sub rax, rcx
cmp rax, 0x13
jb 0x14003b09e
mov r9, rbx
cmp qword [rbx + 0x18], 0xf
jbe 0x14003a737
mov r9, qword [rbx]
mov qword [rsp + 0x30], reloc.WS2_32.dll_send
lea rax, [0x14019e248]
mov qword [rsp + 0x28], rax
mov qword [rsp + 0x20], rcx
lea rcx, [rsp + 0x1c8]
call fcn.140026cc0
nop
lea rdx, [rsp + 0x1c8]
call fcn.140021800
cmp byte [rax + 0x10], 1
je 0x14003a776
mov byte [rax + 0x10], 1
mov byte [rax], 0
lea rcx, [rsp + 0x1c8]
call fcn.1400041e0
mov rcx, qword [rbx + 0x10]
mov rax, r15
sub rax, rcx
cmp rax, 0xc
jb 0x14003b098
mov r9, rbx
cmp qword [rbx + 0x18], 0xf
jbe 0x14003a7a7
mov r9, qword [rbx]
mov qword [rsp + 0x30], send
lea rax, [0x14019e208]
mov qword [rsp + 0x28], rax
mov qword [rsp + 0x20], rcx
lea rcx, [rsp + 0x80]
call fcn.140026cc0
nop
lea rdx, [rsp + 0x80]
call fcn.140021800
cmp byte [rax + 0x10], 1
je 0x14003a7e6
mov byte [rax + 0x10], 1
mov byte [rax], 0
lea rcx, [rsp + 0x80]
call fcn.1400041e0
movaps xmm6, xmmword [0x1401a7930]
mov rcx, qword [rbx + 0x10]
mov rax, r15
sub rax, rcx
cmp rax, 8
jb 0x14003b092
mov r9, rbx
cmp qword [rbx + 0x18], 0xf
jbe 0x14003a81e
mov r9, qword [rbx]
mov qword [rsp + 0x30], 8
lea rax, [0x14019e218]
mov qword [rsp + 0x28], rax
mov qword [rsp + 0x20], rcx
lea rcx, [rsp + 0x80]
call fcn.140026cc0
nop
lea rdx, [rsp + 0x80]
call fcn.140021800
cmp byte [rax + 0x10], 3
movups xmmword [rax], xmm6
je 0x14003a860
mov byte [rax + 0x10], 3
lea rcx, [rsp + 0x80]
call fcn.1400041e0
mov rcx, qword ds:[rbx + 0x10]
mov rax, r15
sub rax, rcx
cmp rax, 0xb
jb 0x14003b08c
mov r9, rbx
cmp qword [rbx + 0x18], 0xf
jbe 0x14003a897
mov r9, qword [rbx]
mov qword [rsp + 0x30], send
lea rax, [0x14019e228]
mov qword [rsp + 0x28], rax
mov qword [rsp + 0x20], rcx
lea rcx, [rsp + 0x300]
call fcn.140026cc0
nop
lea rdx, [rsp + 0x300]
call fcn.140021800
cmp byte [rax + 0x10], 1
je 0x14003a8d6
mov byte [rax + 0x10], 1
mov byte [rax], 0
lea rcx, [rsp + 0x300]
call fcn.1400041e0
mov rcx, qword [rbx + 0x10]
mov rax, r15
sub rax, rcx
cmp rax, 9
jb 0x14003b086
mov r9, rbx
cmp qword [rbx + 0x18], 0xf
jbe 0x14003a907
mov r9, qword [rbx]
mov qword [rsp + 0x30], 9
lea rax, [0x14019e238]
mov qword [rsp + 0x28], rax
mov qword [rsp + 0x20], rcx
lea rcx, [rsp + 0x280]
call fcn.140026cc0
nop
lea rdx, [rsp + 0x280]
call fcn.140021800
mov ecx, 5
cmp byte [rax + 0x10], 0
je 0x14003a94b
mov byte [rax + 0x10], 0
mov dword [rax], ecx
lea rcx, [rsp + 0x280]
call fcn.1400041e0
add rbx, 0x20
cmp rbx, rsi
lea rdx, [0x14019e148]
jne 0x14003a0d0
movdqa xmm0, xmmword [0x1401a7830]
movdqu xmmword [rsp + 0x230], xmm0
mov dword [rsp + 0x240], 0x747874
lea rax, [rsp + 0x231]
mov qword [rsp + 0x210], rax
lea rcx, [rsp + 0x231]
mov rax, rdi
inc rax
cmp byte [rcx + rax], 0
jne 0x14003a9a5
mov qword [rsp + 0x218], rax
call fcn.1401032b0
movaps xmm0, xmmword ds:[rsp + 0x210]
movdqa xmmword [rsp + 0x210], xmm0
lea r8, [rsp + 0x210]
mov edx, eax
lea rcx, [rsp + 0x60]
call fcn.140005960
nop
lea rdx, [rsp + 0x60]
lea rcx, [rsp + 0x250]
call fcn.1400072c0
movsd xmm0, qword [rax]
movsd qword [rsp + 0x210], xmm0
mov ecx, dword [rax + 8]
mov dword [rsp + 0x250], ecx
lea rax, [0x1401c68e0]
mov qword [rsp + 0x258], rax
movaps xmm0, xmmword [rsp + 0x250]
movdqa xmmword [rsp + 0x250], xmm0
mov eax, dword [rsp + 0x210]
test eax, eax
je 0x14003aca4
cmp eax, 1
setne bl
lea rcx, [rsp + 0x60]
call fcn.140004160
test bl, bl
je 0x14003aa5c
mov dword [0x1401c68b0], 0x28
mov ecx, 8
call fcn.140103f80
lea rcx, [0x14002d600]
mov qword [rax], rcx
mov qword [rsp + 0x210], rax
lea rcx, [rsp + 0x258]
mov qword [rsp + 0x28], rcx
mov dword [rsp + 0x20], r14d
mov r9, rax
lea r8, [0x140029d00]
xor edx, edx
xor ecx, ecx
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__beginthreadex]
mov qword [rsp + 0x250], rax
test rax, rax
je 0x14003acbf
cmp dword [rsp + 0x258], 0
je 0x14003acb3
movaps xmm0, xmmword [rsp + 0x250]
movdqa xmmword [rsp + 0x210], xmm0
lea rcx, [rsp + 0x210]
call qword [sym.imp.MSVCP140.dll__Thrd_detach]
nop dword [rax]
test eax, eax
jne 0x14003acb3
xorps xmm0, xmm0
movdqa xmmword [rsp + 0x250], xmm0
lea rax, [rsp + 0x280]
mov qword [rsp + 0x210], rax
lea rax, vtable.std::_Func_impl_no_alloc_void____cdecl___void___void___.0
mov qword [rsp + 0x280], rax
lea rax, [0x14001c5c0]
mov qword [rsp + 0x288], rax
lea rax, [rsp + 0x280]
mov qword [rsp + 0x2b8], rax
lea rax, [rsp + 0x1e8]
mov qword [rsp + 0x250], rax
mov dword [rsp + 0x230], 0x4c44535b
mov dword [rsp + 0x234], 0x7070615f
mov byte [rsp + 0x238], 0
movups xmmword [rsp + 0x1e8], xmm0
mov qword [rsp + 0x1f8], r14
mov qword [rsp + 0x200], r14
lea rax, [rsp + 0x231]
mov r8, rdi
inc r8
cmp byte [rax + r8], 0
jne 0x14003ab83
lea rdx, ds:[rsp + 0x231]
lea rcx, [rsp + 0x1e8]
call fcn.140007de0
nop
movdqa xmm0, xmmword [0x1401a77c0]
movdqu xmmword [rsp + 0x230], xmm0
mov word [rsp + 0x240], gethostname
xorps xmm0, xmm0
movups xmmword [rsp + 0x60], xmm0
mov qword [rsp + 0x70], r14
mov qword [rsp + 0x78], r14
lea rax, [rsp + 0x231]
nop dword [rax + rax]
inc rdi
cmp byte [rax + rdi], 0
jne 0x14003abe0
mov r8, rdi
lea rdx, [rsp + 0x231]
lea rcx, [rsp + 0x60]
call fcn.140007de0
nop
lea r9, [rsp + 0x280]
lea r8, [rsp + 0x1e8]
lea rdx, [rsp + 0x60]
call fcn.140095ee0
nop
lea rax, vtable.std::wstring_convert_class_std::codecvt_utf8_wchar_t__1114111__0___wchar_t__class_std::allocator_wchar_t___class_std::allocator_char__.0
mov qword [rsp + 0x340], rax
lea rcx, [rsp + 0x380]
call fcn.140004160
lea rcx, ds:[rsp + 0x360]
call fcn.1400041e0
mov rcx, qword [rsp + 0x358]
test rcx, rcx
je 0x14003ac6b
mov rax, qword [rcx]
call qword [rax + reloc.WS2_32.dll_recv]
test rax, rax
je 0x14003ac6b
mov r8, qword [rax]
mov edx, 1
mov rcx, rax
call qword [r8]
xor eax, eax
mov rcx, qword [rsp + 0x3c0]
xor rcx, rsp
call fcn.140103e40
lea r11, [rsp + 0x3e0]
mov rbx, qword [r11 + 0x20]
mov rsi, qword [r11 + 0x28]
mov rdi, qword [r11 + 0x30]
mov r12, qword [r11 + 0x38]
movaps xmm6, xmmword [r11 - 0x10]
mov rsp, r11
pop r15
pop r14
pop r13
ret
xor bl, bl
test ecx, ecx
jne 0x14003b0fe
jmp 0x14003aa44
mov ecx, 1
call qword [sym.imp.MSVCP140.dll_void___cdecl_std::_Throw_Cpp_error_int_]
nop
mov dword [rsp + 0x258], r14d
mov ecx, 6
call qword [sym.imp.MSVCP140.dll_void___cdecl_std::_Throw_Cpp_error_int_]
nop
lea rdx, ds:[rsp + 0x230]
call fcn.14003b120
lea rcx, ds:[rax + 1]
movzx r9d, byte [rax]
xor byte [rcx], r9b
xor byte [rax + 2], r9b
xor byte [rax + 3], r9b
mov byte [rax + 4], 0
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll_system]
mov edx, 5
mov rcx, qword [0x1401c86d0]
call qword [sym.imp.USER32.dll_ShowWindow]
mov rcx, qword [sym.imp.MSVCP140.dll_class_std::basic_ostream_char__struct_std::char_traits_char___std::cout]
lea rdx, [rsp + 0x280]
call fcn.14003b130
lea rdx, [rax + 1]
movzx r8d, byte [rax]
xor byte [rdx], r8b
xor byte [rax + 2], r8b
xor byte [rax + 3], r8b
xor byte [rax + 4], r8b
xor byte [rax + 5], r8b
xor byte [rax + 6], r8b
xor byte [rax + 7], r8b
xor byte [rax + 8], r8b
xor byte [rax + 9], r8b
xor byte [rax + 0xa], r8b
xor byte [rax + 0xb], r8b
xor byte [rax + 0xc], r8b
xor byte [rax + 0xd], r8b
xor byte [rax + 0xe], r8b
xor byte [rax + 0xf], r8b
xor byte [rax + 0x10], r8b
xor byte [rax + 0x11], r8b
xor byte [rax + 0x12], r8b
xor byte [rax + 0x13], r8b
xor byte [rax + 0x14], r8b
xor byte [rax + 0x15], r8b
xor byte [rax + 0x16], r8b
xor byte [rax + 0x17], r8b
xor byte [rax + 0x18], r8b
xor byte [rax + 0x19], r8b
xor byte [rax + 0x1a], r8b
xor byte [rax + 0x1b], r8b
xor byte [rax + 0x1c], r8b
xor byte [rax + 0x1d], r8b
xor byte [rax + 0x1e], r8b
xor byte [rax + 0x1f], r8b
xor byte [rax + 0x20], r8b
xor byte [rax + 0x21], r8b
xor byte [rax + 0x22], r8b
xor byte [rax + 0x23], r8b
xor byte [rax + 0x24], r8b
xor byte [rax + 0x25], r8b
xor byte [rax + 0x26], r8b
xor byte [rax + 0x27], r8b
xor byte [rax + 0x28], r8b
xor byte [rax + 0x29], r8b
xor byte [rax + 0x2a], r8b
xor byte [rax + 0x2b], r8b
xor byte [rax + 0x2c], r8b
xor byte [rax + 0x2d], r8b
xor byte [rax + 0x2e], r8b
xor byte [rax + 0x2f], r8b
xor byte [rax + 0x30], r8b
xor byte [rax + 0x31], r8b
xor byte [rax + 0x32], r8b
xor byte [rax + 0x33], r8b
xor byte [rax + 0x34], r8b
xor byte [rax + 0x35], r8b
xor byte [rax + 0x36], r8b
xor byte [rax + 0x37], r8b
xor byte [rax + 0x38], r8b
xor byte [rax + 0x39], r8b
xor byte [rax + 0x3a], r8b
xor byte [rax + 0x3b], r8b
xor byte [rax + 0x3c], r8b
xor byte [rax + 0x3d], r8b
xor byte [rax + 0x3e], r8b
xor byte [rax + 0x3f], r8b
xor byte [rax + 0x40], r8b
xor byte [rax + 0x41], r8b
xor byte [rax + 0x42], r8b
xor byte [rax + 0x43], r8b
xor byte [rax + 0x44], r8b
xor byte [rax + 0x45], r8b
xor byte [rax + 0x46], r8b
xor byte [rax + 0x47], r8b
xor byte [rax + 0x48], r8b
xor byte [rax + 0x49], r8b
xor byte [rax + 0x4a], r8b
xor byte [rax + 0x4b], r8b
xor byte [rax + 0x4c], r8b
xor byte [rax + 0x4d], r8b
xor byte [rax + 0x4e], r8b
xor byte [rax + 0x4f], r8b
xor byte [rax + 0x50], r8b
xor byte [rax + 0x51], r8b
xor byte [rax + 0x52], r8b
xor byte [rax + 0x53], r8b
xor byte [rax + 0x54], r8b
xor byte [rax + 0x55], r8b
xor byte [rax + 0x56], r8b
xor byte [rax + 0x57], r8b
xor byte [rax + 0x58], r8b
xor byte [rax + 0x59], r8b
xor byte [rax + 0x5a], r8b
xor byte [rax + 0x5b], r8b
xor byte [rax + 0x5c], r8b
xor byte [rax + 0x5d], r8b
xor byte [rax + 0x5e], r8b
xor byte [rax + 0x5f], r8b
xor byte [rax + 0x60], r8b
xor byte [rax + 0x61], r8b
xor byte [rax + 0x62], r8b
xor byte [rax + 0x63], r8b
xor byte [rax + 0x64], r8b
xor byte [rax + 0x65], r8b
xor byte [rax + 0x66], r8b
xor byte [rax + 0x67], r8b
xor byte [rax + 0x68], r8b
xor byte [rax + 0x69], r8b
xor byte [rax + 0x6a], r8b
xor byte [rax + 0x6b], r8b
xor byte [rax + 0x6c], r8b
xor byte [rax + 0x6d], r8b
xor byte [rax + 0x6e], r8b
xor byte [rax + 0x6f], r8b
xor byte [rax + 0x70], r8b
xor byte [rax + 0x71], r8b
xor byte [rax + 0x72], r8b
xor byte [rax + 0x73], r8b
mov byte [rax + 0x74], 0
call fcn.140004600
call fcn.14002de10
int3
lea rdx, [rsp + 0x230]
call fcn.14003b210
lea rcx, [rax + 1]
movzx r8d, byte [rax]
xor byte [rcx], r8b
xor byte [rax + 2], r8b
xor byte [rax + 3], r8b
mov byte [rax + 4], 0
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll_system]
mov edx, 5
mov rcx, qword [0x1401c86d0]
call qword [sym.imp.USER32.dll_ShowWindow]
mov rcx, qword [sym.imp.MSVCP140.dll_class_std::basic_ostream_char__struct_std::char_traits_char___std::cout]
lea rdx, [rsp + 0x280]
call fcn.14003b220
lea rdx, [rax + 1]
movzx r8d, byte [rax]
xor byte [rdx], r8b
xor byte [rax + 2], r8b
xor byte [rax + 3], r8b
xor byte [rax + 4], r8b
xor byte [rax + 5], r8b
xor byte [rax + 6], r8b
xor byte [rax + 7], r8b
xor byte [rax + 8], r8b
xor byte [rax + 9], r8b
xor byte [rax + 0xa], r8b
xor byte [rax + 0xb], r8b
xor byte [rax + 0xc], r8b
xor byte [rax + 0xd], r8b
xor byte [rax + 0xe], r8b
xor byte [rax + 0xf], r8b
xor byte [rax + 0x10], r8b
xor byte [rax + 0x11], r8b
xor byte [rax + 0x12], r8b
xor byte [rax + 0x13], r8b
xor byte [rax + 0x14], r8b
xor byte [rax + 0x15], r8b
xor byte [rax + 0x16], r8b
xor byte [rax + 0x17], r8b
xor byte [rax + 0x18], r8b
xor byte [rax + 0x19], r8b
xor byte [rax + 0x1a], r8b
xor byte [rax + 0x1b], r8b
xor byte [rax + 0x1c], r8b
xor byte [rax + 0x1d], r8b
xor byte [rax + 0x1e], r8b
xor byte [rax + 0x1f], r8b
xor byte [rax + 0x20], r8b
xor byte [rax + 0x21], r8b
xor byte [rax + 0x22], r8b
xor byte [rax + 0x23], r8b
xor byte [rax + 0x24], r8b
xor byte [rax + 0x25], r8b
xor byte [rax + 0x26], r8b
xor byte [rax + 0x27], r8b
xor byte [rax + 0x28], r8b
xor byte [rax + 0x29], r8b
xor byte [rax + 0x2a], r8b
xor byte [rax + 0x2b], r8b
xor byte [rax + 0x2c], r8b
xor byte [rax + 0x2d], r8b
xor byte [rax + 0x2e], r8b
xor byte [rax + 0x2f], r8b
xor byte [rax + 0x30], r8b
xor byte [rax + 0x31], r8b
xor byte [rax + 0x32], r8b
xor byte [rax + 0x33], r8b
xor byte [rax + 0x34], r8b
xor byte [rax + 0x35], r8b
xor byte [rax + 0x36], r8b
xor byte [rax + 0x37], r8b
xor byte [rax + 0x38], r8b
xor byte [rax + 0x39], r8b
xor byte [rax + 0x3a], r8b
xor byte [rax + 0x3b], r8b
xor byte [rax + 0x3c], r8b
xor byte [rax + 0x3d], r8b
xor byte [rax + 0x3e], r8b
xor byte [rax + 0x3f], r8b
xor byte [rax + 0x40], r8b
xor byte [rax + 0x41], r8b
xor byte [rax + 0x42], r8b
xor byte [rax + 0x43], r8b
xor byte [rax + 0x44], r8b
mov byte [rax + 0x45], 0
call fcn.140004600
nop
call fcn.14002de10
int3
call fcn.140004c80
int3
call fcn.140004c80
int3
call fcn.140004c80
int3
call fcn.140004c80
int3
nop
call fcn.140004c80
int3
call fcn.140004c80
int3
call fcn.140004c80
int3
call fcn.140004c80
int3
call fcn.140004c80
int3
nop
call fcn.140004c80
int3
call fcn.140004c80
int3
call fcn.140004c80
int3
call fcn.140004c80
int3
call fcn.140004c80
int3
nop
call fcn.140004c80
int3
call fcn.140004c80
int3
call fcn.140004c80
int3
call fcn.140004c80
int3
call fcn.140004c80
nop
lea r8, [rsp + 0x60]
lea rdx, [rsp + 0x250]
lea rcx, str.exists
call fcn.1400069c0
int3