Function at 0x14002f930
Capabilities:
Create thread
Encode data using xor
Terminate process

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 - 0x520]
sub rsp, 0x620
mov rax, qword [0x1400a9080]
xor rax, rsp
mov qword [rbp + 0x510], rax
mov r13, rcx
xor r12d, r12d
mov dword [rsp + 0x40], r12d
mov qword [rsp + 0x28], r12
mov dword [rsp + 0x20], r12d
xor r9d, r9d
lea r8, [0x140033380]
xor edx, edx
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_CreateThread]
cmp qword [r13 + 0x30], 0xa
jne 0x140030d56
cmp qword [r13 + 0x50], 0x40
jne 0x140030d56
xorps xmm0, xmm0
movups xmmword [rbp + 0x3b8], xmm0
xorps xmm1, xmm1
movups xmmword [rbp + 0x340], xmm1
mov ebx, r12d
mov qword [rbp + 0x350], rbx
mov edi, reloc.WS2_32.dll_ntohs
mov qword [rbp + 0x358], rdi
mov byte [rbp + 0x340], bl
lea rcx, [rbp + 0x3b8]
call qword [sym.imp.RPCRT4.dll_UuidCreate]
mov qword [rbp + 0x2d0], r12
lea rdx, [rbp + 0x2d0]
lea rcx, [rbp + 0x3b8]
call qword [sym.imp.RPCRT4.dll_UuidToStringA]
test eax, eax
jne 0x14002fa42
mov rdx, qword [rbp + 0x2d0]
mov r8, 0xffffffffffffffff
inc r8
cmp byte [rdx + r8], 0
jne 0x14002fa11
lea rcx, [rbp + 0x340]
call fcn.14001f320
lea rcx, [rbp + 0x2d0]
call qword [sym.imp.RPCRT4.dll_RpcStringFreeA]
mov rdi, qword [rbp + 0x358]
mov rbx, qword [rbp + 0x350]
xorps xmm0, xmm0
movups xmmword [rbp + 0x320], xmm0
mov qword [rbp + 0x330], r12
mov qword [rbp + 0x338], reloc.WS2_32.dll_ntohs
mov byte [rbp + 0x320], 0
movups xmmword [rbp - 0x40], xmm0
xorps xmm1, xmm1
movdqu xmmword [rbp - 0x30], xmm1
mov r8d, reloc.WS2_32.dll_recv
cmp rbx, r8
cmovb r8, rbx
lea rdx, [rbp + 0x340]
cmp rdi, 0x10
cmovae rdx, qword [rbp + 0x340]
lea rcx, [rbp - 0x40]
call fcn.140003da0
lea rdx, [rbp - 0x40]
lea rcx, [rbp + 0x320]
call fcn.140023d00
lea rcx, [rbp - 0x40]
call fcn.140003640
mov word [rsp + 0x40], reloc.WLDAP32.dll_Ordinal_45
mov byte [rsp + 0x42], 0
lea r9, [rbp + 0x2d8]
lea r8, [rsp + 0x41]
lea rdx, [rsp + 0x40]
lea rcx, [rbp - 0x60]
call fcn.140021e90
nop
lea r8, [rbp + 0x320]
cmp qword [rbp + 0x338], 0x10
cmovae r8, qword [rbp + 0x320]
mov r9, qword [rbp + 0x330]
xor edx, edx
lea rcx, [rbp - 0x60]
call fcn.140030dc0
xorps xmm0, xmm0
movups xmmword [rsp + 0x48], xmm0
xorps xmm1, xmm1
movdqu xmmword [rsp + 0x58], xmm1
movups xmm0, xmmword [rax]
movups xmmword [rsp + 0x48], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rsp + 0x58], xmm1
mov qword [rax + 0x10], r12
mov qword [rax + 0x18], reloc.WS2_32.dll_ntohs
mov byte [rax], 0
lea rcx, [rbp - 0x60]
call fcn.140003640
nop
lea rdi, [r13 + 0x40]
mov r8, rdi
lea rdx, [rsp + 0x48]
lea rcx, [rbp - 0x20]
call fcn.140024ab0
lea rcx, [r13 + 0x258]
mov rdx, rax
call fcn.140023d00
lea rcx, [rbp - 0x20]
call fcn.140003640
nop
lea rcx, [rsp + 0x48]
call fcn.140003640
lea rcx, [rbp + 0x360]
call fcn.14002d050
nop
mov dword [rsp + 0x48], 0xa0baa3ed
mov dword [rsp + 0x4c], 0xb6b8a2aa
mov word [rsp + 0x50], 0xee
mov byte [rsp + 0x52], 1
mov dword [rbp - 0x68], 0xa3aca2ed
mov dword [rbp - 0x64], 0x100edaa
mov dword [rbp + 0x2f0], 0xada3a9ed
mov dword [rbp + 0x2f4], 0xefa8b5a4
mov word [rbp + 0x2f8], 0x100
mov dword [rbp - 0x70], 0xbdaca4ed
mov dword [rbp - 0x6c], 0x100eda7
mov dword [rsp + 0x40], 0xbca8baed
mov word [rsp + 0x44], 0xf2
mov byte [rsp + 0x46], 1
mov dword [rsp + 0x70], 0xabbdb5bf
mov dword [rsp + 0x74], 0xbbbfb9f2
mov word [rsp + 0x78], 0xa7
mov byte [rsp + 0x7a], 1
mov rcx, r12
nop dword [rax + rax]
lea eax, [rcx - 0x35]
xor byte [rsp + rcx + 0x40], al
inc rcx
cmp rcx, 5
jb 0x14002fc10
mov byte [rsp + 0x46], 0
lea r9, [rbp + 0x2d8]
lea r8, [rsp + 0x45]
lea rdx, [rsp + 0x40]
lea rcx, [rbp + 0x380]
call fcn.140021e90
nop
cmp byte [rsp + 0x7a], 0
je 0x14002fc65
mov rcx, r12
nop dword [rax]
lea eax, [rcx - 0x35]
xor byte [rsp + rcx + 0x70], al
inc rcx
cmp rcx, 9
jb 0x14002fc50
mov byte [rsp + 0x7a], 0
lea r9, [rbp + 0x2d8]
lea r8, [rsp + 0x79]
lea rdx, [rsp + 0x70]
lea rcx, [rbp + 0xc0]
call fcn.140021e90
nop
lea r9, [rbp + 0x380]
lea r8, [rbp + 0xc0]
movzx edx, byte [rbp + 0x2d8]
lea rcx, [rbp - 0x20]
call fcn.14002aa10
nop
lea rcx, [rbp + 0xc0]
call fcn.140003640
nop
lea rcx, [rbp + 0x380]
call fcn.140003640
nop
lea r8, [r13 + 0x60]
lea rdx, [rbp - 0x20]
lea rcx, [rbp]
call fcn.140024ab0
nop
lea r8, [rbp - 0x70]
mov rdx, rax
lea rcx, [rbp + 0x2b0]
call fcn.140024c80
nop
lea rdx, [rbp + 0x360]
cmp qword [rbp + 0x378], 0x10
cmovae rdx, qword [rbp + 0x360]
mov r8, qword [rbp + 0x370]
mov rcx, rax
call fcn.14001f480
movups xmm0, xmmword [rax]
movups xmmword [rbp - 0x60], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rbp - 0x50], xmm1
mov qword [rax + 0x10], r12
mov qword [rax + 0x18], reloc.WS2_32.dll_ntohs
mov byte [rax], 0
lea r8, [rbp + 0x2f0]
lea rdx, [rbp - 0x60]
lea rcx, [rbp + 0x290]
call fcn.140024d60
nop
lea rdx, [rbp + 0x320]
cmp qword [rbp + 0x338], 0x10
cmovae rdx, qword [rbp + 0x320]
mov r8, qword [rbp + 0x330]
mov rcx, rax
call fcn.14001f480
movups xmm0, xmmword [rax]
movups xmmword [rbp - 0x40], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rbp - 0x30], xmm1
mov qword [rax + 0x10], r12
mov qword [rax + 0x18], reloc.WS2_32.dll_ntohs
mov byte [rax], 0
mov esi, 0x9ff000
lea r8, [rbp - 0x68]
lea rdx, [rbp - 0x40]
lea rcx, [rbp + 0x230]
call fcn.140024c80
nop
mov r8, r13
mov rdx, rax
lea rcx, [rbp + 0x250]
call fcn.140024ab0
nop
lea r8, [rsp + 0x48]
mov rdx, rax
lea rcx, [rbp + 0x270]
call fcn.140024e40
nop
lea r8, [r13 + 0x20]
mov rdx, rax
lea rcx, [rbp + 0x3e8]
call fcn.140024ab0
nop
lea rcx, [rbp + 0x270]
call fcn.140003640
nop
lea rcx, [rbp + 0x250]
call fcn.140003640
nop
lea rcx, [rbp + 0x230]
call fcn.140003640
nop
lea rcx, [rbp - 0x40]
call fcn.140003640
nop
lea rcx, [rbp + 0x290]
call fcn.140003640
nop
lea rcx, [rbp - 0x60]
call fcn.140003640
nop
lea rcx, [rbp + 0x2b0]
call fcn.140003640
nop
lea rcx, [rbp]
call fcn.140003640
nop
lea rcx, [rbp - 0x20]
call fcn.140003640
lea rax, [rbp + 0x380]
mov qword [rbp + 0xe0], rax
lea rdx, [r13 + 0x80]
lea rcx, [rbp + 0x380]
call fcn.1400036e0
mov rbx, rax
lea rdx, [rbp + 0x3e8]
lea rcx, [rbp + 0xc0]
call fcn.1400036e0
nop
mov r8, rbx
mov rdx, rax
lea rcx, [rbp + 0x300]
call fcn.140034c50
nop
movdqa xmm0, xmmword [0x14008ce30]
movdqu xmmword [rsp + 0x48], xmm0
mov byte [rsp + 0x58], 1
cmp qword [rbp + 0x310], 0x10
jne 0x14002ff26
mov rcx, r12
nop dword [rax + rax]
lea eax, [rcx - 0x35]
xor byte [rsp + rcx + 0x48], al
inc rcx
cmp rcx, 0xf
jb 0x14002feb0
mov byte [rsp + 0x58], 0
lea r9, [rbp + 0x2d8]
lea r8, [rsp + 0x57]
lea rdx, [rsp + 0x48]
lea rcx, [rsp + 0x70]
call fcn.140021e90
mov esi, 0xfff000
lea rdx, [rsp + 0x70]
cmp qword [rbp - 0x78], 0x10
cmovae rdx, qword [rsp + 0x70]
lea rcx, [rbp + 0x300]
cmp qword [rbp + 0x318], 0x10
cmovae rcx, qword [rbp + 0x300]
mov r8, qword [rbp + 0x310]
cmp r8, qword [rbp - 0x80]
jne 0x14002ff26
call sub.VCRUNTIME140.dll_memcmp
test eax, eax
jne 0x14002ff26
mov bl, 1
jmp 0x14002ff2e
xor bl, bl
bt esi, 0x15
jae 0x14002ff38
lea rcx, [rsp + 0x70]
call fcn.140003640
test bl, bl
je 0x14002ffa1
movdqa xmm0, xmmword [0x14008d1a0]
movdqa xmmword [rbp], xmm0
movdqa xmm1, xmmword [0x14008cf70]
movdqa xmmword [rbp + 0x10], xmm1
movdqa xmm0, xmmword [0x14008d000]
movdqa xmmword [rbp + 0x20], xmm0
movdqa xmm1, xmmword [0x14008cef0]
movdqa xmmword [rbp + 0x30], xmm1
mov dword [rbp + 0x40], 0x236879
mov byte [rbp + 0x44], 1
lea rcx, [rbp]
call fcn.14002cc70
mov rdx, rax
mov r9d, reloc.WS2_32.dll_recv
xor r8d, r8d
xor ecx, ecx
call qword [sym.imp.USER32.dll_MessageBoxA]
xor ecx, ecx
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll_exit]
int3
mov qword [rbp + 0x38], r12
mov byte [rsp + 0x20], 0
mov r9b, 1
lea r8, [rbp]
lea rdx, [rbp + 0x300]
lea rcx, [rbp + 0x2e0]
call fcn.140028020
nop
mov dword [rsp + 0x30], 0xbdbea9a6
mov dword [rsp + 0x34], 0xb4b7ae
mov byte [rsp + 0x38], 1
mov rcx, r12
nop dword [rax]
lea eax, [rcx - 0x35]
xor byte [rsp + rcx + 0x30], al
inc rcx
cmp rcx, 7
jb 0x14002ffe0
mov byte [rsp + 0x38], 0
lea r9, [rbp + 0x2d8]
lea r8, [rsp + 0x37]
lea rdx, [rsp + 0x30]
lea rcx, [rbp - 0x20]
call fcn.140021e90
nop
mov rbx, qword [rsp + 0x30]
movzx ecx, byte [rbp + 0x2e0]
test cl, cl
jne 0x14003003c
mov byte [rbp + 0x2e0], 1
call fcn.140026a60
mov qword [rbp + 0x2e8], rax
movzx ecx, byte [rbp + 0x2e0]
jmp 0x140030043
mov rax, qword [rbp + 0x2e8]
cmp cl, 1
jne 0x140030057
lea rdx, [rbp - 0x20]
mov rcx, rax
call fcn.14002b9b0
mov rbx, rax
lea rdx, [rbp + 0x3c8]
mov rcx, rbx
call fcn.140024a50
nop
lea rcx, [rbp - 0x20]
call fcn.140003640
xor edx, edx
mov r8d, 0xf8
lea rcx, [rbp + 0x410]
call sub.VCRUNTIME140.dll_memset
mov edx, 1
lea rcx, [rbp + 0x410]
call fcn.14002abc0
nop
xorps xmm0, xmm0
movups xmmword [rbp + 0x3a0], xmm0
mov ecx, reloc.WLDAP32.dll_Ordinal_32
call fcn.140086ca0
mov r14, rax
mov qword [rbp + 0x3a0], rax
lea r15, [rax + 0x20]
mov qword [rbp + 0x3b0], r15
xorps xmm0, xmm0
movups xmmword [rax], xmm0
movups xmmword [rax + 0x10], xmm0
mov qword [rbp + 0x3a8], r15
lea r8, [rbp + 0x300]
cmp qword [rbp + 0x318], 0x10
cmovae r8, qword [rbp + 0x300]
cmp qword [rdi + 0x18], 0x10
jb 0x1400300f1
mov rdi, qword [rdi]
mov qword [rsp + 0x28], reloc.WLDAP32.dll_Ordinal_32
mov qword [rsp + 0x20], r14
mov r9, qword [rbp + 0x310]
mov rdx, qword [r13 + 0x50]
mov rcx, rdi
call fcn.14003c1a0
mov rsi, r14
cmp r14, r15
je 0x140030182
nop word [rax + rax]
movzx edi, byte [rsi]
lea rdx, [0x14002f900]
lea rcx, [rbp + 0x420]
call qword [sym.imp.MSVCP140.dll_public:_class_std::basic_ostream_char__struct_std::char_traits_char______ptr64___cdecl_std::basic_ostream_char__struct_std::char_traits_char__::operator___class_std::ios_base____ptr64____cdecl___class_std::ios_base____ptr64_____ptr64]
mov rbx, rax
mov rcx, qword [rax]
movsxd rcx, dword [rcx + 4]
add rcx, rax
mov dl, 0x30
call qword [sym.imp.MSVCP140.dll_public:_char___cdecl_std::basic_ios_char__struct_std::char_traits_char__::fill_char____ptr64]
mov edx, 2
lea rcx, [rsp + 0x48]
call sub.MSVCP140.dll_struct_std::_Smanip_long_long___int64_____cdecl_std::setw_long_long___int64__
mov r8, qword [rax]
mov rcx, qword [rbx]
movsxd rcx, dword [rcx + 4]
add rcx, rbx
mov rdx, qword [rax + 8]
call r8
mov edx, edi
mov rcx, rbx
call qword [sym.imp.MSVCP140.dll_public:_class_std::basic_ostream_char__struct_std::char_traits_char______ptr64___cdecl_std::basic_ostream_char__struct_std::char_traits_char__::operator___int____ptr64]
inc rsi
cmp rsi, r15
jne 0x140030120
lea rbx, [section..data]
cmp qword [reloc.WS2_32.dll_ntohs], 0x10
cmovae rbx, qword [section..data]
lea rdx, [rbp - 0x20]
lea rcx, [rbp + 0x410]
call fcn.1400371d0
cmp qword [rax + 0x18], 0x10
jb 0x1400301b3
mov rax, qword [rax]
mov r8d, 8
mov rdx, rbx
mov rcx, rax
call fcn.14002d4a0
movzx ebx, al
mov rdx, qword [rbp - 8]
cmp rdx, 0x10
jb 0x140030205
inc rdx
mov rcx, qword [rbp - 0x20]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140030200
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x140030200
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.140086cdc
test bl, bl
jne 0x1400302c3
movdqa xmm0, xmmword [0x14008d040]
movdqa xmmword [rbp + 0x50], xmm0
movdqa xmm1, xmmword [0x14008cfe0]
movdqa xmmword [rbp + 0x60], xmm1
movdqa xmm0, xmmword [0x14008d150]
movdqa xmmword [rbp + 0x70], xmm0
movdqa xmm1, xmmword [0x14008ce90]
movdqa xmmword [rbp + 0x80], xmm1
movdqa xmm0, xmmword [0x14008cf20]
movdqa xmmword [rbp + 0x90], xmm0
movdqa xmm1, xmmword [0x14008cec0]
movdqa xmmword [rbp + 0xa0], xmm1
mov dword [rbp + 0xb0], 0x4b600c44
mov dword [rbp + 0xb4], 0x5550435c
mov dword [rbp + 0xb8], 0x150e56
mov byte [rbp + 0xbc], 1
mov rcx, r12
nop dword [rax]
lea eax, [rcx - 0x35]
xor byte [rbp + rcx + 0x50], al
inc rcx
cmp rcx, 0x6b
jb 0x140030290
mov byte [rbp + 0xbc], 0
lea r8, [rbp + 0x3c8]
lea rdx, [rbp + 0x50]
lea rcx, [rbp]
call fcn.140024b20
mov rcx, rax
call fcn.14002e860
lea rdx, [rbp + 0x2e0]
lea rcx, [rsp + 0x48]
call fcn.14002a700
mov rdx, rax
mov rcx, r13
call fcn.1400325d0
mov dword [rsp + 0x30], 0xadaeb9b8
mov dword [rsp + 0x34], 0xa2a3aa
mov byte [rsp + 0x38], 1
mov rcx, r12
nop word [rax + rax]
lea eax, [rcx - 0x35]
xor byte [rsp + rcx + 0x30], al
inc rcx
cmp rcx, 7
jb 0x140030300
mov byte [rsp + 0x38], 0
lea r9, [rbp + 0x2d8]
lea r8, [rsp + 0x37]
lea rdx, [rsp + 0x30]
lea rcx, [rbp - 0x60]
call fcn.140021e90
nop
movzx ecx, byte [rbp + 0x2e0]
test cl, cl
jne 0x140030357
mov byte [rbp + 0x2e0], 1
call fcn.140026a60
mov qword [rbp + 0x2e8], rax
movzx ecx, byte [rbp + 0x2e0]
jmp 0x14003035e
mov rax, qword [rbp + 0x2e8]
cmp cl, 1
jne 0x140030374
lea rdx, [rbp - 0x60]
mov rcx, rax
call fcn.14002b9b0
mov rcx, rax
jmp 0x140030379
mov rcx, qword [rsp + 0x30]
lea rax, [rcx + 8]
cmp byte [rcx], 4
cmovne rax, r12
movzx ebx, byte [rax]
mov rdx, qword [rbp - 0x48]
cmp rdx, 0x10
jb 0x1400303c5
inc rdx
mov rcx, qword [rbp - 0x60]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1400303c0
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x1400303c0
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.140086cdc
test bl, bl
je 0x14003079b
mov dword [rsp + 0x48], 0x9dbaa9a5
mov dword [rsp + 0x4c], 0xbba2a3aa
mov dword [rsp + 0x50], 0x100babc
mov rcx, r12
nop dword [rax + rax]
lea eax, [rcx - 0x35]
xor byte [rsp + rcx + 0x48], al
inc rcx
cmp rcx, 0xa
jb 0x1400303f0
mov byte [rsp + 0x53], 0
lea r9, [rbp + 0x2d8]
lea r8, [rsp + 0x52]
lea rdx, [rsp + 0x48]
lea rcx, [rbp - 0x60]
call fcn.140021e90
nop
movzx ecx, byte [rbp + 0x2e0]
test cl, cl
jne 0x140030447
mov byte [rbp + 0x2e0], 1
call fcn.140026a60
mov qword [rbp + 0x2e8], rax
movzx ecx, byte [rbp + 0x2e0]
jmp 0x14003044e
mov rax, qword [rbp + 0x2e8]
cmp cl, 1
jne 0x140030464
lea rdx, [rbp - 0x60]
mov rcx, rax
call fcn.14002b9b0
mov rcx, rax
jmp 0x140030469
mov rcx, qword [rsp + 0x30]
lea rax, [rcx + 8]
cmp byte [rcx], 4
cmovne rax, r12
movzx ebx, byte [rax]
mov rdx, qword [rbp - 0x48]
cmp rdx, 0x10
jb 0x1400304b5
inc rdx
mov rcx, qword [rbp - 0x60]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1400304b0
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x1400304b0
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.140086cdc
test bl, bl
je 0x1400304c4
mov ecx, 0x64
movdqa xmm0, xmmword [0x14008d190]
movdqa xmmword [rbp], xmm0
movdqa xmm1, xmmword [0x14008d0e0]
movdqa xmmword [rbp + 0x10], xmm1
movdqa xmm0, xmmword [0x14008cff0]
movdqa xmmword [rbp + 0x20], xmm0
movdqa xmm1, xmmword [0x14008cee0]
movdqa xmmword [rbp + 0x30], xmm1
mov dword [rbp + 0x40], 0x6d236262
mov dword [rbp + 0x44], 0x100607f
lea rcx, [rbp]
call fcn.14002cca0
mov rdx, rax
mov r9d, reloc.WS2_32.dll_recv
xor r8d, r8d
xor ecx, ecx
call qword [sym.imp.USER32.dll_MessageBoxA]
xor ecx, ecx
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll_exit]
int3