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

Disassembly:
push rbp
push rbx
push rsi
push rdi
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0x158]
sub rsp, 0x258
mov rax, qword [0x14003e010]
xor rax, rsp
mov qword [rbp + 0x140], rax
mov r15, r9
mov r13, r8
mov ebx, edx
mov r12, rcx
mov r14, qword [rcx + 0x28]
mov rsi, qword [rcx]
lea rcx, [rbp + 0x120]
call fcn.14000c710
mov rdi, rax
mov edx, ebx
mov rcx, rax
call fcn.14000fde0
mov rbx, rax
lea rcx, [rsp + 0x20]
call fcn.1400047c0
mov r9, rax
mov r8, rdi
mov rdx, rbx
lea rcx, [rsp + 0x70]
call fcn.14000fe40
lea r8, [rsp + 0x70]
lea rdx, [rbp - 0x18]
mov rcx, rsi
call fcn.1400195b0
mov rbx, rax
movabs rax, 0x1f63cbc5d6394780
mov qword [rsp + 0x30], rax
movabs rsi, 0xf5685648c35b3cf6
mov qword [rsp + 0x38], rsi
movabs rdi, 0x1f63cbc5af7475c5
mov qword [rbp + 0xf0], rdi
mov qword [rbp + 0xf8], rsi
movdqa xmm0, xmmword [rsp + 0x30]
xorps xmm0, xmmword [rbp + 0xf0]
movdqa xmmword [rsp + 0x30], xmm0
lea rdx, [rsp + 0x30]
lea rcx, [rbp + 0x10]
call fcn.14000a110
mov rdx, rbx
lea rcx, [rbp + 0x30]
call fcn.14000a050
nop
movabs rax, 0x1f63cbc5c7274389
mov qword [rsp + 0x40], rax
mov qword [rsp + 0x48], rsi
mov qword [rbp + 0xf0], rdi
mov qword [rbp + 0xf8], rsi
movdqa xmm0, xmmword [rsp + 0x40]
xorps xmm0, xmmword [rbp + 0xf0]
movdqa xmmword [rsp + 0x40], xmm0
lea rdx, [rsp + 0x40]
lea rcx, [rbp - 0x58]
call fcn.14000a110
mov r8, rax
lea rdx, [rbp - 0x38]
call fcn.140019850
mov rbx, rax
movabs rax, 0x1f63cbc5fd2639bd
mov qword [rsp + 0x50], rax
mov qword [rsp + 0x58], rsi
mov qword [rbp + 0xf0], rdi
mov qword [rbp + 0xf8], rsi
movdqa xmm0, xmmword [rsp + 0x50]
xorps xmm0, xmmword [rbp + 0xf0]
movdqa xmmword [rsp + 0x50], xmm0
lea rdx, [rsp + 0x50]
lea rcx, [rbp + 0x50]
call fcn.14000a110
mov rdx, rbx
lea rcx, [rbp + 0x70]
call fcn.14000a050
nop
movabs rax, 0x1f63cbc5d9421f91
mov qword [rsp + 0x60], rax
mov qword [rsp + 0x68], rsi
mov qword [rbp + 0xf0], rdi
mov qword [rbp + 0xf8], rsi
movdqa xmm0, xmmword [rsp + 0x60]
xorps xmm0, xmmword [rbp + 0xf0]
movdqa xmmword [rsp + 0x60], xmm0
lea rdx, [rsp + 0x60]
lea rcx, [rbp + 0x90]
call fcn.14000a110
nop
lea rdx, [r12 + 8]
lea rcx, [rbp + 0xb0]
call fcn.14000a250
nop
lea rax, [rbp + 0x10]
mov qword [rbp + 0xf0], rax
lea rax, [rbp + 0xd0]
mov qword [rbp + 0xf8], rax
lea rdx, [rbp + 0xf0]
lea rcx, [rbp - 0x70]
call fcn.140018820
mov r8, rax
lea rdx, [rbp + 0xd0]
mov rcx, r14
call fcn.14001a250
nop
lea r9, [0x140016390]
mov edx, 0x40
lea r8d, [rdx - 0x3d]
lea rcx, [rbp + 0x10]
call fcn.140033338
nop
lea rcx, [rbp - 0x38]
call fcn.14000a030
nop
lea rcx, [rbp - 0x18]
call fcn.14000a030
movabs rax, 0x1f63cbc59b200cb1
mov qword [rbp + 0xf0], rax
mov qword [rbp + 0xf8], rsi
mov qword [rbp + 0x120], rdi
mov qword [rbp + 0x128], rsi
movdqa xmm0, xmmword [rbp + 0xf0]
xorps xmm0, xmmword [rbp + 0x120]
movdqa xmmword [rbp + 0xf0], xmm0
lea rcx, [rbp + 0xf0]
call fcn.14000bb50
mov rbx, rax
mov rdi, qword [rbp + 0xe0]
lea rcx, [rbp + 0xd0]
call fcn.140009750
cmp rdi, rbx
jne 0x140015f10
mov r8, rdi
lea rdx, [rbp + 0xf0]
mov rcx, rax
call sub.VCRUNTIME140.dll_memcmp
test eax, eax
jne 0x140015f10
test r15, r15
je 0x140016352
mov byte [r15], 1
jmp 0x140016352
movabs rax, 0x1f63cbc5de061c86
mov qword [rbp + 0xf0], rax
mov qword [rbp + 0xf8], rsi
movabs r14, 0x1f63cbc5af7475c5
mov qword [rbp + 0x120], r14
mov qword [rbp + 0x128], rsi
movdqa xmm0, xmmword [rbp + 0xf0]
xorps xmm0, xmmword [rbp + 0x120]
movdqa xmmword [rbp + 0xf0], xmm0
lea rcx, [rbp + 0xf0]
call fcn.14000bb50
mov rbx, rax
mov rdi, qword [rbp + 0xe0]
lea rcx, [rbp + 0xd0]
call fcn.140009750
cmp rdi, rbx
jne 0x1400161e8
mov r8, rdi
lea rdx, [rbp + 0xf0]
mov rcx, rax
call sub.VCRUNTIME140.dll_memcmp
test eax, eax
jne 0x1400161e8
movabs rax, 0x1f63cbb7c0060780
mov qword [rbp + 0xf0], rax
mov qword [rbp + 0xf8], rsi
mov qword [rbp + 0x120], r14
mov qword [rbp + 0x128], rsi
movdqa xmm0, xmmword [rbp + 0xf0]
xorps xmm0, xmmword [rbp + 0x120]
movdqa xmmword [rbp + 0xf0], xmm0
movabs rax, 0x3f06b8abca171c89
mov qword [rbp + 0x120], rax
movabs rax, 0xd40c333aaa2b44b3
mov qword [rbp + 0x128], rax
movabs rcx, 0x7d634f9b400a38af
mov qword [rbp + 0x130], rcx
movabs rax, 0x311b1b763648b758
mov qword [rbp + 0x138], rax
mov qword [rbp + 0x100], r14
mov qword [rbp + 0x108], rsi
mov qword [rbp + 0x110], rcx
mov qword [rbp + 0x118], rax
movdqa xmm0, xmmword [rbp + 0x120]
xorps xmm0, xmmword [rbp + 0x100]
movdqa xmmword [rbp + 0x120], xmm0
movdqa xmm1, xmmword [rbp + 0x130]
xorps xmm1, xmmword [rbp + 0x110]
movdqa xmmword [rbp + 0x130], xmm1
mov rax, qword gs:[0x60]
mov rax, qword [rax + 0x18]
mov rax, qword [rax + 0x10]
nop dword [rax + rax]
mov r11, qword [rax + 0x30]
movsxd rcx, dword [r11 + 0x3c]
mov edi, dword [rcx + r11 + 0x88]
add rdi, r11
cmp rdi, r11
je 0x1400160f6
mov r9d, dword [rdi + 0x18]
test r9d, r9d
je 0x1400160f6
mov ebx, dword [rdi + 0x20]
nop dword [rax]
nop dword [rax + rax]
dec r9d
lea rcx, [r11 + r9*4]
mov edx, dword [rcx + rbx]
add rdx, r11
mov r8d, 0x3d147e70
movzx ecx, byte [rdx]
inc rdx
test cl, cl
je 0x1400160f1
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 0x1400160d0
cmp r8d, 0xd2bd30bb
je 0x1400160fb
test r9d, r9d
jne 0x1400160b0
mov rax, qword [rax]
jmp 0x140016080
mov ecx, dword [rdi + 0x1c]
add rcx, r11
mov eax, dword [rdi + 0x24]
add rax, r11
movzx eax, word [rax + r9*2]
mov r10d, dword [rcx + rax*4]
add r10, r11
xor r9d, r9d
lea r8, [rbp + 0xf0]
lea rdx, [rbp + 0x120]
xor ecx, ecx
call r10
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 0x1400161b6
mov r9d, dword [rdi + 0x18]
test r9d, r9d
je 0x1400161b6
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, 0x46124e04
movzx edx, byte [rcx]
inc rcx
test dl, dl
je 0x1400161b1
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 0x140016190
cmp r8d, 0xd5ccab14
je 0x1400161bb
test r9d, r9d
jne 0x140016170
mov rax, qword [rax]
jmp 0x140016140
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
test r15, r15
je 0x140016352
mov byte [r15], 2
jmp 0x140016352
movabs rax, 0x1f63cbc5e8114d97
mov qword [rbp + 0xf0], rax
mov qword [rbp + 0xf8], rsi
mov qword [rbp + 0x120], r14
mov qword [rbp + 0x128], rsi
movdqa xmm0, xmmword [rbp + 0xf0]
xorps xmm0, xmmword [rbp + 0x120]
movdqa xmmword [rbp + 0xf0], xmm0
lea rcx, [rbp + 0xf0]
call fcn.14000bb50
mov rbx, rax
mov rdi, qword [rbp + 0xe0]
lea rcx, [rbp + 0xd0]
call fcn.140009750
cmp rdi, rbx
jne 0x140016274
mov r8, rdi
lea rdx, [rbp + 0xf0]
mov rcx, rax
call sub.VCRUNTIME140.dll_memcmp
test eax, eax
jne 0x140016274
test r15, r15
je 0x140016352
mov byte [r15], 3
jmp 0x140016352
mov rbx, qword [r12]
lea rdx, [rbp + 0xd0]
lea rcx, [rbp + 0x100]
call fcn.14000a250
mov r8, rax
lea rdx, [rbp + 0x120]
mov rcx, rbx
call fcn.140019720
mov rbx, rax
lea rax, [rbp + 0xd0]
cmp rax, rbx
je 0x1400162db
lea rcx, [rbp + 0xd0]
call fcn.14000a870
mov rcx, rbx
call fcn.14000a870
lea rcx, [rbp + 0xd0]
call fcn.14000b2d0
mov rdx, rbx
lea rcx, [rbp + 0xd0]
call fcn.14000b890
lea rcx, [rbp + 0x120]
call fcn.14000a030
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__errno]
mov rdi, rax
lea rcx, [rbp + 0xd0]
call fcn.140009e30
mov rbx, rax
mov dword [rdi], 0
mov r8d, 0xa
lea rdx, [rbp + 0xf0]
mov rcx, rax
call qword [sym.imp.api_ms_win_crt_convert_l1_1_0.dll_strtoull]
cmp rbx, qword [rbp + 0xf0]
jne 0x140016332
lea rcx, str.invalid_stoull_argument
call qword [sym.imp.MSVCP140.dll_void___cdecl_std::_Xinvalid_argument_char_const____ptr64_]
int3
cmp dword [rdi], 0x22
jne 0x140016345
lea rcx, str.stoull_argument_out_of_range
call qword [sym.imp.MSVCP140.dll_void___cdecl_std::_Xout_of_range_char_const____ptr64_]
int3
mov qword [r13], rax
test r15, r15
je 0x140016352
mov byte [r15], 0
lea rcx, [rbp + 0xd0]
call fcn.14000a030
mov rcx, qword [rbp + 0x140]
xor rcx, rsp
call fcn.140033050
add rsp, 0x258
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbx
pop rbp
ret