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

Disassembly:
mov dword [rsp + 0x10], edx
mov qword [rsp + 8], rcx
push rbp
push rbx
push rsi
lea rbp, [rsp - 0x47]
sub rsp, 0xd0
mov eax, dword [0x1802ec350]
mov rbx, rcx
movsxd rsi, edx
test al, 1
jne 0x18007c0dd
or eax, 1
lea rcx, [0x180082df0]
mov dword [0x1802ec350], eax
call fcn.180040ab0
cmp esi, 7
jge 0x18007c109
lea rax, str.None
mov rdx, rsi
shl rdx, 5
mov rcx, rbx
add rdx, rax
call fcn.18000d7c0
mov rax, rbx
add rsp, 0xd0
pop rsi
pop rbx
pop rbp
ret
mov r8, qword [0x1802ec358]
mov qword [rsp + 0xc8], rdi
mov qword [rsp + 0xc0], r12
mov qword [rsp + 0xb8], r13
mov qword [rsp + 0xb0], r14
mov qword [rsp + 0xa8], r15
test r8, r8
jne 0x18007c363
mov r14d, 0x9bb91f0a
xor r12d, r12d
nop word [rax + rax]
mov rax, qword gs:[0x30]
mov rcx, qword [rax + 0x60]
mov rax, qword [rcx + 0x18]
mov r15, qword [rax + 0x10]
nop word [rax + rax]
movups xmm0, xmmword [r15 + 0x58]
movd eax, xmm0
movups xmmword [rbp - 0x59], xmm0
sub ax, 8
test r12d, r12d
je 0x18007c1ce
mov r8, qword [rbp - 0x51]
mov r9d, 0x811c9dc5
movzx eax, ax
shr rax, 1
lea r10, [r8 + rax*2]
cmp r8, r10
je 0x18007c1c5
nop
movsx eax, byte [r8]
mov ecx, eax
sub al, 0x41
mov edx, ecx
or edx, 0x20
cmp al, 0x19
cmova edx, ecx
add r8, 2
xor edx, r9d
imul r9d, edx, 0x1000193
cmp r8, r10
jne 0x18007c1a0
cmp r9d, r12d
jne 0x18007c256
mov rbx, qword [r15 + 0x30]
movsxd rax, dword [rbx + 0x3c]
mov rcx, qword [rax + rbx + 0x88]
mov r13, rcx
mov esi, ecx
shr r13, 0x20
add rsi, rbx
cmp rsi, rbx
je 0x18007c256
mov edi, dword [rsi + 0x18]
xor r11d, r11d
test edi, edi
je 0x18007c256
mov r10d, dword [rsi + 0x20]
add r10, rbx
mov r8d, dword [r10]
mov r9d, 0x811c9dc5
add r8, rbx
movzx eax, byte [r8]
test al, al
je 0x18007c245
nop dword [rax]
nop dword [rax + rax]
movsx ecx, al
lea r8, [r8 + 1]
sub al, 0x41
mov edx, ecx
or edx, 0x20
cmp al, 0x19
movzx eax, byte [r8]
cmova edx, ecx
xor edx, r9d
imul r9d, edx, 0x1000193
test al, al
jne 0x18007c220
cmp r9d, r14d
je 0x18007c25e
inc r11d
add r10, 4
cmp r11d, edi
jb 0x18007c200
mov r15, qword [r15]
jmp 0x18007c170
mov eax, dword [rsi + 0x24]
mov ecx, dword [rsi + 0x1c]
add rax, rbx
add rcx, rbx
movzx edx, word [rax + r11*2]
mov r8d, dword [rcx + rdx*4]
add r8, rbx
cmp r8, rsi
jbe 0x18007c328
lea rax, [rsi + r13]
cmp r8, rax
jae 0x18007c328
movzx edx, byte [r8]
mov r12d, 0x811c9dc5
mov dword [rbp + 0x77], r12d
mov r9d, r12d
mov dword [rbp + 0x7b], r12d
cmp dl, 0x2e
je 0x18007c2dc
nop word [rax + rax]
movsx eax, dl
sub dl, 0x41
mov ecx, eax
or ecx, 0x20
cmp dl, 0x19
movzx edx, byte [r8 + 1]
cmova ecx, eax
inc r8
xor ecx, r12d
imul r12d, ecx, 0x1000193
cmp dl, 0x2e
jne 0x18007c2b0
mov dword [rbp + 0x77], r12d
movzx edx, byte [r8 + 1]
inc r8
test dl, dl
je 0x18007c31b
nop dword [rax + rax]
movsx eax, dl
lea r8, [r8 + 1]
sub dl, 0x41
mov ecx, eax
or ecx, 0x20
cmp dl, 0x19
movzx edx, byte [r8]
cmova ecx, eax
xor ecx, r9d
imul r9d, ecx, 0x1000193
test dl, dl
jne 0x18007c2f0
mov dword [rbp + 0x7b], r9d
mov r14, qword [rbp + 0x77]
shr r14, 0x20
jmp 0x18007c150
mov qword [0x1802ec358], r8
test r8, r8
jne 0x18007c360
mov r8d, 0x9bb91f0a
lea rdx, str.tried_to_resolve_invalid_import_0x_X_n
lea rcx, [0x1802ecc10]
call fcn.180044770
lea rcx, [0x1802ecc10]
call fcn.180081550
mov r8, qword [0x1802ec358]
mov esi, dword [rbp + 0x6f]
xor edx, edx
mov ecx, esi
call r8
mov ebx, eax
test eax, eax
je 0x18007c6d6
movzx r8d, byte [rbp + 0x6f]
lea rcx, [rbp - 0x31]
xorps xmm0, xmm0
shl ebx, 0x10
mov r9d, 0xc8
mov dword [rbp + 0x77], ebx
movups xmmword [rbp - 0x31], xmm0
mov edx, r9d
mov byte [rbp - 0x31], 0
mov qword [rbp - 0x21], 0
mov qword [rbp - 0x19], 0xf
mov byte [rsp + 0x20], 0
call fcn.180079000
mov r9, qword [0x1802ec360]
test r9, r9
jne 0x18007c5e9
mov r14d, 0xe30b66b5
xor r12d, r12d
nop word [rax + rax]
mov rax, qword gs:[0x30]
mov rcx, qword [rax + 0x60]
mov rax, qword [rcx + 0x18]
mov r15, qword [rax + 0x10]
nop word [rax + rax]
movups xmm0, xmmword [r15 + 0x58]
movd eax, xmm0
movups xmmword [rbp - 0x59], xmm0
sub ax, 8
test r12d, r12d
je 0x18007c44e
mov r8, qword [rbp - 0x51]
mov r9d, 0x811c9dc5
movzx eax, ax
shr rax, 1
lea r10, [r8 + rax*2]
cmp r8, r10
je 0x18007c445
nop
movsx eax, byte [r8]
mov ecx, eax
sub al, 0x41
mov edx, ecx
or edx, 0x20
cmp al, 0x19
cmova edx, ecx
add r8, 2
xor edx, r9d
imul r9d, edx, 0x1000193
cmp r8, r10
jne 0x18007c420
cmp r9d, r12d
jne 0x18007c4d8
mov rbx, qword [r15 + 0x30]
movsxd rax, dword [rbx + 0x3c]
mov rcx, qword [rax + rbx + 0x88]
mov r13, rcx
mov esi, ecx
shr r13, 0x20
add rsi, rbx
cmp rsi, rbx
je 0x18007c4d8
mov edi, dword [rsi + 0x18]
xor r11d, r11d
test edi, edi
je 0x18007c4d8
mov r10d, dword [rsi + 0x20]
add r10, rbx
mov r8d, dword [r10]
mov r9d, 0x811c9dc5
add r8, rbx
movzx edx, byte [r8]
test dl, dl
je 0x18007c4c7
nop dword [rax]
nop dword [rax + rax]
movsx eax, dl
lea r8, [r8 + 1]
sub dl, 0x41
mov ecx, eax
or ecx, 0x20
cmp dl, 0x19
movzx edx, byte [r8]
cmova ecx, eax
xor ecx, r9d
imul r9d, ecx, 0x1000193
test dl, dl
jne 0x18007c4a0
cmp r9d, r14d
je 0x18007c4e0
inc r11d
add r10, 4
cmp r11d, edi
jb 0x18007c480
mov r15, qword [r15]
jmp 0x18007c3f0
mov eax, dword [rsi + 0x24]
mov ecx, dword [rsi + 0x1c]
add rax, rbx
add rcx, rbx
movzx edx, word [rax + r11*2]
mov r9d, dword [rcx + rdx*4]
add r9, rbx
cmp r9, rsi
jbe 0x18007c5ab
lea rax, [rsi + r13]
cmp r9, rax
jae 0x18007c5ab
movzx edx, byte [r9]
mov r12d, 0x811c9dc5
mov dword [rbp + 0x7f], r12d
mov r8d, r12d
mov dword [rbp + 0x83], r12d
cmp dl, 0x2e
je 0x18007c55c
nop dword [rax + rax]
movsx eax, dl
sub dl, 0x41
mov ecx, eax
or ecx, 0x20
cmp dl, 0x19
movzx edx, byte [r9 + 1]
cmova ecx, eax
inc r9
xor ecx, r12d
imul r12d, ecx, 0x1000193
cmp dl, 0x2e
jne 0x18007c530
mov dword [rbp + 0x7f], r12d
movzx edx, byte [r9 + 1]
inc r9
test dl, dl
je 0x18007c59e
nop dword [rax + rax]
movsx eax, dl
lea r9, [r9 + 1]
sub dl, 0x41
mov ecx, eax
or ecx, 0x20
cmp dl, 0x19
movzx edx, byte [r9]
cmova ecx, eax
xor ecx, r8d
imul r8d, ecx, 0x1000193
test dl, dl
jne 0x18007c570
mov dword [rbp + 0x83], r8d
mov r14, qword [rbp + 0x7f]
shr r14, 0x20
jmp 0x18007c3d0
mov qword [0x1802ec360], r9
test r9, r9
jne 0x18007c5e3
mov r8d, 0xe30b66b5
lea rdx, str.tried_to_resolve_invalid_import_0x_X_n
lea rcx, [0x1802ecc10]
call fcn.180044770
lea rcx, [0x1802ecc10]
call fcn.180081550
mov r9, qword [0x1802ec360]
mov esi, dword [rbp + 0x6f]
mov ebx, dword [rbp + 0x77]
cmp qword [rbp - 0x19], 0x10
lea rdx, [rbp - 0x31]
mov r8d, dword [rbp - 0x21]
cmovae rdx, qword [rbp - 0x31]
or ebx, 1
mov ecx, ebx
call r9
mov rdx, qword [rbp - 0x21]
movsxd rcx, eax
cmp rcx, rdx
ja 0x18007c627
cmp qword [rbp - 0x19], 0x10
lea rax, [rbp - 0x31]
mov qword [rbp - 0x21], rcx
cmovae rax, qword [rbp - 0x31]
mov byte [rax + rcx], 0
jmp 0x18007c67c
mov r8, qword [rbp - 0x19]
mov rdi, rcx
mov rax, r8
sub rdi, rdx
sub rax, rdx
cmp rdi, rax
ja 0x18007c663
cmp r8, 0x10
mov qword [rbp - 0x21], rcx
lea rbx, [rbp - 0x31]
mov r8, rdi
cmovae rbx, qword [rbp - 0x31]
add rbx, rdx
xor edx, edx
mov rcx, rbx
call fcn.1800432c0
mov byte [rdi + rbx], 0
jmp 0x18007c67c
movzx r8d, byte [rbp + 0x6f]
lea rcx, [rbp - 0x31]
mov r9, rdi
mov byte [rsp + 0x20], 0
mov rdx, rdi
call fcn.180079000
cmp qword [rbp - 0x21], 0
je 0x18007c69b
mov rax, qword [rbp + 0x67]
movups xmm0, xmmword [rbp - 0x31]
movups xmm1, xmmword [rbp - 0x21]
movups xmmword [rax], xmm0
movups xmmword [rax + 0x10], xmm1
jmp 0x18007c8db
mov rdx, qword [rbp - 0x19]
cmp rdx, 0x10
jb 0x18007c6d6
mov rcx, qword [rbp - 0x31]
inc rdx
mov rax, rcx
cmp rdx, 0x1000
jb 0x18007c6d1
mov rcx, qword [rcx - 8]
add rdx, 0x27
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18007c914
call fcn.180042b90
lea rdi, [rbp - 0x34]
nop word [rax + rax]
dec rdi
mov eax, 0xcccccccd
mul esi
shr edx, 3
movzx eax, dl
shl al, 2
lea ecx, [rax + rdx]
add cl, cl
sub sil, cl
add sil, 0x30
mov byte [rdi], sil
mov esi, edx
test edx, edx
jne 0x18007c6e0
xor r15d, r15d
lea rax, [rbp - 0x34]
mov qword [rbp - 1], r15
xorps xmm0, xmm0
movups xmmword [rbp - 0x11], xmm0
cmp rdi, rax
jne 0x18007c731
mov ecx, 0xf
mov byte [rbp - 0x11], r15b
mov qword [rbp + 7], rcx
jmp 0x18007c7c0
lea rsi, [rbp - 0x34]
movabs r14, 0x7fffffffffffffff
sub rsi, rdi
cmp rsi, r14
ja 0x18007c91a
mov qword [rbp + 7], 0xf
cmp rsi, 0x10
jae 0x18007c773
mov r8, rsi
mov qword [rbp - 1], rsi
mov rdx, rdi
lea rcx, [rbp - 0x11]
call fcn.1800431e0
mov byte [rbp + rsi - 0x11], r15b
jmp 0x18007c7bc
mov rax, rsi
or rax, 0xf
cmp rax, r14
ja 0x18007c78e
mov ecx, 0x16
mov r14, rax
cmp rax, rcx
cmovb r14, rcx
lea rdx, [r14 + 1]
lea rcx, [rbp - 0x11]
call fcn.18000d8e0
mov r8, rsi
mov qword [rbp - 0x11], rax
mov rdx, rdi
mov qword [rbp - 1], rsi
mov rcx, rax
mov qword [rbp + 7], r14
mov rbx, rax
call fcn.1800431e0
mov byte [rbx + rsi], r15b
mov rcx, qword [rbp + 7]
mov r8, qword [rbp - 1]
lea rsi, str.Key:
mov rax, rcx
mov r14d, 5
sub rax, r8
cmp rax, r14
jb 0x18007c854
lea rax, [r8 + 5]
cmp rcx, 0x10
lea rbx, [rbp - 0x11]
mov qword [rbp - 1], rax
cmovae rbx, qword [rbp - 0x11]
lea rax, [0x18029c8f9]
cmp rax, rbx
jbe 0x18007c818
lea rax, [rbx + r8]
cmp rsi, rax
ja 0x18007c818
cmp rbx, rsi
ja 0x18007c810
mov rdi, r15
jmp 0x18007c81b
mov rdi, rbx
sub rdi, rsi
jmp 0x18007c81b
mov rdi, r14
inc r8
lea rcx, [rbx + 5]
mov rdx, rbx
call fcn.180043210
mov r8, rdi
mov rdx, rsi
mov rcx, rbx
call fcn.1800431e0
sub r14, rdi
lea rdx, [rsi + 5]
add rdx, rdi
lea rcx, [rbx + rdi]
mov r8, r14
call fcn.1800431e0
lea rax, [rbp - 0x11]
jmp 0x18007c872
movzx r8d, byte [rbp + 0x6f]
lea rcx, [rbp - 0x11]
mov qword [rsp + 0x28], r14
xor r9d, r9d
mov rdx, r14
mov qword [rsp + 0x20], rsi
call fcn.180073140
mov rbx, qword [rbp + 0x67]
xorps xmm0, xmm0
movups xmmword [rbx], xmm0
mov qword [rbx + 0x10], r15
mov qword [rbx + 0x18], r15
movups xmm0, xmmword [rax]
movups xmmword [rbx], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rbx + 0x10], xmm1
mov qword [rax + 0x10], r15
mov qword [rax + 0x18], 0xf
mov byte [rax], r15b
mov rdx, qword [rbp + 7]
cmp rdx, 0x10
jb 0x18007c8d8
mov rcx, qword [rbp - 0x11]
inc rdx
mov rax, rcx
cmp rdx, 0x1000
jb 0x18007c8d3
mov rcx, qword [rcx - 8]
add rdx, 0x27
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18007c90e
call fcn.180042b90
mov rax, rbx
mov r14, qword [rsp + 0xb0]
mov r13, qword [rsp + 0xb8]
mov r12, qword [rsp + 0xc0]
mov rdi, qword [rsp + 0xc8]
mov r15, qword [rsp + 0xa8]
add rsp, 0xd0
pop rsi
pop rbx
pop rbp
ret
call fcn.180040750
int3
call fcn.180040750
int3
call fcn.18000ae90
int3