Function at 0x140001714
Capabilities:
Contain obfuscated stackstrings

Disassembly:
mov rax, rsp
mov qword [rax + 8], rbx
mov qword [rax + 0x10], rsi
mov qword [rax + 0x18], rdi
push rbp
push r12
push r13
push r14
push r15
lea rbp, [rax - 0x57]
sub rsp, 0xc0
cmp byte [rcx], 0
mov r12, r9
mov r15, r8
mov r13, rdx
mov r14, rcx
mov esi, 1
mov rbx, rcx
je 0x140001758
add rbx, rsi
cmp byte [rbx], 0
jne 0x140001750
xor eax, eax
lea rdi, [rbp - 0x41]
sub ebx, r14d
lea edx, [rax + 0x68]
mov ecx, edx
rep stosb byte [rdi], al
movsxd rdi, ebx
mov dword [rbp - 0x41], edx
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
mov r8, rdi
mov edx, 8
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapAlloc]
mov qword [r15], rax
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
mov r8, rdi
mov edx, 8
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapAlloc]
mov rcx, qword [rbp + 0x7f]
xor edi, edi
mov qword [rbp + 7], rax
mov r8d, 0x81020409
mov dword [rbp - 0x21], ebx
mov dword [rbp + 0xf], ebx
mov qword [rcx], rax
mov rcx, qword [r15]
mov qword [rbp - 0x29], rcx
mov byte [rbp - 0x61], 0x7d
mov byte [rbp - 0x60], 0x36
mov byte [rbp - 0x5f], 0x76
mov byte [rbp - 0x5e], 0x55
mov byte [rbp - 0x5d], ntohs
mov byte [rbp - 0x5c], 0x36
mov byte [rbp - 0x5b], 0x55
mov byte [rbp - 0x5a], 0x76
mov byte [rbp - 0x59], 0x3d
mov byte [rbp - 0x58], ntohs
mov byte [rbp - 0x57], 0
mov byte [rbp - 0x56], 0x6a
mov byte [rbp - 0x55], reloc.WS2_32.dll_shutdown
mov byte [rbp - 0x54], 0x7e
mov byte [rbp - 0x53], ntohs
mov byte [rbp - 0x52], 0x4b
mov byte [rbp - 0x51], 0x52
mov byte [rbp - 0x50], 0x42
mov al, byte [rbp - 0x61]
movzx ecx, byte [rbp + rdi - 0x61]
mov eax, r8d
sub ecx, 0x42
lea ecx, [rcx + rcx*2]
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, r8d
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 + rdi - 0x61], cl
add rdi, rsi
cmp rdi, 0x12
jb 0x14000180a
mov byte [rbp - 0x71], 0x47
xor edi, edi
mov byte [rbp - 0x70], 0x6e
mov byte [rbp - 0x6f], 0x57
mov byte [rbp - 0x6e], 0x6e
mov byte [rbp - 0x6d], 0x57
mov byte [rbp - 0x6c], 0x67
mov byte [rbp - 0x6b], 0x22
mov byte [rbp - 0x6a], 0x66
mov byte [rbp - 0x69], 6
mov byte [rbp - 0x68], reloc.WS2_32.dll_sendto
mov byte [rbp - 0x67], reloc.WS2_32.dll_sendto
mov byte [rbp - 0x66], 0x55
mov al, byte [rbp - 0x71]
movzx ecx, byte [rbp + rdi - 0x71]
mov eax, r8d
sub ecx, 0x55
imul ecx, ecx, 0x37
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, r8d
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 + rdi - 0x71], cl
add rdi, rsi
cmp rdi, 0xc
jb 0x140001889
lea rcx, [rbp - 0x71]
call qword [sym.imp.KERNEL32.dll_GetModuleHandleA]
mov rcx, rax
lea rdx, [rbp - 0x61]
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
lea r9, [rbp - 0x41]
xor r8d, r8d
mov edx, ebx
mov rcx, r14
call rax
xor ebx, ebx
test eax, eax
jne 0x14000193b
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
mov r8, qword [r15]
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapFree]
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
mov rdi, qword [rbp + 0x7f]
xor edx, edx
mov rcx, rax
mov r8, qword [rdi]
call qword [sym.imp.KERNEL32.dll_HeapFree]
or dword [r13], 0xffffffff
mov esi, ebx
mov qword [r15], rbx
mov qword [rdi], rbx
mov word [r12], bx
jmp 0x14000194b
mov ecx, dword [rbp - 0x2d]
mov dword [r13], ecx
movzx ecx, word [rbp - 0x1d]
mov word [r12], cx
lea r11, [rsp + 0xc0]
mov eax, esi
mov rbx, qword [r11 + 0x30]
mov rsi, qword [r11 + 0x38]
mov rdi, qword [r11 + 0x40]
mov rsp, r11
pop r15
pop r14
pop r13
pop r12
pop rbp
ret