Function at 0x140221e50
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, 0x3661ceee
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 0x140221edc
psrldq xmm0, 8
movq r8, xmm0
movzx ecx, cx
shr rcx, 1
lea r10, [r8 + rcx*2]
mov r9d, 0x37fc2bc
jmp 0x140221ece
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 0x140221eb1
cmp r9d, ebx
jne 0x140221fdc
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 0x140221fdc
mov esi, dword [r11 + 0x18]
test esi, esi
je 0x140221fdc
mov r12d, dword [r11 + 0x20]
dec esi
lea rdx, [r12 + rsi*4]
mov r10d, dword [rdx + r9]
add r10, r9
mov r14d, 0x37fc2bc
jmp 0x140221f3f
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 [r10]
inc r10
test dl, dl
jne 0x140221f24
cmp r14d, edi
je 0x140221f57
test esi, esi
jne 0x140221f0f
jmp 0x140221fdc
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 0x140221fe4
lea rax, [rcx + r11]
cmp r8, rax
jae 0x140221fe4
mov ebx, 0x37fc2bc
mov edi, ebx
jmp 0x140221fa1
movsx ecx, al
mov edx, ecx
imul edx, ecx
add edx, 0x31
xor edx, r13d
mov eax, ebx
xor eax, ecx
mov ebx, edx
imul ebx, eax
inc r8
mov al, byte [r8]
cmp al, 0x2e
jne 0x140221f87
jmp 0x140221fc1
movsx ecx, al
mov edx, ecx
imul edx, ecx
add edx, 0x31
xor edx, r13d
mov eax, edi
xor eax, ecx
mov edi, edx
imul edi, eax
inc r8
mov al, byte [r8]
test al, al
jne 0x140221faa
mov rax, qword gs:[0x60]
mov rax, qword [rax + 0x18]
mov rax, qword [rax + 0x10]
mov rax, qword [rax]
jmp 0x140221e85
and dword [rbp + 0x48], 0
mov dword [rbp + 0x48], 0xc4fd6eec
mov eax, 0x665523ef
sub eax, dword [0x140336058]
sub eax, dword [0x140336050]
xor eax, 0x1dc15acf
sub eax, dword [0x140336048]
mov rcx, qword [0x140336040]
add eax, 0xe2d3ec0f
add eax, ecx
xor eax, 0xcc272dc6
add eax, 0x62477000
xor eax, 0xf6860e04
lea edx, [rcx + 0x277f5c0f]
add edx, eax
not edx
mov eax, dword [0x140336038]
xor eax, 0x33d8d22a
sub edx, eax
mov ecx, dword [0x140336030]
xor ecx, 0xcc272dd5
add ecx, 0x3bb1459f
add ecx, edx
xor ecx, 0xbcbe3ef2
mov dword [rbp + 0x48], ecx
movsxd rcx, ecx
call r8
mov r13, rax
and dword [rbp + 0x48], 0
movabs rsi, 0xcb5682db1dd39596
movabs rdi, 0xd1cd4b5ca151744d
xor ebx, ebx
movabs rax, 0xb5a7f6ad1b9baeea
movabs r11, 0x2b12736a00613eb7
mov r14, qword [0x140336070]
imul r14, rax
not r14
movabs rcx, 0x2b12736a1782b4a3
mov r12, qword [0x140336060]
mov rax, r12
xor rax, rcx
and r14, rax
ror r14, 0x1a
shr r14, 8
movabs rax, 0x25d15bdfdf042f08
mov r9, r12
imul r9, rax
movabs r8, 0x2e32b4a35eae8bb3
sub r9, r8
movabs rax, 0x4beaf6e600000000
xor r9, rax
shr r9, 0x1f
not r9
lea rcx, [r9 + r8]
movabs rax, 0xaaaaaaaaaaaaaaab
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
lea rdx, [0x140336060]
movzx eax, r9b
movzx ecx, byte [rdx + rcx*8]
imul ecx, eax
movzx ecx, cl
xor ecx, 0x77
and ecx, 0x8000003f
jge 0x14022213b
dec ecx
or ecx, 0xffffffc0
inc ecx
mov rax, r9
ror rax, cl
not rax
movabs rcx, 0x2caf3b5980ac8c4c
mov r15, rax
imul r15, rcx
add r8, r15
mov r10, r9
imul r10, r14
sub r10, r8
xor r10, rsi
mov cl, r8b
xor cl, 0xf8
and cl, 0xf
rol r10, cl
movabs rcx, 0x18d0525e1384a2dc
imul rax, rcx
movabs rcx, 0xfaa438ba78fdf29
sub rax, rcx
xor r10, rax
mov rax, r8
mov rdx, qword [0x140336078]
sub rax, rdx
xor r10, rax
xor r10, r11
mov rax, r10
and eax, 1
je 0x140222474
sub rax, 1
movabs r12, 0xaaaaaaaaaaaaaaab
je 0x140222387
sub rax, 1
je 0x1402222c0
cmp rax, 1
jne 0x1402224f4
mov rsi, r8
imul rsi, r9
movabs rax, 0xe1ad1a78cb118ba5
add rax, r10
xor rsi, rax
ror rsi, 0x20
shr rsi, 0xc
not rsi
movabs rcx, 0x83570ba7d064
mov rdx, qword [0x140336088]
add rdx, rcx
movabs rax, 0x2eb031db1e127b55
xor rdx, rax
movzx eax, sil
movzx ecx, r10b
imul ecx, eax
and cl, 0x3f
ror rdx, cl
shl rdx, 0xf
movabs rax, 0xf7ca7db953473c9f
sub rax, r9
mov r9, rdx
xor r9, rax
mov rcx, r9
imul rcx, rdi
mov eax, 0x829cee75
add rcx, rax
mov rax, r12
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
lea rax, [0x140336060]
mov cl, byte [rax + rcx*8]
and cl, 0xf
movabs rdi, 0x364c312e7ea7070a
sub rdi, rsi
shr rdi, cl
movabs rcx, 0x2e3ad92bcec72a6d
add rcx, r15
mov rax, r12
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
mov rax, r10
lea rdx, [0x140336060]
imul rax, qword [rdx + rcx*8]
imul rax, r10
sub rax, r14
xor rdi, rax
jmp 0x1402224f4
movabs rcx, 0xaaaaaa1a8285134b
mov r9, r10
xor r9, rcx
movabs rcx, 0x1206ed4088cf07
imul r9, rcx
movabs rcx, 0xffff7e8aa4952197
imul r15, rcx
movabs rcx, 0x27325feda3347fac
add r9, rcx
add r9, r15
movabs rax, 0x277cd7be5055c42b
mov rcx, r9
xor rcx, rax
mov rax, r12
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
mov r8, r9
not r8
lea rax, [0x140336060]
imul r8, qword [rax + rcx*8]
xor r8, 0xffffffffd7d0c59b
lea ecx, [r10 + 9]
and cl, 0x3f
rol r8, cl
movabs rax, 0x1c400d4420000000
imul r8, rax
mov rcx, r9
sub rcx, r8
mov rax, r8
not rax
movabs rdx, 0x9b2de6b27ee51830
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 0x1402224f4
movabs rax, 0xfbd2b3d847eb7bf1
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, 0x34a97d24e22c6a69
shl rdx, cl
mov rax, r11
mov r11, rdx
xor r11, rax
mov cl, r8b
and cl, 0x3f
rol r11, cl
movabs rcx, 0x2e32b4a35eae8bb3
add rcx, r10
mov rax, r12
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
movabs rdx, 0xb5ca151744d
lea rax, [0x140336060]
mov rax, qword [rax + rcx*8]
imul rax, rdx
xor r11, rax
movabs rax, 0xffffc7a7de416566
or r11, rax
mov rdi, qword [0x140336070]
imul rdi, rsi
sub rdi, r8
mov rax, r14
sub rax, r11
xor rdi, rax
movabs rax, 0xc7a7c6a68f49656b
xor rdi, rax
mov rax, r10
imul rax, r8
imul rax, rdi
mov rbx, r9
sub rbx, rax
movabs rax, 0x7895894401b2971
add rbx, rax
xor rbx, r14
movzx eax, r9b
imul ecx, eax, 0xe
and cl, 0x3f
rol rbx, cl
not rbx
jmp 0x1402224f4
mov rcx, r10
imul rcx, qword [0x140336080]
and rcx, rdx
mov rax, r11
mov r11, rcx
xor r11, rax
ror r11, 0x37
imul r11, r8
mov rbx, r14
not rbx
imul rbx, r9
movabs rax, 0x7cd8a7de52b8348a
imul rbx, rax
imul r14, r12, 0x17e38a14
mov rdx, qword [0x140336068]
sub r14, rdx
mov al, bl
not al
movzx ecx, al
movzx eax, dl
xor ecx, eax
and ecx, 0x8000003f
jge 0x1402224d7
dec ecx
or ecx, 0xffffffc0
inc ecx
ror r14, cl
movabs rax, 0x2e32b4a35eae8bb3
add r14, rax
add r14, r15
movabs r12, 0xaaaaaaaaaaaaaaab
movabs rcx, 0xff055d7ba2f33e47
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, [0x140336060]
imul r11, qword [rax + rsi*8]
not r8
imul r8, r10
imul r8, r14
imul r8, rdi
movabs rcx, 0xf5ed7e87a540749b
xor rcx, r9
not rcx
xor rcx, r8
sub rcx, r11
call fcn.1401b4c20
mov qword [0x14033ff58], rax
movdqa xmm0, xmmword [0x140311310]
movdqu xmmword [rbp - 0x20], xmm0
movdqa xmm1, xmmword [0x1403113e0]
movdqu xmmword [rbp - 0x10], xmm1
xor r15d, r15d
mov r12, qword [0x140336040]
xor edx, edx
mov rax, r15
movabs rcx, 0x13cce94adb9e64d0
div rcx
add dl, 0x30
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 - 0x20]
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 [0x140336050]
sub dl, byte [0x140336058]
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 [0x140336048]
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 [0x140336038]
sub dil, al
mov al, r14b
xor al, byte [0x140336030]
add dil, al
mov al, r14b
xor al, 0x40
sub dil, al
movsx eax, r14b
movsx ecx, bl
imul ecx, eax
xor dil, cl
mov byte [rbp + r15 - 0x20], dil
inc r15
cmp r15, 0x20
jb 0x140222579
lea rax, [rbp - 0x20]
mov qword [rbp - 0x30], rax
mov qword [rbp - 0x28], 0x20
and dword [rbp + 0x50], 0
mov dword [rbp + 0x50], 0x289a8011
mov eax, 0x4cef4906
sub eax, dword [0x140336058]
sub eax, dword [0x140336050]
xor eax, 0xb899fe47
sub eax, dword [0x140336048]
mov rcx, qword [0x140336040]
add eax, 0xf715e898
add eax, ecx
xor eax, 0xca5280aa
sub eax, 0x746ec880
xor eax, 0x5ed15204
lea edx, [rcx - 0x5e60aebb]
add edx, eax
not edx
mov eax, dword [0x140336038]
xor eax, 0xb395aa12
sub edx, eax
mov ecx, dword [0x140336030]
xor ecx, 0x4c6a55ed
add ecx, 0x51163007
add ecx, edx
xor ecx, 0xb67a6caa
mov dword [rbp + 0x50], ecx
movsxd rdx, ecx
lea r8, [rbp - 0x20]
mov rcx, r13
call fcn.140113fe8
nop
and dword [rbp + 0x50], 0
and dword [rbp + 0x58], 0
mov dword [rbp + 0x58], 0xb8156e0c
mov eax, 0x8d296ae7
sub eax, dword [0x140336058]
sub eax, dword [0x140336050]
xor eax, 0x7869df31
sub eax, dword [0x140336048]
mov r8, qword [0x140336040]
lea edx, [r8 - 0x12a6857]
add edx, eax
xor edx, 0x8a1c7562
sub edx, 0x3462bbda
xor edx, 0x52399fc1
mov ecx, dword [0x140336030]
xor ecx, 0xc699867
sub ecx, edx
mov eax, dword [0x140336038]
xor eax, 0xf3966798
sub ecx, eax
sub ecx, r8d
add ecx, 0x63306d
xor ecx, 0xec5dee28
mov dword [rbp + 0x58], ecx
call fcn.140298200
mov rdx, rax
mov rcx, r13
call fcn.140299d94
nop
and dword [rbp + 0x58], 0
xor ebx, ebx
mov edi, 0x3b2a1eda
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 0x140222870
psrldq xmm0, 8
movq r9, xmm0
movzx ecx, cx
shr rcx, 1
lea r11, [r9 + rcx*2]
mov r10d, 0xfd47bc4e
jmp 0x140222862
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 0x14022283c
cmp r10d, ebx
jne 0x140222974
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 0x140222974
mov esi, dword [r11 + 0x18]
test esi, esi
je 0x140222974
mov r12d, dword [r11 + 0x20]
dec esi
lea rdx, [r10 + rsi*4]
mov r9d, dword [rdx + r12]
add r9, r10
mov r14d, 0xfd47bc4e
jmp 0x1402228d6
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 0x1402228b8
cmp r14d, edi
je 0x1402228ee
test esi, esi
jne 0x1402228a3
jmp 0x140222974
mov edx, dword [r11 + 0x24]
add rdx, r10
movzx r8d, word [rdx + rsi*2]
mov edx, dword [r11 + 0x1c]
add rdx, r10
mov r9d, dword [rdx + r8*4]
add r9, r10
cmp r9, r11
jbe 0x14022297c
lea rax, [rcx + r11]
cmp r9, rax
jae 0x14022297c
mov ebx, 0xfd47bc4e
mov edi, ebx
jmp 0x140222939
movsx ecx, al
mov eax, ecx
imul eax, ecx
add eax, 0x31
xor eax, 0x4764996c
xor ecx, ebx
mov ebx, eax
imul ebx, ecx
inc r9
mov al, byte [r9]
cmp al, 0x2e
jne 0x14022291f
jmp 0x140222959
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]
test al, al
jne 0x140222942
mov rax, qword gs:[0x60]
mov rax, qword [rax + 0x18]
mov rax, qword [rax + 0x10]
mov rax, qword [rax]
jmp 0x140222810
mov rcx, r13
mov rbx, qword [rsp + 0x90]
add rsp, 0x50
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
jmp r9