Function at 0x1801854b0
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
mov qword [rsp + 8], rcx
push rbp
push rbx
push rsi
push rdi
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0x1f]
sub rsp, 0xe8
mov esi, edx
mov r15, rcx
test rcx, rcx
je 0x18018594a
movsxd r9, dword [rcx + 0x3c]
add r9, rcx
mov qword [rsp + 0x28], r9
cmp dword [r9 + 0x1c], 0
je 0x18018594a
mov eax, dword [r9 + 0x88]
test eax, eax
je 0x18018594a
cmp dword [r9 + 0x8c], 0
je 0x18018594a
lea rbx, [rcx + rax]
mov qword [rsp + 0x40], rbx
mov r10d, dword [rbx + 0x1c]
add r10, rcx
mov qword [rsp + 0x30], r10
mov r8d, dword [rbx + 0x20]
add r8, rcx
mov qword [rbp - 0x51], r8
mov r11d, dword [rbx + 0x24]
add r11, rcx
mov qword [rsp + 0x38], r11
xor r14d, r14d
mov dword [rbp + 0x7f], r14d
cmp dword [rbx + 0x18], r14d
jbe 0x18018594a
xor ecx, ecx
mov qword [rbp - 0x59], rcx
xor eax, eax
mov qword [rbp - 0x61], rax
lea rdi, [rcx - 1]
movabs r13, 0x8e992baa241ea559
movabs r12, 0x93e8cbcb24d100b0
nop dword [rax]
movzx eax, word [r11 + rax]
mov edx, dword [r10 + rax*4]
add rdx, r15
mov ecx, dword [r8 + rcx]
add rcx, r15
mov r8d, 0x84222325
movzx eax, byte [rcx]
test al, al
je 0x1801855b8
movsx eax, al
xor eax, r8d
imul r8d, eax, 0x1b3
lea rcx, [rcx + 1]
movzx eax, byte [rcx]
test al, al
jne 0x1801855a0
cmp esi, r8d
jne 0x1801857d4
cmp rdx, rbx
jbe 0x1801855d9
mov eax, dword [r9 + 0x8c]
add rax, rbx
cmp rdx, rax
jae 0x1801855d9
mov al, 1
jmp 0x1801855db
xor al, al
test al, al
je 0x180185933
vpxor xmm0, xmm0, xmm0
vmovups xmmword [rsp + 0x48], xmm0
mov qword [rbp - 0x71], 0
mov qword [rbp - 0x69], 0
mov r8, rdi
inc r8
cmp byte [rdx + r8], 0
jne 0x180185600
lea rcx, [rsp + 0x48]
call fcn.1800db380
nop
cmp qword [rbp - 0x71], 0
jne 0x180185661
mov rdx, qword [rbp - 0x69]
cmp rdx, 0xf
jbe 0x1801857c5
inc rdx
mov rcx, qword [rsp + 0x48]
mov rax, rcx
cmp rdx, 0x1000
jb 0x180185657
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x180185960
call fcn.180182790
jmp 0x1801857c5
mov qword [rsp + 0x20], r13
mov rax, qword [rsp + 0x20]
mov qword [rbp - 0x49], rax
mov qword [rsp + 0x20], r12
mov rax, qword [rsp + 0x20]
mov qword [rbp - 0x41], rax
movabs rax, 0x8e992baa241ea577
mov qword [rsp + 0x20], rax
mov rax, qword [rsp + 0x20]
mov qword [rbp - 9], rax
mov qword [rsp + 0x20], r12
mov rax, qword [rsp + 0x20]
mov qword [rbp - 1], rax
vmovdqu xmm0, xmmword [rbp - 0x49]
vpxor xmm1, xmm0, xmmword [rbp - 9]
vmovdqu xmmword [rbp - 0x49], xmm1
lea rax, [rbp - 0x49]
inc rdi
cmp byte [rax + rdi], 0
jne 0x1801856b6
lea r12, [rsp + 0x48]
mov rsi, qword [rsp + 0x48]
mov rcx, qword [rbp - 0x69]
cmp rcx, 0xf
cmova r12, rsi
mov r13, qword [rbp - 0x71]
cmp rdi, r13
ja 0x18018576c
mov rax, r13
sub rax, rdi
test rdi, rdi
je 0x180185806
lea r14, [rax + r12]
vmovq rax, xmm1
movsx r15d, al
lea r8, [r14 + 1]
sub r8, r12
mov edx, r15d
mov rcx, r12
call fcn.180184dd0
mov rbx, rax
test rax, rax
je 0x18018575f
nop dword [rax + rax]
mov r8, rdi
lea rdx, [rbp - 0x49]
mov rcx, rbx
call fcn.180184e00
test eax, eax
je 0x180185752
inc rbx
lea r8, [r14 + 1]
sub r8, rbx
mov edx, r15d
mov rcx, rbx
call fcn.180184dd0
mov rbx, rax
test rax, rax
jne 0x180185720
jmp 0x18018575f
sub rbx, r12
cmp rbx, 0xffffffffffffffff
jne 0x18018580a
mov r15, qword [rbp + 0x67]
mov rbx, qword [rsp + 0x40]
mov r14d, dword [rbp + 0x7f]
mov rdi, qword [rbp - 0x69]
cmp rdi, 0xf
jbe 0x1801857a7
lea rdx, [rdi + 1]
mov rax, rsi
cmp rdx, 0x1000
jb 0x18018579f
add rdx, 0x27
mov rsi, qword [rsi - 8]
sub rax, rsi
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x180185960
mov rcx, rsi
call fcn.180182790
movabs r13, 0x8e992baa241ea559
movabs r12, 0x93e8cbcb24d100b0
mov esi, dword [rbp + 0x6f]
mov rdi, 0xffffffffffffffff
mov r11, qword [rsp + 0x38]
mov r10, qword [rsp + 0x30]
mov r9, qword [rsp + 0x28]
inc r14d
mov dword [rbp + 0x7f], r14d
mov rax, qword [rbp - 0x61]
add rax, 2
mov qword [rbp - 0x61], rax
mov rcx, qword [rbp - 0x59]
add rcx, 4
mov qword [rbp - 0x59], rcx
cmp r14d, dword [rbx + 0x18]
jae 0x18018594a
mov r8, qword [rbp - 0x51]
jmp 0x180185580
xor ebx, ebx
jmp 0x180185812
mov rcx, qword [rbp - 0x69]
mov r15, qword [rbp + 0x67]
inc rbx
vpxor xmm0, xmm0, xmm0
vmovups xmmword [rbp - 0x29], xmm0
vpxor xmm1, xmm1, xmm1
vmovdqu xmmword [rbp - 0x19], xmm1
cmp r13, rbx
jb 0x180185966
sub r13, rbx
cmp r13, 0xffffffffffffffff
mov r8, 0xffffffffffffffff
cmovb r8, r13
lea rdx, [rsp + 0x48]
cmp rcx, 0xf
cmova rdx, rsi
add rdx, rbx
lea rcx, [rbp - 0x29]
call fcn.1800db380
lea rcx, [rbp - 0x29]
mov rbx, qword [rbp - 0x29]
mov rdi, qword [rbp - 0x11]
cmp rdi, 0xf
cmova rcx, rbx
call fcn.1801852d0
mov r14d, eax
cmp rdi, 0xf
jbe 0x1801858ae
lea rdx, [rdi + 1]
mov rax, rbx
cmp rdx, 0x1000
jb 0x1801858a6
add rdx, 0x27
mov rbx, qword [rbx - 8]
sub rax, rbx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18018596c
mov rcx, rbx
call fcn.180182790
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 0x1801858f4
nop dword [rax + rax]
mov rcx, qword [rbx + 0x20]
cmp r15, rcx
je 0x1801858ec
xor r8d, r8d
mov edx, r14d
call fcn.1801854b0
mov rdi, rax
test rax, rax
jne 0x1801858f6
mov rbx, qword [rbx]
cmp rbx, rsi
jne 0x1801858d0
xor edi, edi
mov rdx, qword [rbp - 0x69]
cmp rdx, 0xf
jbe 0x18018592e
inc rdx
mov rcx, qword [rsp + 0x48]
mov r8, rcx
cmp rdx, 0x1000
jb 0x180185929
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub r8, rcx
add r8, 0xfffffffffffffff8
cmp r8, 0x1f
ja 0x180185960
call fcn.180182790
mov rax, rdi
jmp 0x18018594c
cmp byte [rbp + 0x77], 0
je 0x180185945
movsxd rax, r14d
movzx ecx, word [r11 + rax*2]
mov edx, dword [r10 + rcx*4]
mov rax, rdx
jmp 0x18018594c
xor eax, eax
add rsp, 0xe8
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbx
pop rbp
ret
call fcn.1800e6e30
nop
call fcn.1800e8480
nop
call fcn.1800e6e30
int3