Function at 0x1400034d0
Capabilities:
Contain obfuscated stackstrings

Disassembly:
mov qword [rsp + 0x10], rbx
mov qword [rsp + 0x18], rsi
mov qword [rsp + 0x20], rdi
push rbp
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0x37]
sub rsp, 0xd0
mov rax, qword [0x140127240]
xor rax, rsp
mov qword [rbp + 0x27], rax
mov rsi, rcx
mov al, 0xf7
mov r8b, 0xe5
mov r9b, 0xc4
mov r10b, 0xe2
mov r11b, 0xe0
mov bl, 0x99
mov dil, 0xeb
movzx r14d, r8b
mov r15b, 0x26
movzx r12d, r10b
mov r13b, 0x9b
xor ecx, ecx
mov qword [rbp - 0x41], rcx
mov qword [rbp - 0x2c], rcx
mov dword [rbp - 0x24], ecx
mov word [rbp - 0x20], cx
movzx edx, al
movzx eax, dl
and al, 0xd4
mov ecx, 4
sub cl, al
add cl, cl
add cl, dl
mov byte [rbp - 0x39], cl
movzx ecx, r8b
movzx eax, cl
and al, 0xd5
add al, al
sub cl, al
add cl, 9
mov byte [rbp - 0x38], cl
movzx edx, r9b
movzx eax, dl
and al, 0xd6
mov ecx, 5
sub cl, al
add cl, cl
add cl, dl
mov byte [rbp - 0x37], cl
movzx ecx, r10b
movzx eax, cl
and al, 0xd7
add al, al
sub cl, al
add cl, 0xb
mov byte [rbp - 0x36], cl
movzx edx, r11b
movzx eax, dl
and al, 0xd8
mov ecx, 6
sub cl, al
add cl, cl
add cl, dl
mov byte [rbp - 0x35], cl
movzx ecx, bl
movzx eax, cl
and al, 0xd9
add al, al
sub cl, al
add cl, 0xd
mov byte [rbp - 0x34], cl
movzx edx, dil
movzx eax, dl
and al, 0xda
mov ecx, 7
sub cl, al
add cl, cl
add cl, dl
mov byte [rbp - 0x33], cl
mov ecx, r14d
movzx eax, r14b
and al, 0xdb
add al, al
sub cl, al
add cl, 0xf
mov byte [rbp - 0x32], cl
movzx edx, r15b
movzx eax, dl
and al, 0xdc
mov ecx, 8
sub cl, al
add cl, cl
add cl, dl
mov byte [rbp - 0x31], cl
mov ecx, r12d
movzx eax, r12b
and al, 0xdd
add al, al
sub cl, al
add cl, 0x11
mov byte [rbp - 0x30], cl
movzx edx, r13b
movzx eax, dl
and al, 0xde
mov ecx, 9
sub cl, al
add cl, cl
add cl, dl
mov byte [rbp - 0x2f], cl
movzx eax, r11b
mov ecx, eax
and al, 0xdf
add al, al
sub cl, al
add cl, 0x13
mov byte [rbp - 0x2e], cl
mov al, 0x2c
movzx edx, al
movzx eax, dl
and al, r11b
mov ecx, 0xa
sub cl, al
add cl, cl
add cl, dl
mov byte [rbp - 0x2d], cl
mov r8, qword [rbp - 0x41]
movzx ecx, r8b
movzx eax, cl
and al, 0xe1
add al, al
sub cl, al
add cl, 0x15
mov byte [rbp - 0x2c], cl
movzx edx, byte [rbp - 0x2b]
movzx eax, dl
and al, r10b
mov ecx, 0xb
sub cl, al
add cl, cl
add cl, dl
mov byte [rbp - 0x2b], cl
movzx ecx, byte [rbp - 0x2a]
movzx eax, cl
and al, 0xe3
add al, al
sub cl, al
add cl, 0x17
mov byte [rbp - 0x2a], cl
movzx edx, byte [rbp - 0x29]
movzx eax, dl
and al, 0xe4
mov ecx, recv
sub cl, al
add cl, cl
add cl, dl
mov byte [rbp - 0x29], cl
movzx ecx, byte [rbp - 0x28]
movzx eax, cl
and al, r14b
add al, al
sub cl, al
add cl, 0x19
mov byte [rbp - 0x28], cl
movzx edx, byte [rbp - 0x27]
movzx eax, dl
and al, 0xe6
mov ecx, recvfrom
sub cl, al
add cl, cl
add cl, dl
mov byte [rbp - 0x27], cl
movzx ecx, byte [rbp - 0x26]
movzx eax, cl
and al, 0xe7
add al, al
sub cl, al
add cl, 0x1b
mov byte [rbp - 0x26], cl
movzx edx, byte [rbp - 0x25]
movzx eax, dl
and al, 0xe8
mov ecx, recvfrom
sub cl, al
add cl, cl
add cl, dl
mov byte [rbp - 0x25], cl
movzx ecx, r8b
movzx eax, cl
and al, 0xe9
add al, al
sub cl, al
add cl, 0x1d
mov byte [rbp - 0x24], cl
movzx edx, byte [rbp - 0x23]
movzx eax, dl
and al, 0xea
mov ecx, recvfrom
sub cl, al
add cl, cl
add cl, dl
mov byte [rbp - 0x23], cl
movzx ecx, byte [rbp - 0x22]
movzx eax, cl
and al, dil
add al, al
sub cl, al
add cl, 0x1f
mov byte [rbp - 0x22], cl
movzx edx, byte [rbp - 0x21]
movzx eax, dl
and al, 0xec
mov ecx, reloc.WS2_32.dll_recv
sub cl, al
add cl, cl
add cl, dl
mov byte [rbp - 0x21], cl
movzx ecx, r8b
movzx eax, cl
and al, 0xed
add al, al
sub cl, al
add cl, 0x21
mov byte [rbp - 0x20], cl
movzx ecx, byte [rbp - 0x1f]
mov eax, ecx
movabs rdx, 0x1de3f9c63ee1ecee
and rax, rdx
imul rax, rax, 0xfffffffffffffffe
add rax, rdx
add rcx, rax
add cl, 0x34
mov byte [rbp - 0x1f], cl
xorps xmm0, xmm0
movups xmmword [rbp - 0x69], xmm0
xor r15d, r15d
mov qword [rbp - 0x59], r15
mov qword [rbp - 0x51], r15
lea rax, [rbp - 0x39]
mov r8, 0xffffffffffffffff
nop
inc r8
cmp byte [rax + r8], r15b
jne 0x1400037a0
lea rdx, [rbp - 0x39]
lea rcx, [rbp - 0x69]
call fcn.14000e820
nop
lea rcx, [rbp - 0x69]
call fcn.140010700
mov rbx, rax
lea rcx, [rbp - 0x69]
call fcn.14000b3e0
test rbx, rbx
jne 0x1400037d8
mov al, 1
jmp 0x1400046e3
mov dword [rbp - 0x69], 0xfc3a3938
mov dword [rbp - 0x65], 0x3ff9fafb
mov word [rbp - 0x61], 0x8900
xorps xmm0, xmm0
xor eax, eax
movups xmmword [rbp - 0x5f], xmm0
mov dword [rbp - 0x4f], eax
mov word [rbp - 0x4b], ax
mov r9, r15
movabs r11, 0xc04de792c6e84a7
mov r10, r11
lea rax, [rbp - 0x68]
sub r10, rax
nop dword [rax]
nop word [rax + rax]
lea r8, [rbp - 0x68]
add r8, r9
lea eax, [r9 - 0x68]
and al, byte [r8 - 1]
mov ecx, 0x38
sub cl, al
add cl, cl
add cl, byte [r8 - 1]
add cl, r9b
mov byte [r8 - 1], cl
movzx ecx, byte [r8]
lea eax, [r9 - 0x67]
and al, cl
add al, al
sub cl, al
add cl, 0x71
add cl, r9b
mov byte [r8], cl
lea eax, [r9 - 0x66]
and al, byte [r8 + 1]
mov ecx, 0x39
sub cl, al
add cl, cl
add cl, byte [r8 + 1]
add cl, r9b
mov byte [r8 + 1], cl
movzx ecx, byte [r8 + 2]
lea eax, [r9 - 0x65]
and al, cl
add al, al
sub cl, al
add cl, 0x73
add cl, r9b
mov byte [r8 + 2], cl
lea eax, [r9 - 0x64]
and al, byte [r8 + 3]
mov ecx, 0x3a
sub cl, al
add cl, cl
add cl, r9b
add byte [r8 + 3], cl
movzx ecx, byte [r8 + 4]
lea eax, [r9 - 0x63]
and al, cl
add al, al
sub cl, al
add cl, 0x75
add cl, r9b
mov byte [r8 + 4], cl
lea eax, [r9 - 0x62]
and al, byte [r8 + 5]
mov ecx, 0x3b
sub cl, al
add cl, cl
add cl, byte [r8 + 5]
add cl, r9b
mov byte [r8 + 5], cl
movzx ecx, byte [r8 + 6]
lea eax, [r9 - 0x61]
and al, cl
add al, al
sub cl, al
add cl, 0x77
add cl, r9b
mov byte [r8 + 6], cl
lea eax, [r9 - 0x60]
and al, byte [r8 + 7]
mov ecx, 0x3c
sub cl, al
add cl, cl
add cl, byte [r8 + 7]
add cl, r9b
mov byte [r8 + 7], cl
movzx ecx, byte [r8 + 8]
lea eax, [r9 - 0x5f]
and al, cl
add al, al
sub cl, al
add cl, 0x79
add cl, r9b
mov byte [r8 + 8], cl
lea eax, [r9 - 0x5e]
and al, byte [r8 + 9]
mov ecx, 0x3d
sub cl, al
add cl, cl
add cl, byte [r8 + 9]
add cl, r9b
mov byte [r8 + 9], cl
movzx ecx, byte [r8 + 0xa]
lea eax, [r9 - 0x5d]
and al, cl
add al, al
sub cl, al
add cl, 0x7b
add cl, r9b
mov byte [r8 + 0xa], cl
lea eax, [r9 - 0x5c]
and al, byte [r8 + 0xb]
mov ecx, 0x3e
sub cl, al
add cl, cl
add cl, byte [r8 + 0xb]
add cl, r9b
mov byte [r8 + 0xb], cl
movzx ecx, byte [r8 + 0xc]
lea eax, [r9 - 0x5b]
and al, cl
add al, al
sub cl, al
add cl, 0x7d
add cl, r9b
mov byte [r8 + 0xc], cl
lea eax, [r9 - 0x5a]
and al, byte [r8 + 0xd]
mov ecx, 0x3f
sub cl, al
add cl, cl
add cl, byte [r8 + 0xd]
add cl, r9b
mov byte [r8 + 0xd], cl
movzx edx, byte [r8 + 0xe]
lea rax, [r10 + r8]
and rax, rdx
imul rcx, rax, 0xfffffffffffffffe
add rcx, rdx
add rcx, r11
add rcx, r9
sub cl, 0x28
mov byte [r8 + 0xe], cl
add r9, 0x10
cmp r9, 0x20
jb 0x140003820
mov al, 6
mov r8b, 0xa
mov r9b, 0xd
mov r10b, 8
mov r11b, 0xb2
xorps xmm0, xmm0
xor edi, edi
movups xmmword [rbp - 0x34], xmm0
mov qword [rbp - 0x24], rdi
movzx edx, al
movzx eax, dl
and al, 0xc9
mov ecx, 0x25
sub cl, al
add cl, cl
add cl, dl
mov byte [rbp - 0x39], cl
movzx ecx, r8b
movzx eax, cl
and al, 0xca
add al, al
sub cl, al
add cl, 0x4b
mov byte [rbp - 0x38], cl
movzx edx, r9b
movzx eax, dl
and al, 0xcb
mov ecx, 0x26
sub cl, al
add cl, cl
add cl, dl
mov byte [rbp - 0x37], cl
movzx ecx, r10b
movzx eax, cl
and al, 0xcc
add al, al
sub cl, al
add cl, 0x4d
mov byte [rbp - 0x36], cl
movzx edx, r11b
movzx eax, dl
and al, 0xcd
mov ecx, 0x27
sub cl, al
add cl, cl
add cl, dl
mov byte [rbp - 0x35], cl
movd eax, xmm0
movzx ecx, al
movzx eax, cl
and al, 0xce
add al, al
sub cl, al
add cl, 0x4f
mov byte [rbp - 0x34], cl
movzx edx, byte [rbp - 0x33]
movzx eax, dl
and al, 0xcf
mov ecx, 0x28
sub cl, al
add cl, cl
add cl, dl
mov byte [rbp - 0x33], cl
movzx ecx, byte [rbp - 0x32]
movzx eax, cl
and al, 0xd0
add al, al
sub cl, al
add cl, 0x51
mov byte [rbp - 0x32], cl
movzx edx, byte [rbp - 0x31]
movzx eax, dl
and al, 0xd1
mov ecx, 0x29
sub cl, al
add cl, cl
add cl, dl
mov byte [rbp - 0x31], cl
movzx ecx, byte [rbp - 0x30]
movzx eax, cl
and al, 0xd2
add al, al
sub cl, al
add cl, 0x53
mov byte [rbp - 0x30], cl
movzx edx, byte [rbp - 0x2f]
movzx eax, dl
and al, 0xd3
mov ecx, 0x2a
sub cl, al
add cl, cl
add cl, dl
mov byte [rbp - 0x2f], cl
movzx ecx, byte [rbp - 0x2e]
movzx eax, cl
and al, 0xd4
add al, al
sub cl, al
add cl, 0x55
mov byte [rbp - 0x2e], cl
movzx edx, byte [rbp - 0x2d]
movzx eax, dl
and al, 0xd5
mov ecx, 0x2b
sub cl, al
add cl, cl
add cl, dl
mov byte [rbp - 0x2d], cl
movzx ecx, byte [rbp - 0x2c]
movzx eax, cl
and al, 0xd6
add al, al
sub cl, al
add cl, 0x57
mov byte [rbp - 0x2c], cl
movzx edx, byte [rbp - 0x2b]
movzx eax, dl
and al, 0xd7
mov ecx, 0x2c
sub cl, al
add cl, cl
add cl, dl
mov byte [rbp - 0x2b], cl
movzx ecx, byte [rbp - 0x2a]
movzx eax, cl
and al, 0xd8
add al, al
sub cl, al
add cl, 0x59
mov byte [rbp - 0x2a], cl
movzx edx, byte [rbp - 0x29]
movzx eax, dl
and al, 0xd9
mov ecx, 0x2d
sub cl, al
add cl, cl
add cl, dl
mov byte [rbp - 0x29], cl
movzx ecx, byte [rbp - 0x28]
movzx eax, cl
and al, 0xda
add al, al
sub cl, al
add cl, 0x5b
mov byte [rbp - 0x28], cl
movzx edx, byte [rbp - 0x27]
movzx eax, dl
and al, 0xdb
mov ecx, 0x2e
sub cl, al
add cl, cl
add cl, dl
mov byte [rbp - 0x27], cl
movzx ecx, byte [rbp - 0x26]
movzx eax, cl
and al, 0xdc
add al, al
sub cl, al
add cl, 0x5d
mov byte [rbp - 0x26], cl
movzx edx, byte [rbp - 0x25]
movzx eax, dl
and al, 0xdd
mov ecx, 0x2f
sub cl, al
add cl, cl
add cl, dl
mov byte [rbp - 0x25], cl
movzx ecx, dil
movzx eax, cl
and al, 0xde
add al, al
sub cl, al
add cl, 0x5f
mov byte [rbp - 0x24], cl
movzx edx, byte [rbp - 0x23]
movzx eax, dl
and al, 0xdf
mov ecx, 0x30
sub cl, al
add cl, cl
add cl, dl
mov byte [rbp - 0x23], cl
movzx ecx, byte [rbp - 0x22]
movzx eax, cl
and al, 0xe0
add al, al
sub cl, al
add cl, 0x61
mov byte [rbp - 0x22], cl
movzx edx, byte [rbp - 0x21]
movzx eax, dl
and al, 0xe1
mov ecx, 0x31
sub cl, al
add cl, cl
add cl, dl
mov byte [rbp - 0x21], cl
movzx ecx, byte [rbp - 0x20]
movzx eax, cl
and al, 0xe2
add al, al
sub cl, al
add cl, 0x63
mov byte [rbp - 0x20], cl
movzx edx, byte [rbp - 0x1f]
movzx eax, dl
and al, 0xe3
mov ecx, 0x32
sub cl, al
add cl, cl
add cl, dl
mov byte [rbp - 0x1f], cl
movzx ecx, byte [rbp - 0x1e]
movzx eax, cl
and al, 0xe4
add al, al
sub cl, al
add cl, 0x65
mov byte [rbp - 0x1e], cl
movzx edx, byte [rbp - 0x1d]
movzx eax, dl
and al, 0xe5
mov ecx, 0x33
sub cl, al
add cl, cl
add cl, dl
mov byte [rbp - 0x1d], cl
movzx ecx, dil
mov eax, ecx
movabs rdx, 0x342523329e6
and rax, rdx
imul rax, rax, 0xfffffffffffffffe
add rax, rdx
add rcx, rax
sub cl, 0x7f
mov byte [rbp - 0x1c], cl
mov dword [rbp - 0x19], r15d
lea r9, [rbp - 0x19]
mov r8, rbx
lea rdx, [rbp - 0x39]
mov rcx, rsi
call fcn.140008630
mov r8d, dword [rbp - 0x19]
lea rcx, [rbp - 0x69]
mov qword [rsp + 0x20], rcx
lea r9, [0x1401066c8]
mov rdx, rax
mov rcx, rsi
call fcn.140008510
mov r14, rax
test rax, rax
je 0x1400046e1
mov dword [rbp - 0x69], 0x6061a5a4
mov dword [rbp - 0x65], 0xafae6263
mov word [rbp - 0x61], 0x25ac
xorps xmm0, xmm0
xor eax, eax
movups xmmword [rbp - 0x5f], xmm0
mov dword [rbp - 0x4f], eax
mov word [rbp - 0x4b], ax
mov rax, r15
movabs r11, 0x1f0924ef15158095
mov r10, r11
lea rcx, [rbp - 0x68]
sub r10, rcx
nop
lea r9, [rbp - 0x68]
add r9, rax
movzx edx, byte [r9 - 1]
lea ecx, [rax - 0x7a]
and cl, dl
add cl, cl
sub dl, cl
sub dl, 0x24
add dl, al
mov byte [r9 - 1], dl
movzx edx, byte [r9]
lea ecx, [rax - 0x79]
and cl, dl
add cl, cl
sub dl, cl
sub dl, 0x23
add dl, al
mov byte [r9], dl
lea edx, [rax - 0x78]
and dl, byte [r9 + 1]
add dl, dl
movzx ecx, al
sub cl, dl
sub cl, 0x22
add byte [r9 + 1], cl
movzx edx, byte [r9 + 2]
lea ecx, [rax - 0x77]
and cl, dl
add cl, cl
sub dl, cl
sub dl, 0x21
add dl, al
mov byte [r9 + 2], dl
movzx edx, byte [r9 + 3]
lea ecx, [rax - 0x76]
and cl, dl
add cl, cl
sub dl, cl
sub dl, 0x20
add dl, al
mov byte [r9 + 3], dl
movzx edx, byte [r9 + 4]
lea ecx, [rax - 0x75]
and cl, dl
add cl, cl
sub dl, cl
sub dl, 0x1f
add dl, al
mov byte [r9 + 4], dl
movzx edx, byte [r9 + 5]
lea ecx, [rax - 0x74]
and cl, dl
add cl, cl
sub dl, cl
sub dl, 0x1e
add dl, al
mov byte [r9 + 5], dl
movzx edx, byte [r9 + 6]
lea ecx, [rax - 0x73]
and cl, dl
add cl, cl
sub dl, cl
sub dl, 0x1d
add dl, al
mov byte [r9 + 6], dl
movzx edx, byte [r9 + 7]
lea ecx, [rax - 0x72]
and cl, dl
add cl, cl
sub dl, cl
sub dl, 0x1c
add dl, al
mov byte [r9 + 7], dl
movzx edx, byte [r9 + 8]
lea ecx, [rax - 0x71]
and cl, dl
add cl, cl
sub dl, cl
sub dl, 0x1b
add dl, al
mov byte [r9 + 8], dl
movzx edx, byte [r9 + 9]
lea ecx, [rax - 0x70]
and cl, dl
add cl, cl
sub dl, cl
sub dl, 0x1a
add dl, al
mov byte [r9 + 9], dl
movzx edx, byte [r9 + 0xa]
lea ecx, [rax - 0x6f]
and cl, dl
add cl, cl
sub dl, cl
sub dl, 0x19
add dl, al
mov byte [r9 + 0xa], dl
movzx edx, byte [r9 + 0xb]
lea ecx, [rax - 0x6e]
and cl, dl
add cl, cl
sub dl, cl
sub dl, 0x18
add dl, al
mov byte [r9 + 0xb], dl
movzx edx, byte [r9 + 0xc]
lea ecx, [rax - 0x6d]
and cl, dl
add cl, cl
sub dl, cl
sub dl, 0x17
add dl, al
mov byte [r9 + 0xc], dl
movzx edx, byte [r9 + 0xd]
lea ecx, [rax - 0x6c]
and cl, dl
add cl, cl
sub dl, cl
sub dl, 0x16
add dl, al
mov byte [r9 + 0xd], dl
movzx r8d, byte [r9 + 0xe]
lea rcx, [r9 + r10]
and rcx, r8
imul rdx, rcx, 0xfffffffffffffffe
add rdx, r8
add rdx, r11
add rdx, rax
add dl, 0x56
mov byte [r9 + 0xe], dl
add rax, 0x10
cmp rax, 0x20
jb 0x140003d00
mov al, 0x66
mov r8b, sendto
mov r9b, 0x19
mov r10b, 0x1c
mov r11b, 0xd2
xorps xmm0, xmm0
movups xmmword [rbp - 0x34], xmm0
mov word [rbp - 0x24], di
movzx edx, al
movzx eax, dl
and al, 0xa3
mov r15d, 0x17
mov ecx, r15d
sub cl, al
add cl, cl
add cl, dl
mov byte [rbp - 0x39], cl
movzx ecx, r8b
movzx eax, cl
and al, 0xa4
add al, al
sub cl, al
add cl, 0x2f
mov byte [rbp - 0x38], cl
movzx edx, r9b
movzx eax, dl
and al, 0xa5
mov r12d, 0x18
mov ecx, r12d
sub cl, al
add cl, cl
add cl, dl
mov byte [rbp - 0x37], cl
movzx ecx, r10b
movzx eax, cl
and al, 0xa6
add al, al
sub cl, al
add cl, 0x31
mov byte [rbp - 0x36], cl
movzx edx, r11b
movzx eax, dl
and al, 0xa7
mov r13d, 0x19
mov ecx, r13d
sub cl, al
add cl, cl
add cl, dl
mov byte [rbp - 0x35], cl
movd eax, xmm0
movzx ecx, al
movzx eax, cl
and al, 0xa8
add al, al
sub cl, al
add cl, 0x33
mov byte [rbp - 0x34], cl
movzx edx, byte [rbp - 0x33]
movzx eax, dl
and al, 0xa9
mov ecx, 0x1a
sub cl, al
add cl, cl
add cl, dl
mov byte [rbp - 0x33], cl
movzx ecx, byte [rbp - 0x32]
movzx eax, cl
and al, 0xaa
add al, al
sub cl, al
add cl, 0x35
mov byte [rbp - 0x32], cl
movzx edx, byte [rbp - 0x31]
movzx eax, dl
and al, 0xab
mov ecx, 0x1b
sub cl, al
add cl, cl
add cl, dl
mov byte [rbp - 0x31], cl
movzx ecx, byte [rbp - 0x30]
movzx eax, cl
and al, 0xac
add al, al
sub cl, al
add cl, 0x37
mov byte [rbp - 0x30], cl
movzx edx, byte [rbp - 0x2f]
movzx eax, dl
and al, 0xad
mov ecx, 0x1c
sub cl, al
add cl, cl
add cl, dl
mov byte [rbp - 0x2f], cl
movzx ecx, byte [rbp - 0x2e]
movzx eax, cl
and al, 0xae
add al, al
sub cl, al
add cl, 0x39
mov byte [rbp - 0x2e], cl
movzx edx, byte [rbp - 0x2d]
movzx eax, dl
and al, 0xaf
mov ecx, 0x1d
sub cl, al
add cl, cl
add cl, dl
mov byte [rbp - 0x2d], cl
movzx ecx, byte [rbp - 0x2c]
movzx eax, cl
and al, 0xb0
add al, al
sub cl, al
add cl, 0x3b
mov byte [rbp - 0x2c], cl
movzx edx, byte [rbp - 0x2b]
movzx eax, dl
and al, 0xb1
mov ecx, 0x1e
sub cl, al
add cl, cl
add cl, dl
mov byte [rbp - 0x2b], cl
movzx ecx, byte [rbp - 0x2a]
movzx eax, cl
and al, 0xb2
add al, al
sub cl, al
add cl, 0x3d
mov byte [rbp - 0x2a], cl
movzx edx, byte [rbp - 0x29]
movzx eax, dl
and al, 0xb3
mov ecx, 0x1f
sub cl, al
add cl, cl
add cl, dl
mov byte [rbp - 0x29], cl
movzx ecx, byte [rbp - 0x28]
movzx eax, cl
and al, 0xb4
add al, al
sub cl, al
add cl, 0x3f
mov byte [rbp - 0x28], cl
movzx edx, byte [rbp - 0x27]
movzx eax, dl
and al, 0xb5
mov ecx, 0x20
sub cl, al
add cl, cl
add cl, dl
mov byte [rbp - 0x27], cl
movzx ecx, byte [rbp - 0x26]
movzx eax, cl
and al, 0xb6
add al, al
sub cl, al
add cl, 0x41
mov byte [rbp - 0x26], cl
movzx edx, byte [rbp - 0x25]
movzx eax, dl
and al, 0xb7
mov ecx, 0x21
sub cl, al
add cl, cl
add cl, dl
mov byte [rbp - 0x25], cl
movzx ecx, dil
movzx eax, cl
and al, 0xb8
add al, al
sub cl, al
add cl, 0x43
mov byte [rbp - 0x24], cl
movzx edx, byte [rbp - 0x23]
movzx eax, dl
and al, 0xb9
mov ecx, 0x22
sub cl, al
add cl, cl
add cl, dl
mov byte [rbp - 0x23], cl
movzx ecx, dil
mov eax, ecx
movabs rdx, 0x7ef5f8a9fa6035ba
and rax, rdx
imul rax, rax, 0xfffffffffffffffe
add rax, rdx
add rcx, rax
sub cl, 0x75
mov byte [rbp - 0x22], cl
mov dword [rbp - 0x19], edi
lea r9, [rbp - 0x19]
mov r8, rbx
lea rdx, [rbp - 0x39]
mov rcx, rsi
call fcn.140008630
mov r8d, dword [rbp - 0x19]
lea rcx, [rbp - 0x69]
mov qword [rsp + 0x20], rcx
lea r9, [0x1401066d8]
mov rdx, rax
mov rcx, rsi
call fcn.140008510
mov rdi, rax
test rax, rax
je 0x1400046e1
mov dword [rbp - 0x69], 0x3a70718e
mov dword [rbp - 0x65], 0x77743c72
mov dword [rbp - 0x61], 0x3231303f
mov dword [rbp - 0x5d], 0x36353433
mov dword [rbp - 0x59], 0x63292837
mov byte [rbp - 0x55], 0xea
xorps xmm0, xmm0
xor eax, eax
movups xmmword [rbp - 0x54], xmm0
mov word [rbp - 0x44], ax
xor r9d, r9d
movabs r11, 0x99d964c624328a8b
mov r10, r11
lea rax, [rbp - 0x68]
sub r10, rax
nop word [rax + rax]
lea r8, [rbp - 0x68]
add r8, r9
lea eax, [r9 + 0x7f]
and al, byte [r8 - 1]
mov ecx, 3
sub cl, al
add cl, cl
add cl, r9b
add byte [r8 - 1], cl
movzx edx, byte [r8]
lea ecx, [r9 + 0x80]
and cl, dl
add cl, cl
movzx eax, r9b
sub al, cl
add dl, 7
add al, dl
mov byte [r8], al
lea eax, [r9 - 0x7f]
and al, byte [r8 + 1]
mov ecx, 4
sub cl, al
add cl, cl
add cl, r9b
add byte [r8 + 1], cl
movzx edx, byte [r8 + 2]
lea ecx, [r9 - 0x7e]
and cl, dl
add cl, cl
movzx eax, r9b
sub al, cl
add dl, 9
add al, dl
mov byte [r8 + 2], al
lea eax, [r9 - 0x7d]
and al, byte [r8 + 3]
mov ecx, 5
sub cl, al
add cl, cl
add cl, r9b
add byte [r8 + 3], cl
movzx edx, byte [r8 + 4]
lea ecx, [r9 - 0x7c]
and cl, dl
add cl, cl
movzx eax, r9b
sub al, cl
add dl, 0xb
add al, dl
mov byte [r8 + 4], al
lea eax, [r9 - 0x7b]
and al, byte [r8 + 5]
mov ecx, 6
sub cl, al
add cl, cl
add cl, r9b
add byte [r8 + 5], cl
movzx edx, byte [r8 + 6]
lea ecx, [r9 - 0x7a]
and cl, dl
add cl, cl
movzx eax, r9b
sub al, cl
add dl, 0xd
add al, dl
mov byte [r8 + 6], al
lea eax, [r9 - 0x79]
and al, byte [r8 + 7]
mov ecx, 7
sub cl, al
add cl, cl
add cl, r9b
add byte [r8 + 7], cl
movzx edx, byte [r8 + 8]
lea ecx, [r9 - 0x78]
and cl, dl
add cl, cl
movzx eax, r9b
sub al, cl
add dl, 0xf
add al, dl
mov byte [r8 + 8], al
lea eax, [r9 - 0x77]
and al, byte [r8 + 9]
mov ecx, 8
sub cl, al
add cl, cl
add cl, r9b
add byte [r8 + 9], cl
movzx edx, byte [r8 + 0xa]
lea ecx, [r9 - 0x76]
and cl, dl
add cl, cl
movzx eax, r9b
sub al, cl
add dl, 0x11
add al, dl
mov byte [r8 + 0xa], al
movzx edx, byte [r8 + 0xb]
lea rax, [r8 + r10]
and rax, rdx
imul rcx, rax, 0xfffffffffffffffe
add rcx, rdx
add rcx, r11
add rcx, r9
sub cl, 0x79
mov byte [r8 + 0xb], cl
add r9, 0xd
cmp r9, 0x27
jb 0x140004150
mov al, 0x66
mov dl, send
movzx r8d, r13b
mov r9b, 0x1c
mov r10b, 0xd2
xorps xmm0, xmm0
xor r11d, r11d
movups xmmword [rbp - 0x34], xmm0
mov dword [rbp - 0x24], r11d
movzx ecx, al
movzx eax, cl
and al, 0xa3
sub r15b, al
add r15b, r15b
add r15b, cl
mov byte [rbp - 0x39], r15b
movzx ecx, dl
movzx eax, cl
and al, 0xa4
add al, al
sub cl, al
add cl, 0x2f
mov byte [rbp - 0x38], cl
movzx eax, r8b
and al, 0xa5
sub r12b, al
add r12b, r12b
add r12b, r8b
mov byte [rbp - 0x37], r12b
movzx ecx, r9b
movzx eax, cl
and al, 0xa6
add al, al
sub cl, al
add cl, 0x31
mov byte [rbp - 0x36], cl
movzx ecx, r10b
movzx eax, cl
and al, 0xa7
sub r13b, al
add r13b, r13b
add r13b, cl
mov byte [rbp - 0x35], r13b
movd eax, xmm0
movzx ecx, al
movzx eax, cl
and al, 0xa8
add al, al
sub cl, al
add cl, 0x33
mov byte [rbp - 0x34], cl
movzx ecx, byte [rbp - 0x33]
movzx eax, cl
and al, 0xa9
mov edx, 0x1a
sub dl, al
add dl, dl
add dl, cl
mov byte [rbp - 0x33], dl
movzx ecx, byte [rbp - 0x32]
movzx eax, cl
and al, 0xaa
add al, al
sub cl, al
add cl, 0x35
mov byte [rbp - 0x32], cl
movzx ecx, byte [rbp - 0x31]
movzx eax, cl
and al, 0xab
mov edx, 0x1b
sub dl, al
add dl, dl
add dl, cl
mov byte [rbp - 0x31], dl
movzx ecx, byte [rbp - 0x30]
movzx eax, cl
and al, 0xac
add al, al
sub cl, al
add cl, 0x37
mov byte [rbp - 0x30], cl
movzx ecx, byte [rbp - 0x2f]
movzx eax, cl
and al, 0xad
mov edx, 0x1c
sub dl, al
add dl, dl
add dl, cl
mov byte [rbp - 0x2f], dl
movzx ecx, byte [rbp - 0x2e]
movzx eax, cl
and al, 0xae
add al, al
sub cl, al
add cl, 0x39
mov byte [rbp - 0x2e], cl
movzx ecx, byte [rbp - 0x2d]
movzx eax, cl
and al, 0xaf
mov edx, 0x1d
sub dl, al
add dl, dl
add dl, cl
mov byte [rbp - 0x2d], dl
movzx ecx, byte [rbp - 0x2c]
movzx eax, cl
and al, 0xb0
add al, al
sub cl, al
add cl, 0x3b
mov byte [rbp - 0x2c], cl
movzx ecx, byte [rbp - 0x2b]
movzx eax, cl
and al, 0xb1
mov edx, 0x1e
sub dl, al
add dl, dl
add dl, cl
mov byte [rbp - 0x2b], dl
movzx ecx, byte [rbp - 0x2a]
movzx eax, cl
and al, 0xb2
add al, al
sub cl, al
add cl, 0x3d
mov byte [rbp - 0x2a], cl
movzx ecx, byte [rbp - 0x29]
movzx eax, cl
and al, 0xb3
mov edx, 0x1f
sub dl, al
add dl, dl
add dl, cl
mov byte [rbp - 0x29], dl
movzx ecx, byte [rbp - 0x28]
movzx eax, cl
and al, 0xb4
add al, al
sub cl, al
add cl, 0x3f
mov byte [rbp - 0x28], cl
movzx ecx, byte [rbp - 0x27]
movzx eax, cl
and al, 0xb5
mov edx, 0x20
sub dl, al
add dl, dl
add dl, cl
mov byte [rbp - 0x27], dl
movzx ecx, byte [rbp - 0x26]
movzx eax, cl
and al, 0xb6
add al, al
sub cl, al
add cl, 0x41
mov byte [rbp - 0x26], cl
movzx ecx, byte [rbp - 0x25]
movzx eax, cl
and al, 0xb7
mov edx, 0x21
sub dl, al
add dl, dl
add dl, cl
mov byte [rbp - 0x25], dl
movzx ecx, r11b
movzx eax, cl
and al, 0xb8
add al, al
sub cl, al
add cl, 0x43
mov byte [rbp - 0x24], cl
movzx ecx, byte [rbp - 0x23]
movzx eax, cl
and al, 0xb9
mov edx, 0x22
sub dl, al
add dl, dl
add dl, cl
mov byte [rbp - 0x23], dl
movzx ecx, byte [rbp - 0x22]
movzx eax, cl
and al, 0xba
add al, al
sub cl, al
add cl, 0x45
mov byte [rbp - 0x22], cl
movzx ecx, byte [rbp - 0x21]
mov eax, ecx
movabs rdx, 0x2f80a979068349bb
and rax, rdx
imul rax, rax, 0xfffffffffffffffe
add rax, rdx
add rcx, rax
sub cl, 0x75
mov byte [rbp - 0x21], cl
xor r12d, r12d
mov dword [rbp - 0x19], r12d
lea r9, [rbp - 0x19]
mov r8, rbx
lea rdx, [rbp - 0x39]
mov rcx, rsi
call fcn.140008630
mov r8d, dword [rbp - 0x19]
lea rcx, [rbp - 0x69]
mov qword [rsp + 0x20], rcx
lea r9, [0x1401066e8]
mov rdx, rax
mov rcx, rsi
call fcn.140008510
mov rbx, rax
test rax, rax
je 0x1400046e1
add rbx, 7
mov dword [rbp - 0x19], r12d
lea r8, [r14 + 3]
lea r9d, [r12 + 4]
lea rdx, [rbp - 0x19]
mov rcx, rsi
call fcn.140004bb0
test al, al
jne 0x14000455d
lea r15, [r12 - 8]
jmp 0x140004567
movsxd r15, dword [rbp - 0x19]
dec r15
add r15, r14
mov dword [rbp - 0x19], r12d
lea r8, [rdi + 2]
mov r9d, 4
lea rdx, [rbp - 0x19]
mov rcx, rsi
call fcn.140004bb0
test al, al
jne 0x14000458a
mov r13, r12
jmp 0x140004595
movsxd r13, dword [rbp - 0x19]
add r13, 6
add r13, rdi
lea r8, [r13 + 8]
mov qword [rbp + 0x17], r8
mov r9d, 8
lea rdx, [rbp + 0x17]
mov rcx, rsi
call fcn.140004bb0
mov dword [rbp - 0x19], r12d
lea r8, [rbx + 1]
mov r9d, 4
lea rdx, [rbp - 0x19]
mov rcx, rsi
call fcn.140004bb0
test al, al
jne 0x1400045d3
mov qword [rbp - 0x41], r12
jmp 0x1400045e2
movsxd rax, dword [rbp - 0x19]
add rax, 5
add rax, rbx
mov qword [rbp - 0x41], rax
mov r9d, 8
mov r8, r15
lea rdx, [rbp - 0x11]
mov rcx, rsi
call fcn.140004bb0
mov rdi, qword [rbp - 0x11]
test al, al
cmove rdi, r12
cmp rdi, r15
je 0x1400046e1
nop word [rax + rax]
lea r8, [rdi + 0x10]
mov r9d, reloc.WS2_32.dll_recv
lea rdx, [rbp - 0x39]
mov rcx, rsi
call fcn.140004bb0
test al, al
je 0x1400046b9
movzx ecx, word [rbp - 0x39]
shr rcx, 1
inc rcx
mov eax, 2
mul rcx
mov rbx, rax
mov rax, 0xffffffffffffffff
cmovo rbx, rax
mov rcx, rbx
call fcn.1400cdc54
mov r14, rax
mov r8, rbx
xor edx, edx
mov rcx, rax
call fcn.1400f85f0
mov qword [rbp + 0x1f], r14
movzx r9d, word [rbp - 0x39]
mov r8, qword [rbp - 0x31]
mov rdx, r14
mov rcx, rsi
call fcn.140004bb0
test al, al
je 0x1400046b1
lea rcx, [rbp - 0x69]
call fcn.140002140
cmp qword [rax + 0x18], 7
jbe 0x140004695
mov rax, qword [rax]
mov rdx, rax
mov rcx, r14
call fcn.1400cf9b8
mov rbx, rax
lea rcx, [rbp - 0x69]
call fcn.14000aa70
test rbx, rbx
jne 0x140004710
mov rcx, r14
call fcn.1400cdaf0
mov r9d, 8
mov r8, rdi
lea rdx, [rbp - 0x11]
mov rcx, rsi
call fcn.140004bb0
mov rdi, qword [rbp - 0x11]
test al, al
cmove rdi, r12
cmp rdi, r15
jne 0x140004610
xor al, al
mov rcx, qword [rbp + 0x27]
xor rcx, rsp
call fcn.1400cdad0
lea r11, [rsp + 0xd0]
mov rbx, qword [r11 + 0x38]
mov rsi, qword [r11 + 0x40]
mov rdi, qword [r11 + 0x48]
mov rsp, r11
pop r15
pop r14
pop r13
pop r12
pop rbp
ret
lea r12, [rdi - 0x10]
xor eax, eax
mov r15d, eax
mov ebx, eax
nop dword [rax + rax]
mov qword [rbp - 1], rax
movsxd r8, ebx
add r8, qword [rbp + 0x17]
mov r9d, 8
lea rdx, [rbp - 1]
mov rcx, rsi
call fcn.140004bb0
cmp qword [rbp - 1], r12
je 0x14000475d
inc r15d
add ebx, 8
cmp ebx, 0x800
mov eax, 0
jl 0x140004720
xor bl, bl
jmp 0x14000485d
lea rax, [r13 + 1]
mov qword [rbp - 9], rax
lea eax, [r15*8]
movsxd rdx, eax
add rdx, qword [rbp + 0x17]
mov r9d, 8
lea r8, [rbp - 9]
mov rcx, rsi
call fcn.140004bb0
mov r9d, 8
mov r8, rdi
lea rdx, [rbp - 9]
mov rcx, rsi
call fcn.140004bb0
mov rcx, qword [rbp - 9]
test al, al
mov ebx, 0
cmove rcx, rbx
mov qword [rbp + 7], rcx
lea r8, [rdi + 8]
lea r9d, [rbx + 8]
lea rdx, [rbp - 9]
mov rcx, rsi
call fcn.140004bb0
mov rcx, qword [rbp - 9]
test al, al
cmove rcx, rbx
mov qword [rbp - 0x11], rcx
mov rdx, qword [rbp + 7]
add rdx, 8
lea r9d, [rbx + 8]
lea r8, [rbp - 0x11]
mov rcx, rsi
call fcn.140004bb0
lea r9d, [rbx + 8]
lea r8, [rbp + 7]
mov rdx, qword [rbp - 0x11]
mov rcx, rsi
call fcn.140004bb0
mov dword [rbp - 0x19], ebx
lea r9d, [rbx + 4]
mov r8, r13
lea rdx, [rbp - 0x19]
mov rcx, rsi
call fcn.140004bb0
dec dword [rbp - 0x19]
lea r9d, [rbx + 4]
lea r8, [rbp - 0x19]
mov rdx, r13
mov rcx, rsi
call fcn.140004bb0
mov word [rbp + 0xf], bx
lea r9d, [rbx + 2]
lea r8, [rdi - 0x20]
lea rdx, [rbp + 0xf]
mov rcx, rsi
call fcn.140004bb0
mov eax, 0xda18
cmp word [rbp + 0xf], ax
jne 0x14000485b
lea r9, [rdi - 0x20]
mov r8, qword [rbp - 0x41]
mov rcx, rsi
call fcn.14000b9c0
mov bl, 1
mov rcx, r14
call fcn.1400cdaf0
movzx eax, bl
jmp 0x1400046e3