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

Disassembly:
mov qword [rsp + 8], rcx
push rbp
push rbx
push rsi
push rdi
push r13
push r14
push r15
lea rbp, [rsp - 0x2a0]
sub rsp, 0x3a0
xor ebx, ebx
lea rdi, [0x1801b4e60]
mov r13d, ebx
mov r11d, ebx
mov r10d, ebx
mov r8b, 0x3f
nop dword [rax]
nop word [rax + rax]
movzx r9d, byte [r10 + rdi]
lea edx, [r13 + 1]
movzx eax, r9b
xor al, r8b
mov byte [rsp + r10 + 0x20], al
movzx eax, byte [r10 + rdi + 2]
cmovne edx, r13d
xor r9b, byte [r10 + rdi + 1]
mov byte [rsp + r10 + 0x21], r9b
lea r8d, [rdx + 1]
cmovne r8d, edx
xor al, byte [r10 + rdi + 1]
mov byte [rsp + r10 + 0x22], al
movzx eax, byte [r10 + rdi + 3]
lea r9d, [r8 + 1]
cmovne r9d, r8d
xor al, byte [r10 + rdi + 2]
mov byte [rsp + r10 + 0x23], al
movzx eax, byte [r10 + rdi + 4]
lea r8d, [r9 + 1]
cmovne r8d, r9d
xor al, byte [r10 + rdi + 3]
mov byte [rsp + r10 + 0x24], al
movzx eax, byte [r10 + rdi + 5]
lea r9d, [r8 + 1]
cmovne r9d, r8d
xor al, byte [r10 + rdi + 4]
mov byte [rsp + r10 + 0x25], al
movzx eax, byte [r10 + rdi + 6]
lea r8d, [r9 + 1]
cmovne r8d, r9d
xor al, byte [r10 + rdi + 5]
mov byte [rsp + r10 + 0x26], al
movzx eax, byte [r10 + rdi + 7]
lea r9d, [r8 + 1]
cmovne r9d, r8d
xor al, byte [r10 + rdi + 6]
mov byte [rsp + r10 + 0x27], al
movzx eax, byte [r10 + rdi + 8]
lea r8d, [r9 + 1]
cmovne r8d, r9d
xor al, byte [r10 + rdi + 7]
mov byte [rsp + r10 + 0x28], al
movzx eax, byte [r10 + rdi + 9]
lea r9d, [r8 + 1]
cmovne r9d, r8d
xor al, byte [r10 + rdi + 8]
mov byte [rsp + r10 + 0x29], al
movzx eax, byte [r10 + rdi + 0xa]
lea r8d, [r9 + 1]
cmovne r8d, r9d
xor al, byte [r10 + rdi + 9]
mov byte [rsp + r10 + 0x2a], al
movzx eax, byte [r10 + rdi + 0xb]
lea r9d, [r8 + 1]
cmovne r9d, r8d
xor al, byte [r10 + rdi + 0xa]
mov byte [rsp + r10 + 0x2b], al
movzx eax, byte [r10 + rdi + 0xc]
lea r8d, [r9 + 1]
cmovne r8d, r9d
xor al, byte [r10 + rdi + 0xb]
mov byte [rsp + r10 + 0x2c], al
movzx eax, byte [r10 + rdi + 0xd]
lea r9d, [r8 + 1]
cmovne r9d, r8d
xor al, byte [r10 + rdi + 0xc]
mov byte [rsp + r10 + 0x2d], al
movzx eax, byte [r10 + rdi + 0xe]
lea r8d, [r9 + 1]
cmovne r8d, r9d
xor al, byte [r10 + rdi + 0xd]
mov byte [rsp + r10 + 0x2e], al
movzx eax, byte [r10 + rdi + 0xf]
lea r9d, [r8 + 1]
cmovne r9d, r8d
xor al, byte [r10 + rdi + 0xe]
mov byte [rsp + r10 + 0x2f], al
movzx eax, byte [r10 + rdi + 0x10]
lea r8d, [r9 + 1]
cmovne r8d, r9d
xor al, byte [r10 + rdi + 0xf]
lea r9d, [r8 + 1]
mov byte [rsp + r10 + 0x30], al
movzx eax, byte [r10 + rdi + 0x11]
lea r10, [r10 + 0x16]
cmovne r9d, r8d
xor al, byte [r10 + rdi - 6]
mov byte [rsp + r10 + 0x1b], al
movzx eax, byte [r10 + rdi - 4]
lea r8d, [r9 + 1]
cmovne r8d, r9d
xor al, byte [r10 + rdi - 5]
mov byte [rsp + r10 + 0x1c], al
movzx eax, byte [r10 + rdi - 3]
lea r9d, [r8 + 1]
cmovne r9d, r8d
xor al, byte [r10 + rdi - 4]
mov byte [rsp + r10 + 0x1d], al
movzx eax, byte [r10 + rdi - 2]
lea r8d, [r9 + 1]
cmovne r8d, r9d
xor al, byte [r10 + rdi - 3]
mov byte [rsp + r10 + 0x1e], al
lea ecx, [r8 + 1]
cmovne ecx, r8d
movzx r8d, byte [r10 + rdi - 1]
movzx eax, r8b
xor al, byte [r10 + rdi - 2]
mov byte [rsp + r10 + 0x1f], al
lea r13d, [rcx + 1]
cmovne r13d, ecx
add r11d, 0x16
cmp r11d, 0x42
jb 0x180081870
mov eax, 0x64
lea rdx, [rsp + 0x20]
cmp r13d, eax
lea rcx, [rsp + 0x70]
cmovg r13d, eax
lea rax, [rsp + 0x20]
mov dword [rbp + 0x2e8], r13d
cmp byte [rax], bl
jne 0x180081ac2
mov qword [rcx], rdx
add rcx, 8
lea rdx, [rax + 1]
inc rax
lea r8, [rsp + 0x62]
cmp rax, r8
jb 0x180081ab3
lea r15, [0x1801b4ed0]
mov rdx, 0xffffffffffffffff
nop dword [rax]
inc rdx
cmp word [r15 + rdx*2], bx
jne 0x180081ae0
mov rax, qword gs:[0x30]
movsxd rsi, edx
mov rcx, qword [rax + 0x60]
mov r14, qword [rcx + 0x18]
add r14, 0x10
mov rdi, qword [r14]
nop word [rax + rax]
movzx eax, word [rdi + 0x58]
shr rax, 1
cmp rsi, rax
jne 0x180081b30
mov rdx, qword [rdi + 0x60]
mov r8, rsi
mov rcx, r15
call qword [0x1801a6320]
test eax, eax
je 0x180081b3d
mov rdi, qword [rdi]
cmp rdi, r14
jne 0x180081b10
jmp 0x180081c40
mov r14, qword [rdi + 0x30]
movsxd rax, dword [r14 + 0x3c]
cmp dword [rax + r14 + 0x8c], ebx
jbe 0x180081c40
mov r15d, dword [rax + r14 + 0x88]
add r15, r14
movsxd r10, r13d
mov qword [rsp + 0x398], r12
mov r12d, ebx
mov qword [rbp + 0x2f8], r10
cmp dword [r15 + 0x18], ebx
jbe 0x180081c38
mov r13, rbx
mov qword [rbp + 0x2f0], rbx
mov r8, rbx
nop word [rax + rax]
mov eax, dword [r15 + 0x20]
mov ecx, dword [r15 + 0x1c]
add rax, r8
add rcx, r14
mov esi, dword [rax + r14]
mov eax, dword [r15 + 0x24]
add rsi, r14
add rax, r13
movzx edx, word [rax + r14]
mov edi, dword [rcx + rdx*4]
add rdi, r14
test r10, r10
jle 0x180081c14
mov r9, qword [rbp + 0x2e0]
lea r11, [rsp + 0x70]
sub r11, r9
nop dword [rax + rax]
mov rax, qword [r11 + r9]
mov r8, rsi
sub r8, rax
nop word [rax + rax]
movzx edx, byte [rax]
movzx ecx, byte [rax + r8]
sub edx, ecx
jne 0x180081bf3
inc rax
test ecx, ecx
jne 0x180081be0
test edx, edx
jne 0x180081bfc
mov qword [r9], rdi
inc ebx
add r9, 8
sub r10, 1
jne 0x180081bd0
mov r8, qword [rbp + 0x2f0]
mov r10, qword [rbp + 0x2f8]
cmp ebx, dword [rbp + 0x2e8]
je 0x180081c38
add r8, 4
inc r12d
add r13, 2
mov qword [rbp + 0x2f0], r8
cmp r12d, dword [r15 + 0x18]
jb 0x180081b90
mov r12, qword [rsp + 0x398]
add rsp, 0x3a0
pop r15
pop r14
pop r13
pop rdi
pop rsi
pop rbx
pop rbp
ret