Function at 0x18031a140
Capabilities:
Contain obfuscated stackstrings

Disassembly:
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0x490]
sub rsp, 0x590
mov qword [rsp + 0x70], 0xfffffffffffffffe
mov qword [rsp + 0x5e8], rbx
mov rax, qword [0x1806c4cd8]
xor rax, rsp
mov qword [rbp + 0x480], rax
mov r15, r8
mov qword [rsp + 0x58], r8
mov ebx, edx
mov r14, rcx
xor eax, eax
mov dword [rsp + 0x50], eax
movzx r9d, dx
imul r12d, r9d, 0x10001
mov dword [rbp - 0x10], 0x790053
mov dword [rbp - 0xc], 0x740073
mov dword [rbp - 8], 0x6d0065
mov dword [rbp - 4], 0x43005c
mov dword [rbp], 0x720075
mov dword [rbp + 4], 0x650072
mov dword [rbp + 8], 0x74006e
mov dword [rbp + 0xc], 0x6f0043
mov dword [rbp + 0x10], 0x74006e
mov dword [rbp + 0x14], 0x6f0072
mov dword [rbp + 0x18], 0x53006c
mov dword [rbp + 0x1c], 0x740065
mov dword [rbp + 0x20], 0x43005c
mov dword [rbp + 0x24], 0x6e006f
mov dword [rbp + 0x28], 0x720074
mov dword [rbp + 0x2c], 0x6c006f
mov dword [rbp + 0x30], 0x4b005c
mov dword [rbp + 0x34], 0x790065
mov dword [rbp + 0x38], 0x6f0062
mov dword [rbp + 0x3c], 0x720061
mov dword [rbp + 0x40], 0x200064
mov dword [rbp + 0x44], 0x61004c
mov dword [rbp + 0x48], 0x6f0079
mov dword [rbp + 0x4c], 0x740075
mov dword [rbp + 0x50], WSACleanup
xor esi, esi
mov qword [rbp - 0x28], rsi
mov qword [rbp - 0x20], rsi
mov qword [rbp - 0x28], rsi
mov qword [rbp - 0x20], 7
mov word [rbp - 0x38], si
cmp edx, r12d
cmovne r9d, edx
lea r8, [rbp - 0x10]
lea rdx, str._s_08x
lea rcx, [rbp - 0x38]
call fcn.18010b010
mov rcx, qword [r14]
test rcx, rcx
je 0x18031a8c7
lea rdx, [0x1805fda80]
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rsi, rax
lea rdx, str.RegQueryValueExW
mov rcx, qword [r14]
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rdi, rax
mov qword [rsp + 0x60], rax
lea rdx, [0x1805fdb00]
mov rcx, qword [r14]
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [rsp + 0x68], rax
test rsi, rsi
je 0x18031a8c5
test rdi, rdi
je 0x18031a8c5
test rax, rax
je 0x18031a8c5
xor eax, eax
mov qword [rsp + 0x78], rax
lea rdx, [rbp - 0x38]
cmp qword [rbp - 0x20], 8
cmovae rdx, qword [rbp - 0x38]
lea rax, [rsp + 0x78]
mov qword [rsp + 0x20], rax
mov r9d, 0x20019
xor r8d, r8d
mov rcx, 0xffffffff80000002
call rsi
test eax, eax
jne 0x18031a8c5
test ebx, 0xffff0000
cmove ebx, r12d
mov dword [r15], ebx
xor esi, esi
mov dword [rbp - 0x7c], esi
xor edx, edx
mov r8d, 0x208
lea rcx, [rbp + 0x60]
call sub.VCRUNTIME140.dll_memset
mov dword [rbp - 0x80], 0x208
lea rax, [rbp - 0x80]
mov qword [rsp + 0x28], rax
lea rax, [rbp + 0x60]
mov qword [rsp + 0x20], rax
lea r9, [rbp - 0x7c]
xor r8d, r8d
lea rdx, str.Ime_File
mov rcx, qword [rsp + 0x78]
call rdi
mov qword [rbp - 0x48], rsi
mov qword [rbp - 0x40], rsi
mov qword [rbp - 0x48], rsi
mov qword [rbp - 0x40], 7
mov word [rbp - 0x58], si
lea rax, [rbp + 0x60]
mov rbx, 0xffffffffffffffff
mov r8, rbx
inc r8
cmp word [rax + r8*2], si
jne 0x18031a393
lea rdx, [rbp + 0x60]
lea rcx, [rbp - 0x58]
call fcn.18007da60
nop
mov r12, qword [rbp - 0x48]
test r12, r12
je 0x18031a6e7
mov qword [rbp - 0x68], rsi
mov qword [rbp - 0x60], rsi
mov qword [rbp - 0x68], rsi
mov qword [rbp - 0x60], 7
mov word [rbp - 0x78], si
mov qword [rsp + 0x40], rsi
mov qword [rsp + 0x48], rsi
mov qword [rsp + 0x40], rsi
mov qword [rsp + 0x48], 7
mov word [rsp + 0x30], si
mov r8d, recv
lea rdx, str.Shell32.dll
lea rcx, [rsp + 0x30]
call fcn.18007da60
nop
call fcn.18011a580
mov rcx, rax
lea rdx, [rsp + 0x30]
call fcn.18011a660
mov rdi, rax
mov rdx, qword [rsp + 0x48]
cmp rdx, 8
jb 0x18031a45f
lea rdx, [rdx*2 + 2]
mov rcx, qword [rsp + 0x30]
mov rax, rcx
cmp rdx, 0x1000
jb 0x18031a45a
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x18031a45a
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.180468ddc
mov qword [rsp + 0x40], rsi
mov qword [rsp + 0x48], 7
mov word [rsp + 0x30], si
test rdi, rdi
je 0x18031a4eb
lea rdx, [0x1805ffcf8]
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rdi, rax
test rax, rax
je 0x18031a4eb
xor edx, edx
mov r8d, 0x208
lea rcx, [rbp + 0x270]
call sub.VCRUNTIME140.dll_memset
lea rax, [rbp + 0x270]
mov qword [rsp + 0x20], rax
xor r9d, r9d
xor r8d, r8d
lea edx, [r9 + 0x25]
xor ecx, ecx
call rdi
test eax, eax
jne 0x18031a4eb
lea rax, [rbp + 0x270]
mov r8, rbx
nop dword [rax + rax]
inc r8
cmp word [rax + r8*2], 0
jne 0x18031a4d0
lea rdx, [rbp + 0x270]
lea rcx, [rbp - 0x78]
call fcn.18007da60
mov edx, reloc.WS2_32.dll_recv
lea rcx, [rbp - 0x78]
call fcn.18010dd70
nop
mov qword [rsp + 0x40], rsi
mov qword [rsp + 0x48], rsi
mov qword [rsp + 0x40], rsi
mov qword [rsp + 0x48], 7
mov word [rsp + 0x30], si
mov dword [rsp + 0x50], 1
mov r14, qword [rbp - 0x68]
lea rdx, [r14 + r12]
lea rcx, [rsp + 0x30]
call fcn.180099b70
lea r9, [rbp - 0x78]
mov r15, qword [rbp - 0x78]
cmp qword [rbp - 0x60], 8
cmovae r9, r15
mov rcx, qword [rsp + 0x40]
mov rdx, qword [rsp + 0x48]
mov rax, rdx
sub rax, rcx
cmp r14, rax
ja 0x18031a587
lea rsi, [r14 + rcx]
mov qword [rsp + 0x40], rsi
lea rdi, [rsp + 0x30]
cmp rdx, 8
cmovae rdi, qword [rsp + 0x30]
lea r8, [r14 + r14]
lea rcx, [rdi + rcx*2]
mov rdx, r9
call sub.VCRUNTIME140.dll_memmove
xor eax, eax
mov word [rdi + rsi*2], ax
jmp 0x18031a59d
mov qword [rsp + 0x20], r14
mov rdx, r14
lea rcx, [rsp + 0x30]
call fcn.1800998c0
mov r15, qword [rbp - 0x78]
lea r9, [rbp - 0x58]
mov r14, qword [rbp - 0x58]
mov r13, qword [rbp - 0x40]
cmp r13, 8
cmovae r9, r14
mov rcx, qword [rsp + 0x40]
mov rdx, qword [rsp + 0x48]
mov rax, rdx
sub rax, rcx
cmp r12, rax
ja 0x18031a5f6
lea rsi, [r12 + rcx]
mov qword [rsp + 0x40], rsi
lea rdi, [rsp + 0x30]
cmp rdx, 8
cmovae rdi, qword [rsp + 0x30]
lea r8, [r12 + r12]
lea rcx, [rdi + rcx*2]
mov rdx, r9
call sub.VCRUNTIME140.dll_memmove
xor eax, eax
mov word [rdi + rsi*2], ax
jmp 0x18031a610
mov qword [rsp + 0x20], r12
mov rdx, r12
lea rcx, [rsp + 0x30]
call fcn.1800998c0
mov r13, qword [rbp - 0x40]
mov r14, qword [rbp - 0x58]
mov rcx, qword [rsp + 0x58]
add rcx, 8
lea rdx, [rsp + 0x30]
call fcn.18007d800
mov eax, 1
and eax, 0xfffffffe
mov dword [rsp + 0x50], eax
mov rdx, qword [rsp + 0x48]
cmp rdx, 8
jb 0x18031a674
lea rdx, [rdx*2 + 2]
mov rcx, qword [rsp + 0x30]
mov rax, rcx
cmp rdx, 0x1000
jb 0x18031a66f
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x18031a66f
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.180468ddc
xor esi, esi
mov qword [rsp + 0x40], rsi
mov qword [rsp + 0x48], 7
mov word [rsp + 0x30], si
mov rax, qword [rbp - 0x60]
cmp rax, 8
jb 0x18031a6cb
lea rdx, [rax*2 + 2]
mov rax, r15
cmp rdx, 0x1000
jb 0x18031a6c3
add rdx, 0x27
mov r15, qword [r15 - 8]
sub rax, r15
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x18031a6c3
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
mov rcx, r15
call fcn.180468ddc
mov qword [rbp - 0x68], rsi
mov qword [rbp - 0x60], 7
mov word [rbp - 0x78], si
mov rdi, qword [rsp + 0x60]
mov r15, qword [rsp + 0x58]
jmp 0x18031a6ef
mov r13, qword [rbp - 0x40]
mov r14, qword [rbp - 0x58]
mov dword [rbp - 0x80], 0x208
lea rax, [rbp - 0x80]
mov qword [rsp + 0x28], rax
lea rax, [rbp + 0x60]
mov qword [rsp + 0x20], rax
lea r9, [rbp - 0x7c]
xor r8d, r8d
lea rdx, str.Layout_Display_Name
mov rcx, qword [rsp + 0x78]
call rdi
test eax, eax
jne 0x18031a825
mov qword [rbp - 0x68], rsi
mov qword [rbp - 0x60], rsi
mov qword [rbp - 0x68], rsi
mov qword [rbp - 0x60], 7
mov word [rbp - 0x78], si
lea rax, [rbp + 0x60]
inc rbx
cmp word [rax + rbx*2], 0
jne 0x18031a741
mov r8, rbx
lea rdx, [rbp + 0x60]
lea rcx, [rbp - 0x78]
call fcn.18007da60
nop
lea rdx, [rbp - 0x78]
lea rcx, [rsp + 0x30]
call fcn.18031a950
nop
lea rcx, [r15 + 0x28]
mov rdx, rax
call fcn.18007d800
nop
mov rdx, qword [rsp + 0x48]
cmp rdx, 8
jb 0x18031a7bd
lea rdx, [rdx*2 + 2]
mov rcx, qword [rsp + 0x30]
mov rax, rcx
cmp rdx, 0x1000
jb 0x18031a7b8
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x18031a7b8
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.180468ddc
mov qword [rsp + 0x40], rsi
mov qword [rsp + 0x48], 7
mov word [rsp + 0x30], si
mov rdx, qword [rbp - 0x60]
cmp rdx, 8
jb 0x18031a813
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp - 0x78]
mov rax, rcx
cmp rdx, 0x1000
jb 0x18031a80e
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x18031a80e
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.180468ddc
mov qword [rbp - 0x68], rsi
mov qword [rbp - 0x60], 7
mov word [rbp - 0x78], si
jmp 0x18031a86a
lea rax, [rbp - 0x80]
mov qword [rsp + 0x28], rax
lea rax, [rbp + 0x60]
mov qword [rsp + 0x20], rax
lea r9, [rbp - 0x7c]
xor r8d, r8d
lea rdx, str.Layout_Text
mov rcx, qword [rsp + 0x78]
call rdi
lea rax, [rbp + 0x60]
inc rbx
cmp word [rax + rbx*2], 0
jne 0x18031a850
lea rcx, [r15 + 0x28]
mov r8, rbx
lea rdx, [rbp + 0x60]
call fcn.18007da60
mov rcx, qword [rsp + 0x78]
call qword [rsp + 0x68]
mov bl, 1
cmp r13, 8
jb 0x18031a8b3
lea rdx, [r13*2 + 2]
mov rax, r14
cmp rdx, 0x1000
jb 0x18031a8ab
add rdx, 0x27
mov r14, qword [r14 - 8]
sub rax, r14
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x18031a8ab
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
mov rcx, r14
call fcn.180468ddc
mov qword [rbp - 0x48], rsi
mov qword [rbp - 0x40], 7
mov word [rbp - 0x58], si
jmp 0x18031a8c9
xor esi, esi
xor bl, bl
mov rdx, qword [rbp - 0x20]
cmp rdx, 8
jb 0x18031a90c
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp - 0x38]
mov rax, rcx
cmp rdx, 0x1000
jb 0x18031a907
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x18031a907
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.180468ddc
mov qword [rbp - 0x28], rsi
mov qword [rbp - 0x20], 7
mov word [rbp - 0x38], si
movzx eax, bl
mov rcx, qword [rbp + 0x480]
xor rcx, rsp
call fcn.1804688c0
mov rbx, qword [rsp + 0x5e8]
add rsp, 0x590
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret