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

Disassembly:
push rbp
push rbx
push rsi
push rdi
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0x3f8]
sub rsp, 0x4f8
mov rax, qword [0x140035010]
xor rax, rsp
mov qword [rbp + 0x3e0], rax
mov r14d, r9d
mov rbx, r8
mov r15, rdx
mov r13, rcx
mov qword [rsp + 0x70], rcx
mov qword [rsp + 0x78], rdx
mov qword [rsp + 0x68], 0
mov ecx, 0x80000
call fcn.14000b5c8
mov r12, rax
mov qword [rsp + 0x60], rax
test r14d, r14d
je 0x1400052ae
test rax, rax
jne 0x140005255
call fcn.140019eac
mov dword [rax], 0x16
jmp 0x1400052a9
test rbx, rbx
je 0x140005273
cmp r14, 0x80000
ja 0x140005273
mov r8, r14
mov rdx, rbx
mov rcx, r12
call fcn.14000f1a0
jmp 0x1400052ae
xor edx, edx
mov r8d, 0x80000
mov rcx, r12
call fcn.14000cae0
test rbx, rbx
jne 0x140005295
call fcn.140019eac
mov dword [rax], 0x16
jmp 0x1400052a9
cmp r14, 0x80000
jbe 0x1400052ae
call fcn.140019eac
mov dword [rax], 0x22
call fcn.1400122cc
movdqa xmm0, xmmword [0x140031f60]
movdqu xmmword [rsp + 0x40], xmm0
mov dword [rsp + 0x50], 0x7d7b7365
mov dword [rsp + 0x54], 0x696f1b04
mov dword [rsp + 0x58], 0x19063b2d
mov word [rsp + 0x5c], 0xe
xor ebx, ebx
mov ecx, ebx
nop
movzx eax, cl
add al, byte [rsp + 0x40]
xor byte [rsp + rcx + 0x41], al
inc rcx
cmp rcx, 0x1c
jb 0x1400052e0
mov byte [rsp + 0x5d], bl
lea rax, [rsp + 0x41]
mov rsi, 0xffffffffffffffff
mov rdx, rsi
inc rdx
cmp byte [rax + rdx], bl
jne 0x140005307
movdqa xmm0, xmmword [0x140031f70]
mov dword [rsp + 0x50], 0x63292829
mov dword [rsp + 0x54], 0x78393845
mov dword [rsp + 0x58], 0x717d6b69
mov byte [rsp + 0x5c], bl
psubb xmm0, xmmword [0x140031f20]
movdqu xmmword [rsp + 0x40], xmm0
mov eax, 0x10
nop word [rax + rax]
add byte [rsp + rax + 0x40], 0xfb
inc rax
cmp rax, 0x1c
jb 0x140005350
mov qword [rbp - 0x30], rbx
movdqa xmm2, xmmword [0x140031eb0]
mov ecx, 8
lea r8, [rbp - 8]
nop dword [rax]
nop word [rax + rax]
lea eax, [rcx - 8]
movd xmm0, eax
pshufd xmm0, xmm0, 0
paddd xmm0, xmm2
movdqu xmmword [r8 - 0x20], xmm0
lea eax, [rcx - 4]
movd xmm1, eax
pshufd xmm1, xmm1, 0
paddd xmm1, xmm2
movdqu xmmword [r8 - 0x10], xmm1
movd xmm0, ecx
pshufd xmm0, xmm0, 0
paddd xmm0, xmm2
movdqu xmmword [r8], xmm0
lea eax, [rcx + 4]
movd xmm1, eax
pshufd xmm1, xmm1, 0
paddd xmm1, xmm2
movdqu xmmword [r8 + 0x10], xmm1
add ecx, 0x10
lea r8, [r8 + 0x40]
lea eax, [rcx - 8]
cmp eax, 0x100
jl 0x140005380
mov r10d, ebx
mov r9, rbx
mov r8, rbx
movsxd r11, edx
nop dword [rax]
nop word [rax + rax]
mov edx, dword [rbp + r9*4 - 0x28]
movzx eax, byte [rsp + r8 + 0x40]
add al, r10b
add al, dl
movzx r10d, al
lea rcx, [rbp - 0x28]
lea rcx, [rcx + r10*4]
mov eax, dword [rcx]
mov dword [rbp + r9*4 - 0x28], eax
mov dword [rcx], edx
lea rax, [r8 + 1]
inc r9
mov r8, rbx
cmp rax, r11
cmovl r8, rax
cmp r9, 0x100
jl 0x140005400
mov r9d, dword [rbp - 0x30]
mov r10d, dword [rbp - 0x2c]
test r14d, r14d
jle 0x14000549d
mov r11, r12
mov rbx, r14
nop dword [rax]
nop word [rax + rax]
inc r9b
movzx r9d, r9b
lea rdx, [rbp - 0x28]
lea rdx, [rdx + r9*4]
mov r8d, dword [rdx]
add r10b, r8b
movzx r10d, r10b
mov ecx, dword [rbp + r10*4 - 0x28]
mov dword [rdx], ecx
mov dword [rbp + r10*4 - 0x28], r8d
add cl, r8b
movzx eax, cl
movzx ecx, byte [rbp + rax*4 - 0x28]
xor byte [r11], cl
lea r11, [r11 + 1]
sub rbx, 1
jne 0x140005460
lea r8, [r14 + 2]
movabs r9, 0xaaaaaaaaaaaaaaab
mov rax, r9
mul r8
shr rdx, 1
lea rcx, [rdx + rdx*2]
sub r8, rcx
mov rcx, r14
sub rcx, r8
add rcx, 2
mov rax, r9
mul rcx
mov rbx, rdx
shr rbx, 1
shl ebx, 2
lea ecx, [rbx + 1]
call fcn.14000b5c8
mov r12, rax
mov r9d, ebx
mov r8, rax
mov rdx, r14
mov rcx, qword [rsp + 0x60]
call fcn.1400010c0
mov byte [rbx + r12], 0
mov qword [rbp - 0x70], 0
mov qword [rbp - 0x68], 0xf
mov byte [rbp - 0x80], 0
xor r8d, r8d
lea rdx, [0x140031923]
lea rcx, [rbp - 0x80]
call fcn.1400079c0
nop
mov byte [rsp + 0x30], 0x67
mov al, 0x12
mov cl, 0x14
mov dl, 2
mov r8b, 0x15
mov r9b, 0x5a
xor r10d, r10d
xor al, 0x67
mov byte [rsp + 0x31], al
xor cl, 0x67
mov byte [rsp + 0x32], cl
xor dl, 0x67
mov byte [rsp + 0x33], dl
xor r8b, 0x67
mov byte [rsp + 0x34], r8b
xor r9b, 0x67
mov byte [rsp + 0x35], r9b
mov byte [rsp + 0x36], r10b
lea rax, [rsp + 0x31]
mov rdi, rsi
inc rdi
cmp byte [rax + rdi], r10b
jne 0x140005566
mov rcx, qword [rbp - 0x70]
mov rdx, qword [rbp - 0x68]
mov rax, rdx
sub rax, rcx
cmp rdi, rax
ja 0x1400055b0
lea rax, [rcx + rdi]
mov qword [rbp - 0x70], rax
lea rbx, [rbp - 0x80]
cmp rdx, 0x10
cmovae rbx, qword [rbp - 0x80]
add rbx, rcx
mov r8, rdi
lea rdx, [rsp + 0x31]
mov rcx, rbx
call fcn.14000f1a0
mov byte [rbx + rdi], 0
jmp 0x1400055c6
mov qword [rsp + 0x20], rdi
lea r9, [rsp + 0x31]
mov rdx, rdi
lea rcx, [rbp - 0x80]
call fcn.140007cd0
mov word [rsp + 0x35], 0x74
mov dword [rsp + 0x30], 0x65696c63
mov byte [rsp + 0x34], 0x6e
lea rax, [rsp + 0x30]
mov rdi, rsi
inc rdi
cmp byte [rax + rdi], 0
jne 0x1400055e2
mov rcx, qword [rbp - 0x70]
mov rdx, qword [rbp - 0x68]
mov rax, rdx
sub rax, rcx
cmp rdi, rax
ja 0x14000562c
lea rax, [rdi + rcx]
mov qword [rbp - 0x70], rax
lea rbx, [rbp - 0x80]
cmp rdx, 0x10
cmovae rbx, qword [rbp - 0x80]
add rbx, rcx
mov r8, rdi
lea rdx, [rsp + 0x30]
mov rcx, rbx
call fcn.14000f1a0
mov byte [rbx + rdi], 0
jmp 0x140005642
mov qword [rsp + 0x20], rdi
lea r9, [rsp + 0x30]
mov rdx, rdi
lea rcx, [rbp - 0x80]
call fcn.140007cd0
mov rdx, qword [rbp - 0x70]
mov r8, qword [rbp - 0x68]
mov rax, r8
sub rax, rdx
lea rcx, [rbp - 0x80]
cmp rax, 1
jb 0x14000567c
lea rax, [rdx + 1]
mov qword [rbp - 0x70], rax
cmp r8, 0x10
cmovae rcx, qword [rbp - 0x80]
movzx eax, byte [0x140031c68]
mov byte [rcx + rdx], al
mov byte [rcx + rdx + 1], 0
jmp 0x140005696
mov qword [rsp + 0x20], 1
lea r9, [0x140031c68]
mov edx, 1
call fcn.140007cd0
mov dword [rsp + 0x32], 0x3d6570
mov word [rsp + 0x30], 0x7974
lea rax, [rsp + 0x30]
mov rdi, rsi
nop dword [rax]
inc rdi
cmp byte [rax + rdi], 0
jne 0x1400056b0
mov rcx, qword [rbp - 0x70]
mov rdx, qword [rbp - 0x68]
mov rax, rdx
sub rax, rcx
cmp rdi, rax
ja 0x1400056fa
lea rax, [rdi + rcx]
mov qword [rbp - 0x70], rax
lea rbx, [rbp - 0x80]
cmp rdx, 0x10
cmovae rbx, qword [rbp - 0x80]
add rbx, rcx
mov r8, rdi
lea rdx, [rsp + 0x30]
mov rcx, rbx
call fcn.14000f1a0
mov byte [rbx + rdi], 0
jmp 0x140005710
mov qword [rsp + 0x20], rdi
lea r9, [rsp + 0x30]
mov rdx, rdi
lea rcx, [rbp - 0x80]
call fcn.140007cd0
mov word [rsp + 0x38], 0x32
lea rax, [rsp + 0x38]
mov rdi, rsi
nop
inc rdi
cmp byte [rax + rdi], 0
jne 0x140005720
mov rcx, qword [rbp - 0x70]
mov rdx, qword [rbp - 0x68]
mov rax, rdx
sub rax, rcx
cmp rdi, rax
ja 0x14000576a
lea rax, [rdi + rcx]
mov qword [rbp - 0x70], rax
lea rbx, [rbp - 0x80]
cmp rdx, 0x10
cmovae rbx, qword [rbp - 0x80]
add rbx, rcx
mov r8, rdi
lea rdx, [rsp + 0x38]
mov rcx, rbx
call fcn.14000f1a0
mov byte [rbx + rdi], 0
jmp 0x140005780
mov qword [rsp + 0x20], rdi
lea r9, [rsp + 0x38]
mov rdx, rdi
lea rcx, [rbp - 0x80]
call fcn.140007cd0
mov rdx, qword [rbp - 0x70]
mov r8, qword [rbp - 0x68]
mov rax, r8
sub rax, rdx
lea rcx, [rbp - 0x80]
cmp rax, 1
jb 0x1400057ba
lea rax, [rdx + 1]
mov qword [rbp - 0x70], rax
cmp r8, 0x10
cmovae rcx, qword [rbp - 0x80]
movzx eax, byte [0x140031c68]
mov byte [rcx + rdx], al
mov byte [rcx + rdx + 1], 0
jmp 0x1400057d4
mov qword [rsp + 0x20], 1
lea r9, [0x140031c68]
mov edx, 1
call fcn.140007cd0
mov dl, 0x5d
mov dword [rsp + 0x30], 0x383f2d5d
mov word [rsp + 0x34], 0x5c05
xor eax, eax
mov byte [rsp + 0x36], al
xor ecx, ecx
nop dword [rax]
lea eax, [rdx + rcx]
xor byte [rsp + rcx + 0x31], al
inc rcx
cmp rcx, 5
jae 0x140005807
movzx edx, byte [rsp + 0x30]
jmp 0x1400057f0
mov byte [rsp + 0x36], 0
lea rax, [rsp + 0x31]
mov rdx, rsi
inc rdx
cmp byte [rax + rdx], 0
jne 0x140005814
mov rcx, qword [rbp - 0x70]
mov r8, qword [rbp - 0x68]
mov rax, r8
sub rax, rcx
cmp rdx, rax
ja 0x14000585b
lea rdi, [rdx + rcx]
mov qword [rbp - 0x70], rdi
lea rbx, [rbp - 0x80]
cmp r8, 0x10
cmovae rbx, qword [rbp - 0x80]
add rcx, rbx
mov r8, rdx
lea rdx, [rsp + 0x31]
call fcn.14000f1a0
mov byte [rdi + rbx], 0
jmp 0x14000586e
mov qword [rsp + 0x20], rdx
lea r9, [rsp + 0x31]
lea rcx, [rbp - 0x80]
call fcn.140007cd0
mov rdi, qword [r15 + 0x10]
mov r9, r15
cmp qword [r15 + 0x18], 0x10
jb 0x14000587f
mov r9, qword [r15]
mov r14, qword [rbp - 0x70]
mov rcx, qword [rbp - 0x68]
mov rax, rcx
sub rax, r14
cmp rdi, rax
ja 0x1400058c1
lea rax, [rdi + r14]
mov qword [rbp - 0x70], rax
lea rbx, [rbp - 0x80]
cmp rcx, 0x10
cmovae rbx, qword [rbp - 0x80]
lea rcx, [rbx + r14]
mov r8, rdi
mov rdx, r9
call fcn.14000f1a0
lea rax, [rdi + rbx]
mov byte [rax + r14], 0
jmp 0x1400058d2
mov qword [rsp + 0x20], rdi
mov rdx, rdi
lea rcx, [rbp - 0x80]
call fcn.140007cd0
mov rdx, qword [rbp - 0x70]
mov r8, qword [rbp - 0x68]
mov rax, r8
sub rax, rdx
lea rcx, [rbp - 0x80]
cmp rax, 1
jb 0x14000590c
lea rax, [rdx + 1]
mov qword [rbp - 0x70], rax
cmp r8, 0x10
cmovae rcx, qword [rbp - 0x80]
movzx eax, byte [0x140031c68]
mov byte [rcx + rdx], al
mov byte [rcx + rdx + 1], 0
jmp 0x140005926
mov qword [rsp + 0x20], 1
lea r9, [0x140031c68]
mov edx, 1
call fcn.140007cd0
mov byte [rsp + 0x30], 0x1e
mov al, 0x7a
mov cl, 0x7f
mov dl, 0x6a
mov r8b, 0x23
xor r9d, r9d
xor al, 0x1e
mov byte [rsp + 0x31], al
xor cl, 0x1e
mov byte [rsp + 0x32], cl
xor dl, 0x1e
mov byte [rsp + 0x33], dl
xor r8b, 0x1e
mov byte [rsp + 0x34], r8b
mov byte [rsp + 0x35], r9b
lea rax, [rsp + 0x31]
mov rdi, rsi
inc rdi
cmp byte [rax + rdi], r9b
jne 0x140005961
mov rcx, qword [rbp - 0x70]
mov rdx, qword [rbp - 0x68]
mov rax, rdx
sub rax, rcx
cmp rdi, rax
ja 0x1400059ab
lea rax, [rcx + rdi]
mov qword [rbp - 0x70], rax
lea rbx, [rbp - 0x80]
cmp rdx, 0x10
cmovae rbx, qword [rbp - 0x80]
add rbx, rcx
mov r8, rdi
lea rdx, [rsp + 0x31]
mov rcx, rbx
call fcn.14000f1a0
mov byte [rbx + rdi], 0
jmp 0x1400059c1
mov qword [rsp + 0x20], rdi
lea r9, [rsp + 0x31]
mov rdx, rdi
lea rcx, [rbp - 0x80]
call fcn.140007cd0
inc rsi
cmp byte [r12 + rsi], 0
jne 0x1400059c1
mov rcx, qword [rbp - 0x70]
mov rdx, qword [rbp - 0x68]
mov rax, rdx
sub rax, rcx
cmp rsi, rax
ja 0x140005a0a
lea rax, [rsi + rcx]
mov qword [rbp - 0x70], rax
lea rbx, [rbp - 0x80]
cmp rdx, 0x10
cmovae rbx, qword [rbp - 0x80]
add rbx, rcx
mov r8, rsi
mov rdx, r12
mov rcx, rbx
call fcn.14000f1a0
mov byte [rbx + rsi], 0
jmp 0x140005a1e
mov qword [rsp + 0x20], rsi
mov r9, r12
mov rdx, rsi
lea rcx, [rbp - 0x80]
call fcn.140007cd0
mov rdx, r13
lea rcx, [rsp + 0x40]
call fcn.140007870
mov rbx, rax
mov qword [rsp + 0x30], rax
xor edi, edi
mov qword [rbp - 0x50], rdi
mov qword [rbp - 0x48], 7
mov word [rbp - 0x60], di
lea rax, [rbp - 0x60]
cmp rax, rbx
je 0x140005a69
mov rdx, rbx
cmp qword [rbx + 0x18], 8
jb 0x140005a5b
mov rdx, qword [rbx]
mov r8, qword [rbx + 0x10]
lea rcx, [rbp - 0x60]
call fcn.140003f00
nop
mov rdx, qword [rbx + 0x18]
cmp rdx, 8
jb 0x140005aa8
mov rcx, qword [rbx]
lea rdx, [rdx*2 + 2]
cmp rdx, 0x1000
jb 0x140005aa3
add rdx, 0x27
mov r8, qword [rcx - 8]
sub rcx, r8
lea rax, [rcx - 8]
cmp rax, 0x1f
ja 0x140005c7d
mov rcx, r8
call fcn.14000b594
mov qword [rbx + 0x10], rdi
mov qword [rbx + 0x18], 7
mov word [rbx], di
lea r8, [rbp - 0x80]
cmp qword [rbp - 0x68], 0x10
cmovae r8, qword [rbp - 0x80]
lea rax, [rbp - 0x40]
mov qword [rsp + 0x28], rax
lea rax, [rsp + 0x68]
mov qword [rsp + 0x20], rax
mov r9d, dword [rbp - 0x70]
xor edx, edx
lea rcx, [rbp - 0x60]
call fcn.140002b10
mov rcx, qword [rsp + 0x68]
test al, al
je 0x140005af9
cmp byte [rcx], 0x79
jne 0x140005af9
mov bl, 1
jmp 0x140005afb
xor bl, bl
test rcx, rcx
je 0x140005b06
call qword [sym.imp.KERNEL32.DLL_LocalFree]
mov rcx, r12
call fcn.14000b594
mov rcx, qword [rsp + 0x60]
call fcn.14000b594
nop
mov rdx, qword [rbp - 0x48]
cmp rdx, 8
jb 0x140005b59
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp - 0x60]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140005b54
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140005c83
call fcn.14000b594
mov qword [rbp - 0x50], rdi
mov qword [rbp - 0x48], 7
mov word [rbp - 0x60], di
mov rdx, qword [rbp - 0x68]
cmp rdx, 0x10
jb 0x140005ba4
inc rdx
mov rcx, qword [rbp - 0x80]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140005b9f
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140005c89
call fcn.14000b594
mov qword [rbp - 0x70], rdi
mov qword [rbp - 0x68], 0xf
mov byte [rbp - 0x80], 0
mov rdx, qword [r13 + 0x18]
cmp rdx, 8
jb 0x140005bf4
mov rcx, qword [r13]
lea rdx, [rdx*2 + 2]
cmp rdx, 0x1000
jb 0x140005bef
add rdx, 0x27
mov r8, qword [rcx - 8]
sub rcx, r8
lea rax, [rcx - 8]
cmp rax, 0x1f
ja 0x140005c71
mov rcx, r8
call fcn.14000b594
mov qword [r13 + 0x10], rdi
mov qword [r13 + 0x18], 7
mov word [r13], di
mov rdx, qword [r15 + 0x18]
cmp rdx, 0x10
jb 0x140005c3b
inc rdx
mov rcx, qword [r15]
cmp rdx, 0x1000
jb 0x140005c36
add rdx, 0x27
mov r8, qword [rcx - 8]
sub rcx, r8
lea rax, [rcx - 8]
cmp rax, 0x1f
ja 0x140005c77
mov rcx, r8
call fcn.14000b594
mov qword [r15 + 0x10], rdi
mov qword [r15 + 0x18], 0xf
mov byte [r15], 0
movzx eax, bl
mov rcx, qword [rbp + 0x3e0]
xor rcx, rsp
call fcn.14000adb0
add rsp, 0x4f8
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbx
pop rbp
ret
call fcn.1400122ec
nop
call fcn.1400122ec
nop
call fcn.1400122ec
int3
call fcn.1400122ec
nop
call fcn.1400122ec
int3