Function at 0x140080700
Capabilities:
Access peb ldr_data
Check for peb beingdebugged flag
Encode data using xor
Hash data using fnv
Read file on windows
Resolve function by parsing pe exports

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x10], rsi
mov qword [rsp + 0x18], rdi
mov qword [rsp + 0x20], r12
push rbp
push r14
push r15
lea rbp, [rsp - 0xf0]
sub rsp, 0x1f0
mov rax, qword [0x1403e9140]
xor rax, rsp
mov qword [rbp + 0xe0], rax
mov rax, qword gs:[0x60]
mov rax, qword [rax + 0x18]
mov rax, qword [rax + 0x10]
nop word [rax + rax]
mov rbx, qword [rax + 0x30]
movsxd rcx, dword [rbx + 0x3c]
mov r14d, dword [rcx + rbx + 0x88]
add r14, rbx
cmp r14, rbx
je 0x14007fda9
mov r11d, dword [r14 + 0x18]
test r11d, r11d
je 0x14007fda9
mov esi, dword [r14 + 0x20]
nop word [rax + rax]
dec r11d
lea rcx, [rsi + r11*4]
mov r9d, dword [rcx + rbx]
add r9, rbx
mov r10d, 0xa412e609
movzx r8d, byte [r9]
inc r9
test r8b, r8b
je 0x14007fda4
movsx ecx, r8b
sub r8b, 0x41
mov edx, ecx
or edx, 0x20
cmp r8b, 0x19
cmova edx, ecx
xor edx, r10d
imul r10d, edx, 0x1000193
movzx r8d, byte [r9]
lea r9, [r9 + 1]
test r8b, r8b
jne 0x14007fd70
cmp r10d, 0xab71a3fe
je 0x14007fdb1
test r11d, r11d
jne 0x14007fd50
mov rax, qword [rax]
jmp 0x14007fd20
mov ecx, dword [r14 + 0x1c]
add rcx, rbx
mov eax, dword [r14 + 0x24]
add rax, rbx
movzx eax, word [rax + r11*2]
mov r10d, dword [rcx + rax*4]
add r10, rbx
xor r9d, r9d
xor r8d, r8d
xor edx, edx
mov rcx, qword [0x1403ee1b0]
call r10
mov rcx, qword gs:[0x60]
cmp eax, 0xffffffff
mov rax, qword [rcx + 0x18]
mov rax, qword [rax + 0x10]
jne 0x14007fec0
nop word [rax + rax]
mov rbx, qword [rax + 0x30]
movsxd rcx, dword [rbx + 0x3c]
mov r14d, dword [rcx + rbx + 0x88]
add r14, rbx
cmp r14, rbx
je 0x14007fe89
mov r11d, dword [r14 + 0x18]
test r11d, r11d
je 0x14007fe89
mov esi, dword [r14 + 0x20]
nop word [rax + rax]
dec r11d
lea rcx, [rsi + r11*4]
mov r9d, dword [rcx + rbx]
add r9, rbx
mov r10d, 0xb3177ad4
movzx r8d, byte [r9]
inc r9
test r8b, r8b
je 0x14007fe84
movsx ecx, r8b
sub r8b, 0x41
mov edx, ecx
or edx, 0x20
cmp r8b, 0x19
cmova edx, ecx
xor edx, r10d
imul r10d, edx, 0x1000193
movzx r8d, byte [r9]
lea r9, [r9 + 1]
test r8b, r8b
jne 0x14007fe50
cmp r10d, 0x7f7a5a46
je 0x14007fe91
test r11d, r11d
jne 0x14007fe30
mov rax, qword [rax]
jmp 0x14007fe00
mov ecx, dword [r14 + 0x24]
add rcx, rbx
movzx edx, word [rcx + r11*2]
mov ecx, dword [r14 + 0x1c]
add rcx, rbx
mov eax, dword [rcx + rdx*4]
add rax, rbx
call rax
mov dword [0x1403ee1b8], eax
xor al, al
jmp 0x1400806ce
mov rbx, qword [rax + 0x30]
movsxd rcx, dword [rbx + 0x3c]
mov r14d, dword [rcx + rbx + 0x88]
add r14, rbx
cmp r14, rbx
je 0x14007ff49
mov r11d, dword [r14 + 0x18]
test r11d, r11d
je 0x14007ff49
mov esi, dword [r14 + 0x20]
nop word [rax + rax]
dec r11d
lea rcx, [rsi + r11*4]
mov r9d, dword [rcx + rbx]
add r9, rbx
mov r10d, 0x790e88cd
movzx r8d, byte [r9]
inc r9
test r8b, r8b
je 0x14007ff44
movsx ecx, r8b
sub r8b, 0x41
mov edx, ecx
or edx, 0x20
cmp r8b, 0x19
cmova edx, ecx
xor edx, r10d
imul r10d, edx, 0x1000193
movzx r8d, byte [r9]
lea r9, [r9 + 1]
test r8b, r8b
jne 0x14007ff10
cmp r10d, 0xa183d0f0
je 0x14007ff51
test r11d, r11d
jne 0x14007fef0
mov rax, qword [rax]
jmp 0x14007fec0
mov ecx, dword [r14 + 0x1c]
add rcx, rbx
mov eax, dword [r14 + 0x24]
add rax, rbx
movzx eax, word [rax + r11*2]
mov r8d, dword [rcx + rax*4]
add r8, rbx
xor edx, edx
mov rcx, qword [0x1403ee1b0]
call r8
mov r15d, eax
cmp eax, 0xffffffff
jne 0x140080035
mov rax, qword gs:[0x60]
mov rax, qword [rax + 0x18]
mov rax, qword [rax + 0x10]
nop dword [rax]
nop dword [rax + rax]
mov rbx, qword [rax + 0x30]
movsxd rcx, dword [rbx + 0x3c]
mov r14d, dword [rcx + rbx + 0x88]
add r14, rbx
cmp r14, rbx
je 0x14008002d
mov r11d, dword [r14 + 0x18]
test r11d, r11d
je 0x14008002d
mov esi, dword [r14 + 0x20]
nop word [rax + rax]
dec r11d
lea rcx, [rsi + r11*4]
mov r9d, dword [rcx + rbx]
add r9, rbx
mov r10d, 0x7010b939
movzx r8d, byte [r9]
inc r9
test r8b, r8b
je 0x140080028
movsx ecx, r8b
sub r8b, 0x41
mov edx, ecx
or edx, 0x20
cmp r8b, 0x19
cmova edx, ecx
xor edx, r10d
imul r10d, edx, 0x1000193
movzx r8d, byte [r9]
lea r9, [r9 + 1]
test r8b, r8b
jne 0x14007fff0
cmp r10d, 0x55438c13
je 0x14007fe91
test r11d, r11d
jne 0x14007ffd0
mov rax, qword [rax]
jmp 0x14007ffa0
lea edx, [rax + 1]
xor r8d, r8d
lea rcx, [rbp - 0x68]
call fcn.1400926e0
nop
xor r12d, r12d
mov dword [rsp + 0x70], r12d
xorps xmm0, xmm0
movups xmmword [rbp - 0x48], xmm0
movups xmmword [rbp - 0x38], xmm0
mov rax, qword gs:[0x60]
mov rax, qword [rax + 0x18]
mov rax, qword [rax + 0x10]
nop dword [rax]
mov rbx, qword [rax + 0x30]
movsxd rcx, dword [rbx + 0x3c]
mov r14d, dword [rcx + rbx + 0x88]
add r14, rbx
cmp r14, rbx
je 0x1400800f9
mov r11d, dword [r14 + 0x18]
test r11d, r11d
je 0x1400800f9
mov esi, dword [r14 + 0x20]
nop word [rax + rax]
dec r11d
lea rcx, [rsi + r11*4]
mov r9d, dword [rcx + rbx]
add r9, rbx
mov r10d, 0x6d7551d8
movzx r8d, byte [r9]
inc r9
test r8b, r8b
je 0x1400800f4
movsx ecx, r8b
sub r8b, 0x41
mov edx, ecx
or edx, 0x20
cmp r8b, 0x19
cmova edx, ecx
xor edx, r10d
imul r10d, edx, 0x1000193
movzx r8d, byte [r9]
lea r9, [r9 + 1]
test r8b, r8b
jne 0x1400800c0
cmp r10d, 0xb5fe937c
je 0x140080101
test r11d, r11d
jne 0x1400800a0
mov rax, qword [rax]
jmp 0x140080070
mov ecx, dword [r14 + 0x1c]
add rcx, rbx
mov eax, dword [r14 + 0x24]
add rax, rbx
movzx eax, word [rax + r11*2]
mov r10d, dword [rcx + rax*4]
add r10, rbx
lea rax, [rbp - 0x48]
mov qword [rsp + 0x28], rax
mov dword [rsp + 0x20], 0xffffffff
mov r9d, 0xffffffff
xor r8d, r8d
lea edx, [r8 + 2]
mov rcx, qword [0x1403ee1b0]
call r10
lea rdx, [rbp - 0x68]
cmp qword [rbp - 0x50], 0xf
cmova rdx, qword [rbp - 0x68]
mov qword [rsp + 0x20], r12
lea r9, [rsp + 0x70]
mov r8d, r15d
mov rcx, qword [0x1403ee1b0]
call qword [sym.imp.KERNEL32.dll_ReadFile]
mov rcx, qword gs:[0x60]
test eax, eax
mov rax, qword [rcx + 0x18]
mov rax, qword [rax + 0x10]
jne 0x140080330
nop dword [rax]
nop dword [rax + rax]
mov rbx, qword [rax + 0x30]
movsxd rcx, dword [rbx + 0x3c]
mov r14d, dword [rcx + rbx + 0x88]
add r14, rbx
cmp r14, rbx
je 0x140080219
mov r11d, dword [r14 + 0x18]
test r11d, r11d
je 0x140080219
mov esi, dword [r14 + 0x20]
nop word [rax + rax]
dec r11d
lea rcx, [rsi + r11*4]
mov r9d, dword [rcx + rbx]
add r9, rbx
mov r10d, 0xc154350
movzx r8d, byte [r9]
inc r9
test r8b, r8b
je 0x140080214
movsx ecx, r8b
sub r8b, 0x41
mov edx, ecx
or edx, 0x20
cmp r8b, 0x19
cmova edx, ecx
xor edx, r10d
imul r10d, edx, 0x1000193
movzx r8d, byte [r9]
lea r9, [r9 + 1]
test r8b, r8b
jne 0x1400801e0
cmp r10d, 0x6b017f2a
je 0x140080221
test r11d, r11d
jne 0x1400801c0
mov rax, qword [rax]
jmp 0x140080190
mov ecx, dword [r14 + 0x1c]
add rcx, rbx
mov eax, dword [r14 + 0x24]
add rax, rbx
movzx eax, word [rax + r11*2]
mov ecx, dword [rcx + rax*4]
add rcx, rbx
call rcx
mov dword [0x1403ee1b8], eax
mov rax, qword gs:[0x60]
mov rax, qword [rax + 0x18]
mov rax, qword [rax + 0x10]
nop dword [rax]
nop word [rax + rax]
mov rbx, qword [rax + 0x30]
movsxd rcx, dword [rbx + 0x3c]
mov r14d, dword [rcx + rbx + 0x88]
add r14, rbx
cmp r14, rbx
je 0x1400802e8
mov r11d, dword [r14 + 0x18]
test r11d, r11d
je 0x1400802e8
mov esi, dword [r14 + 0x20]
nop word [rax + rax]
dec r11d
lea rcx, [rsi + r11*4]
mov r9d, dword [rcx + rbx]
add r9, rbx
mov r10d, 0x1a754a2
movzx ecx, byte [r9]
inc r9
test cl, cl
je 0x1400802e3
nop
movsx edx, cl
sub cl, 0x41
mov r8d, edx
or r8d, 0x20
cmp cl, 0x19
cmova r8d, edx
xor r8d, r10d
imul r10d, r8d, 0x1000193
movzx ecx, byte [r9]
lea r9, [r9 + 1]
test cl, cl
jne 0x1400802b0
cmp r10d, 0x3b816afd
je 0x1400802f0
test r11d, r11d
jne 0x140080290
mov rax, qword [rax]
jmp 0x140080260
mov ecx, dword [r14 + 0x1c]
add rcx, rbx
mov eax, dword [r14 + 0x24]
add rax, rbx
movzx eax, word [rax + r11*2]
mov r10d, dword [rcx + rax*4]
add r10, rbx
lea rax, [rbp - 0x48]
mov qword [rsp + 0x20], rax
xor edx, edx
mov r9d, 0xffffffff
mov r8d, r9d
mov rcx, qword [0x1403ee1b0]
call r10
xor bl, bl
jmp 0x1400806c2
mov rbx, qword [rax + 0x30]
movsxd rcx, dword [rbx + 0x3c]
mov r14d, dword [rcx + rbx + 0x88]
add r14, rbx
cmp r14, rbx
je 0x1400803b9
mov r11d, dword [r14 + 0x18]
test r11d, r11d
je 0x1400803b9
mov esi, dword [r14 + 0x20]
nop word [rax + rax]
dec r11d
lea rcx, [rsi + r11*4]
mov r9d, dword [rcx + rbx]
add r9, rbx
mov r10d, 0x40bc01cb
movzx r8d, byte [r9]
inc r9
test r8b, r8b
je 0x1400803b4
movsx ecx, r8b
sub r8b, 0x41
mov edx, ecx
or edx, 0x20
cmp r8b, 0x19
cmova edx, ecx
xor edx, r10d
imul r10d, edx, 0x1000193
movzx r8d, byte [r9]
lea r9, [r9 + 1]
test r8b, r8b
jne 0x140080380
cmp r10d, 0x21541860
je 0x1400803c1
test r11d, r11d
jne 0x140080360
mov rax, qword [rax]
jmp 0x140080330
mov ecx, dword [r14 + 0x1c]
add rcx, rbx
mov eax, dword [r14 + 0x24]
add rax, rbx
movzx eax, word [rax + r11*2]
mov r10d, dword [rcx + rax*4]
add r10, rbx
lea rax, [rbp - 0x48]
mov qword [rsp + 0x20], rax
xor edx, edx
mov r9d, 0xffffffff
mov r8d, r9d
mov rcx, qword [0x1403ee1b0]
call r10
xor r8d, r8d
xor edx, edx
call fcn.14007de70
lea rdx, [rbp - 0x68]
lea rcx, [rsp + 0x78]
call fcn.14007e070
nop
xorps xmm0, xmm0
xor eax, eax
movups xmmword [rbp + 0x60], xmm0
movups xmmword [rbp + 0x70], xmm0
movups xmmword [rbp + 0x80], xmm0
movups xmmword [rbp + 0x90], xmm0
movups xmmword [rbp + 0xa0], xmm0
movups xmmword [rbp + 0xb0], xmm0
movups xmmword [rbp + 0xc0], xmm0
mov qword [rbp + 0xd0], rax
mov ebx, dword [rbp - 0x78]
lea rdx, [rsp + 0x78]
cmp qword [rbp - 0x70], 7
cmova rdx, qword [rsp + 0x78]
movups xmmword [rsp + 0x30], xmm0
mov qword [rsp + 0x40], r12
mov qword [rsp + 0x48], r12
mov r8, 0xffffffffffffffff
inc r8
cmp word [rdx + r8*2], ax
jne 0x140080472
lea rcx, [rsp + 0x30]
call fcn.140091300
nop
lea rcx, [rbp + 0x60]
call fcn.14007e320
nop
lea rax, vtable.std::basic_stringbuf_wchar_t__struct_std::char_traits_wchar_t___class_std::allocator_wchar_t__.0
mov qword [rbp + 0x60], rax
mov ecx, ebx
not ecx
and ecx, 1
shl ecx, 2
mov edx, ecx
or edx, 2
test bl, 2
cmovne edx, ecx
mov ecx, edx
or ecx, 8
test bl, 8
cmove ecx, edx
mov r9d, ecx
or r9d, 0x10
test bl, 4
cmove r9d, ecx
lea rdx, [rsp + 0x30]
cmp qword [rsp + 0x48], 7
cmova rdx, qword [rsp + 0x30]
mov r8, qword [rsp + 0x40]
lea rcx, [rbp + 0x60]
call fcn.14007e400
nop
lea rcx, [rsp + 0x30]
call fcn.140091b10
xorps xmm0, xmm0
xor eax, eax
movups xmmword [rbp - 0x20], xmm0
movups xmmword [rbp - 0x10], xmm0
movups xmmword [rbp], xmm0
movups xmmword [rbp + 0x10], xmm0
movups xmmword [rbp + 0x20], xmm0
movups xmmword [rbp + 0x30], xmm0
movups xmmword [rbp + 0x40], xmm0
mov qword [rbp + 0x50], rax
lea r9d, [rax + 1]
lea rdx, [rbp + 0x60]
lea rcx, [rbp - 0x20]
call fcn.14007f780
nop
xorps xmm0, xmm0
movups xmmword [rsp + 0x50], xmm0
mov qword [rsp + 0x60], r12
mov qword [rsp + 0x68], r12
xor r8d, r8d
lea rdx, [0x1403c45b8]
lea rcx, [rsp + 0x50]
call fcn.140091300
nop
lea rbx, [rsp + 0x78]
cmp qword [rbp - 0x70], 7
cmova rbx, qword [rsp + 0x78]
lea rcx, [rsp + 0x78]
cmova rcx, qword [rsp + 0x78]
mov rax, qword [rbp - 0x78]
lea rdi, [rcx + rax*2]
cmp rbx, rdi
je 0x140080615
nop
movzx edx, word [rbx]
cmp dx, 0xa
jne 0x1400805f8
cmp qword [rsp + 0x60], 0
je 0x140080608
lea rax, [rsp + 0x50]
cmp qword [rsp + 0x68], 7
cmova rax, qword [rsp + 0x50]
cmp word [rax], 0
je 0x140080608
mov rax, qword [0x1403ee1a0]
cmp rax, qword [0x1403ee1a8]
je 0x1400805cf
lea rdx, [rsp + 0x50]
mov rcx, rax
call fcn.140091730
add qword [0x1403ee1a0], 0x20
jmp 0x1400805dc
lea r8, [rsp + 0x50]
mov rdx, rax
call fcn.14007fa50
mov qword [rsp + 0x60], r12
lea rax, [rsp + 0x50]
cmp qword [rsp + 0x68], 7
cmova rax, qword [rsp + 0x50]
mov word [rax], r12w
jmp 0x140080608
cmp dx, 0xd
je 0x140080608
lea rcx, [rsp + 0x50]
call fcn.1400910a0
add rbx, 2
cmp rbx, rdi
jne 0x140080580
cmp qword [rsp + 0x60], 0
je 0x140080668
lea rax, [rsp + 0x50]
cmp qword [rsp + 0x68], 7
cmova rax, qword [rsp + 0x50]
cmp word [rax], 0
je 0x140080668
mov rax, qword [0x1403ee1a0]
cmp rax, qword [0x1403ee1a8]
je 0x14008065b
lea rdx, [rsp + 0x50]
mov rcx, rax
call fcn.140091730
add qword [0x1403ee1a0], 0x20
jmp 0x140080668
lea r8, [rsp + 0x50]
mov rdx, rax
call fcn.14007fa50
mov bl, 1
lea rcx, [rsp + 0x50]
call fcn.140091b10
nop
mov rax, qword [rbp - 0x20]
movsxd rcx, dword [rax + 4]
lea rax, vtable.std::basic_istream_wchar_t__struct_std::char_traits_wchar_t__.0
mov qword [rbp + rcx - 0x20], rax
mov rax, qword [rbp - 0x20]
movsxd rcx, dword [rax + 4]
lea edx, [rcx - 0x18]
mov dword [rbp + rcx - 0x24], edx
lea rax, vtable.std::ios_base.0
mov qword [rbp - 8], rax
lea rcx, [rbp - 8]
call fcn.14030c6f0
nop
lea rcx, [rbp + 0x60]
call fcn.14007ef10
nop
lea rcx, [rsp + 0x78]
call fcn.140091b10
nop
lea rcx, [rbp - 0x68]
call fcn.140092d70
movzx eax, bl
mov rcx, qword [rbp + 0xe0]
xor rcx, rsp
call fcn.140362750
lea r11, [rsp + 0x1f0]
mov rbx, qword [r11 + 0x20]
mov rsi, qword [r11 + 0x28]
mov rdi, qword [r11 + 0x30]
mov r12, qword [r11 + 0x38]
mov rsp, r11
pop r15
pop r14
pop rbp
ret
push rbx
sub rsp, 0x40
cmp qword [rdx + 0x18], 7
mov rbx, rdx
mov rcx, rdx
jbe 0x140080716
mov rcx, qword [rdx]
xor r9d, r9d
mov qword [rsp + 0x30], 0
mov dword [rsp + 0x28], 0x80
mov edx, 0x10000000
mov dword [rsp + 0x20], 4
lea r8d, [r9 + 3]
call qword [sym.imp.KERNEL32.dll_CreateFileW]
mov qword [0x1403ee1b0], rax
dec rax
cmp rax, 0xfffffffffffffffd
ja 0x1400807c3
lea rcx, [0x1403ee198]
call fcn.14007d4e0
mov rcx, qword [0x1403ee1b0]
call qword [sym.imp.KERNEL32.dll_CloseHandle]
cmp qword [rbx + 0x18], 7
jbe 0x140080774
mov rbx, qword [rbx]
xor r9d, r9d
mov qword [rsp + 0x30], 0
mov dword [rsp + 0x28], 0x80
mov edx, 0xc0000000
mov rcx, rbx
mov dword [rsp + 0x20], 4
lea r8d, [r9 + 3]
call qword [sym.imp.KERNEL32.dll_CreateFileW]
mov qword [0x1403ee1b0], rax
dec rax
cmp rax, 0xfffffffffffffffd
ja 0x1400807c3
lea rcx, [0x1403ee198]
add rsp, 0x40
pop rbx
jmp 0x14007fcd0
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [0x1403ee1b8], eax
xor al, al
add rsp, 0x40
pop rbx
ret