Function at 0x14022b7d0
Capabilities:
Resolve function by parsing pe exports

Disassembly:
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbp
push rbx
mov eax, 0x1e28
call fcn.1402797e0
sub rsp, rax
movdqa xmmword [rsp + 0x1e10], xmm7
movdqa xmmword [rsp + 0x1e00], xmm6
mov rax, qword [0x1403acd78]
xor rax, rsp
mov qword [rsp + 0x1df8], rax
cmp dword [r9], 0
jg 0x14022ce8b
cmp edx, 1
ja 0x14022b8bb
cmp r8d, 3
jae 0x14022b8bb
mov rbp, rcx
cmp r8d, 2
je 0x14022b8c7
test r8d, r8d
jne 0x14022b939
movq xmm0, qword [rbp + 0x28]
pand xmm0, xmmword [0x14038c300]
movq qword [rbp + 0x28], xmm0
movzx eax, word [rbp + 0x34]
mov dword [rbp + 0x34], eax
mov eax, dword [rbp + 0x30]
cmp eax, 0x10
jl 0x14022b888
shr rax, 4
cmp eax, 1
jne 0x14022babb
xor ecx, ecx
test al, 1
je 0x14022b888
cmp byte [rbp + rcx + 0x40], 0
jne 0x14022b888
mov rax, qword [rbp]
movzx r10d, word [rax + rcx*4]
mov dword [rax + rcx*4], r10d
cmp dword [rbp + 0x1c], 0
jle 0x14022b939
xor eax, eax
nop word cs:[rax + rax]
mov rcx, qword [rbp + 0x10]
movzx r10d, word [rcx + rax*4]
mov dword [rcx + rax*4], r10d
inc rax
movsxd rcx, dword [rbp + 0x1c]
cmp rax, rcx
jl 0x14022b8a0
jmp 0x14022b939
mov dword [r9], 1
jmp 0x14022ce8b
movq xmm0, qword [rbp + 0x28]
pand xmm0, xmmword [0x14038c310]
movq qword [rbp + 0x28], xmm0
movzx eax, byte [rbp + 0x34]
mov dword [rbp + 0x34], eax
mov eax, dword [rbp + 0x30]
cmp eax, 0x10
jl 0x14022b90f
shr rax, 4
cmp eax, 1
jne 0x14022bb06
xor ecx, ecx
test al, 1
je 0x14022b90f
cmp byte [rbp + rcx + 0x40], 0
jne 0x14022b90f
mov rax, qword [rbp]
movzx r10d, byte [rax + rcx*4]
mov dword [rax + rcx*4], r10d
cmp dword [rbp + 0x1c], 0
jle 0x14022b939
xor eax, eax
nop word [rax + rax]
mov rcx, qword [rbp + 0x10]
movzx r10d, byte [rcx + rax*4]
mov dword [rcx + rax*4], r10d
inc rax
movsxd rcx, dword [rbp + 0x1c]
cmp rax, rcx
jl 0x14022b920
test edx, edx
mov eax, 0x10000
mov edi, 0x1000
cmove edi, eax
mov esi, dword [rbp + 0x30]
cmp esi, 0x10ffff
mov dword [rsp + 0xa4], edx
jle 0x14022b97a
cmp byte [rbp + 0x1103f], 0
je 0x14022b984
mov rax, qword [rbp]
mov ecx, dword [rax + 0x43ffc]
add ecx, 0xf
shl rcx, 2
add rcx, qword [rbp + 0x10]
jmp 0x14022b98f
lea rcx, [rbp + 0x34]
mov rax, qword [rbp]
jmp 0x14022b98f
mov rax, qword [rbp]
lea rcx, [rax + 0x43ffc]
mov edx, edi
shr edx, 4
mov qword [rsp + 0x38], rdx
mov edx, dword [rcx]
lea rbx, [rbp + 0x34]
mov dword [rbp + 0x34], edx
sar esi, 4
mov rcx, qword [rbp + 0x10]
mov qword [rsp + 0x98], r9
test esi, esi
jle 0x14022bb51
mov r10d, esi
shl esi, 4
add esi, 0x1ff
mov r14d, esi
mov rsi, r10
lea r11, [rsi - 1]
mov r10d, r11d
cmp byte [rbp + r10 + 0x40], 0
je 0x14022ba77
mov r9d, dword [rax + r10*4]
cmp dword [rcx + r9*4], edx
jne 0x14022ba83
cmp dword [rcx + r9*4 + 4], edx
jne 0x14022ba83
cmp dword [rcx + r9*4 + 8], edx
jne 0x14022ba83
cmp dword [rcx + r9*4 + 0xc], edx
jne 0x14022ba83
cmp dword [rcx + r9*4 + 0x10], edx
jne 0x14022ba83
cmp dword [rcx + r9*4 + 0x14], edx
jne 0x14022ba83
cmp dword [rcx + r9*4 + 0x18], edx
jne 0x14022ba83
cmp dword [rcx + r9*4 + 0x1c], edx
jne 0x14022ba83
cmp dword [rcx + r9*4 + 0x20], edx
jne 0x14022ba83
cmp dword [rcx + r9*4 + 0x24], edx
jne 0x14022ba83
cmp dword [rcx + r9*4 + 0x28], edx
jne 0x14022ba83
cmp dword [rcx + r9*4 + 0x2c], edx
jne 0x14022ba83
cmp dword [rcx + r9*4 + 0x30], edx
jne 0x14022ba83
cmp dword [rcx + r9*4 + 0x34], edx
jne 0x14022ba83
cmp dword [rcx + r9*4 + 0x38], edx
jne 0x14022ba83
cmp dword [rcx + r9*4 + 0x3c], edx
jne 0x14022ba83
add r14d, 0xfffffff0
lea r10, [r11 + 1]
mov rsi, r11
cmp r10, 1
ja 0x14022b9cb
jmp 0x14022bb51
dec esi
cmp dword [rax + r10*4], edx
je 0x14022b9b1
and r14d, 0xfffffe00
cmp r14d, 0x110000
jne 0x14022baaa
mov edx, dword [rbp + 0x28]
mov dword [rbp + 0x34], edx
mov r14d, 0x110000
mov r15d, 0x110000
jmp 0x14022bba5
cmp r14d, edi
jl 0x14022bb54
mov r15d, r14d
jmp 0x14022bba5
mov r11d, eax
and r11d, 0xfffffffe
xor ecx, ecx
jmp 0x14022bae7
mov r10, qword [rbp]
movzx esi, word [r10 + rcx*4]
mov dword [r10 + rcx*4], esi
cmp byte [rbp + rcx + 0x41], 0
je 0x14022baf5
add rcx, 2
cmp r11, rcx
je 0x14022b870
cmp byte [rbp + rcx + 0x40], 0
je 0x14022bac6
cmp byte [rbp + rcx + 0x41], 0
jne 0x14022bada
mov r10, qword [rbp]
movzx esi, word [r10 + rcx*4 + 4]
mov dword [r10 + rcx*4 + 4], esi
jmp 0x14022bada
mov r11d, eax
and r11d, 0xfffffffe
xor ecx, ecx
jmp 0x14022bb32
mov r10, qword [rbp]
movzx esi, byte [r10 + rcx*4]
mov dword [r10 + rcx*4], esi
cmp byte [rbp + rcx + 0x41], 0
je 0x14022bb40
add rcx, 2
cmp r11, rcx
je 0x14022b8f7
cmp byte [rbp + rcx + 0x40], 0
je 0x14022bb11
cmp byte [rbp + rcx + 0x41], 0
jne 0x14022bb25
mov r10, qword [rbp]
movzx esi, byte [r10 + rcx*4 + 4]
mov dword [r10 + rcx*4 + 4], esi
jmp 0x14022bb25
xor r14d, r14d
mov edx, r14d
sar edx, 4
mov r9, qword [rsp + 0x38]
cmp edx, r9d
jge 0x14022bba2
movsxd rax, edx
mov ecx, r9d
nop word [rax + rax]
mov byte [rbp + rax + 0x40], 0
mov edx, dword [rbp + 0x34]
mov r9, qword [rbp]
mov dword [r9 + rax*4], edx
mov byte [rbp + rax + 0x41], 0
mov edx, dword [rbp + 0x34]
mov r9, qword [rbp]
mov dword [r9 + rax*4 + 4], edx
add rax, 2
cmp rcx, rax
jne 0x14022bb70
mov rax, qword [rbp]
mov rcx, qword [rbp + 0x10]
mov r15d, edi
mov dword [rbp + 0x30], r15d
movsxd rdx, r15d
xor r11d, r11d
jmp 0x14022bbe6
mov r10d, r11d
and r10d, 0xf
add r10d, dword [rax + r9*4]
lea r9, [rcx + r10*4]
mov r9d, dword [r9]
mov dword [rsp + r11*4 + 0x2f0], r9d
inc r11
cmp r11, 0x80
je 0x14022bc03
mov r9, rbx
cmp r11, rdx
jge 0x14022bbcf
mov r9d, r11d
shr r9d, 4
cmp byte [rbp + r9 + 0x40], 0
jne 0x14022bbc0
lea r9, [rax + r9*4]
jmp 0x14022bbcf
mov dword [rsp + 0xdc], r14d
mov qword [rsp + 0xb8], rbx
mov dword [rsp + 0xa0], edi
mov dword [rsp + 0x104], r8d
movabs rax, 0xffffffff00000000
mov qword [rsp + 0x168], rax
mov esi, 0x94
mov dword [rsp + 0x70], r15d
cmp r15d, 0x10
mov qword [rsp + 0x30], rbp
mov r14, qword [rsp + 0x38]
jl 0x14022c093
sar dword [rsp + 0x70], 4
mov r15d, 0x40
mov r12d, 4
mov eax, 0x94
mov qword [rsp + 0x60], rax
mov r13d, 1
xor edi, edi
jmp 0x14022bcd3
mov dword [rsp + 0x16c], r8d
mov dword [rsp + r8*4 + 0x170], edi
movsxd rcx, dword [rsp + 0x168]
mov dword [rsp + rcx*4 + 0x1f0], eax
movsxd rcx, dword [rsp + 0x168]
lea eax, [rcx + 1]
mov dword [rsp + 0x168], eax
mov dword [rsp + rcx*4 + 0x270], r12d
mov rax, qword [rsp + 0x60]
add eax, r15d
mov qword [rsp + 0x60], rax
add edi, r12d
cmp edi, dword [rsp + 0x70]
jge 0x14022c086
cmp edi, r14d
mov eax, reloc.WS2_32.dll_recv
cmove r15d, eax
cmove r12d, r13d
mov rax, qword [rbp]
movsxd rcx, edi
mov edx, dword [rax + rcx*4]
cmp byte [rbp + rcx + 0x40], 1
jne 0x14022bd40
mov r8, qword [rbp + 0x10]
lea r9, [r8 + rdx*4]
mov eax, dword [r8 + rdx*4]
lea r10d, [r15 - 1]
lea rdx, [r8 + rdx*4]
add rdx, 4
lea r8, [r9 + r10*4]
add r8, 4
nop word cs:[rax + rax]
cmp dword [rdx], eax
jne 0x14022bd2d
add rdx, 4
cmp rdx, r8
jb 0x14022bd20
cmp rdx, r8
jne 0x14022bcb9
mov byte [rbp + rcx + 0x40], 0
mov rdx, qword [rbp]
mov dword [rdx + rcx*4], eax
jmp 0x14022bda2
cmp r12d, 2
jl 0x14022bda0
lea r8d, [r12 + rdi]
movsxd r8, r8d
lea r9, [rcx + 1]
nop word cs:[rax + rax]
cmp r9, r8
jge 0x14022bda0
lea r10, [r9 + 1]
cmp dword [rax + r9*4], edx
mov r9, r10
je 0x14022bd60
mov rcx, rbp
mov edx, edi
call fcn.14022eac0
mov ecx, r15d
test eax, eax
mov eax, 0
cmovs ecx, eax
mov rax, qword [rsp + 0x60]
js 0x14022c11f
add eax, ecx
jmp 0x14022bcc1
mov eax, edx
mov edx, dword [rsp + 0x16c]
test edx, edx
js 0x14022bdb6
cmp dword [rsp + rdx*4 + 0x1f0], eax
je 0x14022bdf4
movsxd r8, dword [rsp + 0x168]
test r8, r8
jle 0x14022bc80
mov r9d, r8d
xor edx, edx
nop dword [rax]
cmp dword [rsp + rdx*4 + 0x1f0], eax
je 0x14022bded
inc rdx
cmp r9, rdx
jne 0x14022bdd0
cmp r9d, 0x20
jne 0x14022bc80
jmp 0x14022be0c
mov dword [rsp + 0x16c], edx
add dword [rsp + rdx*4 + 0x270], r12d
mov edx, dword [rsp + rdx*4 + 0x170]
cmp edx, 0xfffffffe
jne 0x14022bfea
test edi, edi
je 0x14022beae
mov r9, qword [rbp]
mov r8d, 4
xor edx, edx
jmp 0x14022be37
add edx, r8d
cmp edx, edi
je 0x14022beae
cmp edx, r14d
cmove r8d, r13d
movsxd r10, edx
cmp byte [rbp + r10 + 0x40], 0
jne 0x14022be30
cmp dword [r9 + r10*4], eax
jne 0x14022be30
add r8d, r12d
mov r14d, dword [rsp + 0x168]
test r14d, r14d
jle 0x14022bfb7
mov r9d, r14d
and r9d, 3
cmp r14d, 4
jae 0x14022c003
mov r10d, 0xffffffff
mov ebp, 0x11000
xor r11d, r11d
test r9, r9
mov r14, qword [rsp + 0x38]
je 0x14022bfc2
mov esi, dword [rsp + r11*4 + 0x270]
cmp esi, ebp
cmovl r10d, r11d
cmovl ebp, esi
inc r11
dec r9
jne 0x14022be90
jmp 0x14022bfc2
mov r10d, dword [rsp + 0x168]
test r10d, r10d
jle 0x14022befd
mov ecx, r10d
and ecx, 3
cmp r10d, 4
jae 0x14022bf1f
mov edx, 0xffffffff
mov r9d, 0x11000
xor r8d, r8d
test rcx, rcx
je 0x14022bf02
nop word [rax + rax]
mov r10d, dword [rsp + r8*4 + 0x270]
cmp r10d, r9d
cmovl edx, r8d
cmovl r9d, r10d
inc r8
dec rcx
jne 0x14022bee0
jmp 0x14022bf02
mov edx, 0xffffffff
mov dword [rsp + 0x16c], edx
movsxd rcx, edx
mov dword [rsp + rcx*4 + 0x170], edi
mov dword [rsp + rcx*4 + 0x1f0], eax
jmp 0x14022bcb1
and r10d, 0xfffffffc
mov edx, 0xffffffff
mov r9d, 0x11000
xor r8d, r8d
jmp 0x14022bf4c
mov r9d, ebx
add r8, 4
cmp r8, r10
je 0x14022bed5
mov esi, dword [rsp + r8*4 + 0x270]
cmp esi, r9d
cmovl edx, r8d
mov r11d, dword [rsp + r8*4 + 0x274]
cmovl r9d, esi
cmp r11d, r9d
jl 0x14022bf80
mov r11d, r9d
jmp 0x14022bf84
lea edx, [r8 + 1]
mov ebx, dword [rsp + r8*4 + 0x278]
cmp ebx, r11d
jl 0x14022bfa0
mov ebx, r11d
jmp 0x14022bfa4
lea edx, [r8 + 2]
mov r9d, dword [rsp + r8*4 + 0x27c]
cmp r9d, ebx
jge 0x14022bf40
lea edx, [r8 + 3]
jmp 0x14022bf43
mov r10d, 0xffffffff
mov r14, qword [rsp + 0x38]
mov dword [rsp + 0x16c], r10d
movsxd r9, r10d
mov dword [rsp + r9*4 + 0x170], edx
mov dword [rsp + r9*4 + 0x1f0], eax
mov dword [rsp + r9*4 + 0x270], r8d
mov rbp, qword [rsp + 0x30]
test edx, edx
js 0x14022bcb9
mov byte [rbp + rcx + 0x40], 2
mov rax, qword [rbp]
mov dword [rax + rcx*4], edx
jmp 0x14022bcc6
and r14d, 0xfffffffc
mov r10d, 0xffffffff
mov ebp, 0x11000
xor r11d, r11d
jmp 0x14022c02f
mov ebp, ebx
add r11, 4
cmp r11, r14
je 0x14022be82
mov ebx, dword [rsp + r11*4 + 0x270]
cmp ebx, ebp
cmovl r10d, r11d
mov esi, dword [rsp + r11*4 + 0x274]
cmovl ebp, ebx
cmp esi, ebp
jl 0x14022c050
mov esi, ebp
jmp 0x14022c054
lea r10d, [r11 + 1]
mov ebx, dword [rsp + r11*4 + 0x278]
cmp ebx, esi
jl 0x14022c070
mov ebx, esi
jmp 0x14022c074
lea r10d, [r11 + 2]
mov ebp, dword [rsp + r11*4 + 0x27c]
cmp ebp, ebx
jge 0x14022c020
lea r10d, [r11 + 3]
jmp 0x14022c022
mov rsi, qword [rsp + 0x60]
test esi, esi
js 0x14022c11f
lea eax, [rsi*4]
movsxd rcx, eax
call fcn.1401f7a60
test rax, rax
je 0x14022c11f
mov r13, rax
mov qword [rsp + 0x60], rsi
lea rdx, [rsp + 0x2f0]
mov r8d, 0x200
mov rcx, rax
call fcn.14027bf80
mov r8d, dword [rsp + 0x168]
test r8, r8
je 0x14022c132
test r8d, r8d
jle 0x14022c13e
mov eax, r8d
and eax, 3
cmp r8d, 4
mov rsi, qword [rsp + 0x60]
jae 0x14022c223
mov edx, 0xffffffff
xor ecx, ecx
xor r9d, r9d
test rax, rax
je 0x14022c11a
nop dword [rax + rax]
mov r8d, dword [rsp + rcx*4 + 0x270]
cmp r8d, r9d
cmovg edx, ecx
cmovg r9d, r8d
inc rcx
dec rax
jne 0x14022c100
movsxd rax, edx
jmp 0x14022c14a
mov rax, qword [rsp + 0x98]
mov dword [rax], 7
jmp 0x14022ce55
mov ecx, 0xffffffff
mov rsi, qword [rsp + 0x60]
jmp 0x14022c151
mov rax, 0xffffffffffffffff
mov rsi, qword [rsp + 0x60]
mov ecx, dword [rsp + rax*4 + 0x170]
mov qword [rsp + 0x130], 0
mov rax, qword [rbp]
mov dword [rax], 0
mov rax, qword [rbp]
mov dword [rax + 0x10], 0x40
cmp esi, 0x103e
mov dword [rsp + 0xe0], ecx
jg 0x14022c1b0
movabs rax, 0xfff0000000c
mov qword [rsp + 0x130], rax
mov ebx, 0x1777
mov dword [rsp + 0x90], send
mov dword [rsp + 0x78], 0xfff
jmp 0x14022c2df
lea eax, [rsi - 0x40]
cmp eax, 0x7ffe
ja 0x14022c1e9
movabs rax, 0x7fff0000000f
mov qword [rsp + 0x130], rax
mov ebx, 0xc365
mov dword [rsp + 0x90], reloc.WS2_32.dll_ntohs
mov dword [rsp + 0x78], 0x7fff
jmp 0x14022c2df
cmp eax, 0x1fffe
ja 0x14022c2b5
movabs rax, 0x1ffff00000011
mov qword [rsp + 0x130], rax
mov ebx, 0x30d43
mov dword [rsp + 0x90], send
mov dword [rsp + 0x78], 0x1ffff
jmp 0x14022c2df
and r8d, 0xfffffffc
mov edx, 0xffffffff
xor ecx, ecx
xor r9d, r9d
jmp 0x14022c250
mov r9d, r11d
add rcx, 4
cmp rcx, r8
je 0x14022c0f6
mov r11d, dword [rsp + rcx*4 + 0x270]
cmp r11d, r9d
cmovg edx, ecx
mov r10d, dword [rsp + rcx*4 + 0x274]
cmovg r9d, r11d
cmp r10d, r9d
jg 0x14022c280
mov r10d, r9d
jmp 0x14022c283
lea edx, [rcx + 1]
mov r11d, dword [rsp + rcx*4 + 0x278]
cmp r11d, r10d
jg 0x14022c2a0
mov r11d, r10d
jmp 0x14022c2a3
lea edx, [rcx + 2]
mov r9d, dword [rsp + rcx*4 + 0x27c]
cmp r9d, r11d
jle 0x14022c240
lea edx, [rcx + 3]
jmp 0x14022c243
movabs rax, 0x1fffff00000015
mov qword [rsp + 0x130], rax
mov ebx, 0x16e367
mov dword [rsp + 0x90], reloc.WS2_32.dll_setsockopt
mov dword [rsp + 0x78], 0x1fffff
xor eax, eax
mov qword [rsp + 0x68], rax
xor ecx, ecx
call fcn.1401f7b30
lea edi, [rbx*4]
mov rcx, rdi
call fcn.1401f7a60
mov qword [rsp + 0x120], rax
test rax, rax
je 0x14022ce01
mov r12, rax
mov dword [rsp + 0x128], ebx
mov dword [rsp + 0x12c], ebx
mov rcx, rax
xor edx, edx
mov r8, rdi
call fcn.14027bdc0
mov dword [rsp + 0x138], 0x40
lea rcx, [rsp + 0x120]
mov rdx, r13
xor r8d, r8d
mov r9d, 0x80
call fcn.14022eca0
mov rax, qword [rsp + 0x30]
mov r15d, dword [rax + 0x30]
cmp r15d, 0x90
jl 0x14022ce19
sar r15d, 4
mov r10, qword [rsp + 0x60]
lea eax, [r10 - 0x10]
xor ecx, ecx
cmp r10d, 0x100f
setge cl
lea ecx, [rcx + rcx*2]
mov edx, 0xfff
mov r8d, 0x7fff
cmovl r8d, edx
mov edx, 0x1777
mov r9d, 0xc365
cmovl r9d, edx
or ecx, 0xc
xor edx, edx
cmp eax, 0x1ffff
setae dl
mov eax, 0x1ffff
mov r11d, 0x1fffff
cmovb r11d, eax
mov eax, 0x30d43
mov esi, 0x16e367
cmovb esi, eax
cmp r10d, 0x800f
lea eax, [rdx*4 + 0x11]
cmovl eax, ecx
mov dword [rsp + 0x88], eax
cmovl r11d, r8d
mov dword [rsp + 0x8c], r11d
cmovl esi, r9d
mov qword [rsp + 0xd0], rsi
lea eax, [rsi*4]
mov qword [rsp + 0xb0], rax
mov eax, r14d
mov qword [rsp + 0x70], rax
lea rax, [r13 + 4]
mov qword [rsp + 0xf8], rax
lea rax, [r13 + 0x30]
mov qword [rsp + 0x108], rax
lea rax, [r13 + 0xc]
mov qword [rsp + 0xf0], rax
lea rax, [r13 + 0x70]
mov qword [rsp + 0x110], rax
lea rax, [r13 + 0x10]
mov qword [rsp + 0x118], rax
mov edx, 4
mov ebp, 8
mov eax, 0x80
mov qword [rsp + 0x58], rax
mov eax, 0x40
mov qword [rsp + 0x48], rax
mov eax, ebx
mov qword [rsp + 0x80], rax
mov dword [rsp + 0xa8], ebx
mov dword [rsp + 0x54], 0
mov dword [rsp + 0x50], r15d
jmp 0x14022c4ae
mov rax, qword [rsp + 0x30]
mov rax, qword [rax]
mov ecx, dword [rax + r8*4]
mov ecx, dword [rax + rcx*4]
mov dword [rax + r8*4], ecx
add ebp, edx
cmp ebp, r15d
jge 0x14022ce23
cmp ebp, r14d
jne 0x14022c597
mov eax, dword [rsp + 0x88]
mov dword [rsp + 0x130], eax
mov eax, dword [rsp + 0x8c]
mov dword [rsp + 0x134], eax
mov rsi, qword [rsp + 0xd0]
cmp esi, dword [rsp + 0xa8]
jle 0x14022c51d
mov rcx, r12
call fcn.1401f7b30
mov rcx, qword [rsp + 0xb0]
call fcn.1401f7a60
mov qword [rsp + 0x120], rax
test rax, rax
je 0x14022ce01
mov r12, rax
mov dword [rsp + 0x128], esi
mov eax, esi
mov dword [rsp + 0xa8], esi
mov dword [rsp + 0x12c], esi
mov rcx, r12
xor edx, edx
mov r8, qword [rsp + 0xb0]
call fcn.14027bdc0
mov dword [rsp + 0x138], reloc.WS2_32.dll_recv
lea rcx, [rsp + 0x120]
mov rdx, r13
xor r8d, r8d
mov rdi, qword [rsp + 0x58]
mov r9d, edi
call fcn.14022eca0
mov edx, 1
mov eax, reloc.WS2_32.dll_recv
mov qword [rsp + 0x48], rax
mov eax, dword [rsp + 0x8c]
mov dword [rsp + 0x78], eax
mov rax, rsi
mov ebx, eax
mov ecx, dword [rsp + 0x88]
mov dword [rsp + 0x90], ecx
mov qword [rsp + 0x80], rax
mov eax, edi
mov dword [rsp + 0x54], edi
movsxd r8, ebp
mov rax, qword [rsp + 0x30]
movzx eax, byte [rax + r8 + 0x40]
cmp eax, 1
je 0x14022c710
test eax, eax
jne 0x14022c490
mov dword [rsp + 0x44], edx
mov rax, qword [rsp + 0x30]
mov r10, qword [rax]
mov r9d, dword [r10 + r8*4]
mov rax, qword [rsp + 0x48]
lea edx, [rax - 1]
lea r11d, [rax - 2]
mov ecx, edx
and ecx, 7
mov eax, r9d
cmp r11d, 7
jb 0x14022c64d
and edx, 0xfffffff8
mov eax, r9d
nop word cs:[rax + rax]
lea r11d, [rax + rax*8]
lea eax, [rax + r11*4]
add eax, r9d
lea r11d, [rax + rax*8]
lea eax, [rax + r11*4]
add eax, r9d
lea r11d, [rax + rax*8]
lea eax, [rax + r11*4]
add eax, r9d
lea r11d, [rax + rax*8]
lea eax, [rax + r11*4]
add eax, r9d
lea r11d, [rax + rax*8]
lea eax, [rax + r11*4]
add eax, r9d
lea r11d, [rax + rax*8]
lea eax, [rax + r11*4]
add eax, r9d
lea r11d, [rax + rax*8]
lea eax, [rax + r11*4]
add eax, r9d
lea r11d, [rax + rax*8]
lea eax, [rax + r11*4]
add eax, r9d
add edx, 0xfffffff8
jne 0x14022c5f0
test ecx, ecx
je 0x14022c66d
nop word cs:[rax + rax]
lea edx, [rax + rax*8]
lea eax, [rax + rdx*4]
add eax, r9d
dec ecx
jne 0x14022c660
mov r11d, eax
mov ecx, dword [rsp + 0x90]
shl r11d, cl
lea ecx, [rbx - 1]
xor edx, edx
div ecx
lea r14d, [rdx + 1]
mov eax, dword [r12 + rdx*4 + 4]
mov ecx, dword [rsp + 0x48]
test eax, eax
je 0x14022c8a3
mov r15d, dword [rsp + 0x78]
not r15d
mov edx, r14d
jmp 0x14022c6d1
cmp rax, rdi
je 0x14022c9a6
add edx, r14d
mov eax, edx
xor edx, edx
div ebx
movsxd rax, edx
mov eax, dword [r12 + rax*4]
test eax, eax
je 0x14022c89c
mov esi, eax
and esi, r15d
cmp esi, r11d
jne 0x14022c6b9
and eax, dword [rsp + 0x78]
dec eax
cdqe
lea rax, [rax*4]
add rax, r13
lea rdi, [rax + rcx*4]
nop word cs:[rax + rax]
cmp dword [rax], r9d
jne 0x14022c6b0
add rax, 4
cmp rax, rdi
jb 0x14022c700
jmp 0x14022c6b0
mov dword [rsp + 0x44], edx
mov rax, qword [rsp + 0x30]
mov rcx, qword [rax]
mov rsi, qword [rax + 0x10]
mov qword [rsp + 0xe8], rcx
mov edi, dword [rcx + r8*4]
mov eax, dword [rsi + rdi*4]
mov rcx, qword [rsp + 0x48]
cmp ecx, 3
mov r10d, 2
cmovge r10d, ecx
lea r9, [r10 - 1]
add r10, 0xfffffffffffffffe
mov ecx, r9d
and ecx, 3
mov edx, 1
cmp r10, 3
jb 0x14022c7af
and r9, 0xfffffffffffffffc
lea r11, [rsi + rdi*4]
add r11, 0x10
xor edx, edx
nop dword [rax + rax]
lea r10d, [rax + rax*8]
lea eax, [rax + r10*4]
add eax, dword [r11 + rdx*4 - 0xc]
lea r10d, [rax + rax*8]
lea eax, [rax + r10*4]
add eax, dword [r11 + rdx*4 - 8]
lea r10d, [rax + rax*8]
lea eax, [rax + r10*4]
add eax, dword [r11 + rdx*4 - 4]
lea r10d, [rax + rax*8]
lea eax, [rax + r10*4]
add eax, dword [r11 + rdx*4]
add rdx, 4
cmp r9, rdx
jne 0x14022c770
inc rdx
test rcx, rcx
je 0x14022c7e4
lea r9, [rdi*4]
lea rdx, [r9 + rdx*4]
add rdx, rsi
xor r9d, r9d
nop word cs:[rax + rax]
lea r10d, [rax + rax*8]
lea eax, [rax + r10*4]
add eax, dword [rdx + r9*4]
inc r9
cmp rcx, r9
jne 0x14022c7d0
mov qword [rsp + 0xc8], rsi
mov qword [rsp + 0xc0], rdi
lea r11, [rsi + rdi*4]
mov r9d, eax
mov ecx, dword [rsp + 0x90]
shl r9d, cl
mov rcx, qword [rsp + 0x80]
dec ecx
xor edx, edx
div ecx
lea ecx, [rdx + 1]
mov eax, dword [r12 + rdx*4 + 4]
test eax, eax
je 0x14022c8c1
mov r14d, dword [rsp + 0x78]
not r14d
mov rdx, qword [rsp + 0x48]
lea r15d, [rdx + 1]
mov edx, ecx
jmp 0x14022c858
add edx, ecx
mov eax, edx
xor edx, edx
div dword [rsp + 0x80]
movsxd rax, edx
mov eax, dword [r12 + rax*4]
test eax, eax
je 0x14022c8c3
mov r10d, eax
and r10d, r14d
cmp r10d, r9d
jne 0x14022c840
and eax, dword [rsp + 0x78]
dec eax
cdqe
lea rax, [rax*4]
add rax, r13
mov r10d, r15d
xor esi, esi
nop dword [rax + rax]
mov edi, dword [rax + rsi]
cmp edi, dword [r11 + rsi]
jne 0x14022c840
add rsi, 4
dec r10d
cmp r10d, 1
jg 0x14022c880
test edx, edx
jns 0x14022c8c9
jmp 0x14022c8ed
mov r15d, dword [rsp + 0x50]
jmp 0x14022c8a6
mov edx, r14d
not edx
test edx, edx
js 0x14022c9b3
mov eax, edx
mov eax, dword [r12 + rax*4]
and eax, dword [rsp + 0x78]
dec eax
jmp 0x14022c9b8
mov edx, ecx
not edx
test edx, edx
js 0x14022c8ed
mov eax, edx
mov eax, dword [r12 + rax*4]
and eax, dword [rsp + 0x78]
dec eax
js 0x14022c8ed
mov rcx, qword [rsp + 0xe8]
mov dword [rcx + r8*4], eax
mov r14, qword [rsp + 0x38]
jmp 0x14022cdeb
mov ecx, dword [rsp + 0x48]
movsxd rax, dword [rsp + 0x58]
lea r9, [rax*4]
lea rdx, [rcx*4]
mov r14, r9
sub r14, rdx
add r14, qword [rsp + 0xf8]
mov rdx, rcx
mov r15, rdx
dec rdx
mov r10d, r15d
xor esi, esi
nop word cs:[rax + rax]
mov edi, dword [r14 + rsi]
cmp edi, dword [r11 + rsi]
jne 0x14022c949
add rsi, 4
dec r10d
cmp r10d, 1
jg 0x14022c930
jmp 0x14022c955
add r14, 4
cmp r15, 3
jge 0x14022c917
xor edx, edx
mov rsi, qword [rsp + 0x58]
mov r10d, esi
sub r10d, edx
mov rdi, qword [rsp + 0xe8]
mov dword [rdi + r8*4], r10d
mov r15d, esi
cmp edx, dword [rsp + 0x48]
mov r14, qword [rsp + 0x38]
jge 0x14022cdcb
movsxd rdx, edx
mov r8, rcx
sub r8, rdx
cmp r8, 0x10
jae 0x14022cb3e
mov rdi, qword [rsp + 0xc8]
mov r15, qword [rsp + 0xc0]
jmp 0x14022cb6e
mov r15d, dword [rsp + 0x50]
test edx, edx
jns 0x14022c8b0
mov eax, 0xffffffff
test eax, eax
setns r14b
js 0x14022ca7e
cmp ebp, dword [rsp + 0xe0]
jne 0x14022ca7e
cmp ebp, dword [rsp + 0x38]
jl 0x14022ca7e
cmp eax, dword [rsp + 0x54]
jge 0x14022ca7e
mov rdx, qword [rsp + 0x58]
sub edx, dword [rsp + 0x48]
mov r11d, 1
sub r11, rcx
xor ecx, ecx
mov r14, qword [rsp + 0x38]
nop
cmp dword [r10 + rcx*4], eax
je 0x14022ca13
add rcx, 4
cmp rcx, qword [rsp + 0x70]
jb 0x14022ca00
jmp 0x14022ca88
cmp edx, eax
jle 0x14022ca9f
mov ecx, eax
jmp 0x14022ca29
add ecx, edi
mov eax, ecx
mov ecx, eax
cmp eax, edx
jge 0x14022ca9f
lea eax, [rcx + 1]
movsxd rsi, ecx
cmp dword [r13 + rsi*4 + 4], r9d
jne 0x14022ca23
lea rsi, [rsi*4]
add rsi, r13
mov edi, 2
nop word cs:[rax + rax]
cmp dword [rsi + rdi*4], r9d
jne 0x14022ca1f
lea r14, [r11 + rdi]
inc r14
inc rdi
cmp r14, 2
mov r14, qword [rsp + 0x38]
jne 0x14022ca50
cmp ecx, 0xffffffff
setge r14b
jl 0x14022ca7e
cmp eax, dword [rsp + 0x54]
jl 0x14022c9f7
test r14b, r14b
mov r14, qword [rsp + 0x38]
je 0x14022ca9f
mov dword [r10 + r8*4], eax
mov eax, ebx
mov qword [rsp + 0x80], rax
mov edx, dword [rsp + 0x44]
jmp 0x14022c4a3
mov rsi, qword [rsp + 0x58]
lea edx, [rsi + 1]
mov ecx, edx
sub ecx, dword [rsp + 0x48]
movsxd rax, esi
movsxd rcx, ecx
cmp esi, ecx
mov r11d, ecx
cmovl r11d, esi
mov rsi, rax
nop
cmp rsi, rcx
jle 0x14022cad7
lea rdi, [rsi - 1]
dec edx
cmp dword [r13 + rsi*4 - 4], r9d
mov rsi, rdi
je 0x14022cac0
jmp 0x14022cada
mov edx, r11d
mov r11, qword [rsp + 0x58]
mov ecx, r11d
sub ecx, edx
mov dword [r10 + r8*4], edx
mov r15d, r11d
cmp ecx, dword [rsp + 0x48]
jge 0x14022ccf4
add edx, dword [rsp + 0x48]
not r11d
add r11d, edx
cmp r11d, 7
jb 0x14022ccd6
lea rdx, [r11 + 1]
movd xmm0, r9d
pshufd xmm0, xmm0, 0
add r11, 0xfffffffffffffff9
mov r10, r11
shr r10, 3
inc r10
mov r8d, r10d
and r8d, 3
cmp r11, 0x18
jae 0x14022cc27
xor r11d, r11d
jmp 0x14022cc81
lea r10, [rax*4]
add r10, r13
mov rdi, qword [rsp + 0xc8]
lea rsi, [rdi + rdx*4]
mov r15, qword [rsp + 0xc0]
lea rsi, [rsi + r15*4]
sub r10, rsi
cmp r10, 0x20
jae 0x14022cc07
mov r9d, ecx
sub r9d, edx
mov r8, rdx
not r8
add r8, rcx
and r9, 3
je 0x14022cba4
nop word cs:[rax + rax]
mov r10d, dword [r11 + rdx*4]
inc rdx
mov dword [r13 + rax*4], r10d
inc rax
dec r9
jne 0x14022cb90
cmp r8, 3
jb 0x14022cdc8
sub rcx, rdx
shl r15, 2
lea rdx, [r15 + rdx*4]
add rdx, rdi
add rdx, 0xc
mov r8, qword [rsp + 0xf0]
lea r9, [r8 + rax*4]
xor r8d, r8d
nop
mov r10d, dword [rdx + r8*4 - 0xc]
mov dword [r9 + r8*4 - 0xc], r10d
mov r10d, dword [rdx + r8*4 - 8]
mov dword [r9 + r8*4 - 8], r10d
mov r10d, dword [rdx + r8*4 - 4]
mov dword [r9 + r8*4 - 4], r10d
mov r10d, dword [rdx + r8*4]
mov dword [r9 + r8*4], r10d
add r8, 4
cmp rcx, r8
jne 0x14022cbd0
add rax, r8
jmp 0x14022cdc8
lea r10, [r8 - 8]
mov rsi, r10
shr rsi, 3
inc rsi
cmp r10, 8
jae 0x14022cd19
xor r15d, r15d
jmp 0x14022cd8c
and r10, 0xfffffffffffffffc
mov r11, qword [rsp + 0x110]
lea r14, [r11 + rax*4]
xor r11d, r11d
nop word [rax + rax]
movdqu xmmword [r14 + r11*4 - 0x70], xmm0
movdqu xmmword [r14 + r11*4 - 0x60], xmm0
movdqu xmmword [r14 + r11*4 - 0x50], xmm0
movdqu xmmword [r14 + r11*4 - 0x40], xmm0
movdqu xmmword [r14 + r11*4 - 0x30], xmm0
movdqu xmmword [r14 + r11*4 - 0x20], xmm0
movdqu xmmword [r14 + r11*4 - 0x10], xmm0
movdqu xmmword [r14 + r11*4], xmm0
add r11, 0x20
add r10, 0xfffffffffffffffc
jne 0x14022cc40
mov r10, rdx
and r10, 0xfffffffffffffff8
test r8, r8
je 0x14022ccc6
add r11, rax
mov rsi, qword [rsp + 0x118]
lea r11, [rsi + r11*4]
shl r8, 5
xor esi, esi
nop word cs:[rax + rax]
movdqu xmmword [r11 + rsi - 0x10], xmm0
movdqu xmmword [r11 + rsi], xmm0
add rsi, 0x20
cmp r8, rsi
jne 0x14022ccb0
add rax, r10
cmp rdx, r10
mov r14, qword [rsp + 0x38]
je 0x14022ccec
add ecx, r10d
mov rdx, qword [rsp + 0x48]
sub edx, ecx
nop dword [rax]
mov dword [r13 + rax*4], r9d
inc rax
dec edx
jne 0x14022cce0
mov r15d, eax
mov r11, qword [rsp + 0x58]
lea rcx, [rsp + 0x120]
mov rdx, r13
mov r8d, r11d
mov r9d, r15d
call fcn.14022eca0
mov eax, ebx
mov qword [rsp + 0x80], rax
jmp 0x14022cde3
lea r10, [rdx*4]
lea r15, [r15*4]
mov r14, rsi
and r14, 0xfffffffffffffffe
add r9, qword [rsp + 0x108]
add r10, r15
add r10, rdi
add r10, 0x30
xor r15d, r15d
nop word cs:[rax + rax]
movups xmm0, xmmword [r10 + r15*4 - 0x30]
movups xmm1, xmmword [r10 + r15*4 - 0x20]
movups xmmword [r9 + r15*4 - 0x30], xmm0
movups xmmword [r9 + r15*4 - 0x20], xmm1
movdqu xmm0, xmmword [r10 + r15*4 - 0x10]
movdqu xmm1, xmmword [r10 + r15*4]
movdqu xmmword [r9 + r15*4 - 0x10], xmm0
movdqu xmmword [r9 + r15*4], xmm1
add r15, 0x10
add r14, 0xfffffffffffffffe
jne 0x14022cd50
mov r9, r8
and r9, 0xfffffffffffffff8
test sil, 1
mov r14, qword [rsp + 0x38]
je 0x14022cdc0
lea r10, [r15 + rax]
add r15, rdx
movdqu xmm0, xmmword [r11 + r15*4]
movdqu xmm1, xmmword [r11 + r15*4 + 0x10]
movdqu xmmword [r13 + r10*4], xmm0
movdqu xmmword [r13 + r10*4 + 0x10], xmm1
add rax, r9
cmp r8, r9
jne 0x14022cdf9
mov r15d, eax
lea rcx, [rsp + 0x120]
mov rdx, r13
mov r8, qword [rsp + 0x58]
mov r9d, r15d
call fcn.14022eca0
mov eax, r15d
mov qword [rsp + 0x58], rax
mov r15d, dword [rsp + 0x50]
mov edx, dword [rsp + 0x44]
jmp 0x14022c4a3
add rdx, r9
jmp 0x14022c991
mov rbx, qword [rsp + 0x98]
mov dword [rbx], 7
xor r12d, r12d
mov rbp, qword [rsp + 0x30]
jmp 0x14022ce48
mov eax, 0x80
mov qword [rsp + 0x58], rax
mov rax, qword [rsp + 0x98]
cmp dword [rax], 0
jle 0x14022cf04
xor eax, eax
mov qword [rsp + 0x68], rax
mov rbp, qword [rsp + 0x30]
mov rbx, qword [rsp + 0x98]
mov rcx, r12
call fcn.1401f7b30
cmp dword [rbx], 0
jle 0x14022cec4
mov dword [rbp + 0xc], 0xffffffff
movabs rax, 0xffffffff00000000
mov qword [rbp + 0x1c], rax
mov eax, dword [rbp + 0x24]
mov dword [rbp + 0x28], eax
mov dword [rbp + 0x34], eax
mov dword [rbp + 0x30], 0
mov rcx, qword [rbp + 0x38]
call fcn.1401f7b30
mov qword [rbp + 0x38], 0
xor edi, edi
mov rcx, qword [rsp + 0x1df8]
xor rcx, rsp
call fcn.140279500
mov rax, rdi
movaps xmm6, xmmword [rsp + 0x1e00]
movaps xmm7, xmmword [rsp + 0x1e10]
add rsp, 0x1e28
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret
mov esi, dword [rsp + 0x104]
cmp esi, 1
mov rdx, qword [rsp + 0x68]
jne 0x14022cf4b
mov eax, edx
and eax, 1
je 0x14022cf4b
mov rax, qword [rbp + 0x38]
movsxd rcx, edx
lea r14d, [rdx + rdx]
add r14d, 2
inc edx
mov word [rax + rcx*2], 0xffee
mov eax, edx
mov qword [rsp + 0x68], rax
mov r15d, dword [rsp + 0xa0]
jmp 0x14022cf68
mov rbp, qword [rsp + 0x30]
mov rcx, qword [rbp + 0x10]
call fcn.1401f7b30
mov qword [rbp + 0x10], r13
mov rax, qword [rsp + 0x60]
mov dword [rbp + 0x18], eax
mov rax, qword [rsp + 0x58]
mov dword [rbp + 0x1c], eax
cmp eax, 0x40010
jl 0x14022cfd1
mov rbx, qword [rsp + 0x98]
mov dword [rbx], 8
xor eax, eax
mov qword [rsp + 0x68], rax
jmp 0x14022ce48
lea r14d, [rdx + rdx]
test esi, esi
mov r15d, dword [rsp + 0xa0]
je 0x14022cffa
cmp esi, 1
jne 0x14022d04e
mov rcx, qword [rbp + 0x10]
mov eax, dword [rbp + 0x1c]
movsxd r8, eax
mov r10d, dword [rcx + r8*4 - 4]
mov edx, dword [rbp + 0x2c]
cmp r10d, edx
jne 0x14022cf93
mov r9, qword [rsp + 0xb8]
mov r9d, dword [r9]
cmp dword [rcx + r8*4 - 8], r9d
jne 0x14022cf9e
jmp 0x14022cfc9
mov r9, qword [rsp + 0xb8]
mov r9d, dword [r9]
cmp r10d, r9d
je 0x14022cfb9
mov eax, r8d
inc eax
mov dword [rbp + 0x1c], eax
mov dword [rcx + r8*4], r9d
mov edx, dword [rbp + 0x2c]
mov rcx, qword [rbp + 0x10]
mov eax, dword [rbp + 0x1c]
lea r8d, [rax + 1]
mov dword [rbp + 0x1c], r8d
cdqe
mov dword [rcx + rax*4], edx
mov eax, dword [rbp + 0x1c]
shl eax, 2
jmp 0x14022d859
mov ecx, dword [rsp + 0xe0]
test ecx, ecx
js 0x14022d0a3
mov rax, qword [rbp]
mov ecx, ecx
movsxd rax, dword [rax + rcx*4]
mov dword [rbp + 0x20], eax
mov eax, dword [r13 + rax*4]
mov dword [rbp + 0x28], eax
jmp 0x14022d0aa
mov eax, dword [rbp + 0x1c]
mov ecx, eax
xor ecx, edx
test cl, 1
je 0x14022d01d
cdqe
mov ecx, dword [rbp + 0x2c]
mov rdx, qword [rbp + 0x10]
lea r8d, [rax + 1]
mov dword [rbp + 0x1c], r8d
mov dword [rdx + rax*4], ecx
mov eax, dword [rbp + 0x1c]
mov rcx, qword [rbp + 0x10]
movsxd rdx, eax
mov r8d, dword [rcx + rdx*4 - 4]
cmp r8d, dword [rbp + 0x2c]
jne 0x14022d78a
mov r8, qword [rsp + 0xb8]
mov r8d, dword [r8]
cmp dword [rcx + rdx*4 - 8], r8d
jne 0x14022d795
jmp 0x14022d7b8
mov eax, dword [rbp + 0x1c]
movsxd rdx, eax
lea ecx, [rdx + r14]
and ecx, 3
cmp ecx, 3
je 0x14022d7fa
cmp ecx, 2
je 0x14022d82c
test ecx, ecx
jne 0x14022d808
mov r8, qword [rbp + 0x10]
mov r9d, dword [r8 + rdx*4 - 4]
cmp r9d, dword [rbp + 0x2c]
jne 0x14022d808
mov edx, dword [r8 + rdx*4 - 8]
mov r8, qword [rsp + 0xb8]
cmp edx, dword [r8]
jne 0x14022d808
jmp 0x14022d859
mov dword [rbp + 0x20], 0xfffff
mov r11d, dword [rsp + 0xa4]
mov eax, dword [rsp + 0xa0]
mov ecx, eax
shr ecx, 6
mov eax, dword [rbp + 0x30]
sar eax, 6
cmp eax, ecx
jle 0x14022d159
mov qword [rsp + 0xb0], rcx
dec r14d
shr r14d, 1
and r14d, 0xfffffffe
add r14, 2
mov r8d, 0xffffffff
xor eax, eax
xor ecx, ecx
jmp 0x14022d121
mov r10d, r8d
lea r8d, [rdx + 0x10]
mov dword [r9 + rcx*8 + 4], r8d
lea r8d, [rdx + 0x20]
mov r9, qword [rbp]
mov dword [r9 + rcx*8 + 8], r8d
add edx, 0x30
mov r8, qword [rbp]
mov dword [r8 + rcx*8 + 0xc], edx
add rcx, 2
inc eax
mov r8d, r10d
cmp r14, rcx
je 0x14022d176
mov r9, qword [rbp]
mov edx, dword [r9 + rcx*8]
mov word [rsp + rcx + 0x15f0], dx
mov r10d, 0xffffffff
cmp edx, dword [rbp + 0x20]
jne 0x14022d0f1
mov r10d, eax
test r8d, r8d
js 0x14022d0f1
cmp dword [rbp + 0xc], 0
jns 0x14022d0ee
lea r10d, [r8 + 0x1f]
cmp r10d, eax
jne 0x14022d0ee
mov dword [rbp + 0xc], r8d
jmp 0x14022d0ee
mov dword [rbp + 0xc], 0x7fff
mov eax, dword [rsp + 0xdc]
mov dword [rbp + 0x30], eax
mov eax, ecx
mov qword [rsp + 0x68], rax
jmp 0x14022ce40
xor esi, esi
test r11d, r11d
sete sil
mov dword [rsp + 0x48], 0
mov r8d, 0x5ddc
mov rcx, r12
xor edx, edx
call fcn.14027bdc0
movdqa xmm0, xmmword [0x14038c320]
movdqu xmmword [rsp + 0x12c], xmm0
mov rax, qword [rsp + 0xb0]
mov dword [rsp + 0x20], eax
lea rcx, [rsp + 0x120]
lea rdx, [rsp + 0x15f0]
xor r8d, r8d
xor r9d, r9d
call fcn.14022ede0
shl esi, 0xc
mov eax, dword [rbp + 0x30]
sar eax, 4
mov dword [rsp + 0x88], eax
mov ecx, 0
mov qword [rsp + 0x70], rcx
mov dword [rsp + 0x44], esi
sub eax, esi
mov qword [rsp + 0x80], rax
jle 0x14022d704
mov eax, dword [rbp + 0xc]
mov dword [rsp + 0x58], eax
mov r15d, dword [rsp + 0x44]
movsxd rax, dword [rsp + 0x88]
mov qword [rsp + 0x78], rax
lea rdx, [r15*4]
xor eax, eax
mov qword [rsp + 0x70], rax
movdqa xmm0, xmmword [0x140308490]
mov dword [rsp + 0x48], 0
jmp 0x14022d26e
mov rbp, qword [rsp + 0x30]
mov byte [rbp + r15 + 0x40], 3
mov rax, qword [rsp + 0x70]
add eax, 0x24
mov qword [rsp + 0x70], rax
mov al, 1
mov dword [rsp + 0x48], eax
mov r15, qword [rsp + 0x38]
mov rdx, qword [rsp + 0x60]
sub rdx, 0xffffffffffffff80
cmp r15, qword [rsp + 0x78]
jge 0x14022d704
mov qword [rsp + 0x60], rdx
mov r13, qword [rbp]
movd xmm1, dword [rbp + 0x20]
pshufd xmm2, xmm1, 0
lea r9, [r15*4]
movdqu xmm1, xmmword [r13 + r15*4]
mov rcx, r9
or rcx, 0x10
movdqu xmm4, xmmword [r13 + rcx]
movdqa xmm6, xmm4
por xmm6, xmm1
pcmpeqd xmm1, xmm2
pcmpeqd xmm4, xmm2
mov r11, r9
or r11, 0x20
movdqu xmm5, xmmword [r13 + r11]
movdqa xmm7, xmm5
pcmpeqd xmm7, xmm2
mov rbx, r9
or rbx, 0x30
movdqu xmm3, xmmword [r13 + rbx]
por xmm5, xmm3
por xmm5, xmm6
pcmpeqd xmm3, xmm2
pand xmm3, xmm7
pand xmm3, xmm4
mov r10, r9
or r10, 0x40
movdqu xmm4, xmmword [r13 + r10]
movdqa xmm6, xmm4
pcmpeqd xmm6, xmm2
mov rdi, r9
or rdi, 0x50
movdqu xmm7, xmmword [r13 + rdi]
por xmm4, xmm7
pcmpeqd xmm7, xmm2
pand xmm7, xmm6
mov r8, r9
or r8, 0x60
movdqu xmm6, xmmword [r13 + r8]
por xmm4, xmm6
por xmm4, xmm5
pcmpeqd xmm6, xmm2
mov r14, r9
or r14, 0x70
movdqu xmm5, xmmword [r13 + r14]
por xmm4, xmm5
pcmpeqd xmm5, xmm2
pand xmm5, xmm6
pand xmm5, xmm7
pand xmm5, xmm3
pand xmm5, xmm1
pand xmm5, xmm0
packuswb xmm5, xmm5
packuswb xmm5, xmm5
pshufd xmm1, xmm4, 0xee
por xmm1, xmm4
pshufd xmm2, xmm1, 0x55
por xmm2, xmm1
movd esi, xmm2
movd eax, xmm5
lea rdx, [r15 + 0x20]
mov qword [rsp + 0x38], rdx
cmp eax, 0x1010101
jne 0x14022d3da
mov byte [rbp + r15 + 0x40], 0
cmp dword [rsp + 0x58], 0
jns 0x14022d255
xor eax, eax
cmp esi, 0x10000
setae al
mov ecx, dword [rsp + 0x48]
movzx ecx, cl
mov r8d, 1
cmovae ecx, r8d
mov dword [rsp + 0x48], ecx
mov rcx, qword [rsp + 0x70]
lea ecx, [rcx + rax*4]
add ecx, 0x20
mov qword [rsp + 0x70], rcx
mov dword [rsp + 0x58], 0
jmp 0x14022d255
cmp esi, 0xffff
ja 0x14022d237
mov eax, dword [r13 + r15*4]
lea esi, [rax + rax*8]
lea eax, [rax + rsi*4]
mov rsi, r9
or rsi, 4
add eax, dword [r13 + rsi]
lea esi, [rax + rax*8]
lea eax, [rax + rsi*4]
mov rsi, r9
or rsi, 8
add eax, dword [r13 + rsi]
lea esi, [rax + rax*8]
lea eax, [rax + rsi*4]
mov rsi, r9
or rsi, 0xc
add eax, dword [r13 + rsi]
lea esi, [rax + rax*8]
lea eax, [rax + rsi*4]
add eax, dword [r13 + rcx]
lea ecx, [rax + rax*8]
lea eax, [rax + rcx*4]
mov rcx, r9
or rcx, 0x14
add eax, dword [r13 + rcx]
lea ecx, [rax + rax*8]
lea eax, [rax + rcx*4]
mov rcx, r9
or rcx, 0x18
add eax, dword [r13 + rcx]
lea ecx, [rax + rax*8]
lea eax, [rax + rcx*4]
mov rcx, r9
or rcx, 0x1c
add eax, dword [r13 + rcx]
lea ecx, [rax + rax*8]
lea eax, [rax + rcx*4]
add eax, dword [r13 + r11]
lea ecx, [rax + rax*8]
lea eax, [rax + rcx*4]
mov rcx, r9
or rcx, 0x24
add eax, dword [r13 + rcx]
lea ecx, [rax + rax*8]
lea eax, [rax + rcx*4]
mov rcx, r9
or rcx, 0x28
add eax, dword [r13 + rcx]
lea ecx, [rax + rax*8]
lea eax, [rax + rcx*4]
mov rcx, r9
or rcx, 0x2c
add eax, dword [r13 + rcx]
lea ecx, [rax + rax*8]
lea eax, [rax + rcx*4]
add eax, dword [r13 + rbx]
lea ecx, [rax + rax*8]
lea eax, [rax + rcx*4]
mov rcx, r9
or rcx, 0x34
add eax, dword [r13 + rcx]
lea ecx, [rax + rax*8]
lea eax, [rax + rcx*4]
mov rcx, r9
or rcx, 0x38
add eax, dword [r13 + rcx]
lea ecx, [rax + rax*8]
lea eax, [rax + rcx*4]
mov rcx, r9
or rcx, 0x3c
add eax, dword [r13 + rcx]
lea ecx, [rax + rax*8]
lea eax, [rax + rcx*4]
add eax, dword [r13 + r10]
lea ecx, [rax + rax*8]
lea eax, [rax + rcx*4]
mov rcx, r9
or rcx, 0x44
add eax, dword [r13 + rcx]
lea ecx, [rax + rax*8]
lea eax, [rax + rcx*4]
mov rcx, r9
or rcx, 0x48
add eax, dword [r13 + rcx]
lea ecx, [rax + rax*8]
lea eax, [rax + rcx*4]
mov rcx, r9
or rcx, 0x4c
add eax, dword [r13 + rcx]
lea ecx, [rax + rax*8]
lea eax, [rax + rcx*4]
add eax, dword [r13 + rdi]
lea ecx, [rax + rax*8]
lea eax, [rax + rcx*4]
mov rcx, r9
or rcx, 0x54
add eax, dword [r13 + rcx]
lea ecx, [rax + rax*8]
lea eax, [rax + rcx*4]
mov rcx, r9
or rcx, 0x58
add eax, dword [r13 + rcx]
lea ecx, [rax + rax*8]
lea eax, [rax + rcx*4]
mov rcx, r9
or rcx, 0x5c
add eax, dword [r13 + rcx]
lea ecx, [rax + rax*8]
lea eax, [rax + rcx*4]
add eax, dword [r13 + r8]
lea ecx, [rax + rax*8]
lea eax, [rax + rcx*4]
mov rcx, r9
or rcx, 0x64
add eax, dword [r13 + rcx]
lea ecx, [rax + rax*8]
lea eax, [rax + rcx*4]
mov rcx, r9
or rcx, 0x68
add eax, dword [r13 + rcx]
lea ecx, [rax + rax*8]
lea eax, [rax + rcx*4]
mov rcx, r9
or rcx, 0x6c
add eax, dword [r13 + rcx]
lea ecx, [rax + rax*8]
lea eax, [rax + rcx*4]
add eax, dword [r13 + r14]
lea ecx, [rax + rax*8]
lea eax, [rax + rcx*4]
mov rcx, r9
or rcx, 0x74
add eax, dword [r13 + rcx]
lea ecx, [rax + rax*8]
lea eax, [rax + rcx*4]
mov rcx, r9
or rcx, 0x78
add eax, dword [r13 + rcx]
lea ecx, [rax + rax*8]
lea ecx, [rax + rcx*4]
or r9, 0x7c
add ecx, dword [r13 + r9]
imul rax, rcx, 0x574b4629
shr rax, 0x2b
imul eax, eax, 0x1776
mov r8d, ecx
sub r8d, eax
mov r11d, dword [r12 + r8*4 + 4]
test r11d, r11d
mov rbp, qword [rsp + 0x30]
mov rdx, qword [rsp + 0x60]
je 0x14022d6e2
shl ecx, 0xc
inc r8d
lea r10, [rdx + r13]
mov r9d, r8d
jmp 0x14022d64d
add r9d, r8d
mov rax, r9
mov r11d, 0xae8f1b93
imul rax, r11
shr rax, 0x2c
imul eax, eax, 0x1777
sub r9d, eax
mov r11d, dword [r12 + r9*4]
test r11d, r11d
je 0x14022d6e2
mov eax, r11d
and eax, 0xfffff000
cmp eax, ecx
jne 0x14022d623
and r11d, 0xfff
lea r11, [rsp + r11*2]
add r11, 0x15ee
xor ebx, ebx
nop dword [rax]
movzx eax, word [r11 + rbx*2]
cmp dword [r10 + rbx*4], eax
jne 0x14022d623
movzx eax, word [r11 + rbx*2 + 2]
cmp dword [r10 + rbx*4 + 4], eax
jne 0x14022d623
movzx eax, word [r11 + rbx*2 + 4]
cmp dword [r10 + rbx*4 + 8], eax
jne 0x14022d623
movzx eax, word [r11 + rbx*2 + 6]
cmp dword [r10 + rbx*4 + 0xc], eax
jne 0x14022d623
add rbx, 4
cmp ebx, 0x20
jne 0x14022d670
test r9d, r9d
js 0x14022d6e2
mov eax, r9d
mov r8d, dword [r12 + rax*4]
lea rcx, [r15 + rbp]
add rcx, 0x40
mov eax, 0xfff
and r8d, eax
je 0x14022d6ea
dec r8d
mov byte [rcx], 1
mov dword [r13 + r15*4], r8d
mov r15, qword [rsp + 0x38]
jmp 0x14022d25f
lea rcx, [r15 + rbp]
add rcx, 0x40
mov r15, qword [rsp + 0x38]
mov byte [rcx], 2
mov rax, qword [rsp + 0x70]
add eax, 0x20
mov qword [rsp + 0x70], rax
jmp 0x14022d25f
mov r14, qword [rsp + 0x80]
sar r14d, 5
lea ebx, [r14 + 0x1f]
sar ebx, 5
mov rax, qword [rsp + 0xb0]
lea edi, [rbx + rax]
add r14d, edi
add r14d, dword [rsp + 0x70]
lea eax, [r14 + r14]
add eax, 2
movsxd rcx, eax
call fcn.1401f7a60
mov qword [rbp + 0x38], rax
test rax, rax
je 0x14022d7bf
mov ecx, dword [rsp + 0xa0]
mov r8d, ecx
shr r8d, 5
lea rdx, [rsp + 0x15f0]
mov rcx, rax
call fcn.14027bf80
cmp r14d, 0x101e
mov rsi, qword [rsp + 0x98]
jge 0x14022d7d2
mov r13, r14
mov r14d, 0x1777
mov ecx, 0xfff
mov r12d, ntohs
jmp 0x14022dabe
mov rax, qword [rsp + 0xb8]
mov r8d, dword [rax]
lea eax, [rdx + 1]
mov dword [rbp + 0x1c], eax
mov dword [rcx + rdx*4], r8d
mov eax, dword [rbp + 0x2c]
mov rcx, qword [rbp + 0x10]
movsxd rdx, dword [rbp + 0x1c]
lea r8d, [rdx + 1]
mov dword [rbp + 0x1c], r8d
mov dword [rcx + rdx*4], eax
mov eax, dword [rbp + 0x1c]
add eax, eax
jmp 0x14022d859
mov rax, qword [rsp + 0x98]
mov dword [rax], 7
jmp 0x14022dc02
mov r13, r14
lea eax, [r14 - 0x1f]
cmp eax, 0x7fff
jae 0x14022da90
mov r14d, 0xc365
mov ecx, 0x7fff
mov r12d, reloc.WS2_32.dll_ntohs
jmp 0x14022dabe
mov r8, qword [rbp + 0x10]
mov edx, dword [r8 + rdx*4 - 4]
cmp edx, dword [rbp + 0x34]
je 0x14022d847
mov eax, dword [rbp + 0x34]
mov rdx, qword [rbp + 0x10]
movsxd r8, dword [rbp + 0x1c]
lea r9d, [r8 + 1]
mov dword [rbp + 0x1c], r9d
mov dword [rdx + r8*4], eax
inc ecx
and ecx, 3
cmp ecx, 2
jne 0x14022d808
mov eax, dword [rbp + 0x1c]
mov ecx, dword [rbp + 0x34]
mov rdx, qword [rbp + 0x10]
lea r8d, [rax + 1]
mov dword [rbp + 0x1c], r8d
cdqe
mov dword [rdx + rax*4], ecx
mov r8, qword [rbp + 0x10]
mov eax, dword [rbp + 0x1c]
mov ecx, dword [rbp + 0x2c]
lea edx, [rax + 1]
mov dword [rbp + 0x1c], edx
cdqe
mov dword [r8 + rax*4], ecx
mov eax, dword [rbp + 0x1c]
add eax, r14d
add eax, 0x30
movsxd rcx, eax
call fcn.1401f7a60
test rax, rax
je 0x14022d8f9
mov rdi, rax
pxor xmm0, xmm0
movdqu xmmword [rax + 0x10], xmm0
movdqu xmmword [rax + 0x20], xmm0
movdqu xmmword [rax], xmm0
mov r9, qword [rsp + 0x68]
mov dword [rax + 0x10], r9d
mov eax, dword [rbp + 0x1c]
mov dword [rdi + 0x14], eax
mov eax, dword [rbp + 0x30]
mov dword [rdi + 0x18], eax
mov eax, 0xfff
add eax, dword [rbp + 0x30]
shr eax, 0xc
mov word [rdi + 0x1c], ax
mov eax, dword [rsp + 0xa4]
mov byte [rdi + 0x1e], al
mov byte [rdi + 0x1f], sil
movzx eax, word [rbp + 0xc]
mov word [rdi + 0x26], ax
mov eax, dword [rbp + 0x20]
mov dword [rdi + 0x28], eax
mov eax, dword [rbp + 0x28]
mov dword [rdi + 0x2c], eax
lea rbx, [rdi + 0x30]
mov qword [rdi], rbx
movsxd r14, r14d
cmp dword [rbp + 0x30], r15d
jle 0x14022d904
mov rdx, qword [rbp + 0x38]
mov rcx, rbx
mov r8, r14
mov r15, r9
call fcn.14027bf80
movsxd rax, r15d
lea rax, [rbx + rax*2]
jmp 0x14022d99b
mov dword [rbx], 7
jmp 0x14022ce55
mov rax, rbx
test r9d, r9d
jle 0x14022d99b
mov ecx, r9d
and ecx, 3
cmp r9d, 4
jae 0x14022d923
xor edx, edx
mov rax, rbx
jmp 0x14022d97a
and r9d, 0xfffffffc
xor eax, eax
xor edx, edx
mov r8, qword [rbp]
movzx r8d, word [r8 + rax*8]
mov word [rbx + rax], r8w
mov r8, qword [rbp]
movzx r8d, word [r8 + rax*8 + 0x10]
mov word [rbx + rax + 2], r8w
mov r8, qword [rbp]
movzx r8d, word [r8 + rax*8 + 0x20]
mov word [rbx + rax + 4], r8w
mov r8, qword [rbp]
movzx r8d, word [r8 + rax*8 + 0x30]
mov word [rbx + rax + 6], r8w
add rdx, 0x10
add rax, 8
add r9d, 0xfffffffc
jne 0x14022d92b
add rax, rbx
test ecx, ecx
je 0x14022d99b
shl rdx, 2
mov r8, qword [rbp]
movzx r8d, word [r8 + rdx]
mov word [rax], r8w
add rax, 2
add rdx, 0x10
dec ecx
jne 0x14022d982
add rbx, r14
mov rdx, qword [rbp + 0x10]
cmp esi, 2
je 0x14022da16
cmp esi, 1
je 0x14022da77
test esi, esi
jne 0x14022ddfa
mov qword [rdi + 8], rax
mov ecx, dword [rbp + 0x1c]
test ecx, ecx
jle 0x14022ddfa
cmp ecx, 0x14
jb 0x14022dce4
lea r9d, [rcx - 1]
lea r8, [rdx + r9*4]
add r8, 4
cmp rax, r8
jae 0x14022d9f2
lea r8, [rax + r9*2]
add r8, 2
cmp rdx, r8
jb 0x14022dce4
lea r8, [r9 + 1]
add r9, 0xfffffffffffffff9
mov r10, r9
shr r10, 3
inc r10
cmp r9, 8
jae 0x14022dc0e
xor r9d, r9d
jmp 0x14022dc8e
mov qword [rdi + 8], rbx
mov eax, dword [rbp + 0x1c]
test eax, eax
jle 0x14022ddfa
cmp eax, 0x14
jb 0x14022dde3
lea r8d, [rax - 1]
lea rcx, [rdx + r8*4]
add rcx, 4
cmp rbx, rcx
jae 0x14022da53
lea rcx, [r14 + r8]
add rcx, rdi
add rcx, 0x31
cmp rdx, rcx
jb 0x14022dde3
lea rcx, [r8 + 1]
add r8, 0xfffffffffffffff9
mov r9, r8
shr r9, 3
inc r9
cmp r8, 8
jae 0x14022dd03
xor r8d, r8d
jmp 0x14022dd8d
mov qword [rdi + 8], rbx
movsxd r8, dword [rbp + 0x1c]
shl r8, 2
mov rcx, rbx
call fcn.14027bf80
jmp 0x14022ddfa
xor ecx, ecx
cmp eax, 0x1ffff
setae cl
lea r12d, [rcx*4 + 0x11]
mov eax, 0x1ffff
mov ecx, 0x1fffff
cmovb ecx, eax
mov eax, 0x30d43
mov r14d, 0x16e367
cmovb r14d, eax
mov dword [rsp + 0x130], r12d
mov dword [rsp + 0x58], ecx
mov dword [rsp + 0x134], ecx
mov rcx, qword [rsp + 0x120]
cmp r14d, dword [rsp + 0x128]
jle 0x14022db16
call fcn.1401f7b30
lea r15d, [r14*4]
mov rcx, r15
call fcn.1401f7a60
mov qword [rsp + 0x120], rax
test rax, rax
je 0x14022dbfc
mov rcx, rax
mov dword [rsp + 0x128], r14d
jmp 0x14022db1e
lea r15d, [r14*4]
mov dword [rsp + 0x12c], r14d
xor eax, eax
mov qword [rsp + 0x70], rax
mov qword [rsp + 0x78], rcx
xor edx, edx
mov r8, r15
call fcn.14027bdc0
mov dword [rsp + 0x138], 0x20
pxor xmm0, xmm0
movdqu xmmword [rsp + 0x14c], xmm0
movdqa xmmword [rsp + 0x140], xmm0
test byte [rsp + 0x48], 1
jne 0x14022db88
mov dword [rsp + 0x54], 0
xor eax, eax
mov qword [rsp + 0x90], rax
xor r13d, r13d
mov dword [rsp + 0x50], 0
xor eax, eax
jmp 0x14022deed
cmp r13d, 0x1021
jg 0x14022dbbe
movabs rax, 0xfff0000000c
mov qword [rsp + 0x150], rax
mov r13d, 0x1777
mov dword [rsp + 0x50], send
mov dword [rsp + 0x54], 0xfff
jmp 0x14022de90
add r13d, 0xffffffdd
cmp r13d, 0x7ffe
ja 0x14022de35
movabs rax, 0x7fff0000000f
mov qword [rsp + 0x150], rax
mov r13d, 0xc365
mov dword [rsp + 0x50], reloc.WS2_32.dll_ntohs
mov dword [rsp + 0x54], 0x7fff
jmp 0x14022de90
mov dword [rsi], 7
xor eax, eax
mov qword [rsp + 0x68], rax
jmp 0x14022ea91
mov r11, r10
and r11, 0xfffffffffffffffe
xor r9d, r9d
movdqu xmm0, xmmword [rdx + r9*4]
movdqu xmm1, xmmword [rdx + r9*4 + 0x10]
pshuflw xmm0, xmm0, 0xe8
pshufhw xmm0, xmm0, 0xe8
pshufd xmm0, xmm0, 0xe8
pshuflw xmm1, xmm1, 0xe8
pshufhw xmm1, xmm1, 0xe8
pshufd xmm1, xmm1, 0xe8
punpcklqdq xmm0, xmm1
movdqu xmmword [rax + r9*2], xmm0
movdqu xmm0, xmmword [rdx + r9*4 + 0x20]
movdqu xmm1, xmmword [rdx + r9*4 + 0x30]
pshuflw xmm0, xmm0, 0xe8
pshufhw xmm0, xmm0, 0xe8
pshufd xmm0, xmm0, 0xe8
pshuflw xmm1, xmm1, 0xe8
pshufhw xmm1, xmm1, 0xe8
pshufd xmm1, xmm1, 0xe8
punpcklqdq xmm0, xmm1
movdqu xmmword [rax + r9*2 + 0x10], xmm0
add r9, 0x10
add r11, 0xfffffffffffffffe
jne 0x14022dc18
mov r11, r8
and r11, 0xfffffffffffffff8
test r10b, 1
je 0x14022dcd0
movdqu xmm0, xmmword [rdx + r9*4]
movdqu xmm1, xmmword [rdx + r9*4 + 0x10]
pshuflw xmm0, xmm0, 0xe8
pshufhw xmm0, xmm0, 0xe8
pshufd xmm0, xmm0, 0xe8
pshuflw xmm1, xmm1, 0xe8
pshufhw xmm1, xmm1, 0xe8
pshufd xmm1, xmm1, 0xe8
punpcklqdq xmm0, xmm1
movdqu xmmword [rax + r9*2], xmm0
cmp r8, r11
je 0x14022ddfa
sub ecx, r11d
lea rdx, [rdx + r11*4]
lea rax, [rax + r11*2]
inc ecx
xor r8d, r8d
movzx r9d, word [rdx + r8*2]
mov word [rax + r8], r9w
dec ecx
add r8, 2
cmp ecx, 1
ja 0x14022dce9
jmp 0x14022ddfa
mov r10, r9
and r10, 0xfffffffffffffffe
lea r11, [r14 + rdi]
add r11, 0x3c
xor r8d, r8d
movdqa xmm0, xmmword [0x1402f0500]
movdqu xmm1, xmmword [rdx + r8*4]
movdqu xmm2, xmmword [rdx + r8*4 + 0x10]
pand xmm1, xmm0
packuswb xmm1, xmm1
packuswb xmm1, xmm1
pand xmm2, xmm0
packuswb xmm2, xmm2
packuswb xmm2, xmm2
movd dword [r11 + r8 - 0xc], xmm1
movd dword [r11 + r8 - 8], xmm2
movdqu xmm1, xmmword [rdx + r8*4 + 0x20]
movdqu xmm2, xmmword [rdx + r8*4 + 0x30]
pand xmm1, xmm0
packuswb xmm1, xmm1
packuswb xmm1, xmm1
pand xmm2, xmm0
packuswb xmm2, xmm2
packuswb xmm2, xmm2
movd dword [r11 + r8 - 4], xmm1
movd dword [r11 + r8], xmm2
add r8, 0x10
add r10, 0xfffffffffffffffe
jne 0x14022dd1d
mov r10, rcx
and r10, 0xfffffffffffffff8
test r9b, 1
je 0x14022ddd4
movdqu xmm0, xmmword [rdx + r8*4]
movdqu xmm1, xmmword [rdx + r8*4 + 0x10]
movdqa xmm2, xmmword [0x1402f0500]
pand xmm0, xmm2
packuswb xmm0, xmm0
packuswb xmm0, xmm0
pand xmm1, xmm2
packuswb xmm1, xmm1
packuswb xmm1, xmm1
movd dword [rbx + r8], xmm0
movd dword [rbx + r8 + 4], xmm1
cmp rcx, r10
je 0x14022ddfa
sub eax, r10d
lea rdx, [rdx + r10*4]
add rbx, r10
inc eax
xor ecx, ecx
movzx r8d, byte [rdx + rcx*4]
mov byte [rbx + rcx], r8b
dec eax
inc rcx
cmp eax, 1
ja 0x14022dde7
mov dword [rbp + 0xc], 0xffffffff
movabs rax, 0xffffffff00000000
mov qword [rbp + 0x1c], rax
mov eax, dword [rbp + 0x24]
mov dword [rbp + 0x28], eax
mov dword [rbp + 0x34], eax
mov dword [rbp + 0x30], 0
mov rcx, qword [rbp + 0x38]
call fcn.1401f7b30
mov qword [rbp + 0x38], 0
jmp 0x14022ce8d
cmp r13d, 0x1fffe
ja 0x14022de68
movabs rax, 0x1ffff00000011
mov qword [rsp + 0x150], rax
mov r13d, 0x30d43
mov dword [rsp + 0x50], send
mov dword [rsp + 0x54], 0x1ffff
jmp 0x14022de90
movabs rax, 0x1fffff00000015
mov qword [rsp + 0x150], rax
mov r13d, 0x16e367
mov dword [rsp + 0x50], reloc.WS2_32.dll_setsockopt
mov dword [rsp + 0x54], 0x1fffff
xor ecx, ecx
call fcn.1401f7b30
lea r15d, [r13*4]
mov rcx, r15
call fcn.1401f7a60
mov qword [rsp + 0x140], rax
test rax, rax
je 0x14022eaa8
mov dword [rsp + 0x148], r13d
mov dword [rsp + 0x14c], r13d
mov rcx, rax
mov qword [rsp + 0x90], rax
xor edx, edx
mov r8, r15
call fcn.14027bdc0
mov dword [rsp + 0x158], 0x24
mov eax, 0x24
mov qword [rsp + 0xa8], rax
mov edx, dword [rsp + 0x44]
mov ecx, dword [rsp + 0x88]
mov eax, dword [rbp + 0xc]
cmp ecx, edx
mov dword [rsp + 0x38], edi
mov qword [rsp + 0x60], r14
jle 0x14022e6f8
mov qword [rsp + 0xf0], rbx
mov qword [rsp + 0xe0], r13
mov r8d, ecx
lea ecx, [r13 - 1]
mov dword [rsp + 0xc8], ecx
mov ecx, dword [rsp + 0x54]
not ecx
mov dword [rsp + 0x88], ecx
mov ebx, edx
not edx
add r8d, edx
shr r8d, 5
mov ecx, r8d
inc ecx
mov qword [rsp + 0x70], rcx
lea ecx, [r14 - 1]
mov dword [rsp + 0xc0], ecx
mov ecx, dword [rsp + 0x58]
not ecx
mov dword [rsp + 0x44], ecx
movsxd rcx, edi
mov qword [rsp + 0xf8], rcx
lea r15, [rbx*4]
mov rcx, qword [rsp + 0xa8]
inc ecx
mov dword [rsp + 0xe8], ecx
xor ebp, ebp
mov r11d, eax
mov r10d, edi
mov dword [rsp + 0x8c], r12d
jmp 0x14022dfc3
mov word [rsp + rbp*2 + 0x4f0], r14w
inc rbp
add rbx, 0x20
sub r15, 0xffffffffffffff80
cmp rbp, qword [rsp + 0x70]
mov r14, qword [rsp + 0x60]
je 0x14022e6fd
mov rcx, qword [rsp + 0x30]
mov edx, dword [rcx + rbx + 0x40]
test dl, dl
sete r8b
test r11d, r11d
sets r9b
cmp dword [rcx + 0x20], 0x10000
setl cl
xor cl, 3
movzx ecx, cl
test r8b, r9b
cmove ecx, edx
mov edx, 0
cmovne r11d, edx
test cl, cl
je 0x14022e01e
movzx eax, cl
cmp eax, 2
je 0x14022e02b
cmp eax, 1
jne 0x14022e12f
mov rsi, qword [rsp + 0x30]
mov rax, qword [rsi]
mov r14d, dword [rax + rbx*4]
jmp 0x14022e6d3
mov r14d, eax
mov rsi, qword [rsp + 0x30]
jmp 0x14022e6d3
mov dword [rsp + 0x80], r11d
mov qword [rsp + 0x68], r10
movsxd r10, ebx
shl r10, 2
mov rax, qword [rsp + 0x30]
mov r9, qword [rax]
mov r8, qword [rax + 0x38]
mov rcx, rbx
shl rcx, 0x20
movsxd rdx, ebx
mov rax, rcx
sar rax, 0x1e
mov eax, dword [r9 + rax]
or rdx, 1
movabs r11, 0x2000000000
add rcx, r11
sar rcx, 0x20
nop word cs:[rax + rax]
lea r11d, [rax + rax*8]
lea eax, [rax + r11*4]
add eax, dword [r9 + rdx*4]
inc rdx
cmp rdx, rcx
jl 0x14022e080
mov r11d, eax
mov ecx, r12d
shl r11d, cl
xor edx, edx
div dword [rsp + 0xc0]
lea ecx, [rdx + 1]
mov rax, qword [rsp + 0x78]
mov eax, dword [rax + rdx*4 + 4]
test eax, eax
je 0x14022e3fc
add r10, r9
mov edx, ecx
jmp 0x14022e0da
add edx, ecx
mov eax, edx
xor edx, edx
div r14d
mov rax, qword [rsp + 0x78]
mov eax, dword [rax + rdx*4]
test eax, eax
je 0x14022e3fe
mov esi, eax
and esi, dword [rsp + 0x44]
cmp esi, r11d
jne 0x14022e0c1
and eax, dword [rsp + 0x58]
lea rax, [r8 + rax*2]
add rax, 0xfffffffffffffffe
xor edi, edi
movzx esi, word [rax + rdi*2]
cmp dword [r10 + rdi*4], esi
jne 0x14022e0c1
movzx esi, word [rax + rdi*2 + 2]
cmp dword [r10 + rdi*4 + 4], esi
jne 0x14022e0c1
movzx esi, word [rax + rdi*2 + 4]
cmp dword [r10 + rdi*4 + 8], esi
jne 0x14022e0c1
movzx esi, word [rax + rdi*2 + 6]
cmp dword [r10 + rdi*4 + 0xc], esi
jne 0x14022e0c1
add rdi, 4
cmp edi, 0x20
jne 0x14022e0f3
jmp 0x14022e400
mov dword [rsp + 0x80], r11d
lea rax, [rbx + 0x20]
mov qword [rsp + 0x68], r10
movsxd r14, r10d
lea rdi, [r14 + r14]
mov rcx, rdi
mov rdx, rbx
mov rsi, qword [rsp + 0x30]
nop word cs:[rax + rax]
mov r8, qword [rsi]
mov r10, qword [rsi + 0x38]
mov r8d, dword [r8 + rdx*4]
mov word [r10 + rcx + 2], r8w
shr r8d, 2
and r8d, 0xc000
mov r10, qword [rsi]
mov r11, qword [rsi + 0x38]
mov r10d, dword [r10 + rdx*4 + 4]
mov word [r11 + rcx + 4], r10w
shr r10d, 4
and r10d, 0x3000
or r10d, r8d
mov r8, qword [rsi]
mov r11, qword [rsi + 0x38]
mov r8d, dword [r8 + rdx*4 + 8]
mov word [r11 + rcx + 6], r8w
shr r8d, 6
and r8d, 0xc00
or r8d, r10d
mov r10, qword [rsi]
mov r11, qword [rsi + 0x38]
mov r10d, dword [r10 + rdx*4 + 0xc]
mov word [r11 + rcx + 8], r10w
shr r10d, 8
and r10d, 0x300
or r10d, r8d
mov r8, qword [rsi]
mov r11, qword [rsi + 0x38]
mov r8d, dword [r8 + rdx*4 + 0x10]
mov word [r11 + rcx + 0xa], r8w
shr r8d, 0xa
and r8d, 0xc0
or r8d, r10d
mov r10, qword [rsi]
mov r11, qword [rsi + 0x38]
mov r10d, dword [r10 + rdx*4 + 0x14]
mov word [r11 + rcx + 0xc], r10w
shr r10d, 0xc
and r10d, 0x30
or r10d, r8d
mov r8, qword [rsi]
mov r11, qword [rsi + 0x38]
mov r8d, dword [r8 + rdx*4 + 0x18]
mov word [r11 + rcx + 0xe], r8w
shr r8d, 0xe
and r8d, 0xc
or r8d, r10d
mov r10, qword [rsi]
mov r11, qword [rsi + 0x38]
mov r10d, dword [r10 + rdx*4 + 0x1c]
add rdx, 8
mov word [r11 + rcx + 0x10], r10w
shr r10d, 0x10
and r10d, 3
or r10d, r8d
mov r8, qword [rsi + 0x38]
mov word [r8 + rcx], r10w
add rcx, 0x12
cmp rdx, rax
jb 0x14022e160
mov r8, qword [rsi + 0x38]
mov r9, qword [rsp + 0x68]
mov rax, qword [rsp + 0xa8]
lea edx, [r9 + rax]
lea ecx, [r9 + 1]
lea r12, [r8 + r14*2]
mov qword [rsp + 0xd0], r14
movzx eax, word [r8 + r14*2]
movsxd rcx, ecx
movsxd rdx, edx
nop dword [rax]
lea r11d, [rax + rax*8]
lea r11d, [rax + r11*4]
movzx eax, word [r8 + rcx*2]
inc rcx
add eax, r11d
cmp rcx, rdx
jl 0x14022e2a0
mov r11d, eax
mov ecx, dword [rsp + 0x50]
shl r11d, cl
xor edx, edx
div dword [rsp + 0xc8]
mov ecx, edx
inc ecx
movsxd rax, ecx
mov rdx, qword [rsp + 0x90]
mov eax, dword [rdx + rax*4]
mov edx, ecx
test eax, eax
mov r10, qword [rsp + 0xe0]
jne 0x14022e30b
mov edx, ecx
not edx
jmp 0x14022e349
add edx, ecx
mov eax, edx
cdq
idiv r10d
movsxd rax, edx
mov rsi, qword [rsp + 0x90]
mov eax, dword [rsi + rax*4]
test eax, eax
je 0x14022e2ed
mov esi, eax
and esi, dword [rsp + 0x88]
cmp esi, r11d
jne 0x14022e2f1
test byte [rsp + 0x48], 1
je 0x14022e349
and eax, dword [rsp + 0x54]
dec eax
cdqe
mov esi, dword [rsp + 0xe8]
mov r14, r8
movzx r13d, word [r14 + rax*2]
cmp r13w, word [r14 + rdi]
jne 0x14022e2f1
add r14, 2
dec esi
cmp esi, 1
jg 0x14022e332
test edx, edx
mov r11d, dword [rsp + 0x80]
js 0x14022e375
mov eax, edx
mov rcx, qword [rsp + 0x90]
mov r14d, dword [rcx + rax*4]
and r14d, dword [rsp + 0x54]
dec r14d
js 0x14022e375
mov r13d, r9d
jmp 0x14022e6bc
mov eax, dword [rsp + 0x38]
mov r14d, eax
cmp r9d, eax
je 0x14022e669
mov eax, 0x23
mov rcx, 0xffffffffffffffba
mov edx, 0x24
mov r11, 0xffffffffffffffbc
mov esi, edx
mov r14, r12
movzx r10d, word [r14 + rcx]
cmp r10w, word [r14]
jne 0x14022e3bd
add r14, 2
dec esi
cmp esi, 1
jg 0x14022e3a2
jmp 0x14022e580
cmp rax, 2
jb 0x14022e661
lea r13, [rax - 1]
mov esi, eax
mov r14, r12
movzx r10d, word [r14 + r11]
cmp r10w, word [r14]
jne 0x14022e3eb
add r14, 2
dec esi
cmp esi, 1
jg 0x14022e3d0
jmp 0x14022e583
add rax, 0xfffffffffffffffe
add rcx, 4
add edx, 0xfffffffe
add r11, 4
jmp 0x14022e39d
mov edx, ecx
not edx
test edx, edx
mov r10, qword [rsp + 0x68]
mov r11d, dword [rsp + 0x80]
js 0x14022e42b
mov eax, edx
mov rcx, qword [rsp + 0x78]
mov r14d, dword [rcx + rax*4]
and r14d, dword [rsp + 0x58]
sub r14d, 1
jae 0x14022e4bf
mov r14d, dword [rsp + 0x38]
cmp r10d, r14d
jne 0x14022e444
mov rax, qword [rsp + 0xf8]
xor edi, edi
jmp 0x14022e4df
movsxd rax, r10d
lea rcx, [r8 + rax*2]
add rcx, 0xffffffffffffffc2
add r9, r15
lea r10, [r8 + rax*2]
add r10, 0xffffffffffffffc4
mov edx, 0x1f
mov r11d, 0x20
mov esi, r11d
xor edi, edi
movzx r14d, word [rcx + rdi]
cmp dword [r9 + rdi*2], r14d
jne 0x14022e482
add rdi, 2
dec esi
cmp esi, 1
jg 0x14022e46a
jmp 0x14022e4c9
cmp rdx, 2
jb 0x14022e652
lea rdi, [rdx - 1]
mov esi, edx
xor r14d, r14d
movzx r13d, word [r10 + r14]
cmp dword [r9 + r14*2], r13d
jne 0x14022e4ad
add r14, 2
dec esi
cmp esi, 1
jg 0x14022e495
jmp 0x14022e4cc
add rdx, 0xfffffffffffffffe
add rcx, 4
add r11d, 0xfffffffe
add r10, 4
jmp 0x14022e465
mov rsi, qword [rsp + 0x30]
jmp 0x14022e6d3
mov rdi, rdx
mov r10, qword [rsp + 0x68]
mov r14d, r10d
sub r14d, edi
mov r13d, r10d
cmp edi, 0x1f
jg 0x14022e513
inc rdi
mov rcx, rdi
mov r9, qword [rsp + 0x30]
mov rdx, qword [r9]
add rdx, r15
movzx edx, word [rdx + rdi*4 - 4]
mov r8, qword [r9 + 0x38]
mov word [r8 + rax*2], dx
inc rax
inc rcx
cmp edi, 0x20
mov rdi, rcx
jne 0x14022e4ea
mov r8, qword [r9 + 0x38]
mov r13d, eax
mov dword [rsp + 0x20], r13d
lea rcx, [rsp + 0x120]
mov rdx, r8
mov r12d, dword [rsp + 0x38]
mov r8d, r12d
mov r9d, r10d
mov rdi, r10
call fcn.14022ede0
test byte [rsp + 0x48], 1
jne 0x14022e547
mov r10d, r13d
mov rsi, qword [rsp + 0x30]
jmp 0x14022e56b
mov rsi, qword [rsp + 0x30]
mov rdx, qword [rsi + 0x38]
mov dword [rsp + 0x20], r13d
lea rcx, [rsp + 0x140]
mov r8d, r12d
mov r9d, edi
call fcn.14022ede0
mov r10d, r13d
mov r12d, dword [rsp + 0x8c]
mov r11d, dword [rsp + 0x80]
jmp 0x14022e6d3
mov r13, rax
mov r9, qword [rsp + 0x68]
mov r14d, r9d
sub r14d, r13d
test r13d, r13d
jle 0x14022e669
cmp r13d, 0x23
ja 0x14022e5a8
test r13b, 1
jne 0x14022e5b0
mov rdx, r13
jmp 0x14022e5dd
mov r13d, r9d
jmp 0x14022e66d
mov rax, qword [rsp + 0x30]
mov rax, qword [rax + 0x38]
lea rdx, [r13 + 1]
mov r8, qword [rsp + 0xd0]
lea rcx, [r8 + r13]
movzx ecx, word [rax + rcx*2]
mov word [rax + r8*2], cx
inc r8
mov qword [rsp + 0xd0], r8
cmp r13, 0x23
mov r13, qword [rsp + 0xd0]
je 0x14022e647
mov rax, r13
add rax, r13
mov ecx, 0x24
sub rcx, rdx
lea r8, [rdi + rdx*2]
xor edx, edx
mov r11, qword [rsp + 0x30]
mov r9, qword [r11 + 0x38]
lea r10, [r9 + r8]
movzx r10d, word [r10 + rdx*2]
add r9, rax
mov word [r9 + rdx*2], r10w
mov r9, qword [r11 + 0x38]
lea r10, [r9 + r8]
add r10, 2
movzx r10d, word [r10 + rdx*2]
add r9, rax
add r9, 2
mov word [r9 + rdx*2], r10w
add rdx, 2
cmp rcx, rdx
jne 0x14022e604
add r13, rdx
mov r9, qword [rsp + 0x68]
mov rax, qword [rsp + 0x30]
mov r8, qword [rax + 0x38]
jmp 0x14022e66d
mov r10, qword [rsp + 0x68]
mov r14d, r10d
xor edi, edi
jmp 0x14022e4df
mov r9, qword [rsp + 0x68]
mov r14d, r9d
lea r13d, [r9 + 0x24]
mov dword [rsp + 0x20], r13d
lea rcx, [rsp + 0x120]
mov rdx, r8
mov edi, dword [rsp + 0x38]
mov r8d, edi
mov rsi, r9
call fcn.14022ede0
test byte [rsp + 0x48], 1
je 0x14022e6b4
mov rax, qword [rsp + 0x30]
mov rdx, qword [rax + 0x38]
mov dword [rsp + 0x20], r13d
lea rcx, [rsp + 0x140]
mov r8d, edi
mov r9d, esi
call fcn.14022ede0
mov r11d, dword [rsp + 0x80]
or r14d, 0x8000
mov r10d, r13d
mov rsi, qword [rsp + 0x30]
mov r12d, dword [rsp + 0x8c]
mov eax, dword [rsi + 0xc]
test eax, eax
jns 0x14022df9f
test r11d, r11d
js 0x14022df9f
mov rax, qword [rsp + 0x30]
mov dword [rax + 0xc], r14d
mov eax, r14d
jmp 0x14022df9f
mov r10d, edi
jmp 0x14022e716
mov rbp, qword [rsp + 0x30]
mov rsi, qword [rsp + 0x98]
mov edi, dword [rsp + 0x38]
mov rbx, qword [rsp + 0xf0]
test eax, eax
jns 0x14022e721
mov dword [rbp + 0xc], 0x7fff
cmp r10d, 0x801e
mov rax, qword [rsp + 0x70]
jle 0x14022e73d
mov dword [rsi], 8
xor r10d, r10d
jmp 0x14022ea7f
test eax, eax
jle 0x14022ea7f
mov dword [rsp + 0x8c], r12d
movsxd rax, edi
mov qword [rsp + 0x48], rax
mov rax, r14
mov r14d, dword [rsp + 0xb0]
dec eax
mov dword [rsp + 0x78], eax
mov r15, qword [rsp + 0x120]
mov r12d, dword [rsp + 0x58]
not r12d
movsxd rax, ebx
add rax, rax
lea rax, [rax + r14*2]
mov qword [rsp + 0x80], rax
mov rax, qword [rsp + 0x70]
lea ecx, [rax + 1]
mov dword [rsp + 0x44], ecx
mov edi, 0x20
xor ebx, ebx
jmp 0x14022e7e1
mov r8, qword [rsi + 0x38]
mov dword [rsp + 0x20], r13d
lea rcx, [rsp + 0x120]
mov rdx, r8
mov r8d, dword [rsp + 0x38]
mov r9d, r10d
call fcn.14022ede0
mov r8, qword [rsi + 0x38]
mov r10d, r13d
mov word [r8 + r14*2], bp
inc r14
add ebx, edi
mov rax, qword [rsp + 0x70]
cmp eax, ebx
mov rbp, qword [rsp + 0x30]
jle 0x14022ea7f
sub eax, ebx
mov r8, qword [rbp + 0x38]
cmp eax, edi
jge 0x14022e801
mov ecx, r10d
sub ecx, eax
cmp ecx, dword [rsp + 0x38]
jge 0x14022e8f5
mov edi, eax
jmp 0x14022e968
mov r13, r10
lea edx, [rbx + 0x20]
lea ecx, [rbx + 1]
movsxd rax, ebx
lea r9, [rsp + rax*2]
add r9, 0x4f0
movzx eax, word [rsp + rax*2 + 0x4f0]
movsxd rcx, ecx
movsxd rdx, edx
mov ebp, dword [rsp + 0x58]
nop word [rax + rax]
lea r10d, [rax + rax*8]
lea r10d, [rax + r10*4]
movzx eax, word [rsp + rcx*2 + 0x4f0]
inc rcx
add eax, r10d
cmp rcx, rdx
jl 0x14022e830
mov r10d, eax
mov ecx, dword [rsp + 0x8c]
shl r10d, cl
xor edx, edx
div dword [rsp + 0x78]
lea ecx, [rdx + 1]
mov eax, dword [r15 + rdx*4 + 4]
mov edx, ecx
test eax, eax
jne 0x14022e884
mov edx, ecx
not edx
jmp 0x14022e8dc
add edx, ecx
mov eax, edx
xor edx, edx
div dword [rsp + 0x60]
mov eax, dword [r15 + rdx*4]
test eax, eax
je 0x14022e86e
mov r11d, eax
and r11d, r12d
cmp r11d, r10d
jne 0x14022e872
and eax, ebp
lea rax, [r8 + rax*2]
add rax, 0xfffffffffffffffe
xor r11d, r11d
movzx esi, word [rax + r11*2]
cmp si, word [r9 + r11*2]
jne 0x14022e872
movzx esi, word [rax + r11*2 + 2]
cmp si, word [r9 + r11*2 + 2]
jne 0x14022e872
movzx esi, word [rax + r11*2 + 4]
cmp si, word [r9 + r11*2 + 4]
jne 0x14022e872
movzx esi, word [rax + r11*2 + 6]
cmp si, word [r9 + r11*2 + 6]
jne 0x14022e872
add r11, 4
cmp r11d, 0x20
jne 0x14022e89c
test edx, edx
mov r10, r13
js 0x14022e968
mov eax, edx
mov ebp, dword [r15 + rax*4]
and ebp, dword [rsp + 0x58]
dec ebp
jmp 0x14022e960
mov r13, r10
movsxd rdx, ebx
lea rdx, [rsp + rdx*2]
add rdx, 0x4f0
inc ecx
mov r9, qword [rsp + 0x80]
add r9, r8
mov r10d, dword [rsp + 0x44]
sub r10d, ebx
mov rbp, qword [rsp + 0x48]
test eax, eax
jle 0x14022e943
mov r11d, r10d
xor esi, esi
movzx edi, word [r9 + rsi]
cmp di, word [rdx + rsi]
jne 0x14022e949
add rsi, 2
dec r11d
cmp r11d, 1
jg 0x14022e929
jmp 0x14022e95b
je 0x14022ea78
inc rbp
add r9, 2
cmp ecx, ebp
jne 0x14022e920
mov edi, eax
mov r10, r13
jmp 0x14022e968
mov edi, eax
mov r10, r13
test ebp, ebp
jns 0x14022e7c5
xor eax, eax
cmp r10d, dword [rsp + 0x38]
je 0x14022e9dc
movsxd rcx, ebx
cmp edi, 1
jle 0x14022e9cd
lea rcx, [rsp + rcx*2]
add rcx, 0x4f0
mov edx, edi
mov r13, r10
movsxd r9, r10d
add r9, r9
sub r9, rdx
sub r9, rdx
add r9, r8
add r9, 2
mov r10, rdx
dec rdx
mov r11d, r10d
xor esi, esi
movzx ebp, word [r9 + rsi]
cmp bp, word [rcx + rsi]
jne 0x14022e9c1
add rsi, 2
dec r11d
cmp r11d, 1
jg 0x14022e9a7
jmp 0x14022e9d7
add r9, 2
cmp r10, 3
jge 0x14022e99c
jmp 0x14022e9d9
lea eax, [rdi - 1]
mov ebp, r10d
sub ebp, eax
jmp 0x14022e9e8
mov eax, edx
mov r10, r13
mov ebp, r10d
sub ebp, eax
cmp eax, edi
jge 0x14022e9fb
movsxd rcx, ebx
movsxd rdx, eax
movsxd r13, r10d
mov eax, edi
sub eax, edx
test al, 1
jne 0x14022ea08
mov rax, rdx
jmp 0x14022ea2a
mov r13d, r10d
mov rsi, qword [rsp + 0x30]
jmp 0x14022e7a1
lea rax, [rdx + 1]
lea r8, [rcx + rdx]
movzx r8d, word [rsp + r8*2 + 0x4f0]
mov r9, qword [rsp + 0x30]
mov r9, qword [r9 + 0x38]
mov word [r9 + r13*2], r8w
inc r13
movsxd r8, edi
not rdx
add rdx, r8
mov rsi, qword [rsp + 0x30]
je 0x14022e79d
lea rdx, [rsp + 0x4f2]
lea rcx, [rdx + rcx*2]
movzx edx, word [rcx + rax*2 - 2]
mov r9, qword [rsi + 0x38]
mov word [r9 + r13*2], dx
movzx edx, word [rcx + rax*2]
add rax, 2
mov r9, qword [rsi + 0x38]
mov word [r9 + r13*2 + 2], dx
add r13, 2
cmp r8, rax
jne 0x14022ea4a
jmp 0x14022e79d
xor edi, edi
jmp 0x14022e95d
mov qword [rsp + 0x68], r10
mov rcx, qword [rsp + 0x140]
call fcn.1401f7b30
mov r12, qword [rsp + 0x120]
mov eax, dword [rsp + 0xdc]
mov dword [rbp + 0x30], eax
jmp 0x14022ce40
xor eax, eax
mov qword [rsp + 0x68], rax
mov dword [rsi], 7
xor ecx, ecx
jmp 0x14022ea8c