Function at 0x140046650
Capabilities:
Contain obfuscated stackstrings

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x10], rsi
mov qword [rsp + 0x18], rdi
mov qword [rsp + 0x20], r14
push rbp
lea rbp, [rsp - 0x57]
sub rsp, 0x90
mov rsi, r8
mov r14, rdx
mov r8, rcx
mov rbx, rcx
mov rcx, rsi
mov rdx, r9
mov rdi, r9
call fcn.140030b60
test eax, eax
jne 0x1400468b3
lea edx, [rax + 0xf]
xor ecx, ecx
lea r9d, [rax + 0x5d]
mov r8d, 0x9aab3800
call fcn.140018170
call rax
mov byte [rbp - 9], 0
mov r8d, eax
mov byte [rbp - 8], 0x7e
mov byte [rbp - 7], 0x2a
mov byte [rbp - 6], 0x19
mov byte [rbp - 5], 0x2a
mov byte [rbp - 4], 0x5a
mov byte [rbp - 3], 0x2a
mov byte [rbp - 2], 0xed
mov byte [rbp - 1], 0x2a
mov byte [rbp], 0x78
mov byte [rbp + 1], 0x2a
mov byte [rbp + 2], 0xca
mov byte [rbp + 3], 0x2a
mov byte [rbp + 4], 0x37
mov byte [rbp + 5], 0x2a
mov byte [rbp + 6], 0x2d
mov byte [rbp + 7], 0x2a
mov byte [rbp + 8], 0x5a
mov byte [rbp + 9], 0x2a
mov byte [rbp + 0xa], 0xca
mov byte [rbp + 0xb], 0x2a
mov byte [rbp + 0xc], 0x4b
mov byte [rbp + 0xd], 0x2a
mov byte [rbp + 0xe], 0x2d
mov byte [rbp + 0xf], 0x2a
mov byte [rbp + 0x10], 0x91
mov byte [rbp + 0x11], 0x2a
mov byte [rbp + 0x12], 0xca
mov byte [rbp + 0x13], 0x2a
mov byte [rbp + 0x14], 0x32
mov byte [rbp + 0x15], 0x2a
mov byte [rbp + 0x16], 0x5f
mov byte [rbp + 0x17], 0x2a
mov byte [rbp + 0x18], WSAGetLastError
mov byte [rbp + 0x19], 0x2a
mov byte [rbp + 0x1a], 0xca
mov byte [rbp + 0x1b], 0x2a
mov byte [rbp + 0x1c], 0x32
mov byte [rbp + 0x1d], 0x2a
mov byte [rbp + 0x1e], 0x41
mov byte [rbp + 0x1f], 0x2a
mov byte [rbp + 0x20], 0x50
mov byte [rbp + 0x21], 0x2a
mov byte [rbp + 0x22], 0x2d
mov byte [rbp + 0x23], 0x2a
mov byte [rbp + 0x24], 0xca
mov byte [rbp + 0x25], 0x2a
mov byte [rbp + 0x26], 0xe3
mov byte [rbp + 0x27], 0x2a
mov byte [rbp + 0x28], 0x73
mov byte [rbp + 0x29], 0x2a
mov byte [rbp + 0x2a], 0x15
mov byte [rbp + 0x2b], 0x2a
mov byte [rbp + 0x2c], 0xca
mov byte [rbp + 0x2d], 0x2a
mov byte [rbp + 0x2e], 0x92
mov byte [rbp + 0x2f], 0x2a
mov byte [rbp + 0x30], 0x2d
mov byte [rbp + 0x31], 0x2a
mov byte [rbp + 0x32], 0x78
mov byte [rbp + 0x33], 0x2a
mov byte [rbp + 0x34], 0xab
mov byte [rbp + 0x35], 0x2a
mov byte [rbp + 0x36], 0x19
mov byte [rbp + 0x37], 0x2a
mov byte [rbp + 0x38], 0x73
mov byte [rbp + 0x39], 0x2a
mov byte [rbp + 0x3a], 0x78
mov byte [rbp + 0x3b], 0x2a
mov byte [rbp + 0x3c], 0x88
mov byte [rbp + 0x3d], 0x2a
mov byte [rbp + 0x3e], WSAGetLastError
mov byte [rbp + 0x3f], 0x2a
mov byte [rbp + 0x40], WSAGetLastError
mov byte [rbp + 0x41], 0x2a
mov byte [rbp + 0x42], 0x5f
mov byte [rbp + 0x43], 0x2a
mov byte [rbp + 0x44], WSAGetLastError
mov byte [rbp + 0x45], 0x2a
mov byte [rbp + 0x46], 0xca
mov byte [rbp + 0x47], 0x2a
mov byte [rbp + 0x48], 0x60
mov byte [rbp + 0x49], 0x2a
mov byte [rbp + 0x4a], 0xca
mov byte [rbp + 0x4b], 0x2a
mov byte [rbp + 0x4c], 0xe3
mov byte [rbp + 0x4d], 0x2a
mov byte [rbp + 0x4e], 0x50
mov byte [rbp + 0x4f], 0x2a
mov byte [rbp + 0x50], 0x7d
mov byte [rbp + 0x51], 0x2a
mov byte [rbp + 0x52], 0x2a
mov byte [rbp + 0x53], 0x2a
movzx eax, byte [rbp - 8]
movzx eax, byte [rbp - 9]
test al, al
jne 0x140046888
xor edi, edi
nop
movzx ecx, byte [rbp + rdi - 8]
mov eax, 0x2a
sub eax, ecx
imul ecx, eax, 0x32
mov eax, 0x828cbfbf
imul ecx
add edx, ecx
sar edx, 7
mov eax, edx
shr eax, 0x1f
add edx, eax
imul eax, edx, 0xfb
sub ecx, eax
mov eax, 0x828cbfbf
add ecx, 0xfb
imul ecx
add edx, ecx
sar edx, 7
mov eax, edx
shr eax, 0x1f
add edx, eax
imul eax, edx, 0xfb
sub ecx, eax
mov byte [rbp + rdi - 8], cl
inc rdi
cmp rdi, 0x5c
jb 0x140046830
mov rdx, qword [rbx]
lea rcx, [rbp - 8]
call fcn.140051c60
xor eax, eax
lea r11, [rsp + 0x90]
mov rbx, qword [r11 + 0x10]
mov rsi, qword [r11 + 0x18]
mov rdi, qword [r11 + 0x20]
mov r14, qword [r11 + 0x28]
mov rsp, r11
pop rbp
ret
mov rcx, rbx
call fcn.140033260
test eax, eax
je 0x140046894
mov rcx, qword [rbx]
call fcn.1400273d0
test eax, eax
je 0x1400468f2
xor r8d, r8d
mov dl, 0x24
mov rcx, rbx
call fcn.140032760
test eax, eax
je 0x140046894
mov r9, rdi
mov r8, rsi
mov rdx, r14
mov rcx, rbx
call fcn.140044420
jmp 0x140046985
mov rcx, qword [rbx]
call fcn.14002c200
test eax, eax
je 0x140046916
mov r8b, 0x14
mov dl, 0x16
mov rcx, rbx
call fcn.140032760
test eax, eax
je 0x140046894
mov byte [rsp + 0x20], 0x14
jmp 0x140046974
mov rax, qword [rbx + 0x10]
cmp rax, 0x100000
jle 0x1400468cb
mov rcx, rbx
cmp rax, 0x500000
jg 0x140046952
xor r8d, r8d
mov dl, 8
call fcn.140032760
test eax, eax
je 0x140046894
mov r9, rdi
mov r8, rsi
mov rdx, r14
mov rcx, rbx
call fcn.140034270
jmp 0x140046985
movzx r8d, byte [0x14008cc8f]
mov dl, 0x16
call fcn.140032760
test eax, eax
je 0x140046894
movzx eax, byte [0x14008cc8f]
mov byte [rsp + 0x20], al
mov r9, rdi
mov r8, rsi
mov rdx, r14
mov rcx, rbx
call fcn.1400377f0
mov esi, eax
test eax, eax
je 0x1400469ba
mov rdi, qword [rbx + 8]
mov edx, 0xf
xor ecx, ecx
mov r8d, 0xca528872
lea r9d, [rdx + 0x4c]
call fcn.140018170
mov rcx, rdi
call rax
mov rcx, qword [rbx]
mov qword [rbx + 8], 0xffffffffffffffff
call fcn.14002f730
xor eax, eax
lea rdi, [rbx + 0x68]
mov ecx, 0x20
rep stosb byte [rdi], al
lea rdi, [rbx + 0x58]
mov ecx, 8
rep stosb byte [rdi], al
mov rdi, qword [rbx + 8]
cmp rdi, 0xffffffffffffffff
je 0x1400469fd
lea edx, [rax + 0xf]
xor ecx, ecx
lea r9d, [rax + 0x5b]
mov r8d, 0xca528872
call fcn.140018170
mov rcx, rdi
call rax
mov qword [rbx + 8], 0xffffffffffffffff
xor eax, eax
lea rdi, [rbx + 0xa8]
mov ecx, 0x219
rep stosb byte [rdi], al
mov eax, esi
jmp 0x140046896