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

Disassembly:
push rbp
push r12
push r15
lea rbp, [rsp - 0x47]
sub rsp, 0x90
movabs rax, 0xeb1496eac950d881
movabs r10, 0x8561f7a6ac23b9c3
mov qword [rbp + 0x67], rax
movabs r11, 0x30a64123b956480c
mov rax, qword [rbp + 0x67]
movzx r9d, dl
mov qword [rbp - 0x29], rax
mov r12d, 0x84222325
movabs rax, 0x30a64123cb33206f
mov r15, rcx
mov qword [rbp + 0x67], rax
lea rcx, [rbp - 0x29]
mov rax, qword [rbp + 0x67]
mov r8d, r12d
mov qword [rbp - 0x21], rax
mov qword [rbp + 0x67], r10
mov rax, qword [rbp + 0x67]
mov qword [rbp - 0x19], rax
mov qword [rbp + 0x67], r11
mov rax, qword [rbp + 0x67]
movdqa xmm0, xmmword [rbp - 0x29]
mov qword [rbp - 0x11], rax
xorps xmm0, xmmword [rbp - 0x19]
movq rdx, xmm0
movdqa xmmword [rbp - 0x29], xmm0
test dl, dl
je 0x180026f00
movsx eax, dl
lea rcx, [rcx + 1]
xor eax, r8d
imul r8d, eax, 0x1b3
movzx eax, byte [rcx]
movzx edx, al
test al, al
jne 0x180026ee5
mov rax, qword [r15]
mov edx, r12d
mov rcx, qword [rax + 0x10]
movzx eax, byte [rcx]
test al, al
je 0x180026f27
movsx eax, al
lea rcx, [rcx + 1]
xor eax, edx
imul edx, eax, 0x1b3
movzx eax, byte [rcx]
test al, al
jne 0x180026f11
mov qword [rsp + 0xb8], rbx
cmp edx, r8d
je 0x1800271b7
movabs rax, 0xea1196c3fb54d681
lea rcx, [rbp - 0x19]
mov qword [rbp + 0x67], rax
mov edx, r12d
mov rax, qword [rbp + 0x67]
mov qword [rbp - 0x19], rax
movabs rax, 0x30a64123b9564862
mov qword [rbp + 0x67], rax
mov rax, qword [rbp + 0x67]
mov qword [rbp - 0x11], rax
mov qword [rbp + 0x67], r10
mov rax, qword [rbp + 0x67]
mov qword [rbp + 7], rax
mov qword [rbp + 0x67], r11
mov rax, qword [rbp + 0x67]
movdqa xmm0, xmmword [rbp - 0x19]
mov qword [rbp + 0xf], rax
xorps xmm0, xmmword [rbp + 7]
movq r8, xmm0
movdqa xmmword [rbp - 0x19], xmm0
test r8b, r8b
je 0x180027143
nop
movsx eax, r8b
lea rcx, [rcx + 1]
xor eax, edx
imul edx, eax, 0x1b3
movzx eax, byte [rcx]
movzx r8d, al
test al, al
jne 0x180026fa0
test edx, edx
jne 0x180027143
movabs rax, 0xf20e95d5df4ccb80
lea rcx, [rbp - 0x19]
mov qword [rbp + 0x67], rax
mov edx, r12d
mov rax, qword [rbp + 0x67]
mov qword [rbp - 0x19], rax
movabs rax, 0x30a62f4cc9372d5b
mov qword [rbp + 0x67], rax
mov rax, qword [rbp + 0x67]
mov qword [rbp - 0x11], rax
mov qword [rbp + 0x67], r10
mov rax, qword [rbp + 0x67]
mov qword [rbp + 7], rax
mov qword [rbp + 0x67], r11
mov rax, qword [rbp + 0x67]
movdqa xmm0, xmmword [rbp - 0x19]
mov qword [rbp + 0xf], rax
xorps xmm0, xmmword [rbp + 7]
movq r8, xmm0
movdqa xmmword [rbp - 0x19], xmm0
test r8b, r8b
je 0x180027143
nop word [rax + rax]
movsx eax, r8b
lea rcx, [rcx + 1]
xor eax, edx
imul edx, eax, 0x1b3
movzx eax, byte [rcx]
movzx r8d, al
test al, al
jne 0x180027030
test edx, edx
jne 0x180027143
movabs rcx, 0xff6aaef564e3eab6
movabs rax, 0xe10f82c9dc4ed680
mov qword [rbp + 0x67], rax
mov edx, r12d
mov rax, qword [rbp + 0x67]
mov qword [rbp + 7], rax
movabs rax, 0x5fd62046ee21274e
mov qword [rbp + 0x67], rax
mov rax, qword [rbp + 0x67]
mov qword [rbp + 0xf], rax
movabs rax, 0xbd8245d068d1e533
mov qword [rbp + 0x67], rax
mov rax, qword [rbp + 0x67]
mov qword [rbp + 0x17], rax
mov qword [rbp + 0x67], rcx
mov rax, qword [rbp + 0x67]
mov qword [rbp + 0x1f], rax
mov qword [rbp + 0x67], r10
mov rax, qword [rbp + 0x67]
mov qword [rbp - 0x19], rax
mov qword [rbp + 0x67], r11
mov rax, qword [rbp + 0x67]
mov qword [rbp - 0x11], rax
movabs rax, 0xbd8245d068d1e55d
mov qword [rbp + 0x67], rax
mov rax, qword [rbp + 0x67]
mov qword [rbp - 9], rax
mov qword [rbp + 0x67], rcx
lea rcx, [rbp + 7]
mov rax, qword [rbp + 0x67]
movdqa xmm1, xmmword [rbp + 7]
xorps xmm1, xmmword [rbp - 0x19]
movdqa xmm0, xmmword [rbp + 0x17]
movq r8, xmm1
mov qword [rbp - 1], rax
xorps xmm0, xmmword [rbp - 9]
movdqa xmmword [rbp + 7], xmm1
movdqa xmmword [rbp + 0x17], xmm0
test r8b, r8b
je 0x180027143
nop dword [rax]
nop word [rax + rax]
movsx eax, r8b
lea rcx, [rcx + 1]
xor eax, edx
imul edx, eax, 0x1b3
movzx eax, byte [rcx]
movzx r8d, al
test al, al
jne 0x180027120
test edx, edx
jne 0x180027143
xor ebx, ebx
jmp 0x180027148
mov ebx, 1
mov rax, qword [r15]
mov dword [rbp + 0x67], ebx
mov rcx, qword [rax + 0x10]
movzx eax, byte [rcx]
test al, al
je 0x180027178
nop dword [rax]
movsx eax, al
lea rcx, [rcx + 1]
xor eax, r12d
imul r12d, eax, 0x1b3
movzx eax, byte [rcx]
test al, al
jne 0x180027160
test r9b, r9b
jne 0x180027195
mov rcx, r15
call fcn.180014be0
test al, al
jne 0x1800271b7
mov rcx, r15
call fcn.180014e10
test al, al
jne 0x1800271b7
mov rcx, r15
call fcn.180016110
mov rcx, rax
call fcn.180013dc0
cmp dword [rax], 0
jg 0x1800271ce
cmp r12d, ebx
jne 0x1800271b7
mov rcx, r15
call fcn.180015b90
xor al, al
mov rbx, qword [rsp + 0xb8]
add rsp, 0x90
pop r15
pop r12
pop rbp
ret
cmp r12d, ebx
jne 0x1800271f9
movaps xmmword [rsp + 0x70], xmm6
call fcn.18001dab0
movaps xmm6, xmm0
mov rcx, r15
addss xmm6, dword [0x1800c30f4]
call fcn.1800143f0
movss dword [rax], xmm6
movaps xmm6, xmmword [rsp + 0x70]
mov rcx, r15
call fcn.180016110
mov rcx, rax
call fcn.180013dc0
mov rcx, r15
dec dword [rax]
call fcn.1800153a0
mov rcx, r15
call fcn.180015dc0
mov rcx, r15
call fcn.180013f90
mov rax, qword [0x1800e52d0]
test rax, rax
jne 0x18002733c
mov rax, qword gs:[0x60]
mov qword [rsp + 0xc0], rsi
mov qword [rsp + 0xc8], rdi
mov qword [rsp + 0x88], r13
mov rcx, qword [rax + 0x18]
mov qword [rsp + 0x80], r14
mov rax, qword [rcx + 0x10]
mov r13, qword [rax]
mov rsi, r13
nop word [rax + rax]
mov r11, qword [rsi + 0x30]
movsxd rax, dword [r11 + 0x3c]
mov edi, dword [rax + r11 + 0x88]
add rdi, r11
cmp rdi, r11
je 0x1800272fa
mov r10d, dword [rdi + 0x18]
test r10d, r10d
je 0x1800272fa
mov r14d, dword [rdi + 0x20]
nop word [rax + rax]
dec r10d
mov r9d, 0xc6425b7a
lea rax, [r14 + r10*4]
mov r8d, dword [rax + r11]
add r8, r11
movzx edx, byte [r8]
inc r8
test dl, dl
je 0x1800272f5
nop
movsx eax, dl
lea r8, [r8 + 1]
sub dl, 0x41
mov ecx, eax
or ecx, 0x20
cmp dl, 0x19
movzx edx, byte [r8 - 1]
cmova ecx, eax
xor ecx, r9d
imul r9d, ecx, 0x1000193
test dl, dl
jne 0x1800272c0
cmp r9d, 0xa37f1be1
je 0x18002738a
test r10d, r10d
jne 0x1800272a0
mov rax, qword [rsi]
mov rsi, rax
cmp rax, r13
je 0x180027310
cmp qword [rax + 0x30], 0
jne 0x180027270
xor eax, eax
mov ebx, dword [rbp + 0x67]
mov r14, qword [rsp + 0x80]
mov r13, qword [rsp + 0x88]
mov rdi, qword [rsp + 0xc8]
mov rsi, qword [rsp + 0xc0]
mov qword [0x1800e52d0], rax
mov qword gs:[0x130], rax
lea rcx, [0x1800c2db0]
mov rax, qword [0x1800c0200]
mov qword gs:[0x128], rax
call fcn.1800be1e0
mov r8, rax
xor edx, edx
mov rcx, r15
call fcn.180010f30
cmp r12d, ebx
je 0x180027383
mov rcx, r15
call fcn.180015790
mov rcx, r15
call fcn.180013c00
mov al, 1
jmp 0x1800271b9
mov ecx, dword [rdi + 0x24]
add rcx, r11
movzx edx, word [rcx + r10*2]
mov ecx, dword [rdi + 0x1c]
add rcx, r11
mov eax, dword [rcx + rdx*4]
add rax, r11
jmp 0x180027312