Function at 0x140221194
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, 0x80
xor ebx, ebx
mov edi, 0x3e32df4e
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 0x140221223
psrldq xmm0, 8
movq r8, xmm0
movzx ecx, cx
shr rcx, 1
lea r10, [r8 + rcx*2]
mov r9d, 0x5a58b0ce
jmp 0x140221215
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 0x1402211f8
cmp r9d, ebx
jne 0x140221321
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 0x140221321
mov esi, dword [r11 + 0x18]
test esi, esi
je 0x140221321
mov r12d, dword [r11 + 0x20]
dec esi
lea rdx, [r12 + rsi*4]
mov r9d, dword [rdx + r10]
add r9, r10
mov r14d, 0x5a58b0ce
jmp 0x140221286
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 0x14022126b
cmp r14d, edi
je 0x14022129e
test esi, esi
jne 0x140221256
jmp 0x140221321
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 0x140221329
lea rax, [r11 + rcx]
cmp r9, rax
jae 0x140221329
mov ebx, 0x5a58b0ce
mov edi, ebx
jmp 0x1402212e8
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 r9
mov al, byte [r9]
cmp al, 0x2e
jne 0x1402212ce
jmp 0x140221306
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 0x1402212f1
mov rax, qword gs:[0x60]
mov rax, qword [rax + 0x18]
mov rax, qword [rax + 0x10]
mov rax, qword [rax]
jmp 0x1402211cc
and dword [rbp + 0x48], 0
mov dword [rbp + 0x48], 0xe53d6635
mov eax, 0xd236c229
sub eax, dword [0x140336058]
sub eax, dword [0x140336050]
xor eax, 0xfcac34fb
sub eax, dword [0x140336048]
mov rdx, qword [0x140336040]
lea ecx, [rdx + 0x5be9542c]
add ecx, eax
xor ecx, 0x90dd1ca0
sub ecx, 0x51ed0995
xor ecx, 0xb9138524
mov r8d, dword [0x140336030]
xor r8d, 0x7cb96295
sub r8d, ecx
mov eax, dword [0x140336038]
xor eax, 0x83469d6a
sub r8d, eax
sub r8d, edx
add r8d, 0x50a44d83
xor r8d, 0x89f632b2
mov dword [rbp + 0x48], r8d
movsxd rcx, r8d
call r9
mov qword [rbp - 0x60], rax
and dword [rbp + 0x48], 0
movabs rdi, 0xd646cab4b85e44fd
movabs rax, 0xa243000000000000
movabs r11, 0x37d9581b2f7c83f0
mov r14, qword [0x140336060]
imul r14, rax
movabs rax, 0xccaab00000000000
xor r14, rax
mov r13, r14
imul r13, rdi
movabs r9, 0xaaaaaaaaaaaaaaab
mov rax, r9
mul r13
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
mov rcx, r13
sub rcx, rax
lea r12, [0x140336060]
mov r10, r14
and r10, rdi
imul r10, qword [r12 + rcx*8]
movabs rax, 0xa06e9da0c60cf2c0
imul r10, rax
movabs rax, 0x84b7b8582f2a7b7f
xor r10, rax
shr r10, 3
movabs rax, 0xffffff57e030bb87
mov rsi, r14
imul rsi, rax
sub rsi, 0x2bb5ba2c
xor rsi, r10
xor rsi, qword [0x140336060]
mov rax, r10
imul rax, qword [0x140336070]
movabs rcx, 0xb9de928be98304a6
imul rax, rcx
not rax
and rsi, rax
ror rsi, 0x2a
shr rsi, 8
movabs r8, 0x29b9354b47a1bb03
lea rcx, [r14 + r8]
xor rcx, 0xffffffffd70d0fab
mov rax, r9
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
movabs rax, 0xa6ca5ecb475e8388
mov rbx, qword [r12 + rcx*8]
imul rbx, rax
sub rbx, r8
movabs rcx, 0xa2617b1fcce890c0
mov rax, r10
imul rax, rcx
xor rbx, rax
shr rbx, 0x1f
not rbx
mov r15, rbx
xor r15, r14
lea rcx, [rbx + r8]
mov rax, r9
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, 0xb7
and ecx, 0x8000003f
jge 0x140221525
dec ecx
or ecx, 0xffffffc0
inc ecx
ror r15, cl
not r15
imul r15, r10
imul r12, r15, 0xffffffffd44a45d4
add r8, r12
mov r9, rbx
imul r9, rsi
sub r9, r8
xor r9, r11
mov cl, r8b
xor cl, 0xf8
and cl, 0xf
rol r9, cl
mov rax, r8
sub rax, qword [0x140336078]
xor r9, rax
movabs rax, 0xfcfaabe8bcb5284
imul r15, rax
movabs rax, 0x4493edaa6c636209
sub r15, rax
xor r9, r15
xor r9, r10
xor r9, r14
mov rax, r9
mov r15b, 0x3f
and eax, 1
je 0x1402218c5
sub rax, 1
je 0x140221798
sub rax, 1
je 0x1402216a3
cmp rax, 1
jne 0x140221975
mov r11, r8
imul r11, rbx
movabs rax, 0x5a8801c496168d95
add rax, r9
xor r11, rax
ror r11, 0x10
shr r11, 0xc
xor r11, r14
not r11
movabs rcx, 0x83570b720aa4
mov rdx, qword [0x140336088]
add rdx, rcx
movabs rax, 0x293bb03307c89125
xor rdx, rax
movzx eax, r9b
movzx ecx, r11b
imul ecx, eax
and cl, r15b
ror rdx, cl
shl rdx, 0xf
movabs rax, 0xf7ca7db95392e65f
sub rax, rbx
mov rbx, rdx
xor rbx, rax
mov rcx, rbx
imul rcx, rdi
mov eax, 0x824934b5
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, [0x140336060]
mov cl, byte [r13 + rcx*8]
and cl, 0xf
movabs rdi, 0xbd4c8e5c3bcc435a
sub rdi, r11
shr rdi, cl
movabs rcx, 0x29c159d3b86eff7d
add rcx, r12
mov rax, r15
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, rsi
xor rdi, rax
jmp 0x140221975
movabs rax, 0xaaaaaa1a8250c98b
mov rcx, r9
xor rcx, rax
movabs rax, 0x1206ed405d15c7
imul rcx, rax
movabs rdx, 0xfff17ca85532fff7
mov rax, r10
xor rax, rdx
sub rcx, rax
movabs rax, 0xffff7e8aa440fb57
imul r12, rax
movabs rbx, 0xce1e38363b537a5c
add rbx, rcx
add rbx, r12
movabs rax, 0x277cd7be50801eeb
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, [0x140336060]
imul r8, qword [rdx + rcx*8]
xor r8, 0xffffffffd7051f5b
lea ecx, [r9 + 9]
and cl, r15b
rol r8, cl
movabs rax, 0x18106d80a0000000
xor r13, rax
movabs rax, 0x7c7a7dc6be0215ea
and r13, rax
imul r8, r13
mov rcx, r8
ror rcx, 0x26
not rcx
movabs rax, 0x9b2de6b27db27330
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 0x140221975
movabs rax, 0xeceacd9876d53a89
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, 0x29b9354b47a1bb02
mov rax, r14
imul rax, rdx
xor rax, r11
not rax
shl rax, cl
xor r10, rax
mov cl, r8b
and cl, r15b
rol r10, cl
movabs rcx, 0x29b9354b47a1bb03
add rcx, r9
movabs rax, 0xaaaaaaaaaaaaaaab
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
movabs rdx, 0xab4b85e44fd
lea rax, [0x140336060]
mov rax, qword [rax + rcx*8]
imul rax, rdx
xor r10, rax
movabs rax, 0xffffc7a7de94bfa6
or r10, rax
mov rdi, qword [0x140336070]
imul rdi, r11
sub rdi, r8
mov rax, rsi
sub rax, r10
xor rdi, rax
movabs rax, 0xc7a7c6a68f9cbfab
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, r9
imul rdx, r8
imul rdx, rdi
shr rdx, cl
mov rax, rbx
sub rax, rdx
sub rax, r14
movabs r14, 0x789589440cef3b1
add r14, rax
xor r14, rsi
movzx eax, bl
imul ecx, eax, 0xe
and cl, r15b
rol r14, cl
not r14
jmp 0x140221975
movabs rax, 0xaaaaaaaaaaaaaaab
mul r10
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
mov rcx, r10
sub rcx, rax
mov rax, r9
imul rax, qword [0x140336080]
lea rdx, [0x140336060]
mov rdx, qword [rdx + rcx*8]
and rdx, rax
xor rdx, r10
and r10b, r15b
mov cl, r10b
mov r10, rdx
ror r10, cl
imul r10, r8
not rsi
imul rsi, rbx
movabs rax, 0x7cd8a7de526dee4a
imul rsi, rax
mov rax, r10
imul rax, r14
mov r14, rsi
xor r14, rax
imul rsi, qword [0x140336060], 0xffffffffd44a45d4
mov rdx, qword [0x140336068]
sub rsi, rdx
mov al, r14b
not al
movzx ecx, al
movzx eax, dl
xor ecx, eax
and ecx, 0x8000003f
jge 0x140221962
dec ecx
or ecx, 0xffffffc0
inc ecx
ror rsi, cl
movabs rax, 0x29b9354b47a1bb03
add rsi, rax
add rsi, r12
movabs rcx, 0xff055d7ba226e487
xor r11, rcx
movabs rax, 0xaaaaaaaaaaaaaaab
mul r11
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub r11, rax
xor r10, r14
lea rax, [0x140336060]
imul r10, qword [rax + r11*8]
not r8
imul r8, r9
imul r8, rsi
imul r8, rdi
movabs rcx, 0xf5ed7e87a595ae5b
xor rcx, rbx
not rcx
xor rcx, r8
sub rcx, r10
call fcn.1401b5cdc
mov qword [0x14033ff60], rax
movdqa xmm0, xmmword [str.m05_a]
movdqu xmmword [rbp - 0x48], xmm0
movdqa xmm1, xmmword [0x140311250]
movdqu xmmword [rbp - 0x38], xmm1
movdqa xmm0, xmmword [0x140311520]
movdqu xmmword [rbp - 0x28], xmm0
movdqa xmm1, xmmword [0x140311350]
movdqu xmmword [rbp - 0x18], xmm1
mov dword [rbp - 8], 0xdbd9a40a
mov word [rbp - 4], 0x8b15
mov byte [rbp - 2], 0x55
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 - 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 [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, byte [0x140336048]
sub dl, r9b
sub dl, r14b
sub dl, 0x50
add dl, r12b
add dl, sil
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, byte [0x140336038]
xor al, bl
sub dil, al
mov al, byte [0x140336030]
xor al, r14b
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 - 0x48], dil
inc r15
cmp r15, 0x47
jb 0x140221a2c
lea rax, [rbp - 0x48]
mov qword [rbp - 0x58], rax
mov qword [rbp - 0x50], 0x47
and dword [rbp + 0x50], 0
mov dword [rbp + 0x50], 0x31865de0
mov eax, 0xd4d5e1ad
sub eax, dword [0x140336058]
sub eax, dword [0x140336050]
xor eax, 0x1f6039a7
sub eax, dword [0x140336048]
mov rcx, qword [0x140336040]
add eax, 0xe101315c
add eax, ecx
xor eax, 0xcdc60c9e
add eax, 0x63e64ec8
xor eax, 0xf6894bc2
lea edx, [rcx + 0x24a95615]
add edx, eax
not edx
mov eax, dword [0x140336038]
xor eax, 0x3239f352
sub edx, eax
mov ecx, dword [0x140336030]
xor ecx, 0xcdc60cad
add ecx, 0x39d0a646
add ecx, edx
xor ecx, 0x83fd466a
mov dword [rbp + 0x50], ecx
movsxd rdx, ecx
lea r8, [rbp - 0x48]
mov r13, qword [rbp - 0x60]
mov rcx, r13
call fcn.140113fe8
nop
and dword [rbp + 0x50], 0
xor eax, eax
and dword [rbp + 0x58], eax
mov dword [rbp + 0x58], 0x9f097f5
mov eax, 0x54fbf0a
sub eax, dword [0x140336058]
sub eax, dword [0x140336050]
xor eax, 0xd2c47a81
sub eax, dword [0x140336048]
mov rcx, qword [0x140336040]
add eax, 0xda0eb117
add eax, ecx
xor eax, 0xe7b56ab4
add eax, 0x155ae65a
xor eax, 0xdfb3d760
lea edx, [rcx + 0x3aae67bf]
add edx, eax
not edx
mov eax, dword [0x140336038]
xor eax, 0xb32e9c58
sub edx, eax
mov ecx, dword [0x140336030]
xor ecx, 0x4cd163a7
add ecx, 0xe96367cd
add ecx, edx
xor ecx, 0xadb60568
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, 0x52fc90fa
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 0x140221d24
psrldq xmm0, 8
movq r8, xmm0
movzx ecx, cx
shr rcx, 1
lea r10, [r8 + rcx*2]
mov r9d, 0x2167fa76
jmp 0x140221d16
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 0x140221cf6
cmp r9d, ebx
jne 0x140221e28
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 0x140221e28
mov esi, dword [r11 + 0x18]
test esi, esi
je 0x140221e28
mov r12d, dword [r11 + 0x20]
dec esi
lea rdx, [r10 + rsi*4]
mov r9d, dword [rdx + r12]
add r9, r10
mov r14d, 0x2167fa76
jmp 0x140221d8a
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 0x140221d6c
cmp r14d, edi
je 0x140221da2
test esi, esi
jne 0x140221d57
jmp 0x140221e28
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 0x140221e30
lea rax, [r11 + rcx]
cmp r9, rax
jae 0x140221e30
mov ebx, 0x2167fa76
mov edi, ebx
jmp 0x140221ded
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 0x140221dd3
jmp 0x140221e0d
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 0x140221df6
mov rax, qword gs:[0x60]
mov rax, qword [rax + 0x18]
mov rax, qword [rax + 0x10]
mov rax, qword [rax]
jmp 0x140221cca
mov rcx, r13
mov rbx, qword [rsp + 0xc0]
add rsp, 0x80
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
jmp r9