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

Disassembly:
mov byte [rsp + 0x18], r8b
mov dword [rsp + 0x10], edx
push rbx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0x98
mov r10d, edx
mov r15, rcx
test rcx, rcx
je 0x1800916fc
movsxd r9, dword [rcx + 0x3c]
add r9, rcx
mov qword [rsp + 0xe0], r9
cmp dword [r9 + 0x1c], 0
je 0x1800916fc
mov eax, dword [r9 + 0x88]
test eax, eax
je 0x1800916fc
cmp dword [r9 + 0x8c], 0
je 0x1800916fc
mov ebx, dword [rcx + rax + 0x1c]
lea r12, [rcx + rax]
mov edi, dword [r12 + 0x24]
add rbx, rcx
mov ecx, dword [r12 + 0x20]
add rdi, r15
add rcx, r15
mov qword [rsp + 0xf8], rbx
xor r13d, r13d
mov qword [rsp + 0x58], rcx
mov qword [rsp + 0x48], rdi
cmp dword [r12 + 0x18], r13d
jbe 0x1800916fc
xor ebp, ebp
mov r11, 0xffffffffffffffff
xor eax, eax
mov qword [rsp + 0x20], rbp
mov qword [rsp + 0x50], rax
nop dword [rax]
nop word [rax + rax]
movzx eax, word [rdi + rax]
mov r8d, 0x84222325
mov ecx, dword [rcx + rbp]
add rcx, r15
mov edx, dword [rbx + rax*4]
add rdx, r15
movzx eax, byte [rcx]
test al, al
je 0x180091418
nop dword [rax]
movsx eax, al
lea rcx, [rcx + 1]
xor eax, r8d
imul r8d, eax, 0x1b3
movzx eax, byte [rcx]
test al, al
jne 0x180091400
cmp r10d, r8d
jne 0x18009158f
cmp rdx, r12
jbe 0x1800916e3
mov eax, dword [r9 + 0x8c]
add rax, r12
cmp rdx, rax
jae 0x1800916e3
xorps xmm0, xmm0
mov qword [rsp + 0x38], 0
movups xmmword [rsp + 0x28], xmm0
mov qword [rsp + 0x40], 0
mov r8, r11
nop word [rax + rax]
inc r8
cmp byte [rdx + r8], 0
jne 0x180091460
lea rcx, [rsp + 0x28]
call fcn.180091010
mov rbx, qword [rsp + 0x38]
test rbx, rbx
jne 0x1800914c4
mov rdx, qword [rsp + 0x40]
cmp rdx, 0xf
jbe 0x180091570
mov rcx, qword [rsp + 0x28]
inc rdx
mov rax, rcx
cmp rdx, 0x1000
jb 0x1800914ba
mov rcx, qword [rcx - 8]
add rdx, 0x27
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x180091712
call fcn.18008f6a0
jmp 0x180091570
mov r14, qword [rsp + 0x40]
lea rsi, [rsp + 0x28]
mov rdi, qword [rsp + 0x28]
cmp r14, 0xf
cmova rsi, rdi
cmp rbx, 1
jb 0x180091534
mov r8, rbx
lea rbp, [rbx + rsi]
mov edx, 0x2e
mov rcx, rsi
call fcn.180090c90
test rax, rax
je 0x18009152f
nop word [rax + rax]
cmp byte [rax], 0x2e
je 0x180091522
inc rax
mov r8, rbp
sub r8, rax
mov rcx, rax
mov edx, 0x2e
call fcn.180090c90
test rax, rax
jne 0x180091500
jmp 0x18009152f
sub rax, rsi
cmp rax, 0xffffffffffffffff
jne 0x1800915be
mov rbp, qword [rsp + 0x20]
cmp r14, 0xf
jbe 0x18009156b
lea rdx, [r14 + 1]
mov rax, rdi
cmp rdx, 0x1000
jb 0x180091563
mov rdi, qword [rdi - 8]
add rdx, 0x27
sub rax, rdi
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x180091712
mov rcx, rdi
call fcn.18008f6a0
mov rdi, qword [rsp + 0x48]
mov rbx, qword [rsp + 0xf8]
mov r11, 0xffffffffffffffff
mov r10d, dword [rsp + 0xe8]
mov r9, qword [rsp + 0xe0]
mov rax, qword [rsp + 0x50]
add rbp, 4
add rax, 2
mov qword [rsp + 0x20], rbp
inc r13d
mov qword [rsp + 0x50], rax
cmp r13d, dword [r12 + 0x18]
jae 0x1800916fc
mov rcx, qword [rsp + 0x58]
jmp 0x1800913e0
lea rcx, [rax + 1]
xorps xmm0, xmm0
xorps xmm1, xmm1
movups xmmword [rsp + 0x60], xmm0
movdqu xmmword [rsp + 0x70], xmm1
cmp rbx, rcx
jb 0x180091718
sub rbx, rcx
lea rdx, [rsp + 0x28]
cmp rbx, 0xffffffffffffffff
mov r8, 0xffffffffffffffff
cmovb r8, rbx
cmp r14, 0xf
cmova rdx, rdi
add rdx, rcx
lea rcx, [rsp + 0x60]
call fcn.180091010
mov rdi, qword [rsp + 0x78]
lea rcx, [rsp + 0x60]
mov rbx, qword [rsp + 0x60]
cmp rdi, 0xf
cmova rcx, rbx
call fcn.180091130
mov ebp, eax
cmp rdi, 0xf
jbe 0x18009165d
lea rdx, [rdi + 1]
mov rax, rbx
cmp rdx, 0x1000
jb 0x180091655
mov rbx, qword [rbx - 8]
add rdx, 0x27
sub rax, rbx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x180091712
mov rcx, rbx
call fcn.18008f6a0
mov rax, qword gs:[0x30]
mov rcx, qword [rax + 0x60]
mov rsi, qword [rcx + 0x18]
add rsi, 0x20
mov rbx, qword [rsi]
cmp rbx, rsi
je 0x1800916a3
nop word [rax + rax]
mov rcx, qword [rbx + 0x20]
cmp r15, rcx
je 0x18009169b
xor r8d, r8d
mov edx, ebp
call fcn.180091320
mov rdi, rax
test rax, rax
jne 0x1800916a5
mov rbx, qword [rbx]
cmp rbx, rsi
jne 0x180091680
xor edi, edi
mov rdx, qword [rsp + 0x40]
cmp rdx, 0xf
jbe 0x1800916de
mov rcx, qword [rsp + 0x28]
inc rdx
mov r8, rcx
cmp rdx, 0x1000
jb 0x1800916d9
mov rcx, qword [rcx - 8]
add rdx, 0x27
sub r8, rcx
add r8, 0xfffffffffffffff8
cmp r8, 0x1f
ja 0x180091712
call fcn.18008f6a0
mov rax, rdi
jmp 0x1800916fe
cmp byte [rsp + 0xf0], 0
je 0x1800916f7
movsxd rax, r13d
movzx ecx, word [rdi + rax*2]
mov edx, dword [rbx + rcx*4]
mov rax, rdx
jmp 0x1800916fe
xor eax, eax
add rsp, 0x98
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
pop rbx
ret
call fcn.18001fff0
int3
call fcn.18003cab0
int3