Function at 0x140063ef0
Capabilities:
Encode data using xor
Encrypt data using rc4 ksa

Disassembly:
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbp
push rbx
sub rsp, 0x1d8
movaps xmmword [rsp + 0x1c0], xmm6
mov rdi, r9
mov rbx, r8
mov r14, rdx
mov r15, rcx
mov rax, qword [0x140183d00]
xor rax, rsp
mov qword [rsp + 0x1b8], rax
mov ecx, 1
mov edx, 0x4888
call sub.api_ms_win_crt_heap_l1_1_0.dll_calloc
test rax, rax
je 0x140064022
mov r11, rax
mov qword [rax], r15
lea rax, [0x140071a90]
mov qword [r11 + 0x4870], rax
lea rax, [0x140071f40]
mov qword [r11 + 0x4878], rax
lea rax, [0x140072050]
mov qword [r11 + 0x4880], rax
xor ecx, ecx
mov eax, 1
xchg rbx, r8
cpuid
xchg rbx, r8
test edx, 0x4000000
je 0x140063fb2
lea rax, [0x1400722f0]
mov qword [r11 + 0x4870], rax
lea rax, [0x140072b50]
mov qword [r11 + 0x4878], rax
lea rax, [0x140072dc0]
mov qword [r11 + 0x4880], rax
mov rax, qword [r11]
mov dword [rax + 8], 0
cmp dword [rsp + 0x240], 5
jb 0x140064073
cmp byte [0x140186095], 0
jne 0x140063ffc
movabs rax, 0x5f71657220646162
mov qword [0x140186088], rax
mov dword [0x140186090], 0x706d6f63
mov byte [0x140186094], 0
mov byte [0x140186095], 1
mov eax, dword [0x14019f7f0]
mov rcx, qword gs:[0x58]
mov rax, qword [rcx + rax*8]
lea rcx, [0x140186088]
mov qword [rax + 8], rcx
jmp 0x140066726
cmp byte [0x140186241], 0
jne 0x14006404a
movabs rax, 0x6d656d666f74756f
mov qword [0x140186238], rax
mov byte [0x140186240], 0
mov byte [0x140186241], 1
mov eax, dword [0x14019f7f0]
mov rcx, qword gs:[0x58]
mov rax, qword [rcx + rax*8]
lea rcx, [0x140186238]
mov qword [rax + 8], rcx
xor r15d, r15d
jmp 0x140066732
mov qword [rsp + 0xb8], r14
mov qword [rsp + 0xc0], rbx
mov qword [rsp + 0xc8], rdi
mov dword [r11 + 0x4868], 0
pxor xmm0, xmm0
movdqu xmmword [r11 + 0x46d8], xmm0
movdqu xmmword [r11 + 0x4738], xmm0
movdqu xmmword [r11 + 0x4798], xmm0
movdqu xmmword [r11 + 0x47f8], xmm0
mov rcx, r11
xor edx, edx
mov qword [rsp + 0x40], r11
call fcn.1400718e0
mov r11, qword [rsp + 0x40]
test eax, eax
je 0x14006669a
mov rcx, r11
call fcn.140072f70
mov r11, qword [rsp + 0x40]
lea rcx, [r11 + 0x1a48]
mov qword [rsp + 0x68], rcx
lea rcx, [r11 + 8]
mov qword [rsp + 0x78], rcx
lea rcx, [r11 + 0x46a0]
mov qword [rsp + 0x80], rcx
lea rbx, [r11 + 0x20b8]
cmp al, 0xda
je 0x140064143
movzx edx, al
cmp edx, 0xdc
je 0x140064178
cmp edx, 0xd9
je 0x14006579a
mov rcx, r11
call fcn.1400730d0
mov r11, qword [rsp + 0x40]
test eax, eax
jne 0x1400641a5
jmp 0x1400659d8
mov rcx, qword [r11]
call fcn.14006c950
mov r11, qword [rsp + 0x40]
mov ebp, eax
mov rdi, qword [r11]
mov rax, qword [rdi + 0xc0]
cmp rax, qword [rdi + 0xc8]
jae 0x1400641b7
lea rcx, [rax + 1]
mov qword [rdi + 0xc0], rcx
movzx eax, byte [rax]
jmp 0x14006421e
mov rcx, qword [r11]
mov rsi, r11
call fcn.14006c950
mov ebp, eax
mov rcx, qword [rsi]
call fcn.14006c950
cmp ebp, 4
jne 0x140065b8b
mov rcx, qword [rsi]
cmp eax, dword [rcx + 4]
mov r11, rsi
jne 0x140065ba9
mov rcx, r11
call fcn.140072f70
mov r11, qword [rsp + 0x40]
jmp 0x140064112
cmp dword [rdi + 0x30], 0
je 0x140066568
mov r8d, dword [rdi + 0x34]
lea r12, [rdi + 0x38]
mov rcx, qword [rdi + 0x28]
mov rdx, r12
call qword [rdi + reloc.WS2_32.dll_recv]
mov ecx, dword [rdi + 0xc0]
sub ecx, dword [rdi + 0xd0]
add dword [rdi + 0xb8], ecx
test eax, eax
je 0x1400641f6
movsxd rcx, eax
add rcx, r12
movzx eax, byte [r12]
jmp 0x140064207
mov dword [rdi + 0x30], 0
lea rcx, [rdi + 0x39]
mov byte [rdi + 0x38], 0
xor eax, eax
mov qword [rdi + 0xc8], rcx
lea rcx, [rdi + 0x39]
mov qword [rdi + 0xc0], rcx
mov r11, qword [rsp + 0x40]
movzx eax, al
mov dword [r11 + 0x4854], eax
lea ecx, [rax - 5]
cmp cl, 0xfc
jb 0x140066573
mov r13, qword [r11]
cmp dword [r13 + 8], eax
jl 0x140066573
lea eax, [rax*2 + 6]
cmp ebp, eax
jne 0x140065bc2
mov ebp, 1
mov qword [rsp + 0x50], rbx
xor r15d, r15d
mov rax, qword [r13 + 0xc0]
cmp rax, qword [r13 + 0xc8]
jae 0x140064280
lea rcx, [rax + 1]
mov qword [r13 + 0xc0], rcx
movzx edi, byte [rax]
jmp 0x1400642ed
cmp dword [r13 + 0x30], 0
je 0x1400642bf
mov r8d, dword [r13 + 0x34]
lea r12, [r13 + 0x38]
mov rcx, qword [r13 + 0x28]
mov rdx, r12
call qword [r13 + reloc.WS2_32.dll_recv]
mov ecx, dword [r13 + 0xc0]
sub ecx, dword [r13 + 0xd0]
add dword [r13 + 0xb8], ecx
test eax, eax
je 0x1400642c3
cdqe
add rax, r12
movzx edi, byte [r12]
jmp 0x1400642d6
xor edi, edi
jmp 0x1400642ed
mov dword [r13 + 0x30], 0
lea rax, [r13 + 0x39]
mov byte [r13 + 0x38], 0
xor edi, edi
mov r11, qword [rsp + 0x40]
mov qword [r13 + 0xc8], rax
lea rax, [r13 + 0x39]
mov qword [r13 + 0xc0], rax
mov rbx, qword [r11]
mov rax, qword [rbx + 0xc0]
cmp rax, qword [rbx + 0xc8]
jae 0x140064310
lea rcx, [rax + 1]
mov qword [rbx + 0xc0], rcx
movzx eax, byte [rax]
jmp 0x140064377
cmp dword [rbx + 0x30], 0
je 0x14006434b
mov r8d, dword [rbx + 0x34]
lea r12, [rbx + 0x38]
mov rcx, qword [rbx + 0x28]
mov rdx, r12
call qword [rbx + reloc.WS2_32.dll_recv]
mov ecx, dword [rbx + 0xc0]
sub ecx, dword [rbx + 0xd0]
add dword [rbx + 0xb8], ecx
test eax, eax
je 0x14006434f
movsxd rcx, eax
add rcx, r12
movzx eax, byte [r12]
jmp 0x140064360
xor eax, eax
jmp 0x140064377
mov dword [rbx + 0x30], 0
lea rcx, [rbx + 0x39]
mov byte [rbx + 0x38], 0
xor eax, eax
mov r11, qword [rsp + 0x40]
mov qword [rbx + 0xc8], rcx
lea rcx, [rbx + 0x39]
mov qword [rbx + 0xc0], rcx
mov r13, qword [r11]
mov edx, dword [r13 + 8]
test edx, edx
jle 0x1400643a6
movzx r8d, dil
mov r9, qword [rsp + 0x80]
xor ecx, ecx
cmp dword [r9], r8d
je 0x1400643a8
inc rcx
add r9, 0x60
cmp rdx, rcx
jne 0x140064390
jmp 0x14006669a
xor ecx, ecx
cmp ecx, edx
je 0x14006669a
movzx eax, al
mov r8d, eax
shr r8d, 4
mov edx, ecx
lea rdx, [rdx + rdx*2]
shl rdx, 5
mov dword [r11 + rdx + 0x46b0], r8d
cmp al, 0x40
jae 0x140065768
and eax, 0xf
mov dword [r11 + rdx + 0x46b4], eax
cmp eax, 4
jae 0x140065781
mov dword [r11 + r15*4 + 0x4858], ecx
inc r15
movsxd rax, dword [r11 + 0x4854]
cmp r15, rax
jl 0x14006425d
mov rax, qword [r13 + 0xc0]
cmp rax, qword [r13 + 0xc8]
jae 0x140064429
lea rcx, [rax + 1]
mov qword [r13 + 0xc0], rcx
movzx eax, byte [rax]
mov r15d, 0x7fffffff
jmp 0x14006449d
cmp dword [r13 + 0x30], 0
mov r15d, 0x7fffffff
je 0x14006446f
mov r8d, dword [r13 + 0x34]
lea r12, [r13 + 0x38]
mov rcx, qword [r13 + 0x28]
mov rdx, r12
call qword [r13 + reloc.WS2_32.dll_recv]
mov ecx, dword [r13 + 0xc0]
sub ecx, dword [r13 + 0xd0]
add dword [r13 + 0xb8], ecx
test eax, eax
je 0x140064473
movsxd rcx, eax
add rcx, r12
movzx eax, byte [r12]
jmp 0x140064486
xor eax, eax
jmp 0x14006449d
mov dword [r13 + 0x30], 0
lea rcx, [r13 + 0x39]
mov byte [r13 + 0x38], 0
xor eax, eax
mov r11, qword [rsp + 0x40]
mov qword [r13 + 0xc8], rcx
lea rcx, [r13 + 0x39]
mov qword [r13 + 0xc0], rcx
movzx eax, al
mov dword [r11 + 0x4834], eax
mov rdi, qword [r11]
mov rax, qword [rdi + 0xc0]
cmp rax, qword [rdi + 0xc8]
jae 0x1400644ca
lea rcx, [rax + 1]
mov qword [rdi + 0xc0], rcx
movzx eax, byte [rax]
jmp 0x140064531
cmp dword [rdi + 0x30], 0
je 0x140064505
mov r8d, dword [rdi + 0x34]
lea r12, [rdi + 0x38]
mov rcx, qword [rdi + 0x28]
mov rdx, r12
call qword [rdi + reloc.WS2_32.dll_recv]
mov ecx, dword [rdi + 0xc0]
sub ecx, dword [rdi + 0xd0]
add dword [rdi + 0xb8], ecx
test eax, eax
je 0x140064509
movsxd rcx, eax
add rcx, r12
movzx eax, byte [r12]
jmp 0x14006451a
xor eax, eax
jmp 0x140064531
mov dword [rdi + 0x30], 0
lea rcx, [rdi + 0x39]
mov byte [rdi + 0x38], 0
xor eax, eax
mov r11, qword [rsp + 0x40]
mov qword [rdi + 0xc8], rcx
lea rcx, [rdi + 0x39]
mov qword [rdi + 0xc0], rcx
movzx eax, al
mov dword [r11 + 0x4838], eax
mov rdi, qword [r11]
mov rax, qword [rdi + 0xc0]
cmp rax, qword [rdi + 0xc8]
jae 0x14006455e
lea rcx, [rax + 1]
mov qword [rdi + 0xc0], rcx
movzx eax, byte [rax]
jmp 0x1400645c5
cmp dword [rdi + 0x30], 0
je 0x140064599
mov r8d, dword [rdi + 0x34]
lea r12, [rdi + 0x38]
mov rcx, qword [rdi + 0x28]
mov rdx, r12
call qword [rdi + reloc.WS2_32.dll_recv]
mov ecx, dword [rdi + 0xc0]
sub ecx, dword [rdi + 0xd0]
add dword [rdi + 0xb8], ecx
test eax, eax
je 0x14006459d
movsxd rcx, eax
add rcx, r12
movzx eax, byte [r12]
jmp 0x1400645ae
xor eax, eax
jmp 0x1400645c5
mov dword [rdi + 0x30], 0
lea rcx, [rdi + 0x39]
mov byte [rdi + 0x38], 0
xor eax, eax
mov r11, qword [rsp + 0x40]
mov qword [rdi + 0xc8], rcx
lea rcx, [rdi + 0x39]
mov qword [rdi + 0xc0], rcx
movzx edx, al
mov ecx, edx
shr ecx, 4
mov dword [r11 + 0x483c], ecx
and edx, 0xf
mov dword [r11 + 0x4840], edx
mov ecx, dword [r11 + 0x4830]
mov r8d, dword [r11 + 0x4834]
test ecx, ecx
je 0x140064626
cmp r8d, 0x3f
jg 0x140066771
mov r9d, dword [r11 + 0x4838]
cmp r9d, 0x3f
jg 0x140066771
cmp r8d, r9d
jg 0x140066771
cmp al, 0xdf
ja 0x140066771
cmp edx, 0xe
jb 0x14006464a
jmp 0x140066771
test r8d, r8d
jne 0x140066771
cmp al, 0xf
ja 0x140066771
test edx, edx
jne 0x140066771
mov dword [r11 + 0x4838], 0x3f
mov edx, dword [r11 + 0x4854]
mov eax, dword [r11 + 0x4868]
test eax, eax
cmove eax, r15d
mov qword [r11 + 0x4820], 0
mov dword [r11 + 0x482c], 0
mov dword [r11 + 0x47d8], 0
mov dword [r11 + 0x4778], 0
mov dword [r11 + 0x4718], 0
mov dword [r11 + 0x46b8], 0
mov byte [r11 + 0x4828], 0xff
mov dword [r11 + 0x486c], eax
mov dword [r11 + 0x4844], 0
test ecx, ecx
je 0x140064f73
cmp edx, 1
jne 0x140064fe0
movsxd rax, dword [r11 + 0x4858]
mov qword [rsp + 0x98], rax
lea rax, [rax + rax*2]
shl rax, 5
mov edx, dword [r11 + rax + 0x46c0]
test edx, edx
jle 0x140065582
mov ecx, edx
add ecx, 7
shr ecx, 3
mov dword [rsp + 0xa4], ecx
mov ecx, dword [r11 + rax + 0x46bc]
mov qword [rsp + 0xb0], rcx
add ecx, 7
sar ecx, 3
add rax, r11
add rax, 0x46f0
mov qword [rsp + 0x70], rax
cmp ecx, 2
cmovl ecx, ebp
mov dword [rsp + 0x90], ecx
mov dword [rsp + 0x58], 0
cmp dword [rsp + 0xb0], 0
mov rcx, qword [rsp + 0x70]
jle 0x140064f57
xor edi, edi
jmp 0x1400647eb
movzx eax, byte [r11 + 0x4828]
mov ecx, eax
and cl, 0xf8
cmp cl, 0xd0
jne 0x14006558a
mov qword [r11 + 0x4820], 0
mov dword [r11 + 0x482c], 0
mov dword [r11 + 0x47d8], 0
mov dword [r11 + 0x4778], 0
mov dword [r11 + 0x4718], 0
mov dword [r11 + 0x46b8], 0
mov byte [r11 + 0x4828], 0xff
mov eax, dword [r11 + 0x4868]
test eax, eax
mov ecx, 0x7fffffff
cmove eax, ecx
mov dword [r11 + 0x486c], eax
mov dword [r11 + 0x4844], 0
inc edi
cmp edi, dword [rsp + 0x90]
mov rcx, qword [rsp + 0x70]
je 0x140064f57
mov eax, dword [rcx + 8]
imul eax, dword [rsp + 0x58]
add eax, edi
shl eax, 6
movsxd r13, eax
add r13, r13
add r13, qword [rcx]
movsxd r15, dword [r11 + 0x4834]
test r15, r15
mov dword [rsp + 0x60], edi
je 0x140064909
movsxd rcx, dword [rcx - 0x3c]
imul rbp, rcx, 0x690
lea rbx, [r11 + rbp]
add rbx, 0x1a48
cmp dword [r11 + 0x483c], 0
mov r14d, dword [r11 + 0x4840]
mov eax, dword [r11 + 0x4844]
mov qword [rsp + 0x48], rbp
je 0x14006493d
test eax, eax
je 0x14006498c
dec eax
mov dword [r11 + 0x4844], eax
cmp r15d, dword [r11 + 0x4838]
jg 0x14006494e
mov edi, 0x10000
mov ecx, r14d
shl edi, cl
sar edi, 0x10
mov ebx, edi
neg ebx
jmp 0x140064894
lea rax, [r15 + 1]
movsxd rcx, dword [r11 + 0x4838]
cmp r15, rcx
mov r15, rax
jge 0x14006494e
lea rax, [0x140105550]
movzx r14d, byte [r15 + rax]
cmp word [r13 + r14*2], 0
je 0x14006487d
mov eax, dword [r11 + 0x4824]
test eax, eax
jg 0x1400648cc
mov rcx, r11
call fcn.1400755c0
mov r11, qword [rsp + 0x40]
mov eax, dword [r11 + 0x4824]
test eax, eax
jle 0x14006487d
mov ecx, dword [r11 + 0x4820]
lea edx, [rcx + rcx]
mov dword [r11 + 0x4820], edx
dec eax
mov dword [r11 + 0x4824], eax
test ecx, ecx
jns 0x14006487d
movsx eax, word [r13 + r14*2]
test edi, eax
jne 0x14006487d
test ax, ax
mov ecx, ebx
cmovg ecx, edi
add ecx, eax
mov word [r13 + r14*2], cx
jmp 0x14006487d
movsxd rax, dword [rcx - 0x40]
imul rax, rax, 0x690
lea r8, [r11 + rax]
add r8, 8
mov rcx, r11
mov rdx, r13
mov r9, qword [rsp + 0x98]
call fcn.140075780
mov r11, qword [rsp + 0x40]
test eax, eax
jne 0x14006494e
jmp 0x14006669a
test eax, eax
je 0x140064c60
dec eax
mov dword [r11 + 0x4844], eax
mov eax, dword [r11 + 0x486c]
lea ecx, [rax - 1]
mov dword [r11 + 0x486c], ecx
cmp eax, 1
mov edi, dword [rsp + 0x60]
jg 0x1400647d7
cmp dword [r11 + 0x4824], 0x17
jg 0x140064754
mov rcx, r11
call fcn.1400755c0
mov r11, qword [rsp + 0x40]
jmp 0x140064754
mov eax, 0x10000
mov ecx, r14d
shl eax, cl
sar eax, 0x10
mov r14d, eax
neg eax
mov dword [rsp + 0x88], eax
mov rax, qword [rsp + 0x50]
lea r12, [rax + rbp]
jmp 0x1400649cd
inc r15d
mov word [r13 + rbx*2], si
mov eax, dword [r11 + 0x4838]
mov rbx, rbp
mov rbp, qword [rsp + 0x48]
cmp r15d, eax
jg 0x14006494e
cmp dword [r11 + 0x4824], 0xf
jg 0x1400649e4
mov rcx, r11
call fcn.1400755c0
mov r11, qword [rsp + 0x40]
mov r8d, dword [r11 + 0x4820]
mov eax, r8d
shr eax, 0x17
movzx eax, byte [rbx + rax]
cmp rax, 0xff
je 0x140064a2b
lea rcx, [r11 + rbp]
movzx ecx, byte [rax + rcx + 0x1f48]
mov edx, dword [r11 + 0x4824]
sub edx, ecx
jl 0x1400667c4
shl r8d, cl
mov dword [r11 + 0x4820], r8d
mov dword [r11 + 0x4824], edx
jmp 0x140064aa2
mov eax, r8d
shr eax, 0x10
xor r9d, r9d
mov rcx, r9
inc r9
cmp eax, dword [r12 + rcx*4 - 0x44]
jae 0x140064a34
mov edx, dword [r11 + 0x4824]
cmp r9d, 8
je 0x1400667ba
lea rax, [r9 + 9]
cmp edx, eax
jl 0x1400667c4
mov cl, reloc.WS2_32.dll_socket
sub cl, r9b
mov r10d, r8d
shr r10d, cl
lea rcx, [0x1401055b0]
and r10d, dword [rcx + r9*4 + 0x24]
add r10d, dword [r12 + r9*4]
cmp r10d, 0xff
ja 0x1400667c4
sub edx, r9d
mov ecx, eax
shl r8d, cl
add edx, 0xfffffff7
mov dword [r11 + 0x4824], edx
mov dword [r11 + 0x4820], r8d
mov eax, r10d
lea rcx, [r11 + rbp]
movzx eax, byte [rax + rcx + 0x1e48]
mov ecx, eax
and ecx, 0xf
mov ebp, eax
shr ebp, 4
cmp ecx, 1
je 0x140064b54
test ecx, ecx
jne 0x1400667c4
xor esi, esi
mov edi, reloc.WS2_32.dll_ntohs
cmp al, 0xef
ja 0x140064ba0
mov r8d, 0xffffffff
mov ecx, ebp
shl r8d, cl
not r8d
mov dword [r11 + 0x4844], r8d
mov edi, 0x40
cmp al, 0x10
jb 0x140064ba0
cmp edx, ebp
jge 0x140064b12
mov rcx, r11
call fcn.1400755c0
mov r11, qword [rsp + 0x40]
mov edx, dword [r11 + 0x4824]
xor esi, esi
mov eax, 0
sub edx, ebp
jl 0x140064b4b
mov eax, dword [r11 + 0x4820]
mov ecx, ebp
rol eax, cl
lea rcx, [0x1401055b0]
mov ecx, dword [rcx + rbp*4]
mov r8d, ecx
not r8d
and r8d, eax
mov dword [r11 + 0x4820], r8d
and eax, ecx
mov dword [r11 + 0x4824], edx
add dword [r11 + 0x4844], eax
jmp 0x140064ba0
test edx, edx
jg 0x140064b77
mov rcx, r11
call fcn.1400755c0
mov r11, qword [rsp + 0x40]
mov edx, dword [r11 + 0x4824]
test edx, edx
jle 0x140064b90
mov r8d, dword [r11 + 0x4820]
lea eax, [r8 + r8]
mov dword [r11 + 0x4820], eax
dec edx
mov dword [r11 + 0x4824], edx
test r8d, r8d
js 0x140064b9b
mov edi, ebp
mov esi, dword [rsp + 0x88]
jmp 0x140064ba0
mov edi, ebp
mov esi, r14d
mov eax, dword [r11 + 0x4838]
cmp r15d, eax
jg 0x1400649c3
mov rbp, rbx
movsxd r15, r15d
lea r8, [0x140105550]
jmp 0x140064bdf
sub eax, r14d
mov word [r13 + rbx*2], ax
inc r15
movsxd rax, dword [r11 + 0x4838]
lea rcx, [r15 - 1]
cmp rcx, rax
jge 0x1400649c0
movzx ebx, byte [r15 + r8]
cmp word [r13 + rbx*2], 0
je 0x140064c51
mov eax, dword [r11 + 0x4824]
test eax, eax
jg 0x140064c17
mov rcx, r11
call fcn.1400755c0
mov r11, qword [rsp + 0x40]
lea r8, [0x140105550]
mov eax, dword [r11 + 0x4824]
test eax, eax
jle 0x140064bc8
mov ecx, dword [r11 + 0x4820]
lea edx, [rcx + rcx]
mov dword [r11 + 0x4820], edx
dec eax
mov dword [r11 + 0x4824], eax
test ecx, ecx
jns 0x140064bc8
movsx eax, word [r13 + rbx*2]
test r14d, eax
jne 0x140064bc8
test ax, ax
jle 0x140064bbf
add eax, r14d
jmp 0x140064bc2
test edi, edi
je 0x1400649b0
dec edi
jmp 0x140064bc8
shl rcx, 0xa
lea rdi, [r11 + rcx]
add rdi, 0x3688
mov rax, qword [rsp + 0x50]
lea r12, [rax + rbp]
mov qword [rsp + 0x88], r12
mov qword [rsp + 0xa8], rdi
jmp 0x140064cb5
inc r15d
mov ecx, r14d
shl eax, cl
mov word [r13 + rdi*2], ax
mov rdi, qword [rsp + 0xa8]
mov r12, qword [rsp + 0x88]
cmp r15d, dword [r11 + 0x4838]
jg 0x14006494e
cmp dword [r11 + 0x4824], 0xf
jg 0x140064ccc
mov rcx, r11
call fcn.1400755c0
mov r11, qword [rsp + 0x40]
mov r8d, dword [r11 + 0x4820]
mov ecx, r8d
shr ecx, 0x17
movsx eax, word [rdi + rcx*2]
test eax, eax
je 0x140064d46
mov ecx, eax
and ecx, 0xf
mov edx, dword [r11 + 0x4824]
sub edx, ecx
jl 0x1400667c4
mov r9d, eax
shr r9d, 4
and r9d, 0xf
shl r8d, cl
movsxd rcx, r15d
add rcx, r9
mov dword [r11 + 0x4820], r8d
mov dword [r11 + 0x4824], edx
lea r15d, [rcx + 1]
lea rdx, [0x140105550]
movzx edx, byte [rdx + rcx]
shr eax, 8
mov ecx, r14d
shl eax, cl
mov word [r13 + rdx*2], ax
cmp r15d, dword [r11 + 0x4838]
jle 0x140064cb5
jmp 0x14006494e
cmp dword [r11 + 0x4824], 0xf
jg 0x140064d6a
mov rcx, r11
call fcn.1400755c0
mov r11, qword [rsp + 0x40]
mov r8d, dword [r11 + 0x4820]
mov ecx, r8d
shr ecx, 0x17
movzx eax, byte [rbx + rcx]
cmp rax, 0xff
je 0x140064da4
lea rcx, [r11 + rbp]
movzx ecx, byte [rax + rcx + 0x1f48]
mov edx, dword [r11 + 0x4824]
sub edx, ecx
jl 0x1400667c4
shl r8d, cl
mov dword [r11 + 0x4820], r8d
mov dword [r11 + 0x4824], edx
jmp 0x140064e1b
mov eax, r8d
shr eax, 0x10
xor r9d, r9d
mov rcx, r9
inc r9
cmp eax, dword [r12 + rcx*4 - 0x44]
jae 0x140064dad
mov edx, dword [r11 + 0x4824]
cmp r9d, 8
je 0x1400667ba
lea rax, [r9 + 9]
cmp edx, eax
jl 0x1400667c4
mov cl, reloc.WS2_32.dll_socket
sub cl, r9b
mov r10d, r8d
shr r10d, cl
lea rcx, [0x1401055b0]
and r10d, dword [rcx + r9*4 + 0x24]
add r10d, dword [r12 + r9*4]
cmp r10d, 0xff
ja 0x1400667c4
sub edx, r9d
mov ecx, eax
shl r8d, cl
add edx, 0xfffffff7
mov dword [r11 + 0x4824], edx
mov dword [r11 + 0x4820], r8d
mov eax, r10d
lea rcx, [r11 + rbp]
movzx r8d, byte [rax + rcx + 0x1e48]
mov r12d, r8d
and r12d, 0xf
mov ebp, r8d
shr ebp, 4
test r12, r12
je 0x140064ec8
mov eax, ebp
movsxd r15, r15d
add r15, rax
lea rax, [0x140105550]
movzx edi, byte [rax + r15]
cmp edx, r12d
jge 0x140064e6b
mov rcx, r11
call fcn.1400755c0
mov r11, qword [rsp + 0x40]
mov edx, dword [r11 + 0x4824]
xor eax, eax
sub edx, r12d
mov rbp, qword [rsp + 0x48]
jl 0x140064c8a
mov r8d, dword [r11 + 0x4820]
mov eax, r8d
mov ecx, r12d
rol r8d, cl
shr eax, 0x1f
lea rcx, [0x1401055b0]
mov ecx, dword [rcx + r12*4]
mov r9d, ecx
not r9d
and r9d, r8d
mov dword [r11 + 0x4820], r9d
and r8d, ecx
mov dword [r11 + 0x4824], edx
dec eax
lea rcx, [0x140105600]
and eax, dword [rcx + r12*4]
add eax, r8d
jmp 0x140064c8a
cmp r8b, 0xef
jbe 0x140064edc
add r15d, 0x10
mov rbp, qword [rsp + 0x48]
jmp 0x140064ca0
mov eax, 1
mov ecx, ebp
shl eax, cl
mov dword [r11 + 0x4844], eax
cmp r8b, 0x10
jb 0x140064945
cmp edx, ebp
jge 0x140064f0d
mov rsi, qword [rsp + 0x40]
mov rcx, rsi
call fcn.1400755c0
mov edx, dword [rsi + 0x4824]
xor eax, eax
sub edx, ebp
jl 0x140064f46
mov r9, qword [rsp + 0x40]
mov eax, dword [r9 + 0x4820]
mov ecx, ebp
rol eax, cl
lea rcx, [0x1401055b0]
mov ecx, dword [rcx + rbp*4]
mov r8d, ecx
not r8d
and r8d, eax
mov dword [r9 + 0x4820], r8d
and eax, ecx
mov dword [r9 + 0x4824], edx
mov r11, qword [rsp + 0x40]
add eax, dword [r11 + 0x4844]
jmp 0x140064945
mov eax, dword [rsp + 0x58]
inc eax
mov dword [rsp + 0x58], eax
cmp eax, dword [rsp + 0xa4]
jne 0x14006473a
jmp 0x140065582
cmp edx, 1
jne 0x1400651ac
movsxd rdi, dword [r11 + 0x4858]
lea rax, [rdi + rdi*2]
shl rax, 5
mov edx, dword [r11 + rax + 0x46c0]
mov ecx, 1
test edx, edx
jle 0x14006557a
add edx, 7
shr edx, 3
mov dword [rsp + 0x48], edx
mov ecx, dword [r11 + rax + 0x46bc]
lea r15d, [rcx + 7]
sar r15d, 3
cmp r15d, 2
cmovl r15d, ebp
lea r12, [r11 + rax]
add r12, 0x46b4
shl r15, 3
xor r13d, r13d
xor ebp, ebp
mov qword [rsp + 0x60], rcx
jmp 0x14006541e
mov edx, dword [r11 + 0x4694]
test edx, edx
jle 0x140065582
mov ecx, dword [r11 + 0x4690]
xor ebp, ebp
test ecx, ecx
jle 0x14006519d
xor r15d, r15d
mov edx, dword [r11 + 0x4854]
test edx, edx
jle 0x1400650d4
xor edi, edi
movsxd r12, dword [r11 + rdi*4 + 0x4858]
lea rax, [r12 + r12*2]
shl rax, 5
mov ecx, dword [r11 + rax + 0x46a8]
test ecx, ecx
jle 0x1400650be
lea rbx, [r11 + rax]
add rbx, 0x46a8
mov eax, dword [r11 + rax + 0x46a4]
xor r14d, r14d
jmp 0x140065054
inc r14d
cmp r14d, ecx
jge 0x1400650b7
test eax, eax
jle 0x14006504c
xor r13d, r13d
mov ecx, dword [rbx]
imul ecx, ebp
add ecx, r14d
imul ecx, dword [rbx + 0x50]
imul eax, r15d
add eax, r13d
add eax, ecx
shl eax, 6
movsxd rdx, eax
add rdx, rdx
add rdx, qword [rbx + 0x48]
movsxd rax, dword [rbx + 8]
imul rax, rax, 0x690
lea r8, [r11 + rax]
add r8, 8
mov rcx, r11
mov r9d, r12d
call fcn.140075780
mov r11, qword [rsp + 0x40]
test eax, eax
je 0x14006669a
inc r13d
mov eax, dword [rbx - 4]
cmp r13d, eax
jl 0x14006505b
mov ecx, dword [rbx]
jmp 0x14006504c
mov edx, dword [r11 + 0x4854]
inc rdi
movsxd rax, edx
cmp rdi, rax
jl 0x140065014
mov eax, dword [r11 + 0x486c]
lea ecx, [rax - 1]
mov dword [r11 + 0x486c], ecx
cmp eax, 1
mov eax, ecx
jg 0x140065183
cmp dword [r11 + 0x4824], 0x17
jg 0x140065100
mov rcx, r11
call fcn.1400755c0
mov r11, qword [rsp + 0x40]
movzx eax, byte [r11 + 0x4828]
mov ecx, eax
and cl, 0xf8
cmp cl, 0xd0
jne 0x14006558a
mov qword [r11 + 0x4820], 0
mov dword [r11 + 0x482c], 0
mov dword [r11 + 0x47d8], 0
mov dword [r11 + 0x4778], 0
mov dword [r11 + 0x4718], 0
mov dword [r11 + 0x46b8], 0
mov byte [r11 + 0x4828], 0xff
mov eax, dword [r11 + 0x4868]
test eax, eax
mov ecx, 0x7fffffff
cmove eax, ecx
mov dword [r11 + 0x486c], eax
mov dword [r11 + 0x4844], 0
inc r15d
mov ecx, dword [r11 + 0x4690]
cmp r15d, ecx
jl 0x140065003
mov edx, dword [r11 + 0x4694]
inc ebp
cmp ebp, edx
jl 0x140064ff8
jmp 0x140065582
mov edx, dword [r11 + 0x4694]
mov ecx, 1
test edx, edx
jle 0x14006557a
mov ecx, dword [r11 + 0x4690]
mov dword [rsp + 0x48], 0
test ecx, ecx
jle 0x1400653ed
mov dword [rsp + 0x60], 0
mov ecx, dword [r11 + 0x4854]
test ecx, ecx
jle 0x140065326
xor r8d, r8d
movsxd rbx, dword [r11 + r8*4 + 0x4858]
lea rdx, [rbx + rbx*2]
shl rdx, 5
mov eax, dword [r11 + rdx + 0x46a8]
test eax, eax
jle 0x140065310
mov qword [rsp + 0x58], r8
lea r14, [r11 + rdx]
add r14, 0x46a8
mov r13d, dword [r11 + rdx + 0x46a4]
xor ebp, ebp
jmp 0x140065237
inc ebp
cmp ebp, eax
jge 0x140065304
test r13d, r13d
jle 0x14006522d
xor edi, edi
lea r12, [rsp + 0xd0]
mov r15d, dword [r14]
movsxd rax, dword [r14 + 0xc]
movsxd rcx, dword [r14 + 4]
shl rcx, 7
add rcx, r11
add rcx, 0x3488
imul r9, rax, 0x690
shl rax, 0xa
add rax, r11
add rax, 0x3688
add r9, qword [rsp + 0x68]
movsxd rdx, dword [r14 + 8]
imul r8, rdx, 0x690
add r8, qword [rsp + 0x78]
mov qword [rsp + 0x30], rcx
mov dword [rsp + 0x28], ebx
mov qword [rsp + 0x20], rax
mov rcx, r11
mov rdx, r12
mov rsi, r11
call fcn.140074fe0
test eax, eax
je 0x140065575
imul r15d, dword [rsp + 0x48]
add r15d, ebp
imul r13d, dword [rsp + 0x60]
add r13d, edi
shl r13d, 3
mov edx, dword [r14 + 0x1c]
imul r15d, edx
shl r15d, 3
movsxd rax, r15d
add rax, qword [r14 + 0x28]
movsxd rcx, r13d
add rcx, rax
mov r8, r12
call qword [rsi + 0x4870]
inc edi
mov r13d, dword [r14 - 4]
cmp edi, r13d
mov r11, rsi
jl 0x140065246
mov eax, dword [r14]
mov r15d, 0x7fffffff
jmp 0x14006522d
mov ecx, dword [r11 + 0x4854]
mov r8, qword [rsp + 0x58]
inc r8
movsxd rax, ecx
cmp r8, rax
jl 0x1400651f1
mov eax, dword [r11 + 0x486c]
lea ecx, [rax - 1]
mov dword [r11 + 0x486c], ecx
cmp eax, 1
mov eax, ecx
jg 0x1400653cd
cmp dword [r11 + 0x4824], 0x17
jg 0x140065352
mov rcx, r11
call fcn.1400755c0
mov r11, qword [rsp + 0x40]
movzx eax, byte [r11 + 0x4828]
and al, 0xf8
cmp al, 0xd0
jne 0x140065403
mov qword [r11 + 0x4820], 0
mov dword [r11 + 0x482c], 0
mov dword [r11 + 0x47d8], 0
mov dword [r11 + 0x4778], 0
mov dword [r11 + 0x4718], 0
mov dword [r11 + 0x46b8], 0
mov byte [r11 + 0x4828], 0xff
mov eax, dword [r11 + 0x4868]
test eax, eax
cmove eax, r15d
mov dword [r11 + 0x486c], eax
mov dword [r11 + 0x4844], 0
mov edx, dword [rsp + 0x60]
inc edx
mov ecx, dword [r11 + 0x4690]
mov dword [rsp + 0x60], edx
cmp edx, ecx
jl 0x1400651df
mov edx, dword [r11 + 0x4694]
mov r8d, dword [rsp + 0x48]
inc r8d
mov dword [rsp + 0x48], r8d
cmp r8d, edx
jl 0x1400651cf
mov ecx, 1
jmp 0x14006557a
inc ebp
add r13d, 8
cmp ebp, dword [rsp + 0x48]
mov rcx, qword [rsp + 0x60]
je 0x140065403
test ecx, ecx
jle 0x14006540d
xor r14d, r14d
jmp 0x1400654b2
movzx eax, byte [r11 + 0x4828]
and al, 0xf8
cmp al, 0xd0
jne 0x140065403
mov qword [r11 + 0x4820], 0
mov dword [r11 + 0x482c], 0
mov dword [r11 + 0x47d8], 0
mov dword [r11 + 0x4778], 0
mov dword [r11 + 0x4718], 0
mov dword [r11 + 0x46b8], 0
mov byte [r11 + 0x4828], 0xff
mov eax, dword [r11 + 0x4868]
test eax, eax
mov ecx, 0x7fffffff
cmove eax, ecx
mov dword [r11 + 0x486c], eax
mov dword [r11 + 0x4844], 0
add r14, 8
cmp r15, r14
je 0x14006540d
movsxd rax, dword [r12]
movsxd rcx, dword [r12 - 8]
shl rcx, 7
add rcx, r11
add rcx, 0x3488
imul r9, rax, 0x690
shl rax, 0xa
add rax, r11
add rax, 0x3688
add r9, qword [rsp + 0x68]
movsxd rdx, dword [r12 - 4]
imul r8, rdx, 0x690
add r8, qword [rsp + 0x78]
mov qword [rsp + 0x30], rcx
mov dword [rsp + 0x28], edi
mov qword [rsp + 0x20], rax
mov rcx, r11
lea rbx, [rsp + 0xd0]
mov rdx, rbx
mov rsi, r11
call fcn.140074fe0
test eax, eax
je 0x140065575
mov edx, dword [r12 + 0x10]
mov eax, r13d
imul eax, edx
movsxd rcx, eax
add rcx, qword [r12 + 0x1c]
add rcx, r14
mov r8, rbx
call qword [rsi + 0x4870]
mov eax, dword [rsi + 0x486c]
lea ecx, [rax - 1]
mov dword [rsi + 0x486c], ecx
cmp eax, 1
mov r11, rsi
jg 0x1400654a5
cmp dword [r11 + 0x4824], 0x17
jg 0x14006542a
mov rcx, r11
call fcn.1400755c0
mov r11, qword [rsp + 0x40]
jmp 0x14006542a
xor ecx, ecx
mov r11, rsi
test ecx, ecx
je 0x14006669a
movzx eax, byte [r11 + 0x4828]
cmp al, 0xff
mov rbx, qword [rsp + 0x50]
jne 0x140065748
jmp 0x140065707
mov rdi, qword [r11]
mov rax, qword [rdi + 0xc0]
cmp rax, qword [rdi + 0xc8]
jae 0x1400655c2
lea rcx, [rax + 1]
mov qword [rdi + 0xc0], rcx
movzx eax, byte [rax]
jmp 0x140065645
cmp dword [rdi + 0x30], 0
je 0x1400655fd
mov r8d, dword [rdi + 0x34]
lea r12, [rdi + 0x38]
mov rcx, qword [rdi + 0x28]
mov rdx, r12
call qword [rdi + reloc.WS2_32.dll_recv]
mov ecx, dword [rdi + 0xc0]
sub ecx, dword [rdi + 0xd0]
add dword [rdi + 0xb8], ecx
test eax, eax
je 0x140065601
movsxd rcx, eax
add rcx, r12
movzx eax, byte [r12]
jmp 0x140065612
xor eax, eax
jmp 0x140065645
mov dword [rdi + 0x30], 0
lea rcx, [rdi + 0x39]
mov byte [rdi + 0x38], 0
xor eax, eax
mov qword [rdi + 0xc8], rcx
lea rcx, [rdi + 0x39]
mov qword [rdi + 0xc0], rcx
mov r11, qword [rsp + 0x40]
jmp 0x140065645
lea rcx, [rax + 1]
mov qword [rdi + 0xc0], rcx
movzx eax, byte [rax]
lea ecx, [rax - 1]
cmp cl, 0xfd
jbe 0x140065741
cmp al, 0xff
jne 0x140065707
mov rdi, qword [r11]
cmp qword [rdi + 0x10], 0
je 0x140065671
mov rcx, qword [rdi + 0x28]
call qword [rdi + 0x20]
mov r11, qword [rsp + 0x40]
test eax, eax
je 0x140065685
cmp dword [rdi + 0x30], 0
je 0x14006573f
mov rax, qword [rdi + 0xc0]
cmp rax, qword [rdi + 0xc8]
jae 0x14006573f
mov rdi, qword [r11]
mov rax, qword [rdi + 0xc0]
cmp rax, qword [rdi + 0xc8]
jb 0x14006562b
cmp dword [rdi + 0x30], 0
je 0x1400656d3
mov r8d, dword [rdi + 0x34]
lea r12, [rdi + 0x38]
mov rcx, qword [rdi + 0x28]
mov rdx, r12
call qword [rdi + reloc.WS2_32.dll_recv]
mov ecx, dword [rdi + 0xc0]
sub ecx, dword [rdi + 0xd0]
add dword [rdi + 0xb8], ecx
test eax, eax
je 0x1400656da
movsxd rcx, eax
add rcx, r12
movzx eax, byte [r12]
jmp 0x1400656eb
xor eax, eax
jmp 0x140065639
mov dword [rdi + 0x30], 0
lea rcx, [rdi + 0x39]
mov byte [rdi + 0x38], 0
xor eax, eax
mov qword [rdi + 0xc8], rcx
lea rcx, [rdi + 0x39]
mov qword [rdi + 0xc0], rcx
mov r11, qword [rsp + 0x40]
jmp 0x140065639
mov rdi, qword [r11]
cmp qword [rdi + 0x10], 0
je 0x14006572b
mov rcx, qword [rdi + 0x28]
call qword [rdi + 0x20]
mov r11, qword [rsp + 0x40]
test eax, eax
je 0x14006559c
cmp dword [rdi + 0x30], 0
je 0x14006573f
mov rax, qword [rdi + 0xc0]
cmp rax, qword [rdi + 0xc8]
jb 0x14006559c
mov al, 0xff
mov byte [r11 + 0x4828], al
mov rcx, r11
call fcn.140072f70
mov r11, qword [rsp + 0x40]
mov ecx, eax
and cl, 0xf8
cmp cl, 0xd0
jne 0x140064112
jmp 0x1400641a5
cmp byte [0x14018667c], 0
je 0x140065bdb
lea rax, [0x140186670]
jmp 0x140066680
cmp byte [0x14018668c], 0
je 0x140065c9d
lea rax, [0x140186680]
jmp 0x140066680
cmp dword [r11 + 0x4830], 0
mov r13, qword [r11]
je 0x1400659db
cmp dword [r13 + 8], 0
jle 0x1400659db
lea r15, [r11 + 0x3508]
lea r12, [r11 + 0x348e]
xor ecx, ecx
jmp 0x1400657e0
mov r13, qword [r11]
mov rcx, qword [rsp + 0x68]
inc rcx
movsxd rax, dword [r13 + 8]
cmp rcx, rax
jge 0x1400659db
lea rax, [rcx + rcx*2]
shl rax, 5
mov esi, dword [r11 + rax + 0x46c0]
test esi, esi
jle 0x1400657d0
mov qword [rsp + 0x68], rcx
add esi, 7
shr esi, 3
mov ecx, dword [r11 + rax + 0x46bc]
mov qword [rsp + 0x80], rcx
lea ebx, [rcx + 7]
sar ebx, 3
lea r14, [r11 + rax]
add r14, 0x46f0
cmp ebx, 2
mov eax, 1
cmovl ebx, eax
xor ebp, ebp
jmp 0x140065836
inc ebp
cmp ebp, esi
je 0x1400657c8
cmp dword [rsp + 0x80], 0
jle 0x140065830
lea r13d, [rbp*8]
xor edi, edi
jmp 0x140065925
movdqu xmm0, xmmword [rax]
movdqu xmm1, xmmword [r8]
pmullw xmm1, xmm0
movdqu xmm0, xmmword [r8 + 0x10]
movdqu xmm2, xmmword [r8 + 0x20]
movdqu xmm3, xmmword [r8 + 0x30]
movdqu xmmword [r8], xmm1
movdqu xmm1, xmmword [rax + 0x10]
pmullw xmm1, xmm0
movdqu xmmword [r8 + 0x10], xmm1
movdqu xmm0, xmmword [rax + 0x20]
pmullw xmm0, xmm2
movdqu xmmword [r8 + 0x20], xmm0
movdqu xmm0, xmmword [rax + 0x30]
pmullw xmm0, xmm3
movdqu xmmword [r8 + 0x30], xmm0
movdqu xmm0, xmmword [rax + 0x40]
movdqu xmm1, xmmword [r8 + 0x40]
pmullw xmm1, xmm0
movdqu xmmword [r8 + 0x40], xmm1
movdqu xmm0, xmmword [rax + 0x50]
movdqu xmm1, xmmword [r8 + 0x50]
pmullw xmm1, xmm0
movdqu xmmword [r8 + 0x50], xmm1
movdqu xmm0, xmmword [rax + 0x60]
movdqu xmm1, xmmword [r8 + 0x60]
pmullw xmm1, xmm0
movdqu xmmword [r8 + 0x60], xmm1
movdqu xmm0, xmmword [rax + 0x70]
movdqu xmm1, xmmword [r8 + 0x70]
pmullw xmm1, xmm0
movdqu xmmword [r8 + 0x70], xmm1
mov edx, dword [r14 - 0x2c]
mov eax, r13d
imul eax, edx
cdqe
add rax, qword [r14 - 0x20]
lea rcx, [rax + rdi*8]
mov rax, qword [rsp + 0x40]
call qword [rax + 0x4870]
mov r11, qword [rsp + 0x40]
inc rdi
cmp rdi, rbx
je 0x140065830
mov rdx, qword [r14]
mov eax, dword [r14 + 8]
imul eax, ebp
add eax, edi
shl eax, 6
movsxd r9, eax
lea r8, [rdx + r9*2]
movsxd rcx, dword [r14 - 0x44]
shl rcx, 7
lea rax, [r11 + rcx]
add rax, 0x3488
lea r10, [r15 + rcx]
cmp r8, r10
jae 0x140065850
lea r10, [rdx + r9*2]
add r10, 0x80
cmp rax, r10
jae 0x140065850
add rcx, r12
lea rax, [rdx + r9*2]
add rax, 6
xor edx, edx
nop dword [rax + rax]
movzx r9d, word [rax + rdx*2 - 6]
imul r9w, word [rcx + rdx*2 - 6]
movzx r10d, word [rax + rdx*2 - 4]
mov word [rax + rdx*2 - 6], r9w
imul r10w, word [rcx + rdx*2 - 4]
mov word [rax + rdx*2 - 4], r10w
movzx r9d, word [rax + rdx*2 - 2]
imul r9w, word [rcx + rdx*2 - 2]
mov word [rax + rdx*2 - 2], r9w
movzx r9d, word [rax + rdx*2]
imul r9w, word [rcx + rdx*2]
mov word [rax + rdx*2], r9w
add rdx, 4
cmp rdx, 0x40
jne 0x140065980
jmp 0x1400658f5
mov r13, qword [r11]
mov eax, dword [r13 + 8]
xor ecx, ecx
cmp eax, 3
setge cl
mov edx, dword [rsp + 0x240]
test edx, edx
lea r8d, [rcx + rcx + 1]
cmovne r8d, edx
cmp eax, 3
jne 0x140065a18
mov dl, 1
cmp dword [r11 + 0x4850], 3
je 0x140065a1a
cmp dword [r11 + 0x484c], 0
je 0x140066761
xor edx, edx
test dl, dl
mov ecx, 1
cmovne ecx, eax
cmp r8d, 3
cmovge ecx, eax
cmp rax, 3
cmovne ecx, eax
test ecx, ecx
jle 0x140065c16
mov dword [rsp + 0x78], edx
mov dword [rsp + 0x68], r8d
pxor xmm0, xmm0
movdqa xmmword [rsp + 0x1a0], xmm0
movdqa xmmword [rsp + 0x190], xmm0
mov eax, ecx
mov ecx, dword [r13]
mov qword [rsp + 0x80], rax
shl rax, 4
lea rdi, [rax + rax*2]
xor ebx, ebx
mov r14, qword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_malloc]
lea rsi, [0x140074c10]
lea r12, [0x140074e20]
lea rbp, [0x140074a20]
lea r15, [0x140074a10]
jmp 0x140065aae
mov rax, r12
mov qword [rsp + rbx + 0xd0], rax
add rbx, 0x30
cmp rdi, rbx
je 0x140065d5d
add ecx, 3
call r14
mov r10, qword [rsp + 0x40]
mov qword [r10 + rbx*2 + 0x46e8], rax
test rax, rax
je 0x140065cd8
mov eax, dword [r10 + 0x4688]
cdq
idiv dword [r10 + rbx*2 + 0x46a4]
mov r9d, eax
mov dword [rsp + rbx + 0xe8], eax
mov eax, dword [r10 + 0x468c]
cdq
idiv dword [r10 + rbx*2 + 0x46a8]
mov r8d, eax
mov dword [rsp + rbx + 0xec], eax
sar eax, 1
mov dword [rsp + rbx + 0xf4], eax
mov ecx, dword [r13]
lea eax, [r9 + rcx]
dec eax
xor edx, edx
div r9d
mov dword [rsp + rbx + 0xf0], eax
mov dword [rsp + rbx + 0xf8], 0
mov rax, qword [r10 + rbx*2 + 0x46d0]
mov qword [rsp + rbx + 0xe0], rax
mov qword [rsp + rbx + 0xd8], rax
cmp r9d, 2
je 0x140065b68
cmp r9d, 1
jne 0x140065a96
cmp r8d, 2
mov rax, r12
cmove rax, rbp
cmp r8d, 1
cmove rax, r15
jmp 0x140065a99
mov rax, rsi
cmp r8d, 1
je 0x140065a99
cmp r8d, 2
jne 0x140065a96
mov rax, qword [r10 + 0x4880]
jmp 0x140065a99
cmp byte [0x14018662c], 0
je 0x1400665cc
lea rax, [0x140186620]
mov r11, qword [rsp + 0x40]
jmp 0x140066680
cmp byte [0x14018663f], 0
je 0x140066609
lea rax, [0x140186630]
jmp 0x140066680
cmp byte [0x14018666c], 0
je 0x140066644
lea rax, [0x140186660]
jmp 0x140066680
movabs rax, 0x6820434420646162
mov qword [0x140186670], rax
lea rax, [0x140186670]
mov word [0x140186678], 0x6675
mov byte [0x14018667a], 0x66
lea rcx, [0x14018667c]
lea rdx, [0x14018667b]
jmp 0x14006667a
test eax, eax
jle 0x140066726
shl rax, 5
lea rdi, [rax + rax*2]
mov rbx, r11
add rbx, 0x46f0
xor r15d, r15d
mov r14, qword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_free]
xorps xmm6, xmm6
xor r12d, r12d
jmp 0x140065c54
add r12, 0x60
cmp rdi, r12
mov r11, qword [rsp + 0x40]
je 0x140066729
mov rcx, qword [rbx + r12 - 0x18]
test rcx, rcx
je 0x140065c67
call r14
movups xmmword [rbx + r12 - 0x20], xmm6
mov rcx, qword [rbx + r12 - 0x10]
test rcx, rcx
je 0x140065c85
call r14
mov qword [rbx + r12 - 0x10], 0
mov qword [rbx + r12], 0
mov rcx, qword [rbx + r12 - 8]
test rcx, rcx
je 0x140065c42
call r14
mov qword [rbx + r12 - 8], 0
jmp 0x140065c42
movabs rax, 0x6820434120646162
mov qword [0x140186680], rax
lea rax, [0x140186680]
mov word [0x140186688], 0x6675
mov byte [0x14018668a], 0x66
lea rcx, [0x14018668c]
lea rdx, [0x14018668b]
jmp 0x14006667a
mov eax, dword [r13 + 8]
test eax, eax
jle 0x140066512
shl rax, 5
lea rdi, [rax + rax*2]
mov rbx, qword [rsp + 0x40]
add rbx, 0x46f0
xor r14d, r14d
mov r15, qword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_free]
xorps xmm6, xmm6
jmp 0x140065d14
add r14, 0x60
cmp rdi, r14
je 0x140066512
mov rcx, qword [rbx + r14 - 0x18]
test rcx, rcx
je 0x140065d27
call r15
movups xmmword [rbx + r14 - 0x20], xmm6
mov rcx, qword [rbx + r14 - 0x10]
test rcx, rcx
je 0x140065d45
call r15
mov qword [rbx + r14 - 0x10], 0
mov qword [rbx + r14], 0
mov rcx, qword [rbx + r14 - 8]
test rcx, rcx
je 0x140065d07
call r15
mov qword [rbx + r14 - 8], 0
jmp 0x140065d07
mov eax, ecx
mov r14d, dword [rsp + 0x68]
or eax, r14d
js 0x140066495
mov edi, dword [r13 + 4]
test ecx, ecx
je 0x140065d87
mov eax, 0x7fffffff
xor edx, edx
div ecx
cmp eax, r14d
jl 0x140066495
imul ecx, r14d
mov eax, edi
or eax, ecx
js 0x140066495
test edi, edi
je 0x140065daa
mov eax, 0x7fffffff
xor edx, edx
div edi
cmp eax, ecx
jl 0x140066495
imul ecx, edi
cmp ecx, 0x7fffffff
je 0x140066495
inc ecx
movsxd rcx, ecx
call qword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_malloc]
test rax, rax
je 0x140066495
mov r15, rax
test edi, edi
je 0x140066801
mov r12d, r14d
mov rax, qword [rsp + 0x40]
add rax, 0x46c0
mov qword [rsp + 0x60], rax
lea rax, [r15 + 1]
mov qword [rsp + 0x90], rax
lea rax, [r15 + 2]
mov qword [rsp + 0x98], rax
lea rax, [r15 + 3]
mov qword [rsp + 0x70], rax
xor edi, edi
xor eax, eax
mov qword [rsp + 0x58], r12
mov qword [rsp + 0x50], rdi
mov ebp, dword [r13]
mov dword [rsp + 0x48], eax
mov esi, eax
imul esi, r14d
imul esi, ebp
lea rdi, [rsp + 0xf8]
mov rbx, qword [rsp + 0x60]
xor r14d, r14d
jmp 0x140065e56
inc r14
add rbx, 0x60
add rdi, 0x30
cmp qword [rsp + 0x80], r14
je 0x140065edc
mov r13d, dword [rdi - 4]
mov eax, dword [rdi - 0x10]
mov r12d, dword [rdi - 0xc]
mov ecx, r12d
sar ecx, 1
xor edx, edx
xor r8d, r8d
cmp r13d, ecx
setge dl
setl r8b
mov r9d, dword [rdi - 8]
shl r8d, 3
or r8, 0xffffffffffffffe0
mov r8, qword [rdi + r8]
shl edx, 3
or rdx, 0xffffffffffffffe0
mov rdx, qword [rdi + rdx]
mov rcx, qword [rbx + 0x28]
mov dword [rsp + 0x20], eax
call qword [rdi - 0x28]
mov qword [rsp + r14*8 + 0x190], rax
inc r13d
mov dword [rdi - 4], r13d
cmp r13d, r12d
jl 0x140065e3d
mov dword [rdi - 4], 0
mov rax, qword [rdi - 0x18]
mov qword [rdi - 0x20], rax
mov ecx, dword [rdi]
inc ecx
mov dword [rdi], ecx
cmp ecx, dword [rbx]
jge 0x140065e3d
movsxd rcx, dword [rbx + 4]
add rax, rcx
mov qword [rdi - 0x18], rax
jmp 0x140065e3d
mov r14d, dword [rsp + 0x68]
cmp r14d, 3
jl 0x140065fe2
add rsi, r15
mov rdx, qword [rsp + 0x190]
mov r11, qword [rsp + 0x40]
mov r13, qword [r11]
mov eax, dword [r13 + 8]
cmp eax, 3
mov rdi, qword [rsp + 0x50]
je 0x14006617c
cmp eax, 4
mov r12, qword [rsp + 0x58]
jne 0x1400661e5
mov eax, dword [r11 + 0x484c]
cmp eax, 2
je 0x140066337
test eax, eax
jne 0x14006625e
cmp dword [r13], 0
je 0x14006647d
mov rax, qword [rsp + 0x1a8]
mov rcx, qword [rsp + 0x198]
mov r8, qword [rsp + 0x1a0]
imul ebp, edi
add rbp, qword [rsp + 0x70]
xor r9d, r9d
movzx r10d, byte [rax + r9]
movzx r11d, byte [rdx + r9]
imul r11d, r10d
lea edi, [r11 + 0x80]
shr edi, 8
lea ebx, [rdi + r11]
add ebx, 0x80
mov byte [rbp - 3], bh
movzx r11d, byte [rcx + r9]
imul r11d, r10d
lea edi, [r11 + 0x80]
shr edi, 8
lea ebx, [rdi + r11]
add ebx, 0x80
mov byte [rbp - 2], bh
movzx r11d, byte [r8 + r9]
imul r11d, r10d
lea r10d, [r11 + 0x80]
shr r10d, 8
lea ebx, [r10 + r11]
add ebx, 0x80
mov byte [rbp - 1], bh
mov byte [rbp], 0xff
inc r9
mov r10d, dword [r13]
add rbp, r12
cmp r9, r10
jb 0x140065f64
jmp 0x140066169
mov r11, qword [rsp + 0x40]
mov r13, qword [r11]
cmp byte [rsp + 0x78], 0
mov rdi, qword [rsp + 0x50]
je 0x14006606d
mov eax, dword [r13]
cmp r14d, 1
jne 0x140066296
test eax, eax
je 0x14006647d
mov rax, qword [rsp + 0x1a0]
mov rcx, qword [rsp + 0x190]
mov rdx, qword [rsp + 0x198]
imul ebp, edi
add rbp, r15
xor edi, edi
movzx ebx, byte [rax + rdi]
movzx r8d, byte [rdx + rdi]
movzx r9d, byte [rcx + rdi]
imul r9d, r9d, 0x4d
imul r8d, r8d, 0x96
lea r10d, [rbx + rbx*8]
lea r10d, [r10 + r10*2]
add ebx, ebx
add ebx, r10d
add ebx, r8d
add ebx, r9d
mov byte [rbp + rdi], bh
inc rdi
mov r8d, dword [r13]
cmp rdi, r8
jb 0x14006602c
jmp 0x1400662ff
cmp dword [r13 + 8], 4
mov r12, qword [rsp + 0x58]
jne 0x14006621f
mov eax, dword [r11 + 0x484c]
cmp eax, 2
je 0x140066419
test eax, eax
jne 0x14006621f
cmp dword [r13], 0
je 0x14006647d
mov rax, qword [rsp + 0x1a8]
mov rcx, qword [rsp + 0x190]
mov rdx, qword [rsp + 0x198]
mov r8, qword [rsp + 0x1a0]
imul ebp, edi
add rbp, qword [rsp + 0x90]
xor r9d, r9d
movzx r10d, byte [rax + r9]
movzx r11d, byte [rcx + r9]
imul r11d, r10d
lea edi, [r11 + 0x80]
shr edi, 8
add r11d, edi
add r11d, 0x80
shr r11d, 8
movzx edi, byte [rdx + r9]
imul edi, r10d
lea ebx, [rdi + 0x80]
shr ebx, 8
add edi, ebx
add edi, 0x80
shr edi, 8
movzx ebx, byte [r8 + r9]
imul ebx, r10d
lea r10d, [rbx + 0x80]
shr r10d, 8
add ebx, r10d
add ebx, 0x80
shr ebx, 8
imul r10d, r11d, 0x4d
imul r11d, edi, 0x96
add r11d, r10d
lea r10d, [rbx + rbx*8]
lea r10d, [r10 + r10*2]
add ebx, ebx
add ebx, r10d
add ebx, r11d
mov byte [rbp - 1], bh
mov byte [rbp], 0xff
inc r9
mov r10d, dword [r13]
add rbp, r12
cmp r9, r10
jb 0x1400660ce
mov rdi, qword [rsp + 0x50]
mov eax, dword [rsp + 0x48]
mov r11, qword [rsp + 0x40]
jmp 0x140066481
cmp byte [rsp + 0x78], 0
mov r12, qword [rsp + 0x58]
je 0x14006625e
cmp dword [r13], 0
je 0x14006647d
mov rax, qword [rsp + 0x198]
mov rcx, qword [rsp + 0x1a0]
imul ebp, edi
add rbp, qword [rsp + 0x70]
xor r8d, r8d
movzx r9d, byte [rdx + r8]
mov byte [rbp - 3], r9b
movzx r9d, byte [rax + r8]
mov byte [rbp - 2], r9b
movzx r9d, byte [rcx + r8]
mov byte [rbp - 1], r9b
mov byte [rbp], 0xff
inc r8
mov r9d, dword [r13]
add rbp, r12
cmp r8, r9
jb 0x1400661b2
jmp 0x14006647d
cmp dword [r13], 0
je 0x14006647d
imul ebp, edi
add rbp, qword [rsp + 0x70]
xor eax, eax
movzx ecx, byte [rdx + rax]
mov byte [rbp - 1], cl
mov byte [rbp - 2], cl
mov byte [rbp - 3], cl
mov byte [rbp], 0xff
inc rax
mov ecx, dword [r13]
add rbp, r12
cmp rax, rcx
jb 0x1400661fa
jmp 0x14006647d
mov rax, qword [rsp + 0x190]
mov ecx, dword [r13]
cmp r14d, 1
jne 0x140066309
test ecx, ecx
je 0x14006647d
imul ebp, edi
add rbp, r15
xor ecx, ecx
movzx edx, byte [rax + rcx]
mov byte [rbp + rcx], dl
inc rcx
mov edx, dword [r13]
cmp rcx, rdx
jb 0x140066245
jmp 0x14006647d
mov eax, dword [r13]
mov r8, qword [rsp + 0x198]
mov r9, qword [rsp + 0x1a0]
mov dword [rsp + 0x28], r14d
mov dword [rsp + 0x20], eax
mov rcx, rsi
mov rax, qword [rsp + 0x40]
call qword [rax + 0x4878]
mov r11, qword [rsp + 0x40]
mov r13, qword [r11]
jmp 0x14006647d
test eax, eax
je 0x14006647d
mov rax, qword [rsp + 0x1a0]
mov rcx, qword [rsp + 0x190]
mov rdx, qword [rsp + 0x198]
imul ebp, edi
add rbp, r15
xor edi, edi
movzx ebx, byte [rax + rdi]
movzx r8d, byte [rdx + rdi]
movzx r9d, byte [rcx + rdi]
imul r9d, r9d, 0x4d
imul r8d, r8d, 0x96
lea r10d, [rbx + rbx*8]
lea r10d, [r10 + r10*2]
add ebx, ebx
add ebx, r10d
add ebx, r8d
add ebx, r9d
mov byte [rbp + rdi*2], bh
mov byte [rbp + rdi*2 + 1], 0xff
inc rdi
mov r8d, dword [r13]
cmp rdi, r8
jb 0x1400662be
mov rdi, qword [rsp + 0x50]
jmp 0x14006647d
test ecx, ecx
je 0x14006647d
imul ebp, edi
add rbp, r15
xor ecx, ecx
movzx edx, byte [rax + rcx]
mov byte [rbp + rcx*2], dl
mov byte [rbp + rcx*2 + 1], 0xff
inc rcx
mov edx, dword [r13]
cmp rcx, rdx
jb 0x140066319
jmp 0x14006647d
mov eax, dword [r13]
mov r8, qword [rsp + 0x198]
mov r9, qword [rsp + 0x1a0]
mov dword [rsp + 0x28], r14d
mov dword [rsp + 0x20], eax
mov rcx, rsi
mov rax, qword [rsp + 0x40]
call qword [rax + 0x4878]
mov r11, qword [rsp + 0x40]
mov r13, qword [r11]
cmp dword [r13], 0
je 0x14006647d
mov rax, qword [rsp + 0x1a8]
imul ebp, edi
add rbp, qword [rsp + 0x98]
xor ecx, ecx
movzx edx, byte [rax + rcx]
movzx r8d, byte [rbp - 2]
xor r8d, 0xff
imul r8d, edx
lea r9d, [r8 + 0x80]
shr r9d, 8
lea ebx, [r9 + r8]
add ebx, 0x80
mov byte [rbp - 2], bh
movzx r8d, byte [rbp - 1]
xor r8d, 0xff
imul r8d, edx
lea r9d, [r8 + 0x80]
shr r9d, 8
lea ebx, [r9 + r8]
add ebx, 0x80
mov byte [rbp - 1], bh
movzx r8d, byte [rbp]
xor r8d, 0xff
imul r8d, edx
lea edx, [r8 + 0x80]
shr edx, 8
add edx, r8d
add edx, 0x80
mov byte [rbp], dh
inc rcx
mov edx, dword [r13]
add rbp, r12
cmp rcx, rdx
jb 0x14006638a
jmp 0x14006647d
cmp dword [r13], 0
je 0x14006647d
mov rax, qword [rsp + 0x190]
mov rcx, qword [rsp + 0x1a8]
imul ebp, edi
add rbp, qword [rsp + 0x90]
xor edx, edx
movzx r8d, byte [rcx + rdx]
movzx r9d, byte [rax + rdx]
xor r9d, 0xff
imul r9d, r8d
lea r8d, [r9 + 0x80]
shr r8d, 8
lea ebx, [r8 + r9]
add ebx, 0x80
mov byte [rbp - 1], bh
mov byte [rbp], 0xff
inc rdx
mov r8d, dword [r13]
add rbp, r12
cmp rdx, r8
jb 0x14006643d
mov eax, dword [rsp + 0x48]
inc eax
add edi, r14d
cmp eax, dword [r13 + 4]
jb 0x140065e15
jmp 0x140066806
mov eax, dword [r13 + 8]
test eax, eax
jle 0x140066512
shl rax, 5
lea rdi, [rax + rax*2]
mov rbx, qword [rsp + 0x40]
add rbx, 0x46f0
xor r14d, r14d
mov r15, qword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_free]
xorps xmm6, xmm6
jmp 0x1400664c9
add r14, 0x60
cmp rdi, r14
je 0x140066512
mov rcx, qword [rbx + r14 - 0x18]
test rcx, rcx
je 0x1400664dc
call r15
movups xmmword [rbx + r14 - 0x20], xmm6
mov rcx, qword [rbx + r14 - 0x10]
test rcx, rcx
je 0x1400664fa
call r15
mov qword [rbx + r14 - 0x10], 0
mov qword [rbx + r14], 0
mov rcx, qword [rbx + r14 - 8]
test rcx, rcx
je 0x1400664c0
call r15
mov qword [rbx + r14 - 8], 0
jmp 0x1400664c0
cmp byte [0x140186241], 0
jne 0x14006653a
movabs rax, 0x6d656d666f74756f
mov qword [0x140186238], rax
mov byte [0x140186240], 0
mov byte [0x140186241], 1
mov eax, dword [0x14019f7f0]
mov rcx, qword gs:[0x58]
mov rax, qword [rcx + rax*8]
lea rcx, [0x140186238]
mov qword [rax + 8], rcx
xor r15d, r15d
mov r11, qword [rsp + 0x40]
jmp 0x140066729
mov dword [r11 + 0x4854], 0
cmp byte [0x140186658], 0
je 0x140066588
lea rax, [0x140186640]
jmp 0x140066680
movdqa xmm0, xmmword [0x1401076b0]
movdqa xmmword [0x140186640], xmm0
lea rax, [0x140186640]
mov dword [0x140186650], 0x6f632074
mov word [0x140186654], 0x6e75
mov byte [0x140186656], 0x74
lea rcx, [0x140186658]
lea rdx, [0x140186657]
jmp 0x14006667a
movabs rax, 0x204c4e4420646162
mov qword [0x140186620], rax
lea rax, [0x140186620]
mov word [0x140186628], 0x656c
mov byte [0x14018662a], 0x6e
lea rcx, [0x14018662c]
lea rdx, [0x14018662b]
mov r11, qword [rsp + 0x40]
jmp 0x14006667a
movabs rax, 0x204c4e4420646162
mov qword [0x140186630], rax
lea rax, [0x140186630]
mov dword [0x140186638], 0x67696568
mov word [0x14018663c], 0x7468
lea rcx, [0x14018663f]
lea rdx, [0x14018663e]
jmp 0x14006667a
movabs rax, 0x20534f5320646162
mov qword [0x140186660], rax
lea rax, [0x140186660]
mov word [0x140186668], 0x656c
mov byte [0x14018666a], 0x6e
lea rcx, [0x14018666c]
lea rdx, [0x14018666b]
mov byte [rdx], 0
mov byte [rcx], 1
mov ecx, dword [0x14019f7f0]
mov rdx, qword gs:[0x58]
mov rcx, qword [rdx + rcx*8]
mov qword [rcx + 8], rax
mov rax, qword [r11]
mov eax, dword [rax + 8]
test eax, eax
jle 0x140066726
shl rax, 5
lea rdi, [rax + rax*2]
mov rbx, r11
add rbx, 0x46f0
xor r15d, r15d
mov r14, qword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_free]
xorps xmm6, xmm6
xor r12d, r12d
jmp 0x1400666dd
add r12, 0x60
cmp rdi, r12
je 0x14006655e
mov rcx, qword [rbx + r12 - 0x18]
test rcx, rcx
je 0x1400666f0
call r14
movups xmmword [rbx + r12 - 0x20], xmm6
mov rcx, qword [rbx + r12 - 0x10]
test rcx, rcx
je 0x14006670e
call r14
mov qword [rbx + r12 - 0x10], 0
mov qword [rbx + r12], 0
mov rcx, qword [rbx + r12 - 8]
test rcx, rcx
je 0x1400666d0
call r14
mov qword [rbx + r12 - 8], 0
jmp 0x1400666d0
xor r15d, r15d
mov rcx, r11
call qword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_free]
mov rcx, qword [rsp + 0x1b8]
xor rcx, rsp
call fcn.1400f0d70
mov rax, r15
movaps xmm6, xmmword [rsp + 0x1c0]
add rsp, 0x1d8
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret
cmp dword [r11 + 0x4848], 0
sete dl
jmp 0x140065a1a
cmp byte [0x140186698], 0
je 0x140066786
lea rax, [0x140186690]
jmp 0x140066680
mov dword [0x140186690], 0x20646162
lea rax, [0x140186690]
mov word [0x140186694], 0x4f53
mov byte [0x140186696], 0x53
lea rcx, [0x140186698]
lea rdx, [0x140186697]
jmp 0x14006667a
add edx, 0xfffffff0
mov dword [r11 + 0x4824], edx
cmp byte [0x1401866b1], 0
je 0x1400667d9
lea rax, [0x1401866a0]
jmp 0x140066680
movaps xmm0, xmmword [0x140107660]
movaps xmmword [0x1401866a0], xmm0
lea rax, [0x1401866a0]
lea rcx, [0x1401866b1]
lea rdx, [0x1401866b0]
jmp 0x14006667a
mov r11, qword [rsp + 0x40]
mov eax, dword [r13 + 8]
test eax, eax
jle 0x1400668a2
shl rax, 5
lea rdi, [rax + rax*2]
xor ebx, ebx
mov r14, qword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_free]
xorps xmm6, xmm6
jmp 0x140066831
add rbx, 0x60
cmp rdi, rbx
je 0x14006689f
mov rcx, qword [r11 + rbx + 0x46d8]
test rcx, rcx
je 0x14006684f
call r14
mov r11, qword [rsp + 0x40]
movups xmmword [r11 + rbx + 0x46d0], xmm6
mov rcx, qword [r11 + rbx + 0x46e0]
test rcx, rcx
je 0x14006687c
call r14
mov r11, qword [rsp + 0x40]
mov qword [r11 + rbx + 0x46e0], 0
mov qword [r11 + rbx + 0x46f0], 0
mov rcx, qword [r11 + rbx + 0x46e8]
test rcx, rcx
je 0x140066828
call r14
mov r11, qword [rsp + 0x40]
mov qword [r11 + rbx + 0x46e8], 0
jmp 0x140066828
mov r13, qword [r11]
mov eax, dword [r13]
mov rcx, qword [rsp + 0xb8]
mov dword [rcx], eax
mov eax, dword [r13 + 4]
mov rcx, qword [rsp + 0xc0]
mov dword [rcx], eax
mov rcx, qword [rsp + 0xc8]
test rcx, rcx
je 0x140066729
xor eax, eax
cmp dword [r13 + 8], 3
setge al
lea eax, [rax*2 + 1]
mov dword [rcx], eax
jmp 0x140066729