Function at 0x140102244
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, 0x70
xor ebx, ebx
mov edi, 0xacb2534e
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 0x1401022d5
psrldq xmm0, 8
movq r9, xmm0
movzx ecx, cx
shr rcx, 1
lea r11, [r9 + rcx*2]
mov r10d, 0x2c8e278e
jmp 0x1401022c7
movsx edx, byte [r9]
mov r8d, edx
imul r8d, edx
add r8d, 0x31
xor r8d, r13d
mov ecx, r10d
xor ecx, edx
mov r10d, r8d
imul r10d, ecx
add r9, 2
cmp r9, r11
jne 0x1401022a5
cmp r10d, ebx
jne 0x1401023d5
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 0x1401023d5
mov esi, dword [r11 + 0x18]
test esi, esi
je 0x1401023d5
mov r12d, dword [r11 + 0x20]
dec esi
lea rdx, [r12 + rsi*4]
mov r10d, dword [rdx + r9]
add r10, r9
mov r14d, 0x2c8e278e
jmp 0x140102338
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 0x14010231d
cmp r14d, edi
je 0x140102350
test esi, esi
jne 0x140102308
jmp 0x1401023d5
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 0x1401023dd
lea rax, [rcx + r11]
cmp r8, rax
jae 0x1401023dd
mov ebx, 0x2c8e278e
mov edi, ebx
jmp 0x14010239a
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 0x140102380
jmp 0x1401023ba
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 0x1401023a3
mov rax, qword gs:[0x60]
mov rax, qword [rax + 0x18]
mov rax, qword [rax + 0x10]
mov rax, qword [rax]
jmp 0x140102279
and dword [rbp + 0x48], 0
mov dword [rbp + 0x48], 0x60996dbf
mov eax, 0xff63feb1
sub eax, dword [0x14033d058]
sub eax, dword [0x14033d050]
xor eax, 0x85585ede
sub eax, dword [0x14033d048]
mov rcx, qword [0x14033d040]
add eax, 0x2159473a
add eax, ecx
xor eax, 0x94b22838
sub eax, 0x7ba054f
xor eax, 0x1315d632
lea edx, [rcx - 0x78d1be89]
add edx, eax
not edx
mov eax, dword [0x14033d038]
xor eax, 0xd3e18133
sub edx, eax
mov ecx, dword [0x14033d030]
xor ecx, 0x2c1e7ecc
add ecx, 0x7d396848
add ecx, edx
xor ecx, 0xbd440ea4
mov dword [rbp + 0x48], ecx
movsxd rcx, ecx
call r8
mov qword [rbp + 0x58], rax
and dword [rbp + 0x48], 0
movabs rdi, 0x9e564e23db7add0d
xor ebx, ebx
movabs rax, 0xaa1345b452620700
movabs r14, 0xeba1ab73919ca7f
movabs r10, 0x7e7043c57a1b77e0
mov r15, qword [0x14033d070]
imul r15, rax
not r15
movabs rcx, 0x7e7043c57d9e0fde
mov rax, qword [0x14033d060]
xor rax, rcx
and r15, rax
ror r15, 0x34
shr r15, 8
mov r13, qword [0x14033d080]
movabs rax, 0xfa5c13f6495fadf0
mov r11, r13
imul r11, rax
movabs r8, 0x61a9b1dc248522f3
sub r11, r8
movabs rax, 0x47a8940f80000000
xor r11, rax
shr r11, 0x1f
not r11
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, [0x14033d060]
movzx eax, r11b
movzx ecx, byte [rdx + rcx*8]
imul ecx, eax
movzx ecx, cl
xor ecx, 0xd9
and ecx, 0x8000003f
jge 0x14010253c
dec ecx
or ecx, 0xffffffc0
inc ecx
mov rdx, r11
ror rdx, cl
not rdx
movabs rax, 0xdae42b9cda380840
mov r12, rdx
imul r12, rax
lea r9, [r12 + r8]
mov r8, r11
imul r8, r15
sub r8, r9
xor r8, r14
movzx esi, r9b
mov ecx, esi
xor ecx, 6
and ecx, 0xf
jge 0x14010257c
dec ecx
or ecx, 0xffffffc0
inc ecx
rol r8, cl
mov rax, r9
sub rax, qword [0x14033d078]
xor r8, rax
movabs rax, 0x3c572ddc2277ab40
imul rdx, rax
movabs rax, 0x2f33ceb9ad4372a9
sub rdx, rax
xor r8, rdx
xor r8, r10
mov rax, r8
and eax, 1
xor rax, 2
je 0x14010289e
sub rax, 1
je 0x140102797
sub rax, 1
movabs rsi, 0xaaaaaaaaaaaaaaab
je 0x1401026cb
cmp rax, 1
jne 0x14010291e
mov r14, r9
imul r14, r11
movabs rax, 0xc2b97b0d14ba032b
add rax, r8
xor r14, rax
ror r14, 0xe
shr r14, 0xc
not r14
movabs rcx, 0x83573bdc53ce
mov rdx, qword [0x14033d088]
add rdx, rcx
movabs rax, 0x612b34a4544251bb
xor rdx, rax
movzx eax, r14b
movzx ecx, r8b
imul ecx, eax
and cl, 0x3f
ror rdx, cl
shl rdx, 0xf
movabs rax, 0xf7ca7db9633cbf31
sub rax, r11
mov r11, rdx
xor r11, rax
mov rcx, r11
imul rcx, rdi
mov eax, 0xb2e76ddb
add rcx, rax
mov rax, rsi
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
lea r13, [0x14033d060]
mov cl, byte [r13 + rcx*8]
and cl, 0xf
movabs rdi, 0xd433e355ae7cbd16
sub rdi, r14
shr rdi, cl
movabs rcx, 0x61b1d66464e8400b
add rcx, r12
mov rax, rsi
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
mov rax, r8
imul rax, qword [r13 + rcx*8]
imul rax, r8
sub rax, r15
xor rdi, rax
jmp 0x140102925
movabs rcx, 0xaaaaaa1ab2fe90e5
mov r11, r8
xor r11, rcx
movabs rcx, 0x1206ed70f34ca9
imul r11, rcx
movabs rcx, 0xffff7e8a94eea239
imul r12, rcx
movabs rcx, 0x53a08536d1135edb
add r11, rcx
add r11, r12
movabs rax, 0x277cd7be602e4785
mov rcx, r11
xor rcx, rax
mov rax, rsi
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
mov r9, r11
not r9
lea r13, [0x14033d060]
imul r9, qword [r13 + rcx*8]
xor r9, 0xffffffffe7ab4635
lea ecx, [r8 - 0x19]
and cl, 0x3f
rol r9, cl
movabs rax, 0x1858448000000000
imul r9, rax
mov rcx, r9
ror rcx, 7
not rcx
movabs rax, 0x9b2de6b2bf0b1688
imul rcx, rax
mov rax, r11
sub rax, r9
lea rdx, [rcx + rax*4]
mov cl, r15b
and cl, 0x3f
ror rdx, cl
mov rax, rdi
mov rdi, rdx
imul rdi, rax
jmp 0x140102925
movabs rax, 0x269076cf4be72c51
imul r8, rax
movabs rax, 0xd79435e50d79435f
mul r8
shr rdx, 4
movzx eax, dl
imul edx, eax, 0x13
mov cl, r8b
sub cl, dl
movabs rdx, 0xf145e548c6e63580
shl rdx, cl
mov rax, r10
mov r10, rdx
xor r10, rax
and esi, 0x8000003f
jge 0x1401027e6
dec esi
or esi, 0xffffffc0
inc esi
mov cl, sil
rol r10, cl
movabs rcx, 0x61a9b1dc248522f3
add rcx, r8
movabs rsi, 0xaaaaaaaaaaaaaaab
mov rax, rsi
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
movabs rdx, 0xe23db7add0d
lea r13, [0x14033d060]
mov rax, qword [r13 + rcx*8]
imul rax, rdx
xor r10, rax
movabs rax, 0xffffc7a7ee3ae6c8
or r10, rax
mov rdi, qword [0x14033d070]
imul rdi, r14
sub rdi, r9
mov rax, r15
sub rax, r10
xor rdi, rax
movabs rax, 0xc7a7c6a6bf32e6c5
xor rdi, rax
mov rax, r8
imul rax, r9
imul rax, rdi
mov rbx, r11
sub rbx, rax
movabs rax, 0x78958947060aadf
add rbx, rax
xor rbx, r15
movzx eax, r11b
imul ecx, eax, 0xe0
and cl, 0x3f
rol rbx, cl
not rbx
jmp 0x140102925
mov rcx, r13
imul rcx, r8
and rcx, r13
mov rax, r10
mov r10, rcx
xor r10, rax
ror r10, 0x20
imul r10, r9
mov rbx, r15
not rbx
imul rbx, r11
movabs rax, 0x7cd8a7de62c3b724
imul rbx, rax
imul rsi, qword [0x14033d060], 0x785783e
mov rdx, qword [0x14033d068]
sub rsi, rdx
mov al, bl
not al
movzx ecx, al
movzx eax, dl
xor ecx, eax
and ecx, 0x8000003f
jge 0x140102901
dec ecx
or ecx, 0xffffffc0
inc ecx
ror rsi, cl
movabs r15, 0x61a9b1dc248522f3
add r15, rsi
add r15, r12
movabs rsi, 0xaaaaaaaaaaaaaaab
lea r13, [0x14033d060]
movabs rcx, 0xff055d7b9288bde9
xor r14, rcx
mov rax, rsi
mul r14
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub r14, rax
xor r10, rbx
imul r10, qword [r13 + r14*8]
not r9
imul r9, r8
imul r9, r15
imul r9, rdi
movabs rcx, 0xf5ed7e87953bf735
xor rcx, r11
not rcx
xor rcx, r9
sub rcx, r10
call fcn.1400d92c4
mov qword [0x14034b998], rax
movdqa xmm0, xmmword [0x140316d60]
movdqu xmmword [rbp - 0x40], xmm0
movdqa xmm1, xmmword [0x140316d30]
movdqu xmmword [rbp - 0x30], xmm1
movdqa xmm0, xmmword [0x140316d50]
movdqu xmmword [rbp - 0x20], xmm0
movdqa xmm1, xmmword [0x140316d10]
movdqu xmmword [rbp - 0x10], xmm1
xor esi, esi
mov r14, qword [0x14033d040]
xor edx, edx
mov rax, rsi
movabs rcx, 0x13cce94adbc7a7fd
div rcx
add dl, 0x33
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 - 0x40]
sub r10b, bl
sub r10b, 2
mov eax, 4
sub al, bl
xor r10b, al
sub r10b, byte [0x14033d050]
sub r10b, byte [0x14033d058]
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 [0x14033d048]
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 [0x14033d038]
sub r10b, al
mov al, dil
xor al, 0x40
sub r10b, al
mov al, dil
xor al, byte [0x14033d030]
add r10b, al
movsx eax, dil
movsx ecx, r11b
imul ecx, eax
xor cl, r10b
mov byte [rbp + rsi - 0x40], cl
inc rsi
cmp rsi, 0x40
jb 0x1401029bd
lea rax, [rbp - 0x40]
mov qword [rbp - 0x50], rax
mov qword [rbp - 0x48], 0x40
and dword [rbp + 0x48], 0
mov dword [rbp + 0x48], 0x895d86cd
mov eax, 0xfb449385
sub eax, dword [0x14033d058]
sub eax, dword [0x14033d050]
xor eax, 0xac66095e
sub eax, dword [0x14033d048]
mov rcx, qword [0x14033d040]
add eax, 0x2e2914f4
add eax, ecx
xor eax, 0x3e962e99
sub eax, 0x52dac1c
xor eax, 0x168ffb4b
lea edx, [rcx - 0x7ebdc39e]
add edx, eax
not edx
mov eax, dword [0x14033d038]
xor eax, 0xc386b5b7
sub edx, eax
mov ecx, dword [0x14033d030]
xor ecx, 0x3c794a48
add ecx, 0x31d518bc
add ecx, edx
xor ecx, 0xb5e90178
mov dword [rbp + 0x48], ecx
movsxd rdx, ecx
lea r8, [rbp - 0x40]
mov rcx, qword [rbp + 0x58]
call fcn.140052f40
nop
and dword [rbp + 0x48], 0
and dword [rbp + 0x50], 0
mov dword [rbp + 0x50], 0x535f7ded
mov eax, 0x411d106
sub eax, dword [0x14033d058]
sub eax, dword [0x14033d050]
xor eax, 0x8a7d624c
sub eax, dword [0x14033d048]
mov r8, qword [0x14033d040]
lea edx, [r8 - 0x7064056b]
add edx, eax
xor edx, 0x1c716336
sub edx, 0x24cb5c38
xor edx, 0x15f5afe
mov ecx, dword [0x14033d030]
xor ecx, 0x1c71c5be
sub ecx, edx
mov eax, dword [0x14033d038]
xor eax, 0xe38e3a41
sub ecx, eax
sub ecx, r8d
sub ecx, 0x1dcf12e6
xor ecx, 0x2914413e
mov dword [rbp + 0x50], ecx
call fcn.14029e770
mov rdx, rax
mov rcx, qword [rbp + 0x58]
call fcn.14029e904
nop
and dword [rbp + 0x50], 0
xor edi, edi
mov esi, 0xa6e40d42
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 0x140102ca9
psrldq xmm0, 8
movq r9, xmm0
movzx ecx, cx
shr rcx, 1
lea r11, [r9 + rcx*2]
mov r10d, 0x16d4b164
jmp 0x140102c9b
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 0x140102c75
cmp r10d, edi
jne 0x140102db2
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 0x140102db2
mov r14d, dword [rbx + 0x18]
test r14d, r14d
je 0x140102db2
mov r13d, dword [rbx + 0x20]
dec r14d
lea rdx, [r10 + r14*4]
mov r11d, dword [rdx + r13]
add r11, r10
mov r15d, 0x16d4b164
jmp 0x140102d15
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 0x140102cf2
cmp r15d, esi
je 0x140102d2e
test r14d, r14d
jne 0x140102cdc
jmp 0x140102db2
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 0x140102dba
lea rax, [rcx + rbx]
cmp r9, rax
jae 0x140102dba
mov edi, 0x16d4b164
mov esi, edi
jmp 0x140102d77
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 0x140102d5d
jmp 0x140102d97
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 0x140102d80
mov rax, qword gs:[0x60]
mov rax, qword [rax + 0x18]
mov rax, qword [rax + 0x10]
mov rax, qword [rax]
jmp 0x140102c49
mov rcx, qword [rbp + 0x58]
mov rbx, qword [rsp + 0xb0]
add rsp, 0x70
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
jmp r9