Function at 0x14006a4f0
Capabilities:
Access peb ldr_data
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
mov rbp, rsp
sub rsp, 0x80
mov rax, qword [0x1401210c0]
xor rax, rsp
mov qword [rbp - 0x10], rax
mov r15, rcx
xorps xmm0, xmm0
movups xmmword [rbp - 0x48], xmm0
lea r13, [rbp + 0x28]
movabs r12, 0xff00ff00ff00ff00
mov qword [rbp - 0x40], r12
mov qword [rbp - 0x38], r13
mov rax, qword [r13]
xor rax, r12
mov qword [rbp - 0x48], rax
xor r12d, r12d
mov qword [r13], r12
lea rax, [0x140108126]
cmp rcx, rax
je 0x14006b500
lea rcx, [rbp - 0x30]
call fcn.14006a060
nop
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 0x14006a5f6
mov r9d, dword [rdi + 0x18]
test r9d, r9d
je 0x14006a5f6
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, 0xc1ae9812
movzx ecx, byte [rdx]
inc rdx
test cl, cl
je 0x14006a5f1
nop
movsx ecx, cl
xor ecx, r8d
imul r8d, ecx, 0x1000193
movzx ecx, byte [rdx]
lea rdx, [rdx + 1]
test cl, cl
jne 0x14006a5d0
cmp r8d, 0x700f2aa9
je 0x14006a5fb
test r9d, r9d
jne 0x14006a5b0
mov rax, qword [rax]
jmp 0x14006a580
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, 0xfffffff5
call rdx
mov r14, rax
mov rax, qword gs:[0x60]
cmp qword [rbp - 0x20], 0
je 0x14006ad71
mov rcx, qword [rax + 0x18]
mov rcx, qword [rcx + 0x10]
nop dword [rax + rax]
mov r10, qword [rcx + 0x30]
movsxd rdx, dword [r10 + 0x3c]
mov edi, dword [rdx + r10 + 0x88]
add rdi, r10
cmp rdi, r10
je 0x14006a6b6
mov r9d, dword [rdi + 0x18]
test r9d, r9d
je 0x14006a6b6
mov ebx, dword [rdi + 0x20]
nop dword [rax]
nop dword [rax + rax]
dec r9d
lea rax, [rbx + r9*4]
mov edx, dword [rax + r10]
add rdx, r10
mov r8d, 0x91bb229d
movzx eax, byte [rdx]
inc rdx
test al, al
je 0x14006a6b1
nop
movsx eax, al
xor eax, r8d
imul r8d, eax, 0x1000193
movzx eax, byte [rdx]
lea rdx, [rdx + 1]
test al, al
jne 0x14006a690
cmp r8d, 0x5f629c9d
je 0x14006a6bb
test r9d, r9d
jne 0x14006a670
mov rcx, qword [rcx]
jmp 0x14006a640
mov ecx, dword [rdi + 0x1c]
add rcx, r10
mov eax, dword [rdi + 0x24]
add rax, r10
movzx eax, word [rax + r9*2]
mov r8d, dword [rcx + rax*4]
add r8, r10
mov edx, 7
mov rcx, r14
call r8
mov eax, dword [0x14010c56c]
mov dword [rbp - 0x5c], eax
movzx eax, byte [reloc.WS2_32.dll_gethostname]
mov byte [rbp - 0x58], al
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 0x14006a786
mov r9d, dword [rdi + 0x18]
test r9d, r9d
je 0x14006a786
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, 0x6e814525
movzx ecx, byte [rdx]
inc rdx
test cl, cl
je 0x14006a781
nop
movsx ecx, cl
xor ecx, r8d
imul r8d, ecx, 0x1000193
movzx ecx, byte [rdx]
lea rdx, [rdx + 1]
test cl, cl
jne 0x14006a760
cmp r8d, 0x435e130a
je 0x14006a78b
test r9d, r9d
jne 0x14006a740
mov rax, qword [rax]
jmp 0x14006a710
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 byte [rbp - 0x5c], 0xa
xor byte [rbp - 0x5b], 0x36
xor byte [rbp - 0x5a], 0x37
xor byte [rbp - 0x59], 0x38
xor byte [rbp - 0x58], 0x39
lea rcx, [rbp - 0x5c]
call rdx
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 0x14006a846
mov r9d, dword [rdi + 0x18]
test r9d, r9d
je 0x14006a846
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, 0xc4261e2a
movzx ecx, byte [rdx]
inc rdx
test cl, cl
je 0x14006a841
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 0x14006a820
cmp r8d, 0x974eebb4
je 0x14006a84b
test r9d, r9d
jne 0x14006a800
mov rax, qword [rax]
jmp 0x14006a7d0
mov ecx, dword [rdi + 0x1c]
add rcx, r10
mov eax, dword [rdi + 0x24]
add rax, r10
movzx eax, word [rax + r9*2]
mov r8d, dword [rcx + rax*4]
add r8, r10
mov edx, 2
mov rcx, r14
call r8
lea rsi, [rbp - 0x30]
cmp qword [rbp - 0x18], 0xf
cmova rsi, qword [rbp - 0x30]
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 0x14006a906
mov r9d, dword [rdi + 0x18]
test r9d, r9d
je 0x14006a906
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, 0xd89d16f2
movzx ecx, byte [rdx]
inc rdx
test cl, cl
je 0x14006a901
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 0x14006a8e0
cmp r8d, 0x408e1859
je 0x14006a90b
test r9d, r9d
jne 0x14006a8c0
mov rax, qword [rax]
jmp 0x14006a890
mov edx, dword [rdi + 0x1c]
add rdx, r10
mov eax, dword [rdi + 0x24]
add rax, r10
movzx eax, word [rax + r9*2]
mov edx, dword [rdx + rax*4]
add rdx, r10
mov rcx, rsi
call rdx
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 0x14006a9b6
mov r9d, dword [rdi + 0x18]
test r9d, r9d
je 0x14006a9b6
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, 0xdffd2c2f
movzx ecx, byte [rdx]
inc rdx
test cl, cl
je 0x14006a9b1
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 0x14006a990
cmp r8d, 0x1614abab
je 0x14006a9bb
test r9d, r9d
jne 0x14006a970
mov rax, qword [rax]
jmp 0x14006a940
mov ecx, dword [rdi + 0x1c]
add rcx, r10
mov eax, dword [rdi + 0x24]
add rax, r10
movzx eax, word [rax + r9*2]
mov r8d, dword [rcx + rax*4]
add r8, r10
mov edx, 7
mov rcx, r14
call r8
mov eax, dword [0x14010c254]
mov dword [rbp - 0x54], eax
movzx eax, byte [reloc.WS2_32.dll_gethostname]
mov byte [rbp - 0x50], al
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 0x14006aa86
mov r9d, dword [rdi + 0x18]
test r9d, r9d
je 0x14006aa86
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, 0x2653077
movzx ecx, byte [rdx]
inc rdx
test cl, cl
je 0x14006aa81
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 0x14006aa60
cmp r8d, 0x72557098
je 0x14006aa8b
test r9d, r9d
jne 0x14006aa40
mov rax, qword [rax]
jmp 0x14006aa10
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 byte [rbp - 0x54], 0x5d
xor byte [rbp - 0x53], 0x36
xor byte [rbp - 0x52], 0x37
xor byte [rbp - 0x51], 0x38
xor byte [rbp - 0x50], 0x39
lea rcx, [rbp - 0x54]
call rdx
mov byte [rbp - 0x60], 0x35
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 0x14006ab56
mov r9d, dword [rdi + 0x18]
test r9d, r9d
je 0x14006ab56
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, 0x80cdc593
movzx ecx, byte [rdx]
inc rdx
test cl, cl
je 0x14006ab51
nop
movsx ecx, cl
xor ecx, r8d
imul r8d, ecx, 0x1000193
movzx ecx, byte [rdx]
lea rdx, [rdx + 1]
test cl, cl
jne 0x14006ab30
cmp r8d, 0x72a7cf9c
je 0x14006ab5b
test r9d, r9d
jne 0x14006ab10
mov rax, qword [rax]
jmp 0x14006aae0
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 byte [rbp - 0x60], 0
lea rcx, [rbp - 0x60]
call rdx
mov rsi, r12
lea r14, [rbp + 0x28]
nop dword [rax]
nop word [rax + rax]
mov rax, r15
mov rdx, qword [r14]
mov qword [r14], r12
mov ecx, r12d
test r15, r15
je 0x14006abbb
cmp byte [r15], cl
je 0x14006abbb
nop word [rax + rax]
inc ecx
lea rax, [rax + 1]
cmp byte [rax], 0
jne 0x14006abb0
mov qword [r14], rdx
movsxd rax, ecx
cmp rsi, rax
jae 0x14006b4c1
movzx edx, byte [r15 + rsi]
mov rcx, qword [sym.imp.MSVCP140.dll_class_std::basic_ostream_char__struct_std::char_traits_char___std::cout]
call fcn.14007afa0
mov rax, r15
mov rdx, qword [r14]
mov qword [r14], r12
mov ecx, r12d
test r15, r15
je 0x14006abfc
cmp byte [r15], cl
je 0x14006abfc
inc ecx
lea rax, [rax + 1]
cmp byte [rax], 0
jne 0x14006abf1
mov qword [r14], rdx
mov rax, qword gs:[0x60]
mov rax, qword [rax + 0x18]
mov rax, qword [rax + 0x10]
cmp ecx, 0x1e
jge 0x14006acd0
nop dword [rax]
mov r10, qword [rax + 0x30]
movsxd rcx, dword [r10 + 0x3c]
mov ebx, dword [rcx + r10 + 0x88]
add rbx, r10
cmp rbx, r10
je 0x14006ac96
mov r9d, dword [rbx + 0x18]
test r9d, r9d
je 0x14006ac96
mov edi, dword [rbx + 0x20]
nop dword [rax]
nop dword [rax + rax]
dec r9d
lea rcx, [rdi + r9*4]
mov edx, dword [rcx + r10]
add rdx, r10
mov r8d, 0x338d6a85
movzx ecx, byte [rdx]
inc rdx
test cl, cl
je 0x14006ac91
nop
movsx ecx, cl
xor ecx, r8d
imul r8d, ecx, 0x1000193
movzx ecx, byte [rdx]
lea rdx, [rdx + 1]
test cl, cl
jne 0x14006ac70
cmp r8d, 0xa7b75f68
je 0x14006ac9b
test r9d, r9d
jne 0x14006ac50
mov rax, qword [rax]
jmp 0x14006ac20
mov ecx, dword [rbx + 0x24]
add rcx, r10
movzx edx, word [rcx + r9*2]
mov ecx, dword [rbx + 0x1c]
add rcx, r10
mov eax, dword [rcx + rdx*4]
mov ecx, reloc.WS2_32.dll_sendto
add rax, r10
call rax
inc rsi
jmp 0x14006ab90
mov r10, qword [rax + 0x30]
movsxd rcx, dword [r10 + 0x3c]
mov ebx, dword [rcx + r10 + 0x88]
add rbx, r10
cmp rbx, r10
je 0x14006ad46
mov r9d, dword [rbx + 0x18]
test r9d, r9d
je 0x14006ad46
mov edi, dword [rbx + 0x20]
nop dword [rax]
nop dword [rax + rax]
dec r9d
lea rcx, [rdi + r9*4]
mov edx, dword [rcx + r10]
add rdx, r10
mov r8d, 0xd4b903cd
movzx ecx, byte [rdx]
inc rdx
test cl, cl
je 0x14006ad41
nop
movsx ecx, cl
xor ecx, r8d
imul r8d, ecx, 0x1000193
movzx ecx, byte [rdx]
lea rdx, [rdx + 1]
test cl, cl
jne 0x14006ad20
cmp r8d, 0x4b78c70
je 0x14006ad4b
test r9d, r9d
jne 0x14006ad00
mov rax, qword [rax]
jmp 0x14006acd0
mov ecx, dword [rbx + 0x24]
add rcx, r10
movzx edx, word [rcx + r9*2]
mov ecx, dword [rbx + 0x1c]
add rcx, r10
mov eax, dword [rcx + rdx*4]
mov ecx, reloc.WLDAP32.dll_Ordinal_30
add rax, r10
call rax
inc rsi
jmp 0x14006ab90
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 0x14006adf6
mov r9d, dword [rdi + 0x18]
test r9d, r9d
je 0x14006adf6
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, 0x878af04c
movzx ecx, byte [rdx]
inc rdx
test cl, cl
je 0x14006adf1
nop
movsx ecx, cl
xor ecx, r8d
imul r8d, ecx, 0x1000193
movzx ecx, byte [rdx]
lea rdx, [rdx + 1]
test cl, cl
jne 0x14006add0
cmp r8d, 0x8f14ae92
je 0x14006adfb
test r9d, r9d
jne 0x14006adb0
mov rax, qword [rax]
jmp 0x14006ad80
mov ecx, dword [rdi + 0x1c]
add rcx, r10
mov eax, dword [rdi + 0x24]
add rax, r10
movzx eax, word [rax + r9*2]
mov r8d, dword [rcx + rax*4]
add r8, r10
mov edx, 7
mov rcx, r14
call r8
mov eax, dword [0x14010c56c]
mov dword [rbp - 0x54], eax
movzx eax, byte [reloc.WS2_32.dll_gethostname]
mov byte [rbp - 0x50], al
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 0x14006aec6
mov r9d, dword [rdi + 0x18]
test r9d, r9d
je 0x14006aec6
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, 0x2bf3c13a
movzx ecx, byte [rdx]
inc rdx
test cl, cl
je 0x14006aec1
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 0x14006aea0
cmp r8d, 0x3c7c8981
je 0x14006aecb
test r9d, r9d
jne 0x14006ae80
mov rax, qword [rax]
jmp 0x14006ae50
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 byte [rbp - 0x54], 0xa
xor byte [rbp - 0x53], 0x36
xor byte [rbp - 0x52], 0x37
xor byte [rbp - 0x51], 0x38
xor byte [rbp - 0x50], 0x39
lea rcx, [rbp - 0x54]
call rdx
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 0x14006af86
mov r9d, dword [rdi + 0x18]
test r9d, r9d
je 0x14006af86
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, 0x629277ac
movzx ecx, byte [rdx]
inc rdx
test cl, cl
je 0x14006af81
nop
movsx ecx, cl
xor ecx, r8d
imul r8d, ecx, 0x1000193
movzx ecx, byte [rdx]
lea rdx, [rdx + 1]
test cl, cl
jne 0x14006af60
cmp r8d, 0xb0d0cd72
je 0x14006af8b
test r9d, r9d
jne 0x14006af40
mov rax, qword [rax]
jmp 0x14006af10
mov ecx, dword [rdi + 0x1c]
add rcx, r10
mov eax, dword [rdi + 0x24]
add rax, r10
movzx eax, word [rax + r9*2]
mov r8d, dword [rcx + rax*4]
add r8, r10
mov edx, 2
mov rcx, r14
call r8
movzx eax, word [0x14010c2e8]
mov word [rbp - 0x60], ax
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 0x14006b046
mov r9d, dword [rdi + 0x18]
test r9d, r9d
je 0x14006b046
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, 0xfb224526
movzx ecx, byte [rdx]
inc rdx
test cl, cl
je 0x14006b041
nop
movsx ecx, cl
xor ecx, r8d
imul r8d, ecx, 0x1000193
movzx ecx, byte [rdx]
lea rdx, [rdx + 1]
test cl, cl
jne 0x14006b020
cmp r8d, 0xc3d27165
je 0x14006b04b
test r9d, r9d
jne 0x14006b000
mov rax, qword [rax]
jmp 0x14006afd0
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 byte [rbp - 0x60], Ordinal_45
xor byte [rbp - 0x5f], 0x36
lea rcx, [rbp - 0x60]
call rdx
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 0x14006b106
mov r9d, dword [rdi + 0x18]
test r9d, r9d
je 0x14006b106
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, 0x46fe4f94
movzx ecx, byte [rdx]
inc rdx
test cl, cl
je 0x14006b101
nop
movsx ecx, cl
xor ecx, r8d
imul r8d, ecx, 0x1000193
movzx ecx, byte [rdx]
lea rdx, [rdx + 1]
test cl, cl
jne 0x14006b0e0
cmp r8d, 0xf4f8536a
je 0x14006b10b
test r9d, r9d
jne 0x14006b0c0
mov rax, qword [rax]
jmp 0x14006b090
mov ecx, dword [rdi + 0x1c]
add rcx, r10
mov eax, dword [rdi + 0x24]
add rax, r10
movzx eax, word [rax + r9*2]
mov r8d, dword [rcx + rax*4]
add r8, r10
mov edx, 7
mov rcx, r14
call r8
mov eax, dword [0x14010c254]
mov dword [rbp - 0x5c], eax
movzx eax, byte [reloc.WS2_32.dll_gethostname]
mov byte [rbp - 0x58], al
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 0x14006b1d6
mov r9d, dword [rdi + 0x18]
test r9d, r9d
je 0x14006b1d6
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, 0xe76958cd
movzx ecx, byte [rdx]
inc rdx
test cl, cl
je 0x14006b1d1
nop
movsx ecx, cl
xor ecx, r8d
imul r8d, ecx, 0x1000193
movzx ecx, byte [rdx]
lea rdx, [rdx + 1]
test cl, cl
jne 0x14006b1b0
cmp r8d, 0xc092a72
je 0x14006b1db
test r9d, r9d
jne 0x14006b190
mov rax, qword [rax]
jmp 0x14006b160
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 byte [rbp - 0x5c], 0x5d
xor byte [rbp - 0x5b], 0x36
xor byte [rbp - 0x5a], 0x37
xor byte [rbp - 0x59], 0x38
xor byte [rbp - 0x58], 0x39
lea rcx, [rbp - 0x5c]
call rdx
mov byte [rbp - 0x60], 0x35
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 0x14006b2a6
mov r9d, dword [rdi + 0x18]
test r9d, r9d
je 0x14006b2a6
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, 0x993ff39f
movzx ecx, byte [rdx]
inc rdx
test cl, cl
je 0x14006b2a1
nop
movsx ecx, cl
xor ecx, r8d
imul r8d, ecx, 0x1000193
movzx ecx, byte [rdx]
lea rdx, [rdx + 1]
test cl, cl
jne 0x14006b280
cmp r8d, 0x36db8080
je 0x14006b2ab
test r9d, r9d
jne 0x14006b260
mov rax, qword [rax]
jmp 0x14006b230
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 byte [rbp - 0x60], 0
lea rcx, [rbp - 0x60]
call rdx
mov rsi, r12
lea r14, [rbp + 0x28]
nop dword [rax]
nop word [rax + rax]
mov rax, r15
mov rdx, qword [r14]
mov qword [r14], r12
mov ecx, r12d
test r15, r15
je 0x14006b30b
cmp byte [r15], cl
je 0x14006b30b
nop word [rax + rax]
inc ecx
lea rax, [rax + 1]
cmp byte [rax], 0
jne 0x14006b300
mov qword [r14], rdx
movsxd rax, ecx
cmp rsi, rax
jae 0x14006b4c1
movzx edx, byte [r15 + rsi]
mov rcx, qword [sym.imp.MSVCP140.dll_class_std::basic_ostream_char__struct_std::char_traits_char___std::cout]
call fcn.14007afa0
mov rax, r15
mov rdx, qword [r14]
mov qword [r14], r12
mov ecx, r12d
test r15, r15
je 0x14006b34c
cmp byte [r15], cl
je 0x14006b34c
inc ecx
lea rax, [rax + 1]
cmp byte [rax], 0
jne 0x14006b341
mov qword [r14], rdx
mov rax, qword gs:[0x60]
mov rax, qword [rax + 0x18]
mov rax, qword [rax + 0x10]
cmp ecx, 0x1e
jge 0x14006b420
nop dword [rax]
mov r10, qword [rax + 0x30]
movsxd rcx, dword [r10 + 0x3c]
mov ebx, dword [rcx + r10 + 0x88]
add rbx, r10
cmp rbx, r10
je 0x14006b3e6
mov r9d, dword [rbx + 0x18]
test r9d, r9d
je 0x14006b3e6
mov edi, dword [rbx + 0x20]
nop dword [rax]
nop dword [rax + rax]
dec r9d
lea rcx, [rdi + r9*4]
mov edx, dword [rcx + r10]
add rdx, r10
mov r8d, 0x2cb7d0fe
movzx ecx, byte [rdx]
inc rdx
test cl, cl
je 0x14006b3e1
nop
movsx ecx, cl
xor ecx, r8d
imul r8d, ecx, 0x1000193
movzx ecx, byte [rdx]
lea rdx, [rdx + 1]
test cl, cl
jne 0x14006b3c0
cmp r8d, 0x18c2daa1
je 0x14006b3eb
test r9d, r9d
jne 0x14006b3a0
mov rax, qword [rax]
jmp 0x14006b370
mov ecx, dword [rbx + 0x24]
add rcx, r10
movzx edx, word [rcx + r9*2]
mov ecx, dword [rbx + 0x1c]
add rcx, r10
mov eax, dword [rcx + rdx*4]
mov ecx, reloc.WS2_32.dll_sendto
add rax, r10
call rax
inc rsi
jmp 0x14006b2e0
mov r10, qword [rax + 0x30]
movsxd rcx, dword [r10 + 0x3c]
mov ebx, dword [rcx + r10 + 0x88]
add rbx, r10
cmp rbx, r10
je 0x14006b496
mov r9d, dword [rbx + 0x18]
test r9d, r9d
je 0x14006b496
mov edi, dword [rbx + 0x20]
nop dword [rax]
nop dword [rax + rax]
dec r9d
lea rcx, [rdi + r9*4]
mov ecx, dword [rcx + r10]
add rcx, r10
mov r8d, 0xf4991bce
movzx edx, byte [rcx]
inc rcx
test dl, dl
je 0x14006b491
nop
movsx edx, dl
xor edx, r8d
imul r8d, edx, 0x1000193
movzx edx, byte [rcx]
lea rcx, [rcx + 1]
test dl, dl
jne 0x14006b470
cmp r8d, 0xb1098fd1
je 0x14006b49b
test r9d, r9d
jne 0x14006b450
mov rax, qword [rax]
jmp 0x14006b420
mov ecx, dword [rbx + 0x24]
add rcx, r10
movzx edx, word [rcx + r9*2]
mov ecx, dword [rbx + 0x1c]
add rcx, r10
mov eax, dword [rcx + rdx*4]
mov ecx, reloc.WLDAP32.dll_Ordinal_30
add rax, r10
call rax
inc rsi
jmp 0x14006b2e0
mov rdx, qword [rbp - 0x18]
cmp rdx, 0xf
jbe 0x14006b500
inc rdx
mov rcx, qword [rbp - 0x30]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14006b4fa
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x14006b4fa
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.1400eb23c
nop
mov rax, qword [rbp - 0x48]
movabs rcx, 0xff00ff00ff00ff00
xor rax, rcx
mov qword [r13], rax
mov rcx, qword [rbp - 0x10]
xor rcx, rsp
call fcn.1400eaeb0
lea r11, [rsp + 0x80]
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