Function at 0x1400b58c0
Capabilities:
Access peb ldr_data
Encode data using xor
Hash data using fnv
Resolve function by parsing pe exports

Disassembly:
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbp
push rbx
sub rsp, 0x28
mov esi, edx
mov rdi, rcx
xor ebp, ebp
lea rbx, [rsp + 0x20]
jmp 0x1400b5943
add rdx, rax
mov rcx, rbx
call rdx
call sub.MSVCP140.dll__Query_perf_frequency
mov r12, rax
call sub.MSVCP140.dll__Query_perf_counter
mov rcx, rax
cmp r12, 0x989680
jne 0x1400b6076
imul rax, rcx, 0x64
lea rcx, [rax + 0x2faf080]
movabs rdx, 0x7ffffffffd050f7f
cmp rax, rdx
movabs rax, 0x7fffffffffffffff
cmovge rcx, rax
mov qword [rsp + 0x20], rcx
mov rcx, rbx
call fcn.1400d9c60
inc ebp
cmp ebp, 3
je 0x1400b6125
cmp ebp, 2
je 0x1400b5bc0
cmp ebp, 1
je 0x1400b5e20
test ebp, ebp
jne 0x1400b5938
mov rcx, qword [sym.imp.MSVCP140.dll_class_std::basic_ostream_char__struct_std::char_traits_char___std::cout]
lea rdx, [0x14017b471]
call fcn.140018cd0
mov rax, qword gs:[0x60]
mov rcx, qword [rax + 0x18]
add rcx, 0x10
nop dword [rax]
mov rcx, qword [rcx]
mov rax, qword [rcx + 0x30]
movsxd rdx, dword [rax + 0x3c]
mov edx, dword [rax + rdx + 0x88]
test rdx, rdx
je 0x1400b5980
mov r8d, dword [rax + rdx + 0x18]
test r8, r8
je 0x1400b5980
mov r9d, dword [rax + rdx + 0x20]
add r9, rax
lea r10, [rax + 1]
jmp 0x1400b59b5
test r11, r11
je 0x1400b5980
dec r8
mov r11d, r8d
mov r12d, dword [r9 + r11*4]
movzx r13d, byte [rax + r12]
test r13b, r13b
je 0x1400b59b0
add r12, r10
mov r15d, 0x811c9dc5
nop word cs:[rax + rax]
movsx r14d, r13b
xor r14d, r15d
imul r15d, r14d, 0x1000193
movzx r13d, byte [r12]
inc r12
test r13b, r13b
jne 0x1400b59e0
cmp r15d, 0xe3b9876a
jne 0x1400b59b0
mov ecx, dword [rax + rdx + 0x1c]
mov edx, dword [rax + rdx + 0x24]
add rcx, rax
add rdx, rax
movzx edx, word [rdx + r11*2]
mov edx, dword [rcx + rdx*4]
add rdx, rax
mov ecx, 0xfffffff5
call rdx
mov rcx, qword gs:[0x60]
mov rdx, qword [rcx + 0x18]
add rdx, 0x10
nop word cs:[rax + rax]
mov rdx, qword [rdx]
mov rcx, qword [rdx + 0x30]
movsxd r8, dword [rcx + 0x3c]
mov r8d, dword [rcx + r8 + 0x88]
test r8, r8
je 0x1400b5a40
mov r9d, dword [rcx + r8 + 0x18]
test r9, r9
je 0x1400b5a40
mov r10d, dword [rcx + r8 + 0x20]
add r10, rcx
lea r11, [rcx + 1]
jmp 0x1400b5a75
test r12, r12
je 0x1400b5a40
dec r9
mov r12d, r9d
mov r13d, dword [r10 + r12*4]
movzx r15d, byte [rcx + r13]
test r15b, r15b
je 0x1400b5a70
add r13, r11
mov r14d, 0x811c9dc5
nop word cs:[rax + rax]
movsx r15d, r15b
xor r15d, r14d
imul r14d, r15d, 0x1000193
movzx r15d, byte [r13]
inc r13
test r15b, r15b
jne 0x1400b5aa0
cmp r14d, 0xbc0e3315
jne 0x1400b5a70
mov edx, dword [rcx + r8 + 0x1c]
mov r8d, dword [rcx + r8 + 0x24]
add rdx, rcx
add r8, rcx
movzx r8d, word [r8 + r12*2]
mov r8d, dword [rdx + r8*4]
add r8, rcx
mov rcx, rax
mov dx, 7
call r8
mov byte [rsp + 0x24], reloc.WS2_32.dll_gethostname
mov dword [rsp + 0x20], 0x6317163f
mov rax, qword gs:[0x60]
mov rcx, qword [rax + 0x18]
add rcx, 0x10
nop dword [rax + rax]
mov rcx, qword [rcx]
mov rax, qword [rcx + 0x30]
movsxd rdx, dword [rax + 0x3c]
mov edx, dword [rax + rdx + 0x88]
test rdx, rdx
je 0x1400b5b10
mov r8d, dword [rax + rdx + 0x18]
test r8, r8
je 0x1400b5b10
mov r9d, dword [rax + rdx + 0x20]
add r9, rax
lea r10, [rax + 1]
jmp 0x1400b5b45
test r11, r11
je 0x1400b5b10
dec r8
mov r11d, r8d
mov r12d, dword [r9 + r11*4]
movzx r15d, byte [rax + r12]
test r15b, r15b
je 0x1400b5b40
add r12, r10
mov r14d, 0x811c9dc5
nop word cs:[rax + rax]
movsx r15d, r15b
xor r15d, r14d
imul r14d, r15d, 0x1000193
movzx r15d, byte [r12]
inc r12
test r15b, r15b
jne 0x1400b5b70
cmp r14d, 0xe76fb4aa
jne 0x1400b5b40
mov ecx, dword [rax + rdx + 0x1c]
mov edx, dword [rax + rdx + 0x24]
add rcx, rax
add rdx, rax
movzx edx, word [rdx + r11*2]
mov edx, dword [rcx + rdx*4]
mov dword [rsp + 0x20], 0x5b20200a
mov byte [rsp + 0x24], 0
jmp 0x1400b58e0
mov rax, qword gs:[0x60]
mov rcx, qword [rax + 0x18]
add rcx, 0x10
nop word cs:[rax + rax]
mov rcx, qword [rcx]
mov rax, qword [rcx + 0x30]
movsxd rdx, dword [rax + 0x3c]
mov edx, dword [rax + rdx + 0x88]
test rdx, rdx
je 0x1400b5be0
mov r8d, dword [rax + rdx + 0x18]
test r8, r8
je 0x1400b5be0
mov r9d, dword [rax + rdx + 0x20]
add r9, rax
lea r10, [rax + 1]
jmp 0x1400b5c15
test r11, r11
je 0x1400b5be0
dec r8
mov r11d, r8d
mov r12d, dword [r9 + r11*4]
movzx r15d, byte [rax + r12]
test r15b, r15b
je 0x1400b5c10
add r12, r10
mov r14d, 0x811c9dc5
nop word cs:[rax + rax]
movsx r15d, r15b
xor r15d, r14d
imul r14d, r15d, 0x1000193
movzx r15d, byte [r12]
inc r12
test r15b, r15b
jne 0x1400b5c40
cmp r14d, 0xe3b9876a
jne 0x1400b5c10
mov ecx, dword [rax + rdx + 0x1c]
mov edx, dword [rax + rdx + 0x24]
add rcx, rax
add rdx, rax
movzx edx, word [rdx + r11*2]
mov edx, dword [rcx + rdx*4]
add rdx, rax
mov ecx, 0xfffffff5
call rdx
mov rcx, qword gs:[0x60]
mov rdx, qword [rcx + 0x18]
add rdx, 0x10
nop word cs:[rax + rax]
mov rdx, qword [rdx]
mov rcx, qword [rdx + 0x30]
movsxd r8, dword [rcx + 0x3c]
mov r8d, dword [rcx + r8 + 0x88]
test r8, r8
je 0x1400b5ca0
mov r9d, dword [rcx + r8 + 0x18]
test r9, r9
je 0x1400b5ca0
mov r10d, dword [rcx + r8 + 0x20]
add r10, rcx
lea r11, [rcx + 1]
jmp 0x1400b5cd5
test r12, r12
je 0x1400b5ca0
dec r9
mov r12d, r9d
mov r13d, dword [r10 + r12*4]
movzx r15d, byte [rcx + r13]
test r15b, r15b
je 0x1400b5cd0
add r13, r11
mov r14d, 0x811c9dc5
nop word cs:[rax + rax]
movsx r15d, r15b
xor r15d, r14d
imul r14d, r15d, 0x1000193
movzx r15d, byte [r13]
inc r13
test r15b, r15b
jne 0x1400b5d00
cmp r14d, 0xbc0e3315
jne 0x1400b5cd0
mov edx, dword [rcx + r8 + 0x1c]
mov r8d, dword [rcx + r8 + 0x24]
add rdx, rcx
add r8, rcx
movzx r8d, word [r8 + r12*2]
mov r8d, dword [rdx + r8*4]
add r8, rcx
mov rcx, rax
mov dx, 7
call r8
mov word [rsp + 0x24], 0x3a19
mov dword [rsp + 0x20], 0x61a1668
mov rax, qword gs:[0x60]
mov rcx, qword [rax + 0x18]
add rcx, 0x10
nop word [rax + rax]
mov rcx, qword [rcx]
mov rax, qword [rcx + 0x30]
movsxd rdx, dword [rax + 0x3c]
mov edx, dword [rax + rdx + 0x88]
test rdx, rdx
je 0x1400b5d70
mov r8d, dword [rax + rdx + 0x18]
test r8, r8
je 0x1400b5d70
mov r9d, dword [rax + rdx + 0x20]
add r9, rax
lea r10, [rax + 1]
jmp 0x1400b5da5
test r11, r11
je 0x1400b5d70
dec r8
mov r11d, r8d
mov r12d, dword [r9 + r11*4]
movzx r15d, byte [rax + r12]
test r15b, r15b
je 0x1400b5da0
add r12, r10
mov r14d, 0x811c9dc5
nop word cs:[rax + rax]
movsx r15d, r15b
xor r15d, r14d
imul r14d, r15d, 0x1000193
movzx r15d, byte [r12]
inc r12
test r15b, r15b
jne 0x1400b5dd0
cmp r14d, 0xe76fb4aa
jne 0x1400b5da0
mov ecx, dword [rax + rdx + 0x1c]
mov edx, dword [rax + rdx + 0x24]
add rcx, rax
add rdx, rax
movzx edx, word [rdx + r11*2]
mov edx, dword [rcx + rdx*4]
mov dword [rsp + 0x20], 0x3e2d205d
mov word [rsp + 0x24], reloc.WLDAP32.dll_Ordinal_32
jmp 0x1400b58e0
mov rax, qword gs:[0x60]
mov rcx, qword [rax + 0x18]
add rcx, 0x10
nop word cs:[rax + rax]
mov rcx, qword [rcx]
mov rax, qword [rcx + 0x30]
movsxd rdx, dword [rax + 0x3c]
mov edx, dword [rax + rdx + 0x88]
test rdx, rdx
je 0x1400b5e40
mov r8d, dword [rax + rdx + 0x18]
test r8, r8
je 0x1400b5e40
mov r9d, dword [rax + rdx + 0x20]
add r9, rax
lea r10, [rax + 1]
jmp 0x1400b5e75
test r11, r11
je 0x1400b5e40
dec r8
mov r11d, r8d
mov r12d, dword [r9 + r11*4]
movzx r15d, byte [rax + r12]
test r15b, r15b
je 0x1400b5e70
add r12, r10
mov r14d, 0x811c9dc5
nop word cs:[rax + rax]
movsx r15d, r15b
xor r15d, r14d
imul r14d, r15d, 0x1000193
movzx r15d, byte [r12]
inc r12
test r15b, r15b
jne 0x1400b5ea0
cmp r14d, 0xe3b9876a
jne 0x1400b5e70
mov ecx, dword [rax + rdx + 0x1c]
mov edx, dword [rax + rdx + 0x24]
add rcx, rax
add rdx, rax
movzx edx, word [rdx + r11*2]
mov edx, dword [rcx + rdx*4]
add rdx, rax
mov ecx, 0xfffffff5
call rdx
mov rcx, qword gs:[0x60]
mov rdx, qword [rcx + 0x18]
add rdx, 0x10
nop word cs:[rax + rax]
mov rdx, qword [rdx]
mov rcx, qword [rdx + 0x30]
movsxd r8, dword [rcx + 0x3c]
mov r8d, dword [rcx + r8 + 0x88]
test r8, r8
je 0x1400b5f00
mov r9d, dword [rcx + r8 + 0x18]
test r9, r9
je 0x1400b5f00
mov r10d, dword [rcx + r8 + 0x20]
add r10, rcx
lea r11, [rcx + 1]
jmp 0x1400b5f35
test r12, r12
je 0x1400b5f00
dec r9
mov r12d, r9d
mov r13d, dword [r10 + r12*4]
movzx r15d, byte [rcx + r13]
test r15b, r15b
je 0x1400b5f30
add r13, r11
mov r14d, 0x811c9dc5
nop word cs:[rax + rax]
movsx r15d, r15b
xor r15d, r14d
imul r14d, r15d, 0x1000193
movzx r15d, byte [r13]
inc r13
test r15b, r15b
jne 0x1400b5f60
cmp r14d, 0xbc0e3315
jne 0x1400b5f30
mov edx, dword [rcx + r8 + 0x1c]
mov r8d, dword [rcx + r8 + 0x24]
add rdx, rcx
add r8, rcx
movzx r8d, word [r8 + r12*2]
mov r8d, dword [rdx + r8*4]
add r8, rcx
mov rcx, rax
mov dx, 1
call r8
mov word [rsp + 0x20], 0x361e
mov rax, qword gs:[0x60]
mov rcx, qword [rax + 0x18]
add rcx, 0x10
nop word cs:[rax + rax]
mov rcx, qword [rcx]
mov rax, qword [rcx + 0x30]
movsxd rdx, dword [rax + 0x3c]
mov edx, dword [rax + rdx + 0x88]
test rdx, rdx
je 0x1400b5fd0
mov r8d, dword [rax + rdx + 0x18]
test r8, r8
je 0x1400b5fd0
mov r9d, dword [rax + rdx + 0x20]
add r9, rax
lea r10, [rax + 1]
jmp 0x1400b6005
test r11, r11
je 0x1400b5fd0
dec r8
mov r11d, r8d
mov r12d, dword [r9 + r11*4]
movzx r15d, byte [rax + r12]
test r15b, r15b
je 0x1400b6000
add r12, r10
mov r14d, 0x811c9dc5
nop word cs:[rax + rax]
movsx r15d, r15b
xor r15d, r14d
imul r14d, r15d, 0x1000193
movzx r15d, byte [r12]
inc r12
test r15b, r15b
jne 0x1400b6030
cmp r14d, 0xe76fb4aa
jne 0x1400b6000
mov ecx, dword [rax + rdx + 0x1c]
mov edx, dword [rax + rdx + 0x24]
add rcx, rax
add rdx, rax
movzx edx, word [rdx + r11*2]
mov edx, dword [rcx + rdx*4]
mov word [rsp + 0x20], Ordinal_46
jmp 0x1400b58e0
mov rax, rcx
cmp r12, 0x16e3600
jne 0x1400b60dd
movabs r9, 0xb2f4fc0794908cf3
imul r9
mov r8, rdx
add r8, rcx
mov rax, r8
shr rax, 0x3f
sar r8, 0x18
add r8, rax
imul rax, r8, 0x16e3600
sub rcx, rax
imul rcx, rcx, 0x3b9aca00
mov rax, rcx
imul r9
mov rax, rdx
imul rdx, r8, 0x3b9aca00
add rax, rcx
mov rcx, rax
shr rcx, 0x3f
sar rax, 0x18
add rax, rcx
add rax, rdx
jmp 0x1400b5909
or rax, r12
shr rax, 0x20
je 0x1400b60f0
mov rax, rcx
cqo
idiv r12
jmp 0x1400b60f7
mov eax, ecx
xor edx, edx
div r12d
imul rcx, rax, 0x3b9aca00
imul rax, rdx, 0x3b9aca00
mov rdx, r12
or rdx, rax
shr rdx, 0x20
je 0x1400b6118
cqo
idiv r12
jmp 0x1400b611d
xor edx, edx
div r12d
add rax, rcx
jmp 0x1400b5909
movsxd rax, esi
imul r12, rax, 0xfffffffffff0bdc0
movabs rcx, 0x7fffffffffffffff
add r12, rcx
imul rbp, rax, 0xf4240
xor r13d, r13d
mov rbx, qword [sym.imp.MSVCP140.dll_class_std::basic_ostream_char__struct_std::char_traits_char___std::cout]
lea r14, [rsp + 0x20]
nop word cs:[rax + rax]
mov eax, 0
test rdi, rdi
je 0x1400b618b
cmp byte [rdi], 0
mov eax, 0
je 0x1400b618b
xor eax, eax
nop word cs:[rax + rax]
cmp byte [rdi + rax + 1], 0
lea rax, [rax + 1]
jne 0x1400b6180
cdqe
cmp r13, rax
jge 0x1400b62a1
movzx edx, byte [rdi + r13]
mov rcx, rbx
call fcn.140018a80
call sub.MSVCP140.dll__Query_perf_frequency
mov r15, rax
call sub.MSVCP140.dll__Query_perf_counter
mov rcx, rax
cmp r15, 0x989680
jne 0x1400b61f0
imul rdx, rcx, 0x64
lea rax, [rdx + rbp]
cmp rdx, r12
movabs rcx, 0x7fffffffffffffff
cmovge rax, rcx
test esi, esi
cmovle rax, rdx
mov qword [rsp + 0x20], rax
mov rcx, r14
call fcn.1400d9c60
inc r13
jmp 0x1400b6160
mov rax, rcx
cmp r15, 0x16e3600
jne 0x1400b6254
movabs r9, 0xb2f4fc0794908cf3
imul r9
mov r8, rdx
add r8, rcx
mov rax, r8
shr rax, 0x3f
sar r8, 0x18
add r8, rax
imul rax, r8, 0x16e3600
sub rcx, rax
imul rcx, rcx, 0x3b9aca00
mov rax, rcx
imul r9
imul rax, r8, 0x3b9aca00
add rdx, rcx
mov rcx, rdx
shr rcx, 0x3f
sar rdx, 0x18
add rdx, rcx
add rdx, rax
jmp 0x1400b61c0
or rax, r15
shr rax, 0x20
je 0x1400b6267
mov rax, rcx
cqo
idiv r15
jmp 0x1400b626e
mov eax, ecx
xor edx, edx
div r15d
imul rcx, rax, 0x3b9aca00
imul rax, rdx, 0x3b9aca00
mov rdx, r15
or rdx, rax
shr rdx, 0x20
je 0x1400b6292
cqo
idiv r15
mov rdx, rax
jmp 0x1400b6299
xor edx, edx
div r15d
mov edx, eax
add rdx, rcx
jmp 0x1400b61c0
add rsp, 0x28
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret