Function at 0x1400a9860
Capabilities:
Access peb ldr_data
Encode data using xor
Hash data with crc32
Resolve function by parsing pe exports

Disassembly:
mov qword [rsp + 8], rbx
mov dword [rsp + 0x18], r8d
mov dword [rsp + 0x10], edx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0x27]
sub rsp, 0x90
mov rax, qword gs:[0x30]
mov r14d, edx
mov rcx, qword [rax + 0x60]
mov rax, qword [rcx + 0x18]
mov r15, qword [rax + 0x20]
mov qword [rbp - 0x39], r15
mov rsi, r15
mov qword [rbp - 0x41], r15
nop dword [rax + rax]
mov rdx, qword [r15 + 0x40]
mov r8, 0xffffffffffffffff
mov qword [rbp - 0x31], 0
mov qword [rbp - 0x21], 0
mov qword [rbp - 0x19], 7
inc r8
cmp word [rdx + r8*2], 0
jne 0x1400a98d3
lea rcx, [rbp - 0x31]
call fcn.14000e060
lea rdx, [rbp - 0x31]
lea rcx, [rbp - 1]
call fcn.1400a8870
mov rdx, qword [rbp - 0x19]
cmp rdx, 8
jb 0x1400a9934
mov rcx, qword [rbp - 0x31]
lea rdx, [rdx*2 + 2]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1400a992f
mov rcx, qword [rcx - 8]
add rdx, 0x27
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1400a9b89
call fcn.1400dcd18
lea rdx, [rbp - 1]
lea rcx, [rbp - 0x31]
call fcn.1400a93e0
mov rdi, rax
cmp qword [rax + 0x18], 8
jb 0x1400a994e
mov rdi, qword [rax]
cmp word [rdi], 0
mov ebx, 0xffffffff
je 0x1400a99aa
mov byte [rbp + 0x80], 0
movsx ecx, byte [rdi]
lea rdi, [rdi + 2]
mov eax, ecx
mov byte [rbp + 0x7f], cl
xor eax, ebx
movzx edx, al
mov ecx, edx
shr edx, 1
and ecx, 1
neg ecx
and ecx, 0xedb88320
xor ecx, edx
mov edx, 1
call fcn.140014a10
shr ebx, 8
lea rdx, [rbp + 0x7f]
xor eax, ebx
mov r8d, 1
mov ecx, eax
call fcn.140014160
cmp word [rdi], 0
mov ebx, eax
jne 0x1400a9960
mov rdx, qword [rbp - 0x19]
not ebx
cmp rdx, 8
jb 0x1400a99ec
mov rcx, qword [rbp - 0x31]
lea rdx, [rdx*2 + 2]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1400a99e7
mov rcx, qword [rcx - 8]
add rdx, 0x27
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1400a9b7d
call fcn.1400dcd18
cmp ebx, r14d
jne 0x1400a9ad3
mov r14, qword [r15 + 0x20]
xor esi, esi
movsxd rax, dword [r14 + 0x3c]
mov ecx, dword [rax + r14 + 0x88]
add rcx, r14
mov r13d, dword [rcx + 0x20]
mov eax, dword [rcx + 0x24]
add r13, r14
mov edx, dword [rcx + 0x1c]
add rax, r14
mov r12d, dword [rcx + 0x18]
add rdx, r14
mov qword [rbp - 9], rax
mov qword [rbp - 0x11], rdx
test r12d, r12d
je 0x1400a9acb
movzx eax, word [rax + rsi*2]
mov ebx, 0xffffffff
mov edi, dword [r13 + rsi*4]
add rdi, r14
mov r15d, dword [rdx + rax*4]
add r15, r14
cmp byte [rdi], 0
je 0x1400a9aad
mov byte [rbp - 0x48], 0
nop dword [rax]
nop word [rax + rax]
movsx ecx, byte [rdi]
lea rdi, [rdi + 1]
mov eax, ecx
mov byte [rbp - 0x49], cl
xor eax, ebx
movzx edx, al
mov ecx, edx
shr edx, 1
and ecx, 1
neg ecx
and ecx, 0xedb88320
xor ecx, edx
mov edx, 1
call fcn.140014a10
shr ebx, 8
lea rdx, [rbp - 0x49]
xor eax, ebx
mov r8d, 1
mov ecx, eax
call fcn.140014160
cmp byte [rdi], 0
mov ebx, eax
jne 0x1400a9a60
mov rdx, qword [rbp - 0x11]
not ebx
cmp ebx, dword [rbp + 0x77]
je 0x1400a9b3c
mov rax, qword [rbp - 9]
inc esi
cmp esi, r12d
jb 0x1400a9a32
mov r15, qword [rbp - 0x39]
mov r14d, dword [rbp + 0x6f]
mov rsi, qword [rbp - 0x41]
mov rdx, qword [rbp + 0x17]
mov r15, qword [r15]
mov qword [rbp - 0x39], r15
cmp rdx, 8
jb 0x1400a9b16
mov rcx, qword [rbp - 1]
lea rdx, [rdx*2 + 2]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1400a9b11
mov rcx, qword [rcx - 8]
add rdx, 0x27
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1400a9b83
call fcn.1400dcd18
cmp r15, rsi
jne 0x1400a98b0
xor eax, eax
mov rbx, qword [rsp + 0xd0]
add rsp, 0x90
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret
mov rdx, qword [rbp + 0x17]
cmp rdx, 8
jb 0x1400a9b78
mov rcx, qword [rbp - 1]
lea rdx, [rdx*2 + 2]
mov r8, rcx
cmp rdx, 0x1000
jb 0x1400a9b73
mov rcx, qword [rcx - 8]
add rdx, 0x27
sub r8, rcx
add r8, 0xfffffffffffffff8
cmp r8, 0x1f
ja 0x1400a9b83
call fcn.1400dcd18
mov rax, r15
jmp 0x1400a9b21
call fcn.1400e39cc
int3
call fcn.1400e39cc
int3
call fcn.1400e39cc
int3