Function at 0x14001e358
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], rdi
push rbp
mov rbp, rsp
sub rsp, 0x40
cmp byte [0x14003a120], 0
sete al
mov byte [0x14003a120], al
test al, al
je 0x14001e5af
mov eax, dword [0x14002ed40]
lea r9, [rbp - 0x20]
movups xmm0, xmmword [0x14002ed30]
mov dword [rbp - 0x10], eax
xor r8d, r8d
mov al, byte [0x14002ed44]
movups xmmword [rbp - 0x20], xmm0
mov byte [rbp - 0xc], al
mov eax, 0x4ec4ec4f
mul r8d
shr edx, 4
movsx eax, dl
imul edx, eax, 0x34
mov al, r8b
inc r8d
sub al, dl
add al, 0x33
xor byte [r9], al
inc r9
cmp r8d, 0x15
jl 0x14001e3a6
mov rcx, qword [sym.imp.MSVCP140.dll_class_std::basic_ostream_char__struct_std::char_traits_char___std::cout]
lea rdx, [rbp - 0x20]
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]
call fcn.14001cf6c
call fcn.1400059a8
call fcn.140016ddc
call fcn.140016890
call fcn.14001735c
call fcn.1400195a8
call fcn.14000f804
call fcn.14000f9f8
call fcn.14000f73c
call fcn.140010ad0
call fcn.140012b44
call fcn.14000fc20
call fcn.140011be8
call fcn.140011bfc
call fcn.140010d84
call fcn.14001140c
call fcn.14001155c
call fcn.140011910
call fcn.14001a778
call fcn.140011f08
call fcn.1400059a8
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 0x14001e4cc
mov edx, dword [r9 + 0x18]
test edx, edx
je 0x14001e4cc
mov ebx, dword [r9 + 0x20]
dec edx
mov r11d, 0x664a939d
lea rcx, [rbx + rdx*4]
mov r10d, dword [rcx + r8]
add r10, r8
mov cl, byte [r10]
inc r10
test cl, cl
je 0x14001e4c8
movsx ecx, cl
xor ecx, r11d
imul r11d, ecx, 0x1000193
mov cl, byte [r10]
inc r10
test cl, cl
jne 0x14001e4a8
cmp r11d, 0xc3822860
je 0x14001e4d1
test edx, edx
jne 0x14001e48b
mov rax, qword [rax]
jmp 0x14001e467
mov ecx, dword [r9 + 0x24]
add rcx, r8
movzx edx, word [rcx + rdx*2]
mov ecx, dword [r9 + 0x1c]
add rcx, r8
mov eax, dword [rcx + rdx*4]
mov ecx, 0x5dc
add rax, r8
call rax
cmp byte [0x14002ea5b], 0
mov eax, dword [0x14002ea58]
mov dword [rbp + 0x10], eax
je 0x14001e530
xor r8d, r8d
lea r9, [rbp + 0x10]
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, 4
jl 0x14001e509
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 0x14001e5aa
mov r10d, dword [r9 + 0x18]
test r10d, r10d
je 0x14001e5aa
mov edi, dword [r9 + 0x20]
dec r10d
mov r11d, 0x1434c233
lea rcx, [r8 + r10*4]
mov edx, dword [rcx + rdi]
add rdx, r8
mov cl, byte [rdx]
inc rdx
test cl, cl
je 0x14001e5a5
movsx ecx, cl
xor ecx, r11d
imul r11d, ecx, 0x1000193
mov cl, byte [rdx]
inc rdx
test cl, cl
jne 0x14001e582
cmp r11d, 0xdaaadaba
je 0x14001e7e3
test r10d, r10d
jne 0x14001e566
mov rax, qword [rax]
jmp 0x14001e541
cmp byte [0x14002fd95], 0
mov eax, dword [0x14002fd90]
movups xmm0, xmmword [0x14002fd80]
mov dword [rbp - 0x10], eax
movzx eax, word [0x14002fd94]
movups xmmword [rbp - 0x20], xmm0
mov word [rbp - 0xc], ax
je 0x14001e605
xor r8d, r8d
lea r9, [rbp - 0x20]
mov eax, 0x4ec4ec4f
mul r8d
shr edx, 4
movsx eax, dl
imul edx, eax, 0x34
mov al, r8b
inc r8d
sub al, dl
add al, 0x33
xor byte [r9], al
inc r9
cmp r8d, 0x16
jl 0x14001e5de
mov rcx, qword [sym.imp.MSVCP140.dll_class_std::basic_ostream_char__struct_std::char_traits_char___std::cout]
lea rdx, [rbp - 0x20]
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]
call fcn.14001cf6c
call fcn.1400059a8
call fcn.140016ddc
call fcn.140016890
call fcn.14001735c
call fcn.1400195a8
call fcn.14000f804
call fcn.14000f9f8
call fcn.14000f73c
call fcn.140010ad0
call fcn.140012b44
call fcn.14000fc20
call fcn.140011be8
call fcn.140011bfc
call fcn.140010d84
call fcn.14001140c
call fcn.14001155c
call fcn.140011910
call fcn.14001a778
call fcn.140011f08
call fcn.1400059a8
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 0x14001e704
mov edx, dword [r9 + 0x18]
test edx, edx
je 0x14001e704
mov ebx, dword [r9 + 0x20]
dec edx
mov r11d, 0xbd34e0f
lea rcx, [r8 + rdx*4]
mov r10d, dword [rcx + rbx]
add r10, r8
mov cl, byte [r10]
inc r10
test cl, cl
je 0x14001e700
movsx ecx, cl
xor ecx, r11d
imul r11d, ecx, 0x1000193
mov cl, byte [r10]
inc r10
test cl, cl
jne 0x14001e6e0
cmp r11d, 0x87789f12
je 0x14001e709
test edx, edx
jne 0x14001e6c3
mov rax, qword [rax]
jmp 0x14001e69f
mov ecx, dword [r9 + 0x24]
add rcx, r8
movzx edx, word [rcx + rdx*2]
mov ecx, dword [r9 + 0x1c]
add rcx, r8
mov eax, dword [rcx + rdx*4]
mov ecx, 0x5dc
add rax, r8
call rax
cmp byte [0x14002ea5b], 0
mov eax, dword [0x14002ea58]
mov dword [rbp + 0x10], eax
je 0x14001e768
xor r8d, r8d
lea r9, [rbp + 0x10]
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, 4
jl 0x14001e741
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 0x14001e7de
mov r10d, dword [r9 + 0x18]
test r10d, r10d
je 0x14001e7de
mov edi, dword [r9 + 0x20]
dec r10d
mov r11d, 0xe4543467
lea rcx, [r8 + r10*4]
mov edx, dword [rcx + rdi]
add rdx, r8
mov cl, byte [rdx]
inc rdx
test cl, cl
je 0x14001e7d9
movsx ecx, cl
xor ecx, r11d
imul r11d, ecx, 0x1000193
mov cl, byte [rdx]
inc rdx
test cl, cl
jne 0x14001e7ba
cmp r11d, 0xa62b6ee6
je 0x14001e7e3
test r10d, r10d
jne 0x14001e79e
mov rax, qword [rax]
jmp 0x14001e779
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]
lea rcx, [rbp + 0x10]
add rax, r8
call rax
mov rbx, qword [rsp + 0x58]
mov rdi, qword [rsp + 0x60]
add rsp, 0x40
pop rbp
ret