Function at 0x14020ff54
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, 0x8150840e
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 0x14020ffe1
psrldq xmm0, 8
movq r8, xmm0
movzx ecx, cx
shr rcx, 1
lea r10, [r8 + rcx*2]
mov r9d, 0x59a9b0ba
jmp 0x14020ffd3
movsx edx, byte [r8]
mov ecx, edx
imul ecx, edx
add ecx, 0x31
xor ecx, 0x4764996c
xor edx, r9d
mov r9d, ecx
imul r9d, edx
add r8, 2
cmp r8, r10
jne 0x14020ffb3
cmp r9d, ebx
jne 0x1402100ea
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 0x1402100ea
mov esi, dword [r11 + 0x18]
test esi, esi
je 0x1402100ea
mov r12d, dword [r11 + 0x20]
dec esi
lea rdx, [r12 + rsi*4]
mov r9d, dword [rdx + r10]
add r9, r10
mov r14d, 0x59a9b0ba
jmp 0x140210047
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 [r9]
inc r9
test dl, dl
jne 0x140210029
cmp r14d, edi
je 0x14021005f
test esi, esi
jne 0x140210014
jmp 0x1402100ea
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 0x1402100f2
lea rax, [r11 + rcx]
cmp r9, rax
jae 0x1402100f2
mov ebx, 0x59a9b0ba
mov edi, ebx
jmp 0x1402100ac
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 r9
mov al, byte [r9]
cmp al, 0x2e
jne 0x14021008f
jmp 0x1402100cf
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 r9
mov al, byte [r9]
test al, al
jne 0x1402100b5
mov rax, qword gs:[0x60]
mov rax, qword [rax + 0x18]
mov rax, qword [rax + 0x10]
mov rax, qword [rax]
jmp 0x14020ff87
mov dword [rbp + 0x48], r13d
mov dword [rbp + 0x48], 0x9bdff1c8
mov eax, 0x988160f8
sub eax, dword [0x14033e058]
sub eax, dword [0x14033e050]
xor eax, 0x1b761c7b
sub eax, dword [0x14033e048]
mov rdx, qword [0x14033e040]
lea ecx, [rdx - 0x538dbdd0]
add ecx, eax
xor ecx, 0x236050c
add ecx, 0x2a66d953
xor ecx, 0x3e642c95
mov r8d, dword [0x14033e030]
xor r8d, 0x70b42b3
sub r8d, ecx
mov eax, dword [0x14033e038]
xor eax, 0xf8f4bd4c
sub r8d, eax
sub r8d, edx
sub r8d, 0x6df62f53
xor r8d, 0x6231f424
mov dword [rbp + 0x48], r8d
movsxd rcx, r8d
call r9
mov qword [rbp + 0x58], rax
mov dword [rbp + 0x48], r13d
movabs rsi, 0x1b01212c8ae07f62
movabs rdi, 0x33bb859517a731cd
mov rbx, r13
movabs rax, 0x3b8c45741395093c
movabs r10, 0x70a821daebcb61e6
mov r15, qword [0x14033e070]
imul r15, rax
not r15
movabs rdx, 0x70a821dacb185302
mov r13, qword [0x14033e060]
mov rax, r13
xor rax, rdx
and r15, rax
ror r15, 0x16
shr r15, 8
movabs rax, 0x8d99b3e8584ff7b8
mov r11, qword [0x14033e070]
imul r11, rax
add r11, rdi
movabs rax, 0xac48e784ffffffff
xor r11, rax
shr r11, 0x1f
not r11
movabs r8, 0xcc447a6ae858ce33
lea rcx, [r11 + r8]
movabs rax, 0xaaaaaaaaaaaaaaab
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
lea rdx, [0x14033e060]
movzx eax, r11b
movzx ecx, byte [rdx + rcx*8]
imul ecx, eax
movzx ecx, cl
xor ecx, 0x7b
and ecx, 0x8000003f
jge 0x140210253
dec ecx
or ecx, 0xffffffc0
inc ecx
mov rdx, r11
ror rdx, cl
not rdx
movabs rax, 0x7144ade62ad41cd8
mov r12, rdx
imul r12, rax
add r8, r12
mov r9, r11
imul r9, r15
sub r9, r8
xor r9, rsi
movzx r14d, r8b
mov ecx, r14d
xor ecx, 4
and ecx, 0xf
jge 0x140210293
dec ecx
or ecx, 0xffffffc0
inc ecx
rol r9, cl
mov rax, r8
sub rax, qword [0x14033e078]
xor r9, rax
movabs rax, 0x328050311e4870f8
imul rdx, rax
movabs rax, 0x4bf38d3926d9e1d7
add rdx, rax
xor r9, rdx
xor r9, r10
mov rax, r9
and eax, 1
je 0x1402105b0
sub rax, 1
je 0x1402104aa
sub rax, 1
movabs r14, 0xaaaaaaaaaaaaaaab
je 0x1402103de
cmp rax, 1
jne 0x140210630
mov rsi, r8
imul rsi, r11
movabs rax, 0x10eb04c3c809bbf1
add rax, r9
xor rsi, rax
ror rsi, 0x2c
shr rsi, 0xc
not rsi
movabs rcx, 0x83570092ce70
mov rdx, qword [0x14033e088]
add rdx, rcx
movabs rax, 0xccc6ff12a3d120d9
xor rdx, rax
movzx eax, sil
movzx ecx, r9b
imul ecx, eax
and cl, 0x3f
ror rdx, cl
shl rdx, 0xf
movabs rax, 0xf7ca7db958722293
sub rax, r11
mov r11, rdx
xor r11, rax
mov rcx, r11
imul rcx, rdi
mov eax, 0x89a9f079
add rcx, rax
mov rax, r14
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
lea r13, [0x14033e060]
mov cl, byte [r13 + rcx*8]
and cl, 0xf
movabs rdi, 0x12b7f6e51b1ff8b2
sub rdi, rsi
shr rdi, cl
movabs rcx, 0xcc4c9ef363864ee9
add rcx, r12
mov rax, r14
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
mov rax, r9
imul rax, qword [r13 + rcx*8]
imul rax, r9
sub rax, r15
xor rdi, rax
jmp 0x140210637
movabs rcx, 0xaaaaaa1a89b00d47
mov r11, r9
xor r11, rcx
movabs rcx, 0x1206ed4bbdd10b
imul r11, rcx
movabs rcx, 0xffff7e8aafa03f9b
imul r12, rcx
movabs rcx, 0xb70bbcf43fea4a9f
add r11, rcx
add r11, r12
movabs rax, 0x277cd7be5b60da27
mov rcx, r11
xor rcx, rax
mov rax, r14
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
mov r8, r11
not r8
lea r13, [0x14033e060]
imul r8, qword [r13 + rcx*8]
xor r8, 0xffffffffdce5db97
lea ecx, [r9 + 5]
and cl, 0x3f
rol r8, cl
movabs rax, 0x6c227002a0000000
imul r8, rax
mov rcx, r8
ror rcx, 0x38
not rcx
movabs rax, 0x9b2de6b252316000
imul rcx, rax
mov rax, r11
sub rax, r8
lea rdx, [rcx + rax*4]
mov cl, r15b
and cl, 0x3f
ror rdx, cl
mov rax, rdi
mov rdi, rdx
imul rdi, rax
jmp 0x140210637
movabs rax, 0xacf561c10b7fdab1
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, 0xe4feded3751f809d
shl rdx, cl
mov rax, r10
mov r10, rdx
xor r10, rax
and r14d, 0x8000003f
jge 0x1402104fd
dec r14d
or r14d, 0xffffffc0
inc r14d
mov cl, r14b
rol r10, cl
movabs rcx, 0xcc447a6ae858ce33
add rcx, r9
movabs r14, 0xaaaaaaaaaaaaaaab
mov rax, r14
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
movabs rdx, 0x59517a731cd
lea r13, [0x14033e060]
mov rax, qword [r13 + rcx*8]
imul rax, rdx
xor r10, rax
movabs rax, 0xffffc7a7d5747b6a
or r10, rax
mov rdi, qword [0x14033e070]
imul rdi, rsi
sub rdi, r8
mov rax, r15
sub rax, r10
xor rdi, rax
movabs rax, 0xc7a7c6a6847c7b67
xor rdi, rax
mov rax, r9
imul rax, r8
imul rax, rdi
mov rbx, r11
sub rbx, rax
movabs rax, 0x78958944b2e377d
add rbx, rax
xor rbx, r15
mov cl, r11b
add cl, cl
and cl, 0x3f
rol rbx, cl
not rbx
jmp 0x140210637
mov rcx, r9
imul rcx, qword [0x14033e080]
and rcx, r13
mov rax, r10
mov r10, rcx
xor r10, rax
ror r10, 0x26
imul r10, r8
mov rbx, r15
not rbx
imul rbx, r11
movabs rax, 0x7cd8a7de598d2a86
imul rbx, rax
imul r14, r13, 0x20d332e4
mov rdx, qword [0x14033e068]
sub r14, rdx
mov al, bl
not al
movzx ecx, al
movzx eax, dl
xor ecx, eax
and ecx, 0x8000003f
jge 0x140210613
dec ecx
or ecx, 0xffffffc0
inc ecx
ror r14, cl
movabs r15, 0xcc447a6ae858ce33
add r15, r14
add r15, r12
movabs r14, 0xaaaaaaaaaaaaaaab
lea r13, [0x14033e060]
movabs rcx, 0xff055d7ba9c6204b
xor rsi, rcx
mov rax, r14
mul rsi
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rsi, rax
xor r10, rbx
imul r10, qword [r13 + rsi*8]
not r8
imul r8, r9
imul r8, r15
imul r8, rdi
movabs rcx, 0xf5ed7e87ae756a97
xor rcx, r11
not rcx
xor rcx, r8
sub rcx, r10
call fcn.1401b6dfc
mov qword [0x14034c9b8], rax
mov dword [rbp - 0x20], 0xfe00695c
xor r15d, r15d
mov dword [rbp - 0x1c], 0x1596c922
mov dword [rbp - 0x18], 0x3da8bb13
mov word [rbp - 0x14], 0x884c
mov esi, r15d
mov r14, qword [0x14033e040]
xor edx, edx
mov rax, rsi
movabs rcx, 0x13cce94adbce3bb0
div rcx
add dl, 0x37
mov dil, dl
sar dil, 7
or dil, dl
mov bl, dil
shl bl, 6
mov al, dil
sar al, 2
or bl, al
mov r8b, dil
sar r8b, 5
mov al, dil
shl al, 3
or r8b, al
mov r9b, dil
sar r9b, 3
mov al, dil
shl al, 5
or r9b, al
mov dl, dil
sar dl, 4
mov al, dil
shl al, 4
or dl, al
mov r11b, dil
not r11b
mov cl, dil
ror cl, 1
mov r10b, byte [rbp + rsi - 0x20]
sub r10b, bl
sub r10b, 2
mov eax, 4
sub al, bl
xor r10b, al
sub r10b, byte [0x14033e050]
sub r10b, byte [0x14033e058]
add r10b, bl
add r10b, dil
sub r10b, cl
sub r10b, 0x3f
lea eax, [rbx + 7]
add al, dil
xor r10b, al
sub r10b, r8b
sub r10b, dil
sub r10b, byte [0x14033e048]
sub r10b, 0x50
add r10b, bl
add r10b, r14b
mov al, dl
sub al, r8b
add al, bl
add al, dil
xor r10b, al
mov al, dil
sub al, dl
xor al, dil
sub r10b, al
sub r10b, r9b
add r10b, 0x30
add r10b, dil
mov al, dil
ror al, 7
sub r9b, 0x50
add al, r9b
xor r10b, al
mov al, dil
add al, al
sub r10b, al
add bl, bl
add r10b, 0x51
add r10b, bl
add r10b, r14b
not r10b
mov al, dil
sar al, 7
or al, dil
sub r10b, al
mov al, r11b
xor al, byte [0x14033e038]
sub r10b, al
mov al, dil
xor al, 0x40
sub r10b, al
mov al, dil
xor al, byte [0x14033e030]
add r10b, al
movsx eax, dil
movsx ecx, r11b
imul ecx, eax
xor cl, r10b
mov byte [rbp + rsi - 0x20], cl
inc rsi
cmp rsi, 0xe
jb 0x1402106ba
lea rax, [rbp - 0x20]
mov qword [rbp - 0x10], rax
mov qword [rbp - 8], 0xe
mov dword [rbp + 0x48], r15d
mov dword [rbp + 0x48], 0x767c9b72
mov eax, 0xc57920cb
sub eax, dword [0x14033e058]
sub eax, dword [0x14033e050]
xor eax, 0xca88a45a
sub eax, dword [0x14033e048]
mov rcx, qword [0x14033e040]
add eax, 0x38e61a40
add eax, ecx
xor eax, 0xbef42f5d
sub eax, 0x2dabd8e4
xor eax, 0x11962147
lea edx, [rcx - 0x425f939f]
add edx, eax
not edx
mov eax, dword [0x14033e038]
xor eax, 0xb73f48fe
sub edx, eax
mov ecx, dword [0x14033e030]
xor ecx, 0x48c0b701
add ecx, 0xfe20f277
add ecx, edx
xor ecx, 0x22ecdafe
mov dword [rbp + 0x48], ecx
movsxd rdx, ecx
lea r8, [rbp - 0x20]
mov rcx, qword [rbp + 0x58]
call fcn.140052e70
nop
mov dword [rbp + 0x48], r15d
mov dword [rbp + 0x50], r15d
mov dword [rbp + 0x50], 0xf45fd073
mov eax, 0x8e172700
sub eax, dword [0x14033e058]
sub eax, dword [0x14033e050]
xor eax, 0x13918c66
sub eax, dword [0x14033e048]
mov rcx, qword [0x14033e040]
add eax, 0xee49b43e
add eax, ecx
xor eax, 0xc1f75f5d
add eax, 0x5817a18b
xor eax, 0xf671ae66
lea edx, [rcx + 0x3953053e]
add edx, eax
not edx
mov eax, dword [0x14033e038]
xor eax, 0x3e08a090
sub edx, eax
mov ecx, dword [0x14033e030]
xor ecx, 0xc1f75f6f
add ecx, 0x25e10c10
add ecx, edx
xor ecx, 0x94430e70
mov dword [rbp + 0x50], ecx
call fcn.14029e440
mov rdx, rax
mov rcx, qword [rbp + 0x58]
call fcn.14029e5d4
nop
mov dword [rbp + 0x50], r15d
mov edi, r15d
mov esi, 0xa90ecea
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 0x1402109a9
psrldq xmm0, 8
movq r9, xmm0
movzx ecx, cx
shr rcx, 1
lea r11, [r9 + rcx*2]
mov r10d, 0x19df0db2
jmp 0x14021099b
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 0x140210975
cmp r10d, edi
jne 0x140210ac2
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 0x140210ac2
mov r14d, dword [rbx + 0x18]
test r14d, r14d
je 0x140210ac2
mov r13d, dword [rbx + 0x20]
dec r14d
lea rdx, [r14*4]
add rdx, r13
mov r11d, dword [rdx + r10]
add r11, r10
mov r15d, 0x19df0db2
jmp 0x140210a1c
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 0x1402109f9
cmp r15d, esi
je 0x140210a38
xor r15d, r15d
test r14d, r14d
jne 0x1402109dc
jmp 0x140210ac2
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 0x140210aca
lea rax, [rcx + rbx]
cmp r9, rax
jae 0x140210aca
mov edi, 0x19df0db2
mov esi, edi
jmp 0x140210a81
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 0x140210a67
inc r9
xor r15d, r15d
jmp 0x140210aaa
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 0x140210a90
mov rax, qword gs:[0x60]
mov rax, qword [rax + 0x18]
mov rax, qword [rax + 0x10]
mov rax, qword [rax]
jmp 0x140210949
mov rcx, qword [rbp + 0x58]
mov rbx, qword [rsp + 0x80]
add rsp, 0x40
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
jmp r9