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

Disassembly:
mov qword [rsp + 8], rbx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
mov rbp, rsp
sub rsp, 0x40
xor r13d, r13d
mov ebx, r13d
mov edi, 0xbe8c9dce
mov rax, qword gs:[0x60]
mov rax, qword [rax + 0x18]
mov rax, qword [rax + 0x10]
movups xmm0, xmmword [rax + 0x58]
movd ecx, xmm0
sub cx, 8
test ebx, ebx
je 0x1401a21fb
psrldq xmm0, 8
movq r9, xmm0
movzx ecx, cx
shr rcx, 1
lea r11, [r9 + rcx*2]
mov r10d, 0xcd178fc6
jmp 0x1401a21ed
movsx edx, byte [r9]
mov r8d, edx
imul r8d, edx
add r8d, 0x31
xor r8d, 0x4764996c
mov ecx, r10d
xor ecx, edx
mov r10d, r8d
imul r10d, ecx
add r9, 2
cmp r9, r11
jne 0x1401a21c7
cmp r10d, ebx
jne 0x1401a2304
mov r9, qword [rax + 0x30]
movsxd rcx, dword [r9 + 0x3c]
mov rcx, qword [rcx + r9 + 0x88]
mov r11d, ecx
add r11, r9
shr rcx, 0x20
cmp r11, r9
je 0x1401a2304
mov esi, dword [r11 + 0x18]
test esi, esi
je 0x1401a2304
mov r12d, dword [r11 + 0x20]
dec esi
lea rdx, [r12 + rsi*4]
mov r10d, dword [rdx + r9]
add r10, r9
mov r14d, 0xcd178fc6
jmp 0x1401a2261
movsx r8d, dl
mov edx, r8d
imul edx, r8d
add edx, 0x31
xor edx, 0x4764996c
xor r8d, r14d
mov r14d, edx
imul r14d, r8d
mov dl, byte [r10]
inc r10
test dl, dl
jne 0x1401a2243
cmp r14d, edi
je 0x1401a2279
test esi, esi
jne 0x1401a222e
jmp 0x1401a2304
mov edx, dword [r11 + 0x1c]
add rdx, r9
mov eax, dword [r11 + 0x24]
add rax, r9
movzx eax, word [rax + rsi*2]
mov r8d, dword [rdx + rax*4]
add r8, r9
cmp r8, r11
jbe 0x1401a230c
lea rax, [rcx + r11]
cmp r8, rax
jae 0x1401a230c
mov ebx, 0xcd178fc6
mov edi, ebx
jmp 0x1401a22c6
movsx ecx, al
mov edx, ecx
imul edx, ecx
add edx, 0x31
xor edx, 0x4764996c
mov eax, ebx
xor eax, ecx
mov ebx, edx
imul ebx, eax
inc r8
mov al, byte [r8]
cmp al, 0x2e
jne 0x1401a22a9
jmp 0x1401a22e9
movsx ecx, al
mov edx, ecx
imul edx, ecx
add edx, 0x31
xor edx, 0x4764996c
mov eax, edi
xor eax, ecx
mov edi, edx
imul edi, eax
inc r8
mov al, byte [r8]
test al, al
jne 0x1401a22cf
mov rax, qword gs:[0x60]
mov rax, qword [rax + 0x18]
mov rax, qword [rax + 0x10]
mov rax, qword [rax]
jmp 0x1401a219b
mov dword [rbp + 0x50], r13d
mov dword [rbp + 0x50], 0xb117820d
mov eax, 0x8a47c3d
sub eax, dword [0x14031d058]
sub eax, dword [0x14031d050]
xor eax, 0xfbaf65e
sub eax, dword [0x14031d048]
mov rcx, qword [0x14031d040]
add eax, 0x6426e568
add eax, ecx
xor eax, 0x109af9c0
sub eax, 0x388edc9e
xor eax, 0x5b2b1fe1
lea edx, [rcx + 0x568ab504]
add edx, eax
not edx
mov eax, dword [0x14031d038]
xor eax, 0xd5b0b9f2
sub edx, eax
mov ecx, dword [0x14031d030]
xor ecx, 0x2a4f460d
add ecx, 0x4e035f89
add ecx, edx
xor ecx, 0x427f9d4a
mov dword [rbp + 0x50], ecx
movsxd rcx, ecx
call r8
mov qword [rbp - 0x18], rax
mov dword [rbp + 0x50], r13d
movabs rdi, 0x305d588e051ee6db
movabs rax, 0xac5da58cc0000000
movabs r11, 0xfe4f609437c64624
mov r14, qword [0x14031d060]
imul r14, rax
movabs rax, 0xce6a83f090000000
xor r14, rax
mov r13, r14
imul r13, rdi
movabs r10, 0xaaaaaaaaaaaaaaab
mov rax, r10
mul r13
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
mov rcx, r13
sub rcx, rax
lea r12, [0x14031d060]
mov r9, r14
and r9, rdi
imul r9, qword [r12 + rcx*8]
movabs rax, 0x22e41c8fadf5dd18
imul r9, rax
shr r9, 3
movabs rax, 0xb8b797c642be940d
xor r9, rax
movabs rax, 0xffffff57f2c44e25
mov rsi, r14
imul rsi, rax
sub rsi, 0xa06966a
xor rsi, r9
xor rsi, qword [0x14031d060]
mov rax, r9
imul rax, qword [0x14031d070]
movabs rcx, 0xb9de928bfb77f104
imul rax, rcx
not rax
and rsi, rax
ror rsi, 0x2e
shr rsi, 8
movabs r8, 0xcfa2a771fae11925
lea rcx, [r14 + r8]
xor rcx, 0xffffffffc5f9fa09
mov rax, r10
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
movabs rax, 0x5d31a00fb6928b78
mov rbx, qword [r12 + rcx*8]
imul rbx, rax
add rbx, rdi
movabs rcx, 0xa135e5eb17696330
mov rax, r9
imul rax, rcx
xor rbx, rax
shr rbx, 0x1f
not rbx
mov r15, rbx
xor r15, r14
lea rcx, [rbx + r8]
mov rax, r10
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
movzx eax, bl
movzx ecx, byte [r12 + rcx*8]
imul ecx, eax
movzx ecx, cl
xor ecx, 0x15
and ecx, 0x8000003f
jge 0x1401a2501
dec ecx
or ecx, 0xffffffc0
inc ecx
ror r15, cl
not r15
imul r15, r9
imul r12, r15, 0xfffffffff5f96996
add r8, r12
mov r10, rbx
imul r10, rsi
sub r10, r8
xor r10, r11
mov cl, r8b
xor cl, 0xfa
and cl, 0xf
rol r10, cl
mov rax, r8
sub rax, qword [0x14031d078]
xor r10, rax
movabs rax, 0xa7eeca73cece1752
imul r15, rax
movabs rax, 0x37c91c4c867dc0a7
add r15, rax
xor r10, r15
xor r10, r9
xor r10, r14
mov rax, r10
xor rax, 0xfffffffffffffffe
mov r15b, 0x3f
and eax, 3
je 0x1401a28a8
sub rax, 1
je 0x1401a2778
sub rax, 1
je 0x1401a2683
cmp rax, 1
jne 0x1401a2958
mov r11, r8
imul r11, rbx
movabs rax, 0x2eaebdd5395c3259
add rax, r10
xor r11, rax
ror r11, 0x16
shr r11, 0xc
xor r11, r14
not r11
movabs rcx, 0x83571986ff02
mov rdx, qword [0x14031d088]
add rdx, rcx
movabs rax, 0xcf202209a87cc6a1
xor rdx, rax
movzx eax, r10b
movzx ecx, r11b
imul ecx, eax
and cl, r15b
ror rdx, cl
shl rdx, 0xf
movabs rax, 0xf7ca7db9416613fd
sub rax, rbx
mov rbx, rdx
xor rbx, rax
mov rcx, rbx
imul rcx, rdi
mov eax, 0x90bdc117
add rcx, rax
movabs r15, 0xaaaaaaaaaaaaaaab
mov rax, r15
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
lea r13, [0x14031d060]
mov cl, byte [r13 + rcx*8]
and cl, 0xf
movabs rdi, 0x483e021b500fbd94
sub rdi, r11
shr rdi, cl
movabs rcx, 0xcfaacbfa5d1acb01
add rcx, r12
mov rax, r15
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
mov rax, r10
imul rax, qword [r13 + rcx*8]
imul rax, r10
sub rax, rsi
xor rdi, rax
jmp 0x1401a2958
movabs rax, 0xaaaaaa1a90a43c29
mov rcx, r10
xor rcx, rax
movabs rax, 0x1206ed52a9e065
imul rcx, rax
movabs rdx, 0xfff17ca847c60a55
mov rax, r9
xor rax, rdx
sub rcx, rax
movabs rax, 0xffff7e8ab6b40ef5
imul r12, rax
movabs rbx, 0x4ee52c701b85255e
add rbx, rcx
add rbx, r12
movabs rax, 0x277cd7be4274eb49
mov rcx, rbx
xor rcx, rax
movabs rax, 0xaaaaaaaaaaaaaaab
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
mov r8, rbx
not r8
lea rdx, [0x14031d060]
imul r8, qword [rdx + rcx*8]
xor r8, 0xffffffffc5f1eaf9
lea ecx, [r10 - 0x15]
and cl, r15b
rol r8, cl
movabs rax, 0xfb87b73b73091fb7
xor r13, rax
movabs rax, 0x7c7a7dc6acf6e048
and r13, rax
imul r8, r13
mov rcx, r8
ror rcx, 0x10
not rcx
movabs rax, 0x9b2de6b23661a5b8
imul rcx, rax
mov rax, rbx
sub rax, r8
lea rdx, [rcx + rax*4]
mov cl, sil
and cl, r15b
ror rdx, cl
mov rax, rdi
mov rdi, rdx
imul rdi, rax
jmp 0x1401a2958
movabs rax, 0x71e75a30f3f7c913
imul r10, rax
movabs rax, 0xd79435e50d79435f
mul r10
shr rdx, 4
movzx eax, dl
imul edx, eax, 0x13
mov cl, r10b
sub cl, dl
movabs rdx, 0xcfa2a771fae11924
mov rax, r14
imul rax, rdx
xor rax, r11
not rax
shl rax, cl
xor r9, rax
mov cl, r8b
and cl, r15b
rol r9, cl
movabs rcx, 0xcfa2a771fae11925
add rcx, r10
movabs rax, 0xaaaaaaaaaaaaaaab
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
movabs rdx, 0x188e051ee6db
lea rax, [0x14031d060]
mov rax, qword [rax + rcx*8]
imul rax, rdx
xor r9, rax
movabs rax, 0xffffc7a7cc604a04
or r9, rax
mov rdi, qword [0x14031d070]
imul rdi, r11
sub rdi, r8
mov rax, rsi
sub rax, r9
xor rdi, rax
movabs rax, 0xc7a7c6a69d684a09
xor rdi, rax
movabs rax, 0xcccccccccccccccd
mul r14
shr rdx, 3
lea rax, [rdx + rdx*4]
add rax, rax
mov rcx, r14
sub rcx, rax
or rcx, 1
xor edx, edx
mov rax, rdi
div rcx
mov rcx, rdx
mov rdx, r10
imul rdx, r8
imul rdx, rdi
shr rdx, cl
mov rax, rbx
sub rax, rdx
sub rax, r14
movabs r14, 0x7895894523a0613
add r14, rax
xor r14, rsi
movzx eax, bl
imul ecx, eax, 0xec
and cl, r15b
rol r14, cl
not r14
jmp 0x1401a2958
movabs rax, 0xaaaaaaaaaaaaaaab
mul r9
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
mov rcx, r9
sub rcx, rax
mov rax, r10
imul rax, qword [0x14031d080]
lea rdx, [0x14031d060]
mov rdx, qword [rdx + rcx*8]
and rdx, rax
xor rdx, r9
and r9b, r15b
mov cl, r9b
mov r9, rdx
ror r9, cl
imul r9, r8
not rsi
imul rsi, rbx
movabs rax, 0x7cd8a7de40991be8
imul rsi, rax
mov rax, r9
imul rax, r14
mov r14, rsi
xor r14, rax
imul rsi, qword [0x14031d060], 0xfffffffff5f96996
mov rdx, qword [0x14031d068]
sub rsi, rdx
mov al, r14b
not al
movzx ecx, al
movzx eax, dl
xor ecx, eax
and ecx, 0x8000003f
jge 0x1401a2945
dec ecx
or ecx, 0xffffffc0
inc ecx
ror rsi, cl
movabs rax, 0xcfa2a771fae11925
add rsi, rax
add rsi, r12
movabs rcx, 0xff055d7bb0d21125
xor r11, rcx
movabs rax, 0xaaaaaaaaaaaaaaab
mul r11
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub r11, rax
xor r9, r14
lea rax, [0x14031d060]
imul r9, qword [rax + r11*8]
not r8
imul r8, r10
imul r8, rsi
imul r8, rdi
movabs rcx, 0xf5ed7e87b7615bf9
xor rcx, rbx
not rcx
xor rcx, r8
sub rcx, r9
call fcn.14019d214
mov qword [0x140321f80], rax
mov word [rbp + 0x48], 0xcbac
xor r13d, r13d
mov r15d, r13d
mov r12, qword [0x14031d040]
xor edx, edx
mov rax, r15
movabs rcx, 0x13cce94adba99340
div rcx
add dl, 0x38
mov r14b, dl
sar r14b, 7
or r14b, dl
mov al, r14b
sar al, 2
mov sil, r14b
shl sil, 6
mov r11b, sil
or r11b, al
movsx rcx, r14b
or sil, al
mov r9b, r14b
sar r9b, 5
mov al, r14b
shl al, 3
or r9b, al
mov r10b, r14b
sar r10b, 3
mov al, r14b
shl al, 5
or r10b, al
mov r8b, r14b
sar r8b, 4
mov al, r14b
shl al, 4
or r8b, al
mov bl, r14b
not bl
mov dil, r14b
ror dil, 7
lea eax, [r10 - 0x50]
add dil, al
mov dl, byte [rbp + r15 + 0x48]
sub dl, r11b
sub dl, 2
mov eax, 4
sub al, sil
xor dl, al
sar rcx, 1
mov al, r14b
shl al, 7
or cl, al
sub dl, cl
sub dl, byte [0x14031d050]
sub dl, byte [0x14031d058]
sub dl, 0x3f
add dl, sil
add dl, r14b
lea eax, [r11 + 7]
add al, r14b
xor dl, al
sub dl, r9b
sub dl, r14b
sub dl, byte [0x14031d048]
sub dl, 0x50
add dl, sil
add dl, r12b
mov al, r8b
sub al, r9b
add al, r11b
add al, r14b
xor dl, al
mov al, r14b
sub al, r8b
xor al, r14b
sub dl, al
sub dl, r10b
add dl, 0x30
add dl, r14b
xor dil, dl
mov al, r14b
add al, al
sub dil, al
add sil, sil
add dil, 0x51
add dil, sil
add dil, r12b
not dil
mov al, r14b
sar al, 7
or al, r14b
sub dil, al
mov al, bl
xor al, byte [0x14031d038]
sub dil, al
mov al, r14b
xor al, 0x40
sub dil, al
mov al, r14b
xor al, byte [0x14031d030]
add dil, al
movsx eax, r14b
movsx ecx, bl
imul ecx, eax
xor dil, cl
mov byte [rbp + r15 + 0x48], dil
inc r15
cmp r15, 2
jb 0x1401a29d3
lea rax, [rbp + 0x48]
mov qword [rbp - 0x10], rax
mov qword [rbp - 8], 2
mov dword [rbp + 0x58], r13d
mov dword [rbp + 0x58], 0x80ff9691
mov eax, 0x8a929024
sub eax, dword [0x14031d058]
sub eax, dword [0x14031d050]
xor eax, 0x132d9409
sub eax, dword [0x14031d048]
mov rcx, qword [0x14031d040]
add eax, 0x7ee9ee4a
add eax, ecx
xor eax, 0x33fc30bb
sub eax, 0x6c6c6870
xor eax, 0x2eed80c7
lea edx, [rcx - 0x30fcb205]
add edx, eax
not edx
mov eax, dword [0x14031d038]
xor eax, 0xd1b2e6c8
sub edx, eax
mov ecx, dword [0x14031d030]
xor ecx, 0x2e4d1937
add ecx, 0x4c321a5b
add ecx, edx
xor ecx, 0xe0211cf8
mov dword [rbp + 0x58], ecx
movsxd rdx, ecx
lea r8, [rbp + 0x48]
mov rcx, qword [rbp - 0x18]
call fcn.14003eebc
nop
mov dword [rbp + 0x58], r13d
mov dword [rbp - 0x20], r13d
mov dword [rbp - 0x20], 0x11c0ee52
mov eax, 0x35caaf66
sub eax, dword [0x14031d058]
sub eax, dword [0x14031d050]
xor eax, 0x1aca548b
sub eax, dword [0x14031d048]
mov r8, qword [0x14031d040]
lea edx, [r8 + 0x7078f96e]
add edx, eax
xor edx, 0xbe80e96d
sub edx, 0x4b1b3987
xor edx, 0x466e1b83
mov ecx, dword [0x14031d030]
xor ecx, 0x1eaa183d
sub ecx, edx
mov eax, dword [0x14031d038]
xor eax, 0xe155e7c2
sub ecx, eax
sub ecx, r8d
add ecx, 0x5d73c437
xor ecx, 0x6206693a
mov dword [rbp - 0x20], ecx
call fcn.14027f118
mov rdx, rax
mov rcx, qword [rbp - 0x18]
call fcn.14027f2ac
nop
mov dword [rbp - 0x20], r13d
mov edi, r13d
mov esi, 0x3be3f9ea
mov rax, qword gs:[0x60]
mov rax, qword [rax + 0x18]
mov rax, qword [rax + 0x10]
movups xmm0, xmmword [rax + 0x58]
movd ecx, xmm0
sub cx, 8
test edi, edi
je 0x1401a2ccd
psrldq xmm0, 8
movq r9, xmm0
movzx ecx, cx
shr rcx, 1
lea r11, [r9 + rcx*2]
mov r10d, 0xe610f772
jmp 0x1401a2cbf
movsx edx, byte [r9]
mov r8d, edx
imul r8d, edx
add r8d, 0x31
xor r8d, 0x4764996c
mov ecx, r10d
xor ecx, edx
mov r10d, r8d
imul r10d, ecx
add r9, 2
cmp r9, r11
jne 0x1401a2c99
cmp r10d, edi
jne 0x1401a2ddf
mov r10, qword [rax + 0x30]
movsxd rcx, dword [r10 + 0x3c]
mov rcx, qword [rcx + r10 + 0x88]
mov ebx, ecx
add rbx, r10
shr rcx, 0x20
cmp rbx, r10
je 0x1401a2ddf
mov r14d, dword [rbx + 0x18]
test r14d, r14d
je 0x1401a2ddf
mov r13d, dword [rbx + 0x20]
dec r14d
lea rdx, [r10 + r14*4]
mov r11d, dword [rdx + r13]
add r11, r10
mov r15d, 0xe610f772
jmp 0x1401a2d39
movsx r8d, dl
mov r9d, r8d
imul r9d, r8d
add r9d, 0x31
xor r9d, 0x4764996c
mov edx, r15d
xor edx, r8d
mov r15d, r9d
imul r15d, edx
mov dl, byte [r11]
inc r11
test dl, dl
jne 0x1401a2d16
cmp r15d, esi
je 0x1401a2d55
test r14d, r14d
jne 0x1401a2d00
xor r13d, r13d
jmp 0x1401a2ddf
mov edx, dword [rbx + 0x24]
add rdx, r10
movzx r8d, word [rdx + r14*2]
mov edx, dword [rbx + 0x1c]
add rdx, r10
mov r9d, dword [rdx + r8*4]
add r9, r10
cmp r9, rbx
jbe 0x1401a2de7
lea rax, [rbx + rcx]
cmp r9, rax
jae 0x1401a2de7
mov edi, 0xe610f772
mov esi, edi
jmp 0x1401a2d9e
movsx ecx, al
mov eax, ecx
imul eax, ecx
add eax, 0x31
xor eax, 0x4764996c
xor ecx, edi
mov edi, eax
imul edi, ecx
inc r9
mov al, byte [r9]
cmp al, 0x2e
jne 0x1401a2d84
inc r9
xor r13d, r13d
jmp 0x1401a2dc7
movsx ecx, al
mov eax, ecx
imul eax, ecx
add eax, 0x31
xor eax, 0x4764996c
xor ecx, esi
mov esi, eax
imul esi, ecx
inc r9
mov al, byte [r9]
test al, al
jne 0x1401a2dad
mov rax, qword gs:[0x60]
mov rax, qword [rax + 0x18]
mov rax, qword [rax + 0x10]
mov rax, qword [rax]
jmp 0x1401a2c6d
mov rcx, qword [rbp - 0x18]
mov rbx, qword [rsp + 0x80]
add rsp, 0x40
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
jmp r9