Function at 0x140020e10
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 [0x14003e040]
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.140005670
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 0x140020ea2
cmp eax, 0xea
je 0x140020e51
jmp 0x1400212b5
mov qword [rsp + 0xb8], rsi
mov rsi, qword [rbp - 1]
cmp dword [rbp + 7], r14d
jb 0x140021294
mov qword [rsp + 0x100], rbx
mov qword [rsp + 0xb0], rdi
nop dword [rax + rax]
mov eax, dword [rsi + 8]
test eax, 0x3fffffff
jne 0x14002126f
cmp eax, 0xc0000000
je 0x14002126f
mov ecx, 0x7d10
call fcn.140027d10
xor edx, edx
mov r8d, 0x7d10
mov rcx, rax
mov rdi, rax
call fcn.1400314b0
test rdi, rdi
je 0x14002126f
mov byte [rbp - 0x39], r13b
mov byte [rbp - 0x38], 7
mov byte [rbp - 0x37], 0x61
mov byte [rbp - 0x36], 0x51
mov byte [rbp - 0x35], 0x61
mov byte [rbp - 0x34], 0x31
mov byte [rbp - 0x33], 0x61
mov byte [rbp - 0x32], 0x23
mov byte [rbp - 0x31], 0x61
mov byte [rbp - 0x30], 0x74
mov byte [rbp - 0x2f], 0x61
mov byte [rbp - 0x2e], 0x60
mov byte [rbp - 0x2d], 0x61
mov byte [rbp - 0x2c], 0x61
mov byte [rbp - 0x2b], 0x61
movzx eax, byte [rbp - 0x38]
movzx eax, byte [rbp - 0x39]
test al, al
jne 0x140020fb4
mov r8, r13
nop word [rax + rax]
movzx ecx, byte [rbp + r8 - 0x38]
mov eax, 0x61
sub eax, ecx
lea ecx, [rax + rax*8]
mov eax, 0x81020409
shl ecx, 2
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 - 0x38], cl
inc r8
cmp r8, 0xe
jb 0x140020f60
mov rbx, qword [rsi]
mov edx, 0xf
mov r8d, 0xcd7328ca
lea r9d, [rdx + 0x42]
call fcn.140005670
lea rdx, [rbp - 0x38]
mov rcx, rbx
call rax
test eax, eax
je 0x14002126f
mov byte [rbp - 0x41], r13b
mov byte [rbp - 0x40], 0x3a
mov byte [rbp - 0x3f], 0x78
mov byte [rbp - 0x3e], 0x3a
mov byte [rbp - 0x3d], 0x78
mov byte [rbp - 0x3c], 0x78
mov byte [rbp - 0x3b], 0x78
movzx eax, byte [rbp - 0x40]
movzx eax, byte [rbp - 0x41]
test al, al
jne 0x140021065
mov r9, r13
nop word [rax + rax]
movzx ecx, byte [rbp + r9 - 0x40]
mov eax, 0x81020409
sub ecx, 0x78
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 - 0x40], r8b
inc r9
cmp r9, 6
jb 0x140021010
mov edx, 0xf
mov r8d, 0x3fd9cc6a
lea r9d, [rdx + 0x48]
call fcn.140005670
lea rdx, [rbp - 0x40]
mov rcx, rdi
call rax
mov edx, 0xf
mov r8d, 0xd1da9915
lea r9d, [rdx + 0x4d]
call fcn.140005670
mov rdx, r12
mov rcx, rdi
call rax
mov byte [rbp - 0x49], r13b
mov byte [rbp - 0x48], 0x7e
mov byte [rbp - 0x47], 3
mov byte [rbp - 0x46], 3
mov byte [rbp - 0x45], 3
movzx eax, byte [rbp - 0x48]
movzx eax, byte [rbp - 0x49]
test al, al
jne 0x140021121
mov r8, r13
nop dword [rax]
nop word [rax + rax]
movzx ecx, byte [rbp + r8 - 0x48]
mov eax, 3
sub eax, ecx
imul ecx, eax, 0x17
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 - 0x48], cl
inc r8
cmp r8, 4
jb 0x1400210d0
mov edx, 0xf
mov r8d, 0xd1da9915
lea r9d, [rdx + 0x4d]
call fcn.140005670
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.140005670
mov rdx, rbx
mov rcx, rdi
call rax
mov byte [rbp - 0x29], r13b
mov byte [rbp - 0x28], 0x16
mov byte [rbp - 0x27], 0x28
mov byte [rbp - 0x26], 0x37
mov byte [rbp - 0x25], 0x28
mov byte [rbp - 0x24], 0x61
mov byte [rbp - 0x23], 0x28
mov byte [rbp - 0x22], 0x30
mov byte [rbp - 0x21], 0x28
mov byte [rbp - 0x20], 0x69
mov byte [rbp - 0x1f], 0x28
mov byte [rbp - 0x1e], 0xa
mov byte [rbp - 0x1d], 0x28
mov byte [rbp - 0x1c], 0x53
mov byte [rbp - 0x1b], 0x28
mov byte [rbp - 0x1a], 6
mov byte [rbp - 0x19], 0x28
mov byte [rbp - 0x18], 0x54
mov byte [rbp - 0x17], 0x28
mov byte [rbp - 0x16], 0x4c
mov byte [rbp - 0x15], 0x28
mov byte [rbp - 0x14], 0x70
mov byte [rbp - 0x13], 0x28
mov byte [rbp - 0x12], 0xa
mov byte [rbp - 0x11], 0x28
mov byte [rbp - 0x10], 0x2d
mov byte [rbp - 0xf], 0x28
mov byte [rbp - 0xe], 0x53
mov byte [rbp - 0xd], 0x28
mov byte [rbp - 0xc], WSAGetLastError
mov byte [rbp - 0xb], 0x28
mov byte [rbp - 0xa], 0x28
mov byte [rbp - 9], 0x28
movzx eax, byte [rbp - 0x28]
movzx eax, byte [rbp - 0x29]
test al, al
jne 0x140021243
mov r8, r13
movzx ecx, byte [rbp + r8 - 0x28]
mov eax, 0x28
sub eax, ecx
lea ecx, [rax + rax*8]
mov eax, 0x81020409
add ecx, ecx
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 - 0x28], cl
inc r8
cmp r8, 0x20
jb 0x1400211f0
mov rdx, rdi
lea rcx, [rbp - 0x28]
call fcn.14001e400
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 0x140020ed0
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.140005670
mov rcx, rsi
call rax
mov rsi, qword [rsp + 0xb8]
mov rcx, qword [rbp + 0x17]
xor rcx, rsp
call fcn.1400238a0
add rsp, 0xc0
pop r15
pop r14
pop r13
pop r12
pop rbp
ret