Function at 0x140186028
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
lea rbp, [rsp - 0x27]
sub rsp, 0xb0
xor ebx, ebx
mov edi, 0x4033a5ce
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 0x1401860b9
psrldq xmm0, 8
movq r8, xmm0
movzx ecx, cx
shr rcx, 1
lea r10, [r8 + rcx*2]
mov r9d, 0xb2290046
jmp 0x1401860ab
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 0x14018608e
cmp r9d, ebx
jne 0x1401861b5
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 0x1401861b5
mov esi, dword [r11 + 0x18]
test esi, esi
je 0x1401861b5
mov r12d, dword [r11 + 0x20]
dec esi
lea rdx, [r12 + rsi*4]
mov r9d, dword [rdx + r10]
add r9, r10
mov r14d, 0xb2290046
jmp 0x14018611c
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 0x140186101
cmp r14d, edi
je 0x140186134
test esi, esi
jne 0x1401860ec
jmp 0x1401861b5
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 0x1401861bd
lea rax, [rcx + r11]
cmp r9, rax
jae 0x1401861bd
mov ebx, 0xb2290046
mov edi, ebx
jmp 0x14018617c
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 0x140186164
jmp 0x14018619a
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 0x140186185
mov rax, qword gs:[0x60]
mov rax, qword [rax + 0x18]
mov rax, qword [rax + 0x10]
mov rax, qword [rax]
jmp 0x140186062
and dword [rbp + 0x77], 0
mov dword [rbp + 0x77], 0x91f4b6da
mov eax, 0x5a25abab
sub eax, dword [0x140278058]
sub eax, dword [0x140278050]
xor eax, 0x55fc91d1
sub eax, dword [0x140278048]
mov edx, dword [0x140278040]
lea ecx, [rdx + 0x3aaae3ef]
add ecx, eax
xor ecx, 0x43f07912
add ecx, 0x10b55829
xor ecx, 0x735f455
mov r8d, dword [0x140278030]
xor r8d, 0x7f1c289
sub r8d, ecx
mov eax, dword [0x140278038]
xor eax, 0xf80e3d76
sub r8d, eax
sub r8d, edx
add r8d, 0x12d4e50d
xor r8d, 0xa0485026
mov dword [rbp + 0x77], r8d
movsxd rcx, r8d
call r9
mov qword [rbp - 0x61], rax
and dword [rbp + 0x77], 0
movabs rbx, 0xf265f3428e2f2599
movabs rax, 0x90000000000000
movabs r14, 0xa4b8ad43544b23f1
mov rdi, qword [0x140278078]
imul rdi, rax
movabs rax, 0xa310000000000000
xor rdi, rax
mov rcx, rdi
imul rcx, r14
mov qword [rbp - 0x59], rcx
movabs r8, 0xaaaaaaaaaaaaaaab
mov rax, r8
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
lea r9, [0x140278060]
mov r11, rdi
and r11, r14
imul r11, qword [r9 + rcx*8]
movabs rax, 0xe9b873c37364d15e
imul r11, rax
movabs rax, 0xd53a8fccdc3bdeb7
xor r11, rax
shr r11, 3
movabs rax, 0xffffff57ec439b1d
mov r15, rdi
imul r15, rax
sub r15, 0x1c9544f2
xor r15, r11
xor r15, qword [0x140278060]
mov rax, r11
imul rax, qword [0x140278070]
movabs rcx, 0xb9de928be5f0243c
imul rax, rcx
not rax
and r15, rax
ror r15, 0x3c
shr r15, 8
movabs r10, 0x5b4752bcabb4dc0f
lea rcx, [rdi + r10]
xor rcx, 0xffffffffdb7e2f31
mov rax, r8
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
movabs rax, 0xe2585d4f005d30e8
mov rsi, qword [r9 + rcx*8]
imul rsi, rax
sub rsi, r10
movabs rcx, 0x6869dd2611654024
mov rax, r11
imul rax, rcx
xor rsi, rax
shr rsi, 0x1f
not rsi
mov r12, rsi
xor r12, rdi
lea rcx, [rsi + r10]
mov rax, r8
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
movzx eax, sil
movzx ecx, byte [r9 + rcx*8]
imul ecx, eax
movzx ecx, cl
xor ecx, 0x2d
mov eax, 0x8000003f
and ecx, eax
jge 0x1401863b8
dec ecx
or ecx, 0xffffffc0
inc ecx
ror r12, cl
not r12
imul r12, r11
imul r13, r12, 0xffffffffe36abb0e
lea r9, [r10 + r13]
mov r10, rsi
imul r10, r15
sub r10, r9
xor r10, rbx
movzx r8d, r9b
mov ecx, r8d
xor ecx, 2
and ecx, 0xf
and ecx, eax
jge 0x1401863f2
dec ecx
or ecx, 0xffffffc0
inc ecx
rol r10, cl
mov rax, r9
sub rax, qword [0x140278078]
xor r10, rax
movabs rax, 0x5fe0c4c1427022e
imul r12, rax
movabs rax, 0x3c19efca3c41c8e1
sub r12, rax
xor r10, r12
xor r10, r11
xor r10, rdi
mov rax, r10
and eax, 1
xor rax, 2
je 0x140186794
sub rax, 1
je 0x14018664e
sub rax, 1
je 0x140186552
cmp rax, 1
jne 0x14018684a
mov rbx, r9
imul rbx, rsi
movabs rax, 0x3a712a1fbca1b8b3
add rax, r10
xor rbx, rax
ror rbx, 6
shr rbx, 0xc
xor rbx, rdi
not rbx
movabs rcx, 0x835707012a3a
mov r8, qword [0x140278088]
add r8, rcx
movabs rax, 0x5bc5d7c4e7aed6b3
xor r8, rax
mov eax, r10d
imul eax, ebx
and eax, 0x3f
mov ecx, 0x40
sub ecx, eax
mov rdx, r8
shl rdx, cl
mov ecx, eax
shr r8, cl
or rdx, r8
shl rdx, 0xf
movabs rax, 0xf7ca7db95fe1c6c5
sub rax, rsi
mov rsi, rdx
xor rsi, rax
mov rcx, rsi
imul rcx, r14
mov eax, 0x8e3a142f
add rcx, rax
movabs r12, 0xaaaaaaaaaaaaaaab
mov rax, r12
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
lea r8, [0x140278060]
mov cl, byte [r8 + rcx*8]
and cl, 0xf
movabs r14, 0x3fc9c3054f8cadc2
sub r14, rbx
shr r14, cl
movabs rcx, 0x5b4f7745287340f3
add rcx, r13
mov rax, r12
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
mov rax, r10
imul rax, qword [r8 + rcx*8]
imul rax, r10
sub rax, r15
xor r14, rax
jmp 0x140186854
movabs rax, 0xaaaaaa1a8e23e911
mov rcx, r10
xor rcx, rax
movabs rax, 0x1206ed4c2e355d
imul rcx, rax
movabs rdx, 0xfff17ca85941df6d
mov rax, r11
xor rax, rdx
sub rcx, rax
movabs rax, 0xffff7e8aa833dbcd
imul r13, rax
movabs rsi, 0x1fe80e0b8f45e8d0
add rsi, rcx
add rsi, r13
movabs rax, 0x277cd7be5cf33e71
mov rcx, rsi
xor rcx, rax
movabs r12, 0xaaaaaaaaaaaaaaab
mov rax, r12
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
mov r9, rsi
not r9
lea r8, [0x140278060]
imul r9, qword [r8 + rcx*8]
xor r9, 0xffffffffdb763fc1
lea ecx, [r10 + 0x13]
and cl, 0x3f
rol r9, cl
movabs rcx, 0x2c3a194480000000
mov rax, qword [rbp - 0x59]
xor rax, rcx
movabs rcx, 0x7c7a7dc6b2713570
and rax, rcx
imul r9, rax
mov rcx, r9
ror rcx, 0x15
not rcx
movabs rax, 0x9b2de6b24c7ef158
imul rcx, rax
mov rax, rsi
sub rax, r9
lea rdx, [rcx + rax*4]
mov cl, r15b
and cl, 0x3f
ror rdx, cl
mov rax, r14
mov r14, rdx
imul r14, rax
jmp 0x140186854
movabs rax, 0xe57b6de0e733ad57
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, 0x5b4752bcabb4dc0e
mov rax, rdi
imul rax, rdx
xor rax, rbx
not rax
shl rax, cl
xor r11, rax
and r8d, 0x8000003f
jge 0x1401866a8
dec r8d
or r8d, 0xffffffc0
inc r8d
mov cl, r8b
rol r11, cl
movabs rcx, 0x5b4752bcabb4dc0f
add rcx, r10
movabs r12, 0xaaaaaaaaaaaaaaab
mov rax, r12
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
movabs rdx, 0xffffed43544b23f1
lea r8, [0x140278060]
mov rax, qword [r8 + rcx*8]
imul rax, rdx
xor r11, rax
movabs rax, 0xffffc7a7d2e79f3c
or r11, rax
mov r14, qword [0x140278070]
imul r14, rbx
sub r14, r9
mov rax, r15
sub rax, r11
xor r14, rax
movabs rax, 0xc7a7c6a683ef9f31
xor r14, rax
movabs rax, 0xcccccccccccccccd
mul rdi
shr rdx, 3
lea rax, [rdx + rdx*4]
add rax, rax
mov rcx, rdi
sub rcx, rax
or rcx, 1
xor edx, edx
mov rax, r14
div rcx
mov rcx, rdx
mov rdx, r10
imul rdx, r9
imul rdx, r14
shr rdx, cl
mov rax, rsi
sub rax, rdx
sub rax, rdi
movabs rdi, 0x78958944cbdd32b
add rdi, rax
xor rdi, r15
mov al, sil
shl al, 2
lea ecx, [rax + rsi]
shl cl, 2
and cl, 0x3f
rol rdi, cl
not rdi
jmp 0x140186854
movabs r12, 0xaaaaaaaaaaaaaaab
mov rax, r12
mul r11
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
mov rcx, r11
sub rcx, rax
mov rax, r10
imul rax, qword [0x140278080]
lea r8, [0x140278060]
mov rdx, qword [r8 + rcx*8]
and rdx, rax
xor rdx, r11
and r11b, 0x3f
mov cl, r11b
mov r11, rdx
ror r11, cl
imul r11, r9
not r15
imul r15, rsi
movabs rax, 0x7cd8a7de5e1eced0
imul r15, rax
mov rax, r11
imul rax, rdi
mov rdi, r15
xor rdi, rax
imul r8, qword [0x140278060], 0xffffffffe36abb0e
mov rdx, qword [0x140278068]
sub r8, rdx
mov al, dil
not al
movzx ecx, al
movzx eax, dl
xor ecx, eax
and ecx, 0x8000003f
jge 0x140186835
dec ecx
or ecx, 0xffffffc0
inc ecx
ror r8, cl
movabs r15, 0x5b4752bcabb4dc0f
add r15, r8
add r15, r13
jmp 0x140186854
movabs r12, 0xaaaaaaaaaaaaaaab
movabs rcx, 0xff055d7bae55c41d
xor rbx, rcx
mov rax, r12
mul rbx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rbx, rax
xor r11, rdi
lea rax, [0x140278060]
imul r11, qword [rax + rbx*8]
not r9
imul r9, r10
imul r9, r15
imul r9, r14
movabs rcx, 0xf5ed7e87a9e68ec1
xor rcx, rsi
not rcx
xor rcx, r9
sub rcx, r11
call fcn.1401350dc
mov qword [0x140279160], rax
lea rdx, [rbp - 0x41]
lea rcx, [rbp + 0x6f]
call fcn.14015c0b0
mov r15, rax
xor r12d, r12d
lea r13d, [r12 + 0x68]
xor edx, edx
mov rax, r12
movabs rcx, 0x13cce94adbbf6644
div rcx
add dl, 0x34
mov r14b, dl
sar r14b, 7
or r14b, dl
mov al, r14b
sar al, 2
mov sil, r14b
shl sil, 6
mov dil, sil
or dil, 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 r11b, r14b
not r11b
mov bl, r14b
ror bl, 7
lea eax, [r10 - 0x50]
add bl, al
mov dl, byte [r12 + r15]
sub dl, dil
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 [0x140278058]
sub dl, byte [0x140278050]
sub dl, 0x3f
add dl, sil
add dl, r14b
lea eax, [rdi + 7]
add al, r14b
xor dl, al
sub dl, r9b
sub dl, r14b
sub dl, byte [0x140278048]
sub dl, 0x50
mov ecx, dword [0x140278040]
add dl, sil
add dl, cl
mov al, r8b
sub al, r9b
add al, dil
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 bl, dl
mov al, r14b
add al, al
sub bl, al
add bl, sil
add bl, dil
add cl, 0x51
add bl, cl
not bl
mov al, r14b
sar al, 7
or al, r14b
sub bl, al
mov al, r11b
xor al, byte [0x140278038]
sub bl, al
mov al, r14b
xor al, byte [0x140278030]
add bl, al
mov al, r14b
xor al, 0x40
sub bl, al
movsx eax, r14b
movsx ecx, r11b
imul ecx, eax
xor bl, cl
mov byte [r12 + r15], bl
inc r12
cmp r12, r13
jb 0x1401868cd
mov qword [rbp - 0x51], r15
mov qword [rbp - 0x49], r13
and dword [rbp + 0x7f], 0
mov dword [rbp + 0x7f], 0xb26072a0
mov eax, 0x7e5467e8
sub eax, dword [0x140278058]
sub eax, dword [0x140278050]
xor eax, 0xd45534bc
sub eax, dword [0x140278048]
mov ecx, dword [0x140278040]
add eax, 0x5fee512
add eax, ecx
xor eax, 0xc9f57ecf
sub eax, 0x307779a2
xor eax, 0xda696ab6
lea edx, [rcx + 0x4702db15]
add edx, eax
not edx
mov eax, dword [0x140278038]
xor eax, 0xb718b11c
sub edx, eax
mov ecx, dword [0x140278030]
xor ecx, 0x48e74ee3
add ecx, 0xd7a28115
add ecx, edx
xor ecx, 0x911f93d4
mov dword [rbp + 0x7f], ecx
movsxd rdx, ecx
mov r8, r15
mov rbx, qword [rbp - 0x61]
mov rcx, rbx
call fcn.14006180c
nop
and dword [rbp + 0x7f], 0
test r15, r15
je 0x140186ac5
mov r8, r13
xor edx, edx
mov rcx, r15
call fcn.1402042f0
and dword [rbp - 0x69], 0
mov dword [rbp - 0x69], 0xa2a69a67
mov eax, 0x4eda4103
sub eax, dword [0x140278058]
sub eax, dword [0x140278050]
xor eax, 0x2b4c6e86
sub eax, dword [0x140278048]
mov ecx, dword [0x140278040]
add eax, 0xd39775e9
add eax, ecx
xor eax, 0xd9b2417e
add eax, 0x6fd283b9
xor eax, 0xf6a1242e
lea edx, [rcx + 0xfcbf997]
add edx, eax
not edx
mov eax, dword [0x140278038]
xor eax, 0x264dbe76
sub edx, eax
mov ecx, dword [0x140278030]
xor ecx, 0xd9b24189
add ecx, 0xce24695e
add ecx, edx
xor ecx, 0xb102e326
mov dword [rbp - 0x69], ecx
call fcn.1401ee548
mov rdx, rax
mov rcx, rbx
call fcn.1401ee694
nop
and dword [rbp - 0x69], 0
xor edi, edi
mov esi, 0xd03458ca
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 0x140186bc9
psrldq xmm0, 8
movq r9, xmm0
movzx ecx, cx
shr rcx, 1
lea r11, [r9 + rcx*2]
mov r10d, 0x96ca5cea
jmp 0x140186bbb
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 0x140186b95
cmp r10d, edi
jne 0x140186cdc
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 0x140186cdc
mov r14d, dword [rbx + 0x18]
test r14d, r14d
je 0x140186cdc
mov r13d, dword [rbx + 0x20]
dec r14d
lea rdx, [r14*4]
add rdx, r13
mov r11d, dword [rdx + r10]
add r11, r10
mov r15d, 0x96ca5cea
jmp 0x140186c3c
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 0x140186c19
cmp r15d, esi
je 0x140186c55
test r14d, r14d
jne 0x140186bfc
jmp 0x140186cdc
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 0x140186ce4
lea rax, [rbx + rcx]
cmp r9, rax
jae 0x140186ce4
mov edi, 0x96ca5cea
mov esi, edi
jmp 0x140186ca1
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]
cmp al, 0x2e
jne 0x140186c84
jmp 0x140186cc1
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 0x140186caa
mov rax, qword gs:[0x60]
mov rax, qword [rax + 0x18]
mov rax, qword [rax + 0x10]
mov rax, qword [rax]
jmp 0x140186b69
mov rcx, qword [rbp - 0x61]
mov rbx, qword [rsp + 0xf0]
add rsp, 0xb0
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
jmp r9