Function at 0x14014a9a0
Capabilities:
Contain obfuscated stackstrings

Disassembly:
push rbp
push rbx
push rsi
push rdi
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0x1f]
sub rsp, 0xf8
mov dword [rbp - 0x79], 0x6f386968
mov dword [rbp - 0x75], 0x4b49757f
mov dword [rbp - 0x71], 0x7e75777d
mov word [rbp - 0x6d], 0xc14e
xor eax, eax
mov qword [rbp - 0x6b], rax
mov dword [rbp - 0x63], eax
mov word [rbp - 0x5f], ax
xor r14d, r14d
mov qword [rbp + 0x67], r14
mov rax, qword [rbp + 0x67]
mov rcx, qword [rbp + 0x67]
mov rax, qword [rbp + 0x67]
movzx edx, byte [rbp + rax - 0x79]
movabs rax, 0x17169a6843d117a2
add rcx, rax
mov rax, rcx
and rax, rdx
imul r8, rax, 0xfffffffffffffffe
add r8, rcx
add r8, rdx
sub r8b, 0x6e
mov rax, qword [rbp + 0x67]
mov byte [rbp + rax - 0x79], r8b
mov rax, qword [rbp + 0x67]
inc rax
mov qword [rbp + 0x67], rax
mov rax, qword [rbp + 0x67]
cmp rax, 0x1c
jb 0x14014a9ec
lea rax, [rbp - 0x79]
mov qword [rbp - 9], rax
mov dword [rsp + 0x40], 0xbf4cbdbc
mov dword [rsp + 0x44], 0xa849acb2
mov word [rsp + 0x48], 0x934d
mov byte [rsp + 0x4a], 2
xor eax, eax
mov qword [rsp + 0x4b], rax
mov dword [rsp + 0x53], eax
mov byte [rsp + 0x57], al
mov qword [rbp + 0x67], r14
mov rax, qword [rbp + 0x67]
mov rcx, qword [rbp + 0x67]
mov rax, qword [rbp + 0x67]
movzx edx, byte [rsp + rax + 0x40]
movabs rax, 0xea65731391ba642c
add rcx, rax
mov rax, rcx
and rax, rdx
imul r8, rax, 0xfffffffffffffffe
add r8, rcx
add r8, rdx
sub r8b, 0x34
mov rax, qword [rbp + 0x67]
mov byte [rsp + rax + 0x40], r8b
mov rax, qword [rbp + 0x67]
inc rax
mov qword [rbp + 0x67], rax
mov rax, qword [rbp + 0x67]
cmp rax, 0x18
jb 0x14014aa73
lea rax, [rsp + 0x40]
mov qword [rbp - 1], rax
mov dword [rsp + 0x40], 0x77467572
mov dword [rsp + 0x44], 0x500067
mov dword [rsp + 0x48], 0x9770909
mov byte [rsp + 0x4c], 0x9a
xor eax, eax
mov qword [rsp + 0x4d], rax
mov word [rsp + 0x55], ax
mov qword [rbp + 0x67], r14
mov rax, qword [rbp + 0x67]
mov rcx, qword [rbp + 0x67]
mov rax, qword [rbp + 0x67]
movzx edx, byte [rsp + rax + 0x40]
movabs rax, 0xdd40fa4793bbc643
add rcx, rax
mov rax, rcx
and rax, rdx
imul r8, rax, 0xfffffffffffffffe
add r8, rcx
add r8, rdx
add r8b, 0x2b
mov rax, qword [rbp + 0x67]
mov byte [rsp + rax + 0x40], r8b
mov rax, qword [rbp + 0x67]
inc rax
mov qword [rbp + 0x67], rax
mov rax, qword [rbp + 0x67]
cmp rax, 0x17
jb 0x14014aaf9
lea rax, [rsp + 0x40]
mov qword [rbp + 7], rax
mov dword [rbp - 0x59], 0xe7d6e5ea
mov dword [rbp - 0x55], 0x988c86f2
mov dword [rbp - 0x51], 0xa7abc98c
mov dword [rbp - 0x4d], 0xb1b6c1a5
mov byte [rbp - 0x49], 6
xorps xmm0, xmm0
xor eax, eax
movups xmmword [rbp - 0x48], xmm0
mov dword [rbp - 0x38], eax
mov qword [rbp + 0x67], r14
mov rax, qword [rbp + 0x67]
mov rcx, qword [rbp + 0x67]
mov rax, qword [rbp + 0x67]
movzx edx, byte [rbp + rax - 0x59]
movabs rax, 0xe27f8a01d4099057
add rcx, rax
mov rax, rcx
and rax, rdx
imul r8, rax, 0xfffffffffffffffe
add r8, rcx
add r8, rdx
sub r8b, 0x61
mov rax, qword [rbp + 0x67]
mov byte [rbp + rax - 0x59], r8b
mov rax, qword [rbp + 0x67]
inc rax
mov qword [rbp + 0x67], rax
mov rax, qword [rbp + 0x67]
cmp rax, 0x25
jb 0x14014ab82
lea rax, [rbp - 0x59]
mov qword [rbp + 0xf], rax
mov r15d, r14d
call fcn.140141434
movsx ebx, al
call fcn.140141438
movsx ecx, al
imul ebx, ecx
call fcn.140141444
movsx edi, al
imul r9d, ebx, 7
add r9d, edi
mov dword [rbp + 0x6f], r9d
lea r12d, [rdi + rbx*8]
add r12d, ebx
mov r13d, dword [rbp + 0x67]
movsx eax, byte [reloc.WS2_32.dll_htons]
add eax, r12d
movsx ecx, byte [reloc.WS2_32.dll_htonl]
xor edx, edx
div ecx
movsx ecx, byte [reloc.WS2_32.dll_accept]
sub eax, ecx
xorps xmm2, xmm2
cvtsi2sd xmm2, rax
movsx eax, byte [reloc.WS2_32.dll_getsockopt]
movd xmm1, eax
cvtdq2pd xmm1, xmm1
movsx eax, byte [reloc.WS2_32.dll_closesocket]
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm2
movsd qword [rbp + 0x7f], xmm1
movsx eax, byte [reloc.WS2_32.dll_htons]
add eax, r9d
movsx ecx, byte [reloc.WS2_32.dll_htonl]
xor edx, edx
div ecx
movsx ecx, byte [reloc.WS2_32.dll_accept]
cmp eax, ecx
je 0x14014acba
call fcn.14014143c
movsx edx, al
movsx eax, byte [0x14037a680]
imul edx, eax
add edx, edx
call fcn.140141448
movsx ecx, al
sub edx, ecx
call fcn.140141440
movsx ecx, al
add edx, ecx
movsx ecx, byte [reloc.WS2_32.dll_closesocket]
add ecx, edx
je 0x14014acba
mov r13d, 1
jmp 0x14014ad0f
movsx eax, byte [reloc.WS2_32.dll_htons]
add eax, r12d
movsx ecx, byte [reloc.WS2_32.dll_htonl]
xor edx, edx
div ecx
movsx ecx, byte [reloc.WS2_32.dll_accept]
cmp eax, ecx
je 0x14014ad0f
lea ecx, [rbx + rdi]
movsx eax, byte [reloc.WS2_32.dll_htons]
lea ecx, [rcx + rbx*2]
add eax, ecx
movsx ecx, byte [reloc.WS2_32.dll_htonl]
xor edx, edx
div ecx
movsx ecx, byte [reloc.WS2_32.dll_accept]
sub eax, ecx
xorps xmm0, xmm0
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rbp + 0x7f]
cvttsd2si r13d, xmm0
cmp r15d, r13d
jge 0x14014b1bc
mov rsi, r14
mov dword [rbp - 0x79], 0x7a474b9b
mov dword [rbp - 0x75], 0x4e684858
mov dword [rbp - 0x71], 0xd3934c44
xor eax, eax
mov dword [rbp - 0x6d], eax
mov qword [rbp + 0x7f], r14
jmp 0x14014ad7d
mov rcx, qword [rbp + 0x7f]
mov rax, qword [rbp + 0x7f]
movzx edx, byte [rbp + rax - 0x79]
movabs rax, 0x155f506f460952e4
add rcx, rax
mov rax, rcx
and rax, rdx
imul r8, rax, 0xfffffffffffffffe
add r8, rcx
add r8, rdx
sub r8b, 0x3c
mov rax, qword [rbp + 0x7f]
mov byte [rbp + rax - 0x79], r8b
mov rax, qword [rbp + 0x7f]
inc rax
mov qword [rbp + 0x7f], rax
mov rax, qword [rbp + 0x7f]
cmp rax, 0x10
jb 0x14014ad3b
xorps xmm0, xmm0
movups xmmword [rbp - 0x59], xmm0
mov qword [rbp - 0x49], r14
mov qword [rbp - 0x41], r14
lea rax, [rbp - 0x79]
or r8, 0xffffffffffffffff
inc r8
cmp byte [rax + r8], r14b
jne 0x14014ad9e
lea rdx, [rbp - 0x79]
lea rcx, [rbp - 0x59]
call fcn.140039338
nop
mov dword [rsp + 0x40], 0x656a5e1b
mov dword [rsp + 0x44], 0xada9615d
mov dword [rsp + 0x48], 0x6f6c55a0
mov byte [rsp + 0x4c], 0xf2
xor eax, eax
mov qword [rsp + 0x4d], rax
mov word [rsp + 0x55], ax
mov qword [rbp + 0x7f], r14
jmp 0x14014ae26
mov rcx, qword [rbp + 0x7f]
mov rax, qword [rbp + 0x7f]
movzx edx, byte [rsp + rax + 0x40]
movabs rax, 0xcda54ca1ea98063f
add rcx, rax
mov rax, rcx
and rax, rdx
imul r8, rax, 0xfffffffffffffffe
add r8, rcx
add r8, rdx
add r8b, 0x47
mov rax, qword [rbp + 0x7f]
mov byte [rsp + rax + 0x40], r8b
mov rax, qword [rbp + 0x7f]
inc rax
mov qword [rbp + 0x7f], rax
mov rax, qword [rbp + 0x7f]
cmp rax, 0x17
jb 0x14014ade4
xorps xmm0, xmm0
movups xmmword [rbp - 0x29], xmm0
mov qword [rbp - 0x19], r14
mov qword [rbp - 0x11], r14
lea rax, [rsp + 0x40]
or r8, 0xffffffffffffffff
inc r8
cmp byte [rax + r8], r14b
jne 0x14014ae48
lea rdx, [rsp + 0x40]
lea rcx, [rbp - 0x29]
call fcn.140039338
nop
lea rdx, [rbp - 0x59]
lea rcx, [rbp - 0x29]
call fcn.140106924
mov qword [rsp + 0x30], r14
mov dword [rsp + 0x28], 0x80
mov dword [rsp + 0x20], 3
xor r9d, r9d
mov edx, 0x80000000
lea r8d, [r9 + 1]
mov rcx, qword [rbp + rsi*8 - 9]
call rax
mov r14, rax
mov rdx, qword [rbp - 0x11]
cmp rdx, 0xf
jbe 0x14014aed3
inc rdx
mov rcx, qword [rbp - 0x29]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14014aece
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14014b1ae
call fcn.14015a4ac
and qword [rbp - 0x19], 0
mov qword [rbp - 0x11], reloc.WS2_32.dll_ntohs
mov byte [rbp - 0x29], 0
mov rdx, qword [rbp - 0x41]
cmp rdx, 0xf
jbe 0x14014af1f
inc rdx
mov rcx, qword [rbp - 0x59]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14014af1a
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14014b1b5
call fcn.14015a4ac
and qword [rbp - 0x49], 0
mov qword [rbp - 0x41], reloc.WS2_32.dll_ntohs
mov byte [rbp - 0x59], 0
lea edx, [rbx + rbx*4]
movsx eax, byte [reloc.WS2_32.dll_htons]
add eax, edi
lea eax, [rax + rdx*2]
movsx ecx, byte [reloc.WS2_32.dll_htonl]
xor edx, edx
div ecx
movsx ecx, byte [reloc.WS2_32.dll_accept]
mov r9d, dword [rbp + 0x6f]
cmp eax, ecx
je 0x14014b196
movsx eax, byte [reloc.WS2_32.dll_getsockopt]
movd xmm1, eax
cvtdq2pd xmm1, xmm1
movsx eax, byte [reloc.WS2_32.dll_closesocket]
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
xor eax, eax
cmp r14, 0xffffffffffffffff
setne al
xorps xmm0, xmm0
cvtsi2sd xmm0, rax
mulsd xmm1, xmm0
movsd qword [rbp + 0x7f], xmm1
movsx eax, byte [reloc.WS2_32.dll_htons]
add eax, r9d
movsx ecx, byte [reloc.WS2_32.dll_htonl]
xor edx, edx
div ecx
movsx ecx, byte [reloc.WS2_32.dll_accept]
cmp eax, ecx
je 0x14014aff9
call fcn.14014143c
movsx edx, al
movsx eax, byte [0x14037a680]
imul edx, eax
add edx, edx
call fcn.140141448
movsx ecx, al
sub edx, ecx
call fcn.140141440
movsx ecx, al
add edx, ecx
movsx ecx, byte [reloc.WS2_32.dll_closesocket]
add ecx, edx
je 0x14014aff9
mov dword [rbp + 0x67], 1
jmp 0x14014b050
movsx eax, byte [reloc.WS2_32.dll_htons]
add eax, r12d
movsx ecx, byte [reloc.WS2_32.dll_htonl]
xor edx, edx
div ecx
movsx ecx, byte [reloc.WS2_32.dll_accept]
cmp eax, ecx
je 0x14014b050
lea ecx, [rbx + rdi]
movsx eax, byte [reloc.WS2_32.dll_htons]
lea ecx, [rcx + rbx*2]
add eax, ecx
movsx ecx, byte [reloc.WS2_32.dll_htonl]
xor edx, edx
div ecx
movsx ecx, byte [reloc.WS2_32.dll_accept]
sub eax, ecx
xorps xmm0, xmm0
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rbp + 0x7f]
cvttsd2si eax, xmm0
mov dword [rbp + 0x67], eax
lea ecx, [rbx + rdi]
movsx eax, byte [reloc.WS2_32.dll_htons]
lea ecx, [rcx + rbx*4]
add eax, ecx
movsx ecx, byte [reloc.WS2_32.dll_htonl]
xor edx, edx
div ecx
movsx ecx, byte [reloc.WS2_32.dll_accept]
sub eax, ecx
imul eax, dword [rbp + 0x67]
xor r14d, r14d
test eax, eax
je 0x14014b199
lea edx, [rbx + rbx*2]
movsx eax, byte [reloc.WS2_32.dll_htons]
add eax, edi
lea eax, [rax + rdx*2]
movsx ecx, byte [reloc.WS2_32.dll_htonl]
xor edx, edx
div ecx
movsx ecx, byte [reloc.WS2_32.dll_accept]
sub eax, ecx
xorps xmm2, xmm2
cvtsi2sd xmm2, rax
movsx eax, byte [reloc.WS2_32.dll_getsockopt]
movd xmm1, eax
cvtdq2pd xmm1, xmm1
movsx eax, byte [reloc.WS2_32.dll_closesocket]
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm2
movsd qword [rbp + 0x7f], xmm1
movsx eax, byte [reloc.WS2_32.dll_htons]
add eax, r9d
movsx ecx, byte [reloc.WS2_32.dll_htonl]
xor edx, edx
div ecx
movsx ecx, byte [reloc.WS2_32.dll_accept]
cmp eax, ecx
je 0x14014b12f
call fcn.14014143c
movsx edx, al
movsx eax, byte [0x14037a680]
imul edx, eax
add edx, edx
call fcn.140141448
movsx ecx, al
sub edx, ecx
call fcn.140141440
movsx ecx, al
add edx, ecx
movsx ecx, byte [reloc.WS2_32.dll_closesocket]
add ecx, edx
jne 0x14014b18f
movsx eax, byte [reloc.WS2_32.dll_htons]
add eax, r12d
movsx ecx, byte [reloc.WS2_32.dll_htonl]
xor edx, edx
div ecx
movsx ecx, byte [reloc.WS2_32.dll_accept]
cmp eax, ecx
je 0x14014b188
lea ecx, [rbx + rdi]
movsx eax, byte [reloc.WS2_32.dll_htons]
lea ecx, [rcx + rbx*2]
add eax, ecx
movsx ecx, byte [reloc.WS2_32.dll_htonl]
xor edx, edx
div ecx
movsx ecx, byte [reloc.WS2_32.dll_accept]
sub eax, ecx
xorps xmm0, xmm0
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rbp + 0x7f]
cvttsd2si eax, xmm0
mov dword [rbp + 0x77], eax
jmp 0x14014b18b
mov eax, dword [rbp + 0x77]
test eax, eax
jle 0x14014b199
mov al, 1
jmp 0x14014b343
xor r14d, r14d
inc rsi
cmp rsi, 4
jl 0x14014ad1b
inc r15d
jmp 0x14014ac0a
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
nop
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.140141438
movsx edx, al
call fcn.140141434
movsx ecx, al
imul edx, ecx
call fcn.140141444
movsx ecx, al
lea eax, [rcx + rdx*2]
movsx ecx, byte [reloc.WS2_32.dll_htons]
add eax, ecx
movsx ecx, byte [reloc.WS2_32.dll_htonl]
xor edx, edx
div ecx
movsx ecx, byte [reloc.WS2_32.dll_accept]
sub eax, ecx
xorps xmm2, xmm2
cvtsi2sd xmm2, rax
movsx eax, byte [reloc.WS2_32.dll_getsockopt]
movd xmm1, eax
cvtdq2pd xmm1, xmm1
movsx eax, byte [reloc.WS2_32.dll_closesocket]
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm2
movsd qword [rbp + 0x67], xmm1
call fcn.140141438
movsx edx, al
call fcn.140141434
movsx ecx, al
imul edx, ecx
imul r9d, edx, 7
call fcn.140141444
movsx eax, al
add eax, r9d
movsx ecx, byte [reloc.WS2_32.dll_htons]
add eax, ecx
movsx ecx, byte [reloc.WS2_32.dll_htonl]
xor edx, edx
div ecx
movsx ecx, byte [reloc.WS2_32.dll_accept]
cmp eax, ecx
je 0x14014b2a6
call fcn.14014143c
movsx edx, al
movsx eax, byte [0x14037a680]
imul edx, eax
add edx, edx
call fcn.140141448
movsx ecx, al
sub edx, ecx
call fcn.140141440
movsx ecx, al
add edx, ecx
movsx ecx, byte [reloc.WS2_32.dll_closesocket]
add ecx, edx
jne 0x14014b341
call fcn.140141438
movsx edx, al
call fcn.140141434
movsx ecx, al
imul edx, ecx
lea r9d, [rdx + rdx*8]
call fcn.140141444
movsx eax, al
add eax, r9d
movsx ecx, byte [reloc.WS2_32.dll_htons]
add eax, ecx
movsx ecx, byte [reloc.WS2_32.dll_htonl]
xor edx, edx
div ecx
movsx ecx, byte [reloc.WS2_32.dll_accept]
cmp eax, ecx
je 0x14014b339
call fcn.140141438
movsx edx, al
call fcn.140141434
movsx ecx, al
imul edx, ecx
lea r9d, [rdx + rdx*2]
call fcn.140141444
movsx eax, al
add eax, r9d
movsx ecx, byte [reloc.WS2_32.dll_htons]
add eax, ecx
movsx ecx, byte [reloc.WS2_32.dll_htonl]
xor edx, edx
div ecx
movsx ecx, byte [reloc.WS2_32.dll_accept]
sub eax, ecx
xorps xmm0, xmm0
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rbp + 0x67]
cvttsd2si eax, xmm0
jmp 0x14014b33c
mov eax, dword [rbp + 0x67]
cmp r14d, eax
jge 0x14014b343
xor al, al
add rsp, 0xf8
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbx
pop rbp
ret