Function at 0x140023880
Capabilities:
Contain obfuscated stackstrings

Disassembly:
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0x60]
sub rsp, 0x160
mov qword [rbp - 0x50], 0xfffffffffffffffe
mov qword [rsp + 0x1b0], rbx
mov rax, qword [0x14017b250]
xor rax, rsp
mov qword [rbp + 0x58], rax
mov byte [rsp + 0x60], r8b
mov r13, rdx
mov r15, rcx
or rsi, 0xffffffffffffffff
mov r14d, esi
xor ebx, ebx
mov r12d, ebx
mov dword [rbp - 0x74], ebx
mov rax, rsi
inc rax
cmp byte [rcx + rax], bl
jne 0x1400238d3
test rax, rax
je 0x140023c3e
call fcn.140035470
test eax, eax
je 0x140023c3e
call fcn.140011b70
mov dword [rbp - 0x40], ebx
xor edx, edx
lea r8d, [rdx + 0x60]
lea rcx, [rbp - 0x38]
call fcn.14006eac0
mov qword [rsp + 0x70], rbx
mov qword [rbp - 0x80], rbx
mov qword [rbp - 0x68], rbx
xor eax, eax
mov qword [rbp - 0x60], rax
mov qword [rbp - 0x58], rax
mov dword [rbp - 0x78], esi
lea rcx, [rbp - 0x78]
call fcn.140013110
mov edi, eax
call fcn.1400155d0
mov rdx, rax
mov ecx, ebx
test rax, rax
setne cl
test ecx, ecx
jne 0x14002394c
mov ecx, 0x80004005
call fcn.14000f2a0
int3
mov rax, qword [rax]
mov rcx, rdx
call qword [rax + 0x18]
add rax, 0x18
mov qword [rbp - 0x70], rax
xor r9d, r9d
lea r8, [rbp - 0x70]
lea rdx, [rsp + 0x70]
mov ecx, edi
call fcn.14001ab90
test al, al
je 0x140023be8
mov rcx, qword [rsp + 0x70]
test rcx, rcx
je 0x140023be8
mov qword [rsp + 0x78], rbx
lea rax, [rsp + 0x78]
mov qword [rsp + 0x28], rax
mov dword [rsp + 0x20], 1
mov r9d, 2
xor r8d, r8d
mov edx, 0x2000000
call fcn.140033dd0
test eax, eax
je 0x140023bd4
xor r8d, r8d
mov rdx, qword [rsp + 0x70]
lea rcx, [rbp - 0x80]
call fcn.140033710
test eax, eax
je 0x140023b40
mov dword [rbp - 0x40], 0x68
mov dword [rbp - 4], 0x101
mov word [rbp], bx
mov edi, ebx
nop word [rax + rax]
mov rdx, r13
lea rcx, [rsp + 0x68]
call fcn.14000d8e0
nop
mov r8, qword [rsp + 0x68]
mov ecx, 1
sub ecx, dword [r8 - 8]
mov eax, dword [r8 - 0xc]
sub eax, 0x104
or eax, ecx
jge 0x140023a2d
mov edx, 0x104
lea rcx, [rsp + 0x68]
call fcn.14001a840
mov r8, qword [rsp + 0x68]
lea rax, [rbp - 0x68]
mov qword [rsp + 0x50], rax
lea rax, [rbp - 0x40]
mov qword [rsp + 0x48], rax
mov qword [rsp + 0x40], rbx
mov rax, qword [rbp - 0x80]
mov qword [rsp + 0x38], rax
mov dword [rsp + 0x30], 0x480
mov dword [rsp + 0x28], ebx
mov qword [rsp + 0x20], rbx
xor r9d, r9d
mov rdx, r15
mov rcx, qword [rsp + 0x78]
call fcn.140033a50
mov r12d, eax
mov rcx, qword [rsp + 0x68]
movsxd rdx, dword [rcx - 0xc]
call fcn.14006fff8
mov rcx, rax
test eax, eax
js 0x140023b35
mov rax, qword [rsp + 0x68]
cmp ecx, dword [rax - 0xc]
jg 0x140023b35
mov dword [rax - 0x10], ecx
movsxd rcx, ecx
mov rax, qword [rsp + 0x68]
mov byte [rcx + rax], 0
mov ecx, 0xc8
call fcn.140036ed0
test r12d, r12d
jne 0x140023ae0
mov rdx, qword [rsp + 0x68]
add rdx, 0xffffffffffffffe8
lock add dword [rdx + 0x10], 0xffffffff
jg 0x140023acf
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + 8]
inc edi
cmp edi, 0x32
jl 0x1400239f0
mov r12d, dword [rbp - 0x74]
jmp 0x140023b03
mov r14d, dword [rbp - 0x58]
mov rdx, qword [rsp + 0x68]
add rdx, 0xffffffffffffffe8
lock add dword [rdx + 0x10], 0xffffffff
jg 0x140023afd
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + 8]
mov r12d, 1
mov rcx, qword [rbp - 0x68]
lea rax, [rcx - 1]
cmp rax, 0xfffffffffffffffd
ja 0x140023b16
call fcn.140032fb0
mov rcx, qword [rbp - 0x60]
lea rax, [rcx - 1]
cmp rax, 0xfffffffffffffffd
ja 0x140023b29
call fcn.140032fb0
mov ecx, 0x7d0
call fcn.140036ed0
jmp 0x140023b40
mov ecx, 0x80070057
call fcn.14000f2a0
nop
cmp qword [rbp - 0x80], 0
je 0x140023bc0
mov dword [rbp + 0x30], 0x72657355
mov dword [rbp + 0x34], 0x2e766e65
mov dword [rbp + 0x38], 0x6c6c64
mov word [rbp + 0x53], 0x6f6c
mov word [rbp + 0x45], 0x796f
mov word [rbp + 0x56], 0x6b
mov dword [rbp + 0x4b], 0x6d6e6f72
mov dword [rbp + 0x40], 0x74736544
mov dword [rbp + 0x47], 0x69766e45
mov dword [rbp + 0x4f], 0x42746e65
mov byte [rbp + 0x55], 0x63
mov byte [rbp + 0x44], 0x72
lea rcx, [rbp + 0x30]
call qword [sym.imp.KERNEL32.dll_LoadLibraryA]
test rax, rax
je 0x140023bc0
lea rdx, [rbp + 0x40]
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [0x14018aa60], rax
test rax, rax
je 0x140023bc0
mov rcx, qword [rbp - 0x80]
call rax
mov rcx, qword [rsp + 0x78]
test rcx, rcx
je 0x140023bd4
call fcn.140032fb0
mov qword [rsp + 0x78], rbx
mov rcx, qword [rsp + 0x70]
test rcx, rcx
je 0x140023be8
call fcn.140032fb0
mov qword [rsp + 0x70], rbx
cmp byte [rsp + 0x60], 0
je 0x140023c20
test r14d, r14d
jle 0x140023c20
mov ecx, r14d
call fcn.1400187a0
test eax, eax
je 0x140023c20
inc ebx
mov ecx, 0x3e8
call fcn.140036ed0
cmp ebx, 0x258
jg 0x140023c20
mov ecx, r14d
call fcn.1400187a0
test eax, eax
jne 0x140023c00
mov rdx, qword [rbp - 0x70]
add rdx, 0xffffffffffffffe8
lock add dword [rdx + 0x10], 0xffffffff
jg 0x140023c39
mov rcx, qword [rdx]
mov r8, qword [rcx]
call qword [r8 + 8]
mov eax, r12d
jmp 0x140023c40
xor eax, eax
mov rcx, qword [rbp + 0x58]
xor rcx, rsp
call fcn.14006c1f0
mov rbx, qword [rsp + 0x1b0]
add rsp, 0x160
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret