Function at 0x1402109a4
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, 0x50
xor ebx, ebx
mov edi, 0xaad21c2e
mov rax, qword gs:[0x60]
mov rax, qword [rax + 0x18]
mov rax, qword [rax + 0x10]
mov r13d, 0x4764996c
movups xmm0, xmmword [rax + 0x58]
movd ecx, xmm0
sub cx, 8
test ebx, ebx
je 0x140210a30
psrldq xmm0, 8
movq r8, xmm0
movzx ecx, cx
shr rcx, 1
lea r10, [r8 + rcx*2]
mov r9d, 0xce3f1370
jmp 0x140210a22
movsx edx, byte [r8]
mov ecx, edx
imul ecx, edx
add ecx, 0x31
xor ecx, r13d
xor edx, r9d
mov r9d, ecx
imul r9d, edx
add r8, 2
cmp r8, r10
jne 0x140210a05
cmp r9d, ebx
jne 0x140210b2c
mov r10, qword [rax + 0x30]
movsxd rcx, dword [r10 + 0x3c]
mov rcx, qword [rcx + r10 + 0x88]
mov r11d, ecx
add r11, r10
shr rcx, 0x20
cmp r11, r10
je 0x140210b2c
mov esi, dword [r11 + 0x18]
test esi, esi
je 0x140210b2c
mov r12d, dword [r11 + 0x20]
dec esi
lea rdx, [r12 + rsi*4]
mov r9d, dword [rdx + r10]
add r9, r10
mov r14d, 0xce3f1370
jmp 0x140210a93
movsx r8d, dl
mov edx, r8d
imul edx, r8d
add edx, 0x31
xor edx, r13d
xor r8d, r14d
mov r14d, edx
imul r14d, r8d
mov dl, byte [r9]
inc r9
test dl, dl
jne 0x140210a78
cmp r14d, edi
je 0x140210aab
test esi, esi
jne 0x140210a63
jmp 0x140210b2c
mov edx, dword [r11 + 0x1c]
add rdx, r10
mov eax, dword [r11 + 0x24]
add rax, r10
movzx eax, word [rax + rsi*2]
mov r9d, dword [rdx + rax*4]
add r9, r10
cmp r9, r11
jbe 0x140210b34
lea rax, [r11 + rcx]
cmp r9, rax
jae 0x140210b34
mov ebx, 0xce3f1370
mov edi, ebx
jmp 0x140210af3
movsx ecx, al
mov eax, ecx
imul eax, ecx
add eax, 0x31
xor eax, r13d
xor ecx, ebx
mov ebx, eax
imul ebx, ecx
inc r9
mov al, byte [r9]
cmp al, 0x2e
jne 0x140210adb
jmp 0x140210b11
movsx ecx, al
mov eax, ecx
imul eax, ecx
add eax, 0x31
xor eax, r13d
xor ecx, edi
mov edi, eax
imul edi, ecx
inc r9
mov al, byte [r9]
test al, al
jne 0x140210afc
mov rax, qword gs:[0x60]
mov rax, qword [rax + 0x18]
mov rax, qword [rax + 0x10]
mov rax, qword [rax]
jmp 0x1402109d9
and dword [rbp + 0x48], 0
mov dword [rbp + 0x48], 0xe28fa0d6
mov eax, 0x5a61e56f
sub eax, dword [0x14033a058]
sub eax, dword [0x14033a050]
xor eax, 0x59285caa
sub eax, dword [0x14033a048]
mov rdx, qword [0x14033a040]
lea ecx, [rdx + 0x59fb930d]
add ecx, eax
xor ecx, 0x240df67c
add ecx, 0x7e918bb5
xor ecx, 0x1f33fb05
mov r8d, dword [0x14033a030]
xor r8d, 0x238ff8db
sub r8d, ecx
mov eax, dword [0x14033a038]
xor eax, 0xdc700724
sub r8d, eax
sub r8d, edx
sub r8d, 0x3e785858
xor r8d, 0x3dcfbcc
mov dword [rbp + 0x48], r8d
movsxd rcx, r8d
call r9
mov r13, rax
mov qword [rbp + 0x58], rax
and dword [rbp + 0x48], 0
movabs rsi, 0xf15bf8372970e6f0
movabs rdi, 0x60dc4f65dc1b880b
xor ebx, ebx
movabs rax, 0xe191497dd7298200
movabs r11, 0xf6ac09f1002ad15d
mov r14, qword [0x14033a070]
imul r14, rax
not r14
movabs rcx, 0x953f60ef84f563b
mov r12, qword [0x14033a060]
mov rax, r12
xor rax, rcx
and r14, rax
ror r14, 0x3a
shr r14, 8
movabs rax, 0xf3cb90d0cdea5980
mov r10, r12
imul r10, rax
add r10, rdi
movabs rax, 0x4598172500000000
xor r10, rax
shr r10, 0x1f
not r10
movabs r8, 0x9f23b09a23e477f5
lea rcx, [r10 + r8]
movabs rax, 0xaaaaaaaaaaaaaaab
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
lea rdx, [0x14033a060]
movzx eax, r10b
movzx ecx, byte [rdx + rcx*8]
imul ecx, eax
movzx ecx, cl
xor ecx, 0x11
and ecx, 0x8000003f
jge 0x140210c93
dec ecx
or ecx, 0xffffffc0
inc ecx
mov rdx, r10
ror rdx, cl
not rdx
movabs rax, 0x65ddc7765728760e
mov r15, rdx
imul r15, rax
add r8, r15
mov r9, r10
imul r9, r14
sub r9, r8
xor r9, rsi
mov cl, r8b
xor cl, 0xfe
and cl, 0xf
rol r9, cl
mov rax, r8
sub rax, qword [0x14033a078]
xor r9, rax
movabs rax, 0x824d4ca1b8ee829a
imul rdx, rax
movabs rax, 0x7bd77776e29db079
sub rdx, rax
xor r9, rdx
xor r9, r11
mov rax, r9
xor rax, 0xfffffffffffffffe
and eax, 3
je 0x140210fd0
sub rax, 1
movabs r12, 0xaaaaaaaaaaaaaaab
je 0x140210ee0
sub rax, 1
je 0x140210e19
cmp rax, 1
jne 0x140211050
mov rsi, r8
imul rsi, r10
movabs rax, 0x63d78c0e51cbd95
add rax, r9
xor rsi, rax
ror rsi, 2
shr rsi, 0xc
not rsi
movabs rcx, 0x83571b3c6406
mov rdx, qword [0x14033a088]
add rdx, rcx
movabs rax, 0x9fa135e273c33375
xor rdx, rax
movzx eax, r9b
movzx ecx, sil
imul ecx, eax
and cl, 0x3f
ror rdx, cl
shl rdx, 0xf
movabs rax, 0xf7ca7db943dc88f9
sub rax, r10
mov r10, rdx
xor r10, rax
mov rcx, r10
imul rcx, rdi
mov eax, 0x92075a13
add rcx, rax
mov rax, r12
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
lea rax, [0x14033a060]
mov cl, byte [rax + rcx*8]
and cl, 0xf
movabs rdi, 0x5c73d2712feea254
sub rdi, rsi
shr rdi, cl
movabs rcx, 0x9f2bd5228467a2d5
add rcx, r15
mov rax, r12
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
mov rax, r9
lea rdx, [0x14033a060]
imul rax, qword [rdx + rcx*8]
imul rax, r9
sub rax, r14
xor rdi, rax
jmp 0x140211050
movabs rcx, 0xaaaaaa1a921ea72d
mov r10, r9
xor r10, rcx
movabs rcx, 0x1206ed50137b61
imul r10, rcx
movabs rcx, 0xffff7e8ab40e95f1
imul r15, rcx
movabs rcx, 0xeaeddc1a0604dc8a
add r10, rcx
add r10, r15
movabs rax, 0x277cd7be40ce704d
mov rcx, r10
xor rcx, rax
mov rax, r12
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
mov r8, r10
not r8
lea rax, [0x14033a060]
imul r8, qword [rax + rcx*8]
xor r8, 0xffffffffc74b71fd
lea ecx, [r9 - 0x11]
and cl, 0x3f
rol r8, cl
movabs rax, 0x18506100a0000000
imul r8, rax
mov rcx, r10
sub rcx, r8
mov rax, r8
not rax
movabs rdx, 0x9b2de6b23c8bc9a8
imul rax, rdx
lea rdx, [rax + rcx*4]
mov cl, r14b
and cl, 0x3f
ror rdx, cl
mov rax, rdi
mov rdi, rdx
imul rdi, rax
jmp 0x140211050
movabs rax, 0xd7019921418e2ab
imul r9, rax
movabs rax, 0xd79435e50d79435f
mul r9
shr rdx, 4
movzx eax, dl
imul edx, eax, 0x13
mov cl, r9b
sub cl, dl
movabs rdx, 0xea407c8d68f190f
shl rdx, cl
mov rax, r11
mov r11, rdx
xor r11, rax
mov cl, r8b
and cl, 0x3f
rol r11, cl
movabs rcx, 0x9f23b09a23e477f5
add rcx, r9
mov rax, r12
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
movabs rdx, 0xf65dc1b880b
lea rax, [0x14033a060]
mov rax, qword [rax + rcx*8]
imul rax, rdx
xor r11, rax
movabs rax, 0xffffc7a7cedad100
or r11, rax
mov rdi, qword [0x14033a070]
imul rdi, rsi
sub rdi, r8
mov rax, r14
sub rax, r11
xor rdi, rax
movabs rax, 0xc7a7c6a69fd2d10d
xor rdi, rax
mov rax, r9
imul rax, r8
imul rax, rdi
mov rbx, r10
sub rbx, rax
movabs rax, 0x789589450809d17
add rbx, rax
xor rbx, r14
movzx eax, r10b
imul ecx, eax, 0xe8
and cl, 0x3f
rol rbx, cl
not rbx
jmp 0x140211050
mov rcx, r9
imul rcx, qword [0x14033a080]
mov rdx, qword [0x14033a068]
and rcx, rdx
mov rax, r11
mov r11, rcx
xor r11, rax
ror r11, 0x1d
imul r11, r8
mov rbx, r14
not rbx
imul rbx, r10
movabs rax, 0x7cd8a7de422380ec
imul rbx, rax
imul r14, r12, 0xfffffffff8658766
sub r14, rdx
mov al, bl
not al
movzx ecx, al
movzx eax, dl
xor ecx, eax
and ecx, 0x8000003f
jge 0x140211033
dec ecx
or ecx, 0xffffffc0
inc ecx
ror r14, cl
movabs rax, 0x9f23b09a23e477f5
add r14, rax
add r14, r15
movabs r12, 0xaaaaaaaaaaaaaaab
movabs rcx, 0xff055d7bb2688a21
xor rsi, rcx
mov rax, r12
mul rsi
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rsi, rax
xor r11, rbx
lea rax, [0x14033a060]
imul r11, qword [rax + rsi*8]
not r8
imul r8, r9
imul r8, r14
imul r8, rdi
movabs rcx, 0xf5ed7e87b5dbc0fd
xor rcx, r10
not rcx
xor rcx, r8
sub rcx, r11
call fcn.1401b2fbc
mov qword [0x1403489b8], rax
movdqa xmm0, xmmword [0x140315230]
movdqu xmmword [rbp - 0x20], xmm0
mov dword [rbp - 0x10], 0xbb045bbf
mov dword [rbp - 0xc], 0x38f5a5e2
mov byte [rbp - 8], 0xa6
xor r15d, r15d
mov r12, qword [0x14033a040]
xor edx, edx
mov rax, r15
movabs rcx, 0x13cce94adbfb7614
div rcx
add dl, 0x30
mov r14b, dl
sar r14b, 7
or r14b, dl
mov sil, r14b
shl sil, 6
mov al, r14b
sar al, 2
or sil, al
mov r8b, r14b
sar r8b, 5
mov al, r14b
shl al, 3
or r8b, al
mov r10b, r14b
sar r10b, 3
mov al, r14b
shl al, 5
or r10b, al
mov dl, r14b
sar dl, 4
mov al, r14b
shl al, 4
or dl, al
mov r9b, r14b
add r9b, r9b
mov r11b, r14b
sar r11b, 7
mov bl, r14b
not bl
mov dil, byte [rbp + r15 - 0x20]
sub dil, sil
sub dil, 2
mov eax, 4
sub al, sil
xor dil, al
mov cl, r14b
shl cl, 7
mov al, r14b
sar al, 1
or cl, al
sub dil, cl
sub dil, byte [0x14033a050]
sub dil, byte [0x14033a058]
sub dil, 0x3f
add dil, sil
add dil, r14b
lea eax, [rsi + 7]
add al, r14b
xor dil, al
sub dil, r8b
sub dil, r14b
sub dil, byte [0x14033a048]
sub dil, 0x50
add dil, sil
add dil, r12b
mov al, dl
sub al, r8b
add al, sil
add al, r14b
xor dil, al
mov al, r14b
sub al, dl
xor al, r14b
sub dil, al
sub dil, r10b
add dil, 0x30
add dil, r14b
mov al, r11b
or al, r9b
sub al, 0x50
add al, r10b
xor dil, al
add sil, sil
add dil, sil
sub dil, r9b
add dil, 0x51
add dil, r12b
not dil
or r11b, r14b
sub dil, r11b
mov al, bl
xor al, byte [0x14033a038]
sub dil, al
mov al, r14b
xor al, byte [0x14033a030]
add dil, al
mov al, r14b
xor al, 0x40
sub dil, al
movsx eax, r14b
movsx ecx, bl
imul ecx, eax
xor cl, dil
mov byte [rbp + r15 - 0x20], cl
inc r15
cmp r15, 0x19
jb 0x1402110da
lea rax, [rbp - 0x20]
mov qword [rbp - 0x30], rax
mov qword [rbp - 0x28], 0x19
and dword [rbp + 0x48], 0
mov dword [rbp + 0x48], 0x2d47808f
mov eax, 0xa78cc671
sub eax, dword [0x14033a058]
sub eax, dword [0x14033a050]
xor eax, 0xf8b849b1
sub eax, dword [0x14033a048]
mov rcx, qword [0x14033a040]
add eax, 0x5b8d2aed
add eax, ecx
xor eax, 0x164543a3
sub eax, 0x5b09e708
xor eax, 0x71e6255e
lea edx, [rcx - 0x4a536c6b]
add edx, eax
not edx
mov eax, dword [0x14033a038]
xor eax, 0xd21b1b20
sub edx, eax
mov ecx, dword [0x14033a030]
xor ecx, 0x2de4e4df
add ecx, 0xb50eaf34
add ecx, edx
xor ecx, 0xf24520e0
mov dword [rbp + 0x48], ecx
movsxd rdx, ecx
lea r8, [rbp - 0x20]
mov rcx, r13
call fcn.140052650
nop
and dword [rbp + 0x48], 0
xor eax, eax
and dword [rbp + 0x50], eax
mov dword [rbp + 0x50], 0xc8ef2dcd
mov eax, 0x715f506b
sub eax, dword [0x14033a058]
sub eax, dword [0x14033a050]
xor eax, 0x95719d7b
sub eax, dword [0x14033a048]
mov rcx, qword [0x14033a040]
add eax, 0x96dd7ae9
add eax, ecx
xor eax, 0xa6c6a1bd
sub eax, 0x1361028a
xor eax, 0xd50340a1
lea edx, [rcx - 0x2966dc2c]
add edx, eax
not edx
mov eax, dword [0x14033a038]
xor eax, 0xd3a219d6
sub edx, eax
mov ecx, dword [0x14033a030]
xor ecx, 0x2c5de629
add ecx, 0x3d92636b
add ecx, edx
xor ecx, 0xb2ea6746
mov dword [rbp + 0x50], ecx
call fcn.14029b0c0
mov rdx, rax
mov rcx, r13
call fcn.14029b254
nop
and dword [rbp + 0x50], 0
xor edi, edi
mov esi, 0xff47e7ba
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 0x1402113d2
psrldq xmm0, 8
movq r9, xmm0
movzx ecx, cx
shr rcx, 1
lea r11, [r9 + rcx*2]
mov r10d, 0x3e6ebf66
jmp 0x1402113c4
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 0x14021139e
cmp r10d, edi
jne 0x1402114db
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 0x1402114db
mov r14d, dword [rbx + 0x18]
test r14d, r14d
je 0x1402114db
mov r13d, dword [rbx + 0x20]
dec r14d
lea rdx, [r10 + r14*4]
mov r11d, dword [rdx + r13]
add r11, r10
mov r15d, 0x3e6ebf66
jmp 0x14021143e
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 0x14021141b
cmp r15d, esi
je 0x140211457
test r14d, r14d
jne 0x140211405
jmp 0x1402114db
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 0x1402114e3
lea rax, [rcx + rbx]
cmp r9, rax
jae 0x1402114e3
mov edi, 0x3e6ebf66
mov esi, edi
jmp 0x1402114a0
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 0x140211486
jmp 0x1402114c0
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 0x1402114a9
mov rax, qword gs:[0x60]
mov rax, qword [rax + 0x18]
mov rax, qword [rax + 0x10]
mov rax, qword [rax]
jmp 0x140211372
mov rcx, qword [rbp + 0x58]
mov rbx, qword [rsp + 0x90]
add rsp, 0x50
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
jmp r9