Function at 0x14007ea40
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 0x14007ea8c
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 0x14007eb13
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 0x14007eb99
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 0x14007ec22
lea rax, [rbp - 0x59]
mov qword [rbp + 0xf], rax
mov r15d, r14d
call fcn.140075518
movsx ebx, al
call fcn.14007551c
movsx ecx, al
imul ebx, ecx
call fcn.140075528
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.OLEAUT32.dll_VariantCopy]
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.OLEAUT32.dll_VariantCopy]
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 0x14007ed5a
call fcn.140075520
movsx edx, al
movsx eax, byte [0x14017fc78]
imul edx, eax
add edx, edx
call fcn.14007552c
movsx ecx, al
sub edx, ecx
call fcn.140075524
movsx ecx, al
add edx, ecx
movsx ecx, byte [reloc.WS2_32.dll_closesocket]
add ecx, edx
je 0x14007ed5a
mov r13d, 1
jmp 0x14007edaf
movsx eax, byte [reloc.OLEAUT32.dll_VariantCopy]
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 0x14007edaf
lea ecx, [rbx + rdi]
movsx eax, byte [reloc.OLEAUT32.dll_VariantCopy]
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 0x14007f25c
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 0x14007ee1d
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 0x14007eddb
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 0x14007ee3e
lea rdx, [rbp - 0x79]
lea rcx, [rbp - 0x59]
call fcn.140001560
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 0x14007eec6
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 0x14007ee84
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 0x14007eee8
lea rdx, [rsp + 0x40]
lea rcx, [rbp - 0x29]
call fcn.140001560
nop
lea rdx, [rbp - 0x59]
lea rcx, [rbp - 0x29]
call fcn.1400453a8
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 0x14007ef73
inc rdx
mov rcx, qword [rbp - 0x29]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14007ef6e
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14007f24e
call fcn.1400cb340
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 0x14007efbf
inc rdx
mov rcx, qword [rbp - 0x59]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14007efba
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14007f255
call fcn.1400cb340
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.OLEAUT32.dll_VariantCopy]
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 0x14007f236
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.OLEAUT32.dll_VariantCopy]
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 0x14007f099
call fcn.140075520
movsx edx, al
movsx eax, byte [0x14017fc78]
imul edx, eax
add edx, edx
call fcn.14007552c
movsx ecx, al
sub edx, ecx
call fcn.140075524
movsx ecx, al
add edx, ecx
movsx ecx, byte [reloc.WS2_32.dll_closesocket]
add ecx, edx
je 0x14007f099
mov dword [rbp + 0x67], 1
jmp 0x14007f0f0
movsx eax, byte [reloc.OLEAUT32.dll_VariantCopy]
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 0x14007f0f0
lea ecx, [rbx + rdi]
movsx eax, byte [reloc.OLEAUT32.dll_VariantCopy]
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.OLEAUT32.dll_VariantCopy]
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 0x14007f239
lea edx, [rbx + rbx*2]
movsx eax, byte [reloc.OLEAUT32.dll_VariantCopy]
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.OLEAUT32.dll_VariantCopy]
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 0x14007f1cf
call fcn.140075520
movsx edx, al
movsx eax, byte [0x14017fc78]
imul edx, eax
add edx, edx
call fcn.14007552c
movsx ecx, al
sub edx, ecx
call fcn.140075524
movsx ecx, al
add edx, ecx
movsx ecx, byte [reloc.WS2_32.dll_closesocket]
add ecx, edx
jne 0x14007f22f
movsx eax, byte [reloc.OLEAUT32.dll_VariantCopy]
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 0x14007f228
lea ecx, [rbx + rdi]
movsx eax, byte [reloc.OLEAUT32.dll_VariantCopy]
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 0x14007f22b
mov eax, dword [rbp + 0x77]
test eax, eax
jle 0x14007f239
mov al, 1
jmp 0x14007f3e3
xor r14d, r14d
inc rsi
cmp rsi, 4
jl 0x14007edbb
inc r15d
jmp 0x14007ecaa
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.14007551c
movsx edx, al
call fcn.140075518
movsx ecx, al
imul edx, ecx
call fcn.140075528
movsx ecx, al
lea eax, [rcx + rdx*2]
movsx ecx, byte [reloc.OLEAUT32.dll_VariantCopy]
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.14007551c
movsx edx, al
call fcn.140075518
movsx ecx, al
imul edx, ecx
imul r9d, edx, 7
call fcn.140075528
movsx eax, al
add eax, r9d
movsx ecx, byte [reloc.OLEAUT32.dll_VariantCopy]
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 0x14007f346
call fcn.140075520
movsx edx, al
movsx eax, byte [0x14017fc78]
imul edx, eax
add edx, edx
call fcn.14007552c
movsx ecx, al
sub edx, ecx
call fcn.140075524
movsx ecx, al
add edx, ecx
movsx ecx, byte [reloc.WS2_32.dll_closesocket]
add ecx, edx
jne 0x14007f3e1
call fcn.14007551c
movsx edx, al
call fcn.140075518
movsx ecx, al
imul edx, ecx
lea r9d, [rdx + rdx*8]
call fcn.140075528
movsx eax, al
add eax, r9d
movsx ecx, byte [reloc.OLEAUT32.dll_VariantCopy]
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 0x14007f3d9
call fcn.14007551c
movsx edx, al
call fcn.140075518
movsx ecx, al
imul edx, ecx
lea r9d, [rdx + rdx*2]
call fcn.140075528
movsx eax, al
add eax, r9d
movsx ecx, byte [reloc.OLEAUT32.dll_VariantCopy]
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 0x14007f3dc
mov eax, dword [rbp + 0x67]
cmp r14d, eax
jge 0x14007f3e3
xor al, al
add rsp, 0xf8
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbx
pop rbp
ret