Function at 0x14005cdf0
Capabilities:
Encode data using xor
Hash data using fnv
Resolve function by parsing pe exports

Disassembly:
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbp
push rbx
sub rsp, 0xe38
movaps xmmword [rsp + 0xe20], xmm13
movaps xmmword [rsp + 0xe10], xmm12
movdqa xmmword [rsp + 0xe00], xmm11
movdqa xmmword [rsp + 0xdf0], xmm10
movaps xmmword [rsp + 0xde0], xmm9
movdqa xmmword [rsp + 0xdd0], xmm8
movdqa xmmword [rsp + 0xdc0], xmm7
movdqa xmmword [rsp + 0xdb0], xmm6
mov rax, qword [rcx]
cmp rax, 5
je 0x140060335
cmp eax, 4
je 0x140060335
cmp eax, 3
je 0x14006037d
mov r15, rdx
mov rbp, rcx
lea r14, [rcx + 8]
xor r12d, r12d
cmp rax, 2
sete cl
cmovne r14, rbp
cmp eax, 2
jne 0x14005f938
mov r12b, cl
shl r12, 3
lea r13, [rbp + 0x98]
lea rsi, [rsp + 0x541]
lea rbx, [rbp + 0x10]
lea rax, [rbp + 0xb8]
mov qword [rsp + 0x538], rax
lea rax, [rbp + 0xa8]
mov qword [rsp + 0x338], rax
movdqa xmm6, xmmword [0x14011a680]
pcmpeqd xmm7, xmm7
movdqa xmm8, xmmword [0x14011a670]
xorps xmm9, xmm9
movdqa xmm10, xmmword [str.uespemosarenegylmodnarodsetybdeteeeeeeeeeeeeeeeeaaaaaaaaaaaaaaaa]
movdqa xmm11, xmmword [0x14011a660]
mov qword [rsp + 0xe0], rdi
nop dword [rax]
lea rcx, [rsp + 0x540]
mov rdx, r13
mov r8, r15
call fcn.14001b390
movzx edi, byte [rsp + 0x540]
cmp edi, 5
jne 0x14005f953
mov rax, qword [rbp + r12]
mov qword [rbp + r12], 2
cmp rax, 2
je 0x14005cfa0
mov qword [rsp + 0xb60], rax
mov rax, qword [rbx + 0x60]
lea rcx, [rsp + 0xb68]
mov qword [rcx + 0x60], rax
movups xmm0, xmmword [rbx + 0x50]
movups xmmword [rcx + 0x50], xmm0
movups xmm0, xmmword [rbx + 0x40]
movups xmmword [rcx + 0x40], xmm0
movdqu xmm0, xmmword [rbx]
movdqu xmm1, xmmword [rbx + 0x10]
movups xmm2, xmmword [rbx + 0x20]
movups xmm3, xmmword [rbx + 0x30]
movups xmmword [rcx + 0x30], xmm3
movups xmmword [rcx + 0x20], xmm2
movdqu xmmword [rcx + 0x10], xmm1
movdqu xmmword [rcx], xmm0
mov rcx, r14
lea rdx, [rsp + 0xb60]
mov r8, r15
call fcn.140031f90
jmp 0x14005cf00
mov r8, qword [r15]
lea rdi, [rsp + 0x780]
mov rcx, rdi
mov rdx, qword [rsp + 0x538]
call fcn.140048870
mov rax, qword [rsp + 0x880]
cmp rax, 2
je 0x1400601f4
cmp eax, 3
je 0x140060160
mov r8d, 0x100
lea rcx, [rsp + 0xa60]
mov rdx, rdi
call sub.msvcrt.dll_memcpy
lea rax, [rsp + 0x880]
movdqu xmm0, xmmword [rax]
movdqa xmmword [rsp + 0x100], xmm0
mov rax, qword [rax + 0x10]
mov qword [rsp + 0x110], rax
cmp qword [rsp + 0x100], 0
mov rax, qword [rsp + 0x108]
je 0x14005d56c
test rax, rax
mov rdi, qword [rsp + 0xe0]
je 0x1400603a8
mov rax, qword [rsp + 0x110]
test rax, rax
je 0x1400603c2
add rax, 0xd0
mov rax, qword [rax]
test al, 4
jne 0x14005d59d
mov r8d, 0xe0
lea rcx, [rsp + 0x680]
lea rdx, [rsp + 0xa60]
call sub.msvcrt.dll_memcpy
lea rax, [rsp + 0xb40]
movups xmm0, xmmword [rax]
movups xmm1, xmmword [rax + 0x10]
movaps xmmword [rsp + 0x300], xmm1
movaps xmmword [rsp + 0x2f0], xmm0
mov r8d, 0xa
lea rdi, [rsp + 0x140]
mov rcx, rdi
lea rdx, [0x14013d1b7]
call fcn.1400a6d90
cmp qword [rsp + 0x140], 0
jne 0x140060468
mov qword [rsp + 0x70], rbx
mov qword [rsp + 0xd8], r13
mov qword [rsp + 0xe8], r12
mov qword [rsp + 0xa8], r14
mov qword [rsp + 0xf0], r15
mov qword [rsp + 0xc8], rbp
lea rsi, [rsp + 0x148]
movups xmm0, xmmword [rsi]
movups xmm1, xmmword [rsi + 0x10]
movaps xmmword [rsp + 0x550], xmm1
movaps xmmword [rsp + 0x540], xmm0
mov r8d, 0x10
mov rcx, rdi
lea rdx, str.proxy_connection
call fcn.1400a6d90
cmp qword [rsp + 0x140], 0
jne 0x140060471
movups xmm0, xmmword [rsi]
movups xmm1, xmmword [rsi + 0x10]
lea rax, [rsp + 0x358]
movups xmmword [rax + 0x18], xmm1
movups xmmword [rax + 8], xmm0
movaps xmm0, xmmword [rsp + 0x540]
movdqa xmm1, xmmword [rsp + 0x550]
movaps xmmword [rsp + 0x340], xmm0
movdqa xmmword [rsp + 0x350], xmm1
movups xmm0, xmmword [0x14013d580]
movups xmmword [rax + 0x38], xmm0
movups xmm0, xmmword [0x14013d570]
movups xmmword [rax + 0x28], xmm0
movups xmm0, xmmword [0x14013d1f8]
movups xmmword [rax + 0x58], xmm0
movups xmm0, xmmword [0x14013d1e8]
movups xmmword [rax + 0x48], xmm0
movups xmm0, xmmword [0x14013d5a0]
movups xmmword [rax + 0x78], xmm0
movdqu xmm0, xmmword [0x14013d590]
movdqu xmmword [rax + 0x68], xmm0
lea rdx, [rsp + 0x340]
xor ecx, ecx
jmp 0x14005d1e4
mov rcx, qword [rsp + 0x48]
inc rcx
mov rax, rcx
shl rax, 5
lea rdx, [rsp + rax]
add rdx, 0x340
cmp rcx, 5
je 0x14005d3d9
mov qword [rsp + 0x48], rcx
mov rax, qword [rsp + 0x6b8]
test rax, rax
je 0x14005d1c0
lea rcx, [rsp + 0x680]
mov qword [rsp + 0x58], rdx
mov qword [rsp + 0x40], rax
call fcn.1400ade00
mov rdx, qword [rsp + 0x40]
mov r9, qword [rsp + 0x58]
mov ebp, eax
movzx edi, word [rsp + 0x6d8]
mov r12d, edi
and r12d, ebp
mov rsi, qword [rsp + 0x698]
mov r14, qword [rsp + 0x6a0]
mov r10, qword [rsp + 0x6a8]
xor ebx, ebx
mov qword [rsp + 0x60], r10
jmp 0x14005d266
movzx eax, byte [rax + 8]
cmp al, byte [r9 + 8]
je 0x14005d318
nop word cs:[rax + rax]
inc rbx
inc r12
mov rax, r12
nop dword [rax]
mov r12, rax
mov eax, 0
cmp r12, r14
jae 0x14005d270
movzx r13d, word [rsi + r12*4]
cmp r13, 0xffff
je 0x14005d1c0
movzx eax, word [rsi + r12*4 + 2]
mov ecx, eax
and ecx, edi
mov r8d, r12d
sub r8d, ecx
and r8d, edi
cmp rbx, r8
ja 0x14005d1c0
cmp ax, bp
jne 0x14005d260
cmp rdx, r13
jbe 0x14006014f
imul r15, r13, 0x68
mov rcx, qword [r10 + r15 + 0x40]
test rcx, rcx
setne al
cmp qword [r9], 0
sete r8b
cmp al, r8b
je 0x14005d260
lea rax, [r10 + r15]
add rax, 0x40
test rcx, rcx
je 0x14005d248
mov r8, qword [rax + 0x10]
cmp r8, qword [r9 + 0x10]
jne 0x14005d260
mov rdx, qword [r9 + 8]
mov rcx, qword [rax + 8]
call sub.msvcrt.dll_memcmp
mov r10, qword [rsp + 0x60]
mov rdx, qword [rsp + 0x40]
mov r9, qword [rsp + 0x58]
test eax, eax
jne 0x14005d260
cmp qword [r10 + r15], 0
lea rsi, [rsp + 0x680]
je 0x14005d336
add r10, r15
mov rdx, qword [r10 + 8]
mov rcx, rsi
call fcn.1400af040
lea rcx, [rsp + 0x140]
mov rdx, rsi
mov r8, r12
mov r9, r13
call fcn.1400af4f0
lea rcx, [rsp + 0x158]
mov rax, qword [rcx + 0x20]
mov qword [rsp + 0x560], rax
movdqu xmm0, xmmword [rcx]
movdqu xmm1, xmmword [rcx + 0x10]
movdqa xmmword [rsp + 0x550], xmm1
movdqa xmmword [rsp + 0x540], xmm0
mov rax, qword [rsp + 0x180]
test rax, rax
je 0x14005d3a3
mov rdx, qword [rsp + 0x188]
mov r8, qword [rsp + 0x190]
lea rcx, [rsp + 0x198]
call qword [rax + 0x10]
cmp byte [rsp + 0x560], 2
je 0x14005d1c0
mov rax, qword [rsp + 0x540]
mov rdx, qword [rsp + 0x548]
mov r8, qword [rsp + 0x550]
lea rcx, [rsp + 0x558]
call qword [rax + 0x10]
jmp 0x14005d1c0
movups xmm12, xmmword [0x14013d5c0]
movaps xmmword [rsp + 0x150], xmm12
movups xmm13, xmmword [0x14013d5b0]
movaps xmmword [rsp + 0x140], xmm13
mov rax, qword [rsp + 0x6b8]
test rax, rax
je 0x14005d66f
lea rcx, [rsp + 0x680]
lea rdx, [rsp + 0x140]
mov qword [rsp + 0x58], rax
call fcn.1400ade00
mov rdx, qword [rsp + 0x58]
mov ebp, eax
movzx edi, word [rsp + 0x6d8]
mov ebx, edi
and ebx, ebp
mov r13, qword [rsp + 0x698]
mov r12, qword [rsp + 0x6a0]
mov r15, qword [rsp + 0x6a8]
mov r10, qword [rsp + 0x140]
mov r11, qword [rsp + 0x148]
movzx eax, byte [rsp + 0x148]
mov byte [rsp + 0x40], al
mov rax, qword [rsp + 0x150]
mov qword [rsp + 0x48], rax
xor esi, esi
mov qword [rsp + 0x60], r10
mov qword [rsp + 0x80], r11
jmp 0x14005d4a6
movzx ecx, byte [rsp + 0x40]
cmp byte [rax + 8], cl
je 0x14005d562
nop dword [rax]
inc rsi
inc rbx
mov rax, rbx
nop dword [rax]
mov rbx, rax
mov eax, 0
cmp rbx, r12
jae 0x14005d4b0
movzx ecx, word [r13 + rbx*4]
cmp rcx, 0xffff
je 0x14005d5c9
movzx eax, word [r13 + rbx*4 + 2]
mov r9d, eax
and r9d, edi
mov r8d, ebx
sub r8d, r9d
and r8d, edi
cmp rsi, r8
ja 0x14005d5c9
cmp ax, bp
jne 0x14005d4a0
cmp rdx, rcx
jbe 0x140060232
test r10, r10
sete al
imul r14, rcx, 0x68
mov rcx, qword [r15 + r14 + 0x40]
test rcx, rcx
setne r8b
cmp r8b, al
je 0x14005d4a0
lea rax, [r15 + r14]
add rax, 0x40
test rcx, rcx
je 0x14005d48b
mov rcx, qword [rsp + 0x48]
cmp qword [rax + 0x10], rcx
jne 0x14005d4a0
mov rcx, qword [rax + 8]
mov rdx, r11
mov r8, qword [rsp + 0x48]
call sub.msvcrt.dll_memcmp
mov r11, qword [rsp + 0x80]
mov r10, qword [rsp + 0x60]
mov rdx, qword [rsp + 0x58]
test eax, eax
jne 0x14005d4a0
lea rsi, [r15 + r14]
add rsi, 0x18
jmp 0x14005d5cb
test rax, rax
mov rdi, qword [rsp + 0xe0]
je 0x1400603a8
mov rax, qword [rsp + 0x110]
test rax, rax
je 0x1400603c2
add rax, 0x30
mov rax, qword [rax]
test al, 4
je 0x14005d057
lea rcx, [rsp + 0x100]
call fcn.140022ae0
lea rcx, [rsp + 0xa60]
call fcn.140023810
lea rcx, [rsp + 0xb40]
call fcn.140025250
jmp 0x14005cef1
xor esi, esi
test r10, r10
lea rdi, [rsp + 0x140]
lea rbx, [0x14013c4ff]
je 0x14005d5f3
lea rcx, [rsp + 0x158]
mov rdx, r11
mov r8, qword [rsp + 0x48]
call qword [r10 + 0x10]
test rsi, rsi
je 0x14005d67e
cmp qword [rsi + 0x10], 8
jne 0x14005d616
mov rax, qword [rsi + 8]
movabs rcx, 0x7372656c69617274
cmp qword [rax], rcx
je 0x14005d67e
movaps xmmword [rsp + 0x550], xmm12
movaps xmmword [rsp + 0x540], xmm13
mov rcx, rdi
lea rdx, [rsp + 0x680]
lea r8, [rsp + 0x540]
call fcn.1400af7a0
cmp byte [rsp + 0x160], 2
je 0x14005d67e
mov rax, qword [rsp + 0x140]
mov rdx, qword [rsp + 0x148]
mov r8, qword [rsp + 0x150]
lea rcx, [rsp + 0x158]
call qword [rax + 0x10]
jmp 0x14005d67e
lea rdi, [rsp + 0x140]
lea rbx, [0x14013c4ff]
movups xmm0, xmmword [0x14013d5e8]
movaps xmmword [rsp + 0x150], xmm0
movdqu xmm0, xmmword [0x14013d5d8]
movdqa xmmword [rsp + 0x140], xmm0
lea rcx, [rsp + 0x2c0]
lea rdx, [rsp + 0x680]
mov r8, rdi
call fcn.1400af7a0
cmp byte [rsp + 0x2e0], 2
je 0x14005dedd
movdqu xmm0, xmmword [rsp + 0x2c0]
movdqu xmm1, xmmword [rsp + 0x2d0]
movdqa xmmword [rsp + 0x310], xmm0
movdqa xmmword [rsp + 0x320], xmm1
mov rax, qword [rsp + 0x2e0]
mov qword [rsp + 0x330], rax
mov rcx, qword [rsp + 0x318]
mov rax, qword [rsp + 0x320]
xor edx, edx
lea rsi, [rsp + 0x8a0]
nop word cs:[rax + rax]
cmp rax, rdx
je 0x14005d742
movzx r8d, byte [rcx + rdx]
inc rdx
cmp r8b, 9
je 0x14005d720
add r8b, 0xe0
cmp r8b, 0x5f
jb 0x14005d720
jmp 0x14006034f
mov qword [rsp + 0x540], 0
mov qword [rsp + 0x548], rax
mov qword [rsp + 0x550], rcx
mov qword [rsp + 0x558], rax
mov qword [rsp + 0x560], 0
mov qword [rsp + 0x568], rax
mov qword [rsp + 0x570], 1
movabs rax, 0x2c0000002c
mov qword [rsp + 0x578], rax
mov word [rsp + 0x580], 1
jmp 0x14005d7c7
lea rsi, [rsp + 0x8a0]
lea rdi, [rsp + 0x140]
lea rbx, [0x14013c4ff]
lea rcx, [rsp + 0x540]
call fcn.1400bde50
test rax, rax
je 0x14005deba
mov rcx, rax
call fcn.1400ad650
mov r8, rdx
mov qword [rsp + 0x20], rbx
mov rcx, rdi
mov rdx, rax
mov r9, rsi
call fcn.1400a4140
movzx ebp, byte [rsp + 0x150]
cmp bpl, 3
je 0x14005d7c7
mov r11, qword [rsp + 0x6b8]
test r11, r11
je 0x14005d7b0
mov rdx, qword [rsp + 0x140]
mov r10, qword [rsp + 0x148]
cmp dword [rsp + 0x680], 2
mov qword [rsp + 0x40], rdx
jne 0x14005d8ed
mov r13, r10
mov r15, r11
movdqu xmm0, xmmword [rsp + 0x688]
pshufd xmm1, xmm0, 0x44
pxor xmm1, xmm10
movdqa xmmword [rsp + 0x140], xmm1
pshufd xmm1, xmm0, 0xee
pxor xmm1, xmm11
movdqa xmmword [rsp + 0x150], xmm1
movdqa xmmword [rsp + 0x160], xmm0
lea rax, [rsp + 0x170]
movaps xmmword [rax], xmm9
mov qword [rax + 0x10], 0
xor eax, eax
cmp bpl, 2
setne al
mov qword [rsp + 0x88], rax
mov r8d, 8
lea rdi, [rsp + 0x140]
mov rcx, rdi
lea r14, [rsp + 0x88]
mov rdx, r14
call fcn.1400930a0
mov eax, ebp
cmp al, 2
jne 0x14005d92e
mov rsi, qword [rsp + 0x40]
movzx eax, sil
mov qword [rsp + 0x88], rax
mov r8d, 8
mov rcx, rdi
mov rdx, r14
call fcn.1400930a0
mov rdx, rsi
jmp 0x14005da5d
xor r12d, r12d
cmp bpl, 2
setne r12b
movabs rax, 0xcbf29ce484222325
xor r12, rax
movabs rcx, 0x1efac7090aef4a21
imul r12, rcx
cmp bpl, 2
jne 0x14005d957
movzx eax, dl
xor rax, r12
imul rax, rcx
mov r9b, 2
mov r12, rax
jmp 0x14005db66
test al, al
lea rbx, [0x14013c4ff]
mov rdx, qword [rsp + 0x40]
je 0x14005da26
mov rcx, rdi
mov r8, r13
call fcn.1400930a0
mov rdx, qword [rsp + 0x40]
jmp 0x14005da5d
lea rax, [rdx + r10]
test bpl, bpl
je 0x14005ddc4
test r10, r10
movabs r9, 0x100000001b3
je 0x14005de0c
mov rsi, r10
mov r8, r10
and r8, 7
je 0x14005de17
mov rcx, rdx
nop word [rax + rax]
movzx r10d, byte [rcx]
inc rcx
xor r10, r12
imul r10, r9
mov r12, r10
dec r8
jne 0x14005d990
cmp rsi, 8
jb 0x14005da18
nop dword [rax]
movzx r8d, byte [rcx]
xor r8, r10
imul r8, r9
movzx r10d, byte [rcx + 1]
xor r10, r8
imul r10, r9
movzx r8d, byte [rcx + 2]
xor r8, r10
imul r8, r9
movzx r10d, byte [rcx + 3]
xor r10, r8
imul r10, r9
movzx r8d, byte [rcx + 4]
xor r8, r10
imul r8, r9
movzx r10d, byte [rcx + 5]
xor r10, r8
imul r10, r9
movzx r8d, byte [rcx + 6]
xor r8, r10
imul r8, r9
movzx r10d, byte [rcx + 7]
add rcx, 8
xor r10, r8
imul r10, r9
cmp rcx, rax
jne 0x14005d9b0
mov r12, r10
mov r10, rsi
mov r9b, 1
jmp 0x14005db66
test r13, r13
je 0x14005da5d
xor esi, esi
nop dword [rax]
movzx eax, byte [rdx + rsi]
movzx eax, byte [rax + rbx]
mov byte [rsp + 0x88], al
mov r8d, 1
mov rcx, rdi
mov rdx, r14
call fcn.1400930a0
mov rdx, qword [rsp + 0x40]
inc rsi
cmp r13, rsi
jne 0x14005da30
mov rax, qword [rsp + 0x150]
mov r9, qword [rsp + 0x170]
shl r9, 0x38
or r9, qword [rsp + 0x178]
mov rcx, qword [rsp + 0x158]
mov r8, qword [rsp + 0x140]
add r8, rax
rol rax, 0xd
xor rcx, r9
xor rax, r8
rol r8, 0x20
mov r10, qword [rsp + 0x148]
add r10, rcx
rol rcx, 0x10
xor rcx, r10
add r8, rcx
rol rcx, 0x15
add r10, rax
rol rax, 0x11
xor rcx, r8
xor rax, r10
rol r10, 0x20
xor r8, r9
add r8, rax
rol rax, 0xd
xor rax, r8
rol r8, 0x20
xor r10, 0xff
add r10, rcx
rol rcx, 0x10
xor rcx, r10
add r8, rcx
rol rcx, 0x15
add r10, rax
rol rax, 0x11
xor rax, r10
rol r10, 0x20
xor rcx, r8
add r8, rax
rol rax, 0xd
xor rax, r8
rol r8, 0x20
add r10, rcx
rol rcx, 0x10
xor rcx, r10
add r8, rcx
rol rcx, 0x15
add r10, rax
rol rax, 0x11
xor rax, r10
rol r10, 0x20
xor rcx, r8
add r8, rax
rol rax, 0xd
xor rax, r8
add r10, rcx
shl rcx, 0x10
xor rcx, r10
shr rcx, 0x2b
add r10, rax
shr rax, 0x2f
xor rax, rcx
mov r12, r10
shr r12, 0x20
xor r12, r10
xor r12, rax
mov r11, r15
mov r10, r13
mov r9d, ebp
and r12d, 0x7fff
movzx r15d, word [rsp + 0x6d8]
mov ebp, r12d
and ebp, r15d
mov r13, qword [rsp + 0x698]
mov rdi, qword [rsp + 0x6a0]
mov rax, qword [rsp + 0x6a8]
mov qword [rsp + 0x48], rax
mov rax, r10
neg rax
mov qword [rsp + 0x58], rax
xor esi, esi
mov dword [rsp + 0x60], r9d
jmp 0x14005dbb6
inc rsi
inc rbp
mov rax, rbp
nop dword [rax]
mov rbp, rax
mov eax, 0
cmp rbp, rdi
jae 0x14005dbc0
movzx r14d, word [r13 + rbp*4]
cmp r14, 0xffff
je 0x14005d7b0
movzx eax, word [r13 + rbp*4 + 2]
mov ecx, eax
and ecx, r15d
mov r8d, ebp
sub r8d, ecx
and r8d, r15d
cmp rsi, r8
ja 0x14005d7b0
cmp ax, r12w
jne 0x14005dbb0
cmp r11, r14
jbe 0x1400601b2
imul rbx, r14, 0x68
mov rcx, qword [rsp + 0x48]
lea rax, [rcx + rbx]
add rax, 0x40
cmp qword [rcx + rbx + 0x40], 0
je 0x14005dc7a
cmp r9b, 2
je 0x14005dbb0
test r9b, r9b
je 0x14005dc8f
cmp qword [rax + 0x10], r10
jne 0x14005dbb0
mov rcx, qword [rax + 8]
mov r8, r10
mov qword [rsp + 0x80], r11
mov qword [rsp + 0xf8], r10
call sub.msvcrt.dll_memcmp
mov r9d, dword [rsp + 0x60]
mov r10, qword [rsp + 0xf8]
mov rdx, qword [rsp + 0x40]
mov r11, qword [rsp + 0x80]
test eax, eax
jne 0x14005dbb0
jmp 0x14005dcec
cmp r9b, 2
jne 0x14005dbb0
cmp byte [rax + 8], dl
jne 0x14005dbb0
jmp 0x14005dcec
cmp qword [rax + 0x10], r10
jne 0x14005dbb0
mov rax, qword [rax + 8]
mov rcx, 0xffffffffffffffff
nop word cs:[rax + rax]
mov r8, qword [rsp + 0x58]
add r8, rcx
cmp r8, 0xffffffffffffffff
je 0x14005dcec
movzx r9d, byte [rdx + rcx + 1]
lea r8, [0x14013c4ff]
movzx r8d, byte [r9 + r8]
lea r9, [rcx + 1]
cmp r8b, byte [rax + rcx + 1]
mov rcx, r9
je 0x14005dcb0
cmp r9, r10
mov r9d, dword [rsp + 0x60]
jb 0x14005dbb0
mov rax, qword [rsp + 0x48]
cmp qword [rax + rbx], 0
lea rsi, [rsp + 0x680]
je 0x14005dd0f
add rax, rbx
mov rdx, qword [rax + 8]
mov rcx, rsi
call fcn.1400af040
lea rdi, [rsp + 0x140]
mov rcx, rdi
mov rdx, rsi
mov r8, rbp
mov r9, r14
call fcn.1400af4f0
lea rcx, [rsp + 0x158]
mov rax, qword [rcx + 0x20]
mov qword [rsp + 0x9a0], rax
movdqu xmm0, xmmword [rcx]
movdqu xmm1, xmmword [rcx + 0x10]
movdqa xmmword [rsp + 0x990], xmm1
movdqa xmmword [rsp + 0x980], xmm0
mov rax, qword [rsp + 0x180]
test rax, rax
lea rsi, [rsp + 0x8a0]
lea rbx, [0x14013c4ff]
je 0x14005dd8e
mov rdx, qword [rsp + 0x188]
mov r8, qword [rsp + 0x190]
lea rcx, [rsp + 0x198]
call qword [rax + 0x10]
cmp byte [rsp + 0x9a0], 2
je 0x14005d7c7
mov rax, qword [rsp + 0x980]
mov rdx, qword [rsp + 0x988]
mov r8, qword [rsp + 0x990]
lea rcx, [rsp + 0x998]
call qword [rax + 0x10]
jmp 0x14005d7c7
test r10, r10
movabs r9, 0x100000001b3
mov r8, r10
lea r10, [0x14013c4ff]
je 0x14005de2c
mov rsi, r8
and r8, 3
je 0x14005de3c
mov rcx, qword [rsp + 0x40]
nop dword [rax + rax]
movzx edx, byte [rcx]
movzx edx, byte [rdx + r10]
xor rdx, r12
imul rdx, r9
inc rcx
mov r12, rdx
dec r8
jne 0x14005ddf0
jmp 0x14005de44
xor r10d, r10d
mov r9b, 1
jmp 0x14005db66
mov r10, r12
mov rcx, rdx
cmp rsi, 8
jae 0x14005d9b0
jmp 0x14005da18
xor r10d, r10d
xor r9d, r9d
mov rdx, qword [rsp + 0x40]
jmp 0x14005db66
mov rcx, qword [rsp + 0x40]
mov rdx, r12
mov r12, rdx
cmp rsi, 4
jae 0x14005de60
xor r9d, r9d
mov r12, rdx
mov rdx, qword [rsp + 0x40]
mov r10, rsi
jmp 0x14005db66
movzx edx, byte [rcx]
movzx edx, byte [rdx + r10]
xor rdx, r12
imul rdx, r9
movzx r8d, byte [rcx + 1]
movzx r8d, byte [r8 + r10]
xor r8, rdx
imul r8, r9
movzx edx, byte [rcx + 2]
movzx edx, byte [rdx + r10]
xor rdx, r8
imul rdx, r9
movzx r8d, byte [rcx + 3]
movzx r12d, byte [r8 + r10]
xor r12, rdx
imul r12, r9
add rcx, 4
cmp rcx, rax
jne 0x14005de60
mov rdx, qword [rsp + 0x40]
mov r10, rsi
xor r9d, r9d
jmp 0x14005db66
mov rax, qword [rsp + 0x310]
mov rdx, qword [rsp + 0x318]
mov r8, qword [rsp + 0x320]
lea rcx, [rsp + 0x328]
call qword [rax + 0x10]
mov rax, qword [rsp + 0x340]
test rax, rax
je 0x14005df05
mov rdx, qword [rsp + 0x348]
mov r8, qword [rsp + 0x350]
lea rcx, [rsp + 0x358]
call qword [rax + 0x10]
mov rax, qword [rsp + 0x360]
test rax, rax
mov rbp, qword [rsp + 0xc8]
mov r15, qword [rsp + 0xf0]
mov r12, qword [rsp + 0xe8]
lea rsi, [rsp + 0x541]
mov r13, qword [rsp + 0xd8]
mov rbx, qword [rsp + 0x70]
je 0x14005df5a
mov rdx, qword [rsp + 0x368]
mov r8, qword [rsp + 0x370]
lea rcx, [rsp + 0x378]
call qword [rax + 0x10]
mov rax, qword [rsp + 0x380]
test rax, rax
je 0x14005df82
mov rdx, qword [rsp + 0x388]
mov r8, qword [rsp + 0x390]
lea rcx, [rsp + 0x398]
call qword [rax + 0x10]
mov rax, qword [rsp + 0x3a0]
test rax, rax
je 0x14005dfaa
mov rdx, qword [rsp + 0x3a8]
mov r8, qword [rsp + 0x3b0]
lea rcx, [rsp + 0x3b8]
call qword [rax + 0x10]
mov rax, qword [rsp + 0x3c0]
test rax, rax
je 0x14005dfd2
mov rdx, qword [rsp + 0x3c8]
mov r8, qword [rsp + 0x3d0]
lea rcx, [rsp + 0x3d8]
call qword [rax + 0x10]
cmp qword [rsp + 0x2f0], 0
je 0x14005dfff
mov ecx, 1
mov r14, qword [rsp + 0x300]
mov rax, r14
test rcx, rcx
lea rcx, [rsp + 0x340]
jne 0x14005e043
jmp 0x14005e0f6
mov rdx, qword [rsp + 0x2f8]
mov rax, qword [rsp + 0x300]
lea rcx, [rsp + 0x540]
call qword [rax + 0x30]
mov rax, qword [rsp + 0x550]
mov rcx, qword [rsp + 0x540]
mov r14, qword [rsp + 0x548]
test rcx, rcx
lea rcx, [rsp + 0x340]
je 0x14005e0f6
cmp rax, r14
jne 0x14005e0f6
test r14, r14
je 0x14005e0b1
movups xmm0, xmmword [0x14013d1d8]
movaps xmmword [rsp + 0x150], xmm0
movdqu xmm0, xmmword [0x14013d1c8]
movdqa xmmword [rsp + 0x140], xmm0
lea rdx, [rsp + 0x680]
lea rdi, [rsp + 0x140]
mov r8, rdi
call fcn.1400ae160
cmp byte [rsp + 0x372], 2
jne 0x14005e0db
mov rax, qword [rsp + 0x340]
mov rcx, qword [rsp + 0x350]
mov rdx, qword [rax + 0x38]
cmp rcx, rdx
jb 0x14005e0f6
jmp 0x140060327
movzx edi, byte [rsp + 0x738]
cmp rdi, 7
ja 0x14005e0ca
mov eax, 0xb2
bt rax, rdi
jb 0x14005e0fe
lea rcx, [rsp + 0x680]
xor edx, edx
call fcn.1400ae0d0
jmp 0x14005e0f6
mov rcx, rdi
mov rdx, r14
call fcn.1400a9f80
lea rcx, [rsp + 0x340]
mov rdx, rdi
call fcn.1400ae380
movzx edi, byte [rsp + 0x738]
cmp qword [rsp + 0x2f0], 0
je 0x14005e12a
cmp qword [rsp + 0x300], 0
sete byte [rsp + 0x40]
mov r14, qword [rsp + 0xa8]
cmp dil, 7
je 0x14005e153
jmp 0x14005e1e9
mov rcx, qword [rsp + 0x2f8]
mov rax, qword [rsp + 0x300]
call qword [rax + 0x28]
mov byte [rsp + 0x40], al
mov r14, qword [rsp + 0xa8]
cmp dil, 7
jne 0x14005e1e9
lea rcx, [rsp + 0x680]
call fcn.1400ad8e0
test rax, rax
je 0x14005e1e9
test rdx, rdx
je 0x14005e1e9
mov rax, qword [rsp + 0x110]
mov qword [rsp + 0x150], rax
movdqa xmm0, xmmword [rsp + 0x100]
movdqa xmmword [rsp + 0x140], xmm0
mov byte [rsp + 0x340], 2
mov dword [rsp + 0x344], 2
lea rdi, [rsp + 0x340]
mov rcx, rdi
call fcn.1400ab0a0
mov qword [rsp + 0x340], rax
mov qword [rsp + 0x348], 3
lea rcx, [rsp + 0x140]
mov rdx, rdi
call fcn.140046e20
lea rcx, [rsp + 0x680]
call fcn.140023810
jmp 0x14005efc4
mov rax, qword [rsp + 0x750]
test rax, rax
movabs r12, 0xd96d72dd4adb9c98
movabs r15, 0xc266733dca28fb1f
mov qword [rsp + 0x48], rdi
je 0x14005e549
mov rcx, qword [rax]
mov r9, qword [rax + 8]
lea r10, [rcx - 0x20]
xor r11d, r11d
movabs rsi, 0xcb313c3afff60e65
and rsi, r9
movdqu xmm0, xmmword [rcx + rsi]
movdqa xmm1, xmm0
pcmpeqb xmm1, xmm8
pmovmskb edi, xmm1
test di, di
je 0x14005e28b
lea ebx, [rdi - 1]
and ebx, edi
tzcnt edx, edi
add rdx, rsi
and rdx, r9
mov r8, rdx
shl r8, 5
mov rdi, r10
sub rdi, r8
mov r14, qword [rdi + 8]
movabs r12, 0x82133bbabf7a88a
xor r14, r12
mov rdi, qword [rdi]
movabs r12, 0xcb313c3afff60e65
xor rdi, r12
or rdi, r14
mov edi, ebx
jne 0x14005e240
jmp 0x14005e2bf
pcmpeqb xmm0, xmm7
pmovmskb edx, xmm0
test edx, edx
mov rbx, qword [rsp + 0x70]
mov rdi, qword [rsp + 0x48]
movabs r12, 0xd96d72dd4adb9c98
jne 0x14005e549
add rsi, r11
add rsi, 0x10
add r11, 0x10
jmp 0x14005e22b
sar r8, 5
lea r10, [r8 - 0x10]
and r10, r9
movdqu xmm0, xmmword [rcx + r10]
pcmpeqb xmm0, xmm7
psllw xmm0, 7
pmovmskb r9d, xmm0
test r9d, r9d
je 0x14005e2ee
bsr r9w, r9w
xor r9d, 0xf
jmp 0x14005e2f3
mov r9w, 0x10
mov rbx, qword [rsp + 0x70]
mov rdi, qword [rsp + 0x48]
movabs r12, 0xd96d72dd4adb9c98
movdqu xmm0, xmmword [rcx + r8]
pcmpeqb xmm0, xmm7
pmovmskb r11d, xmm0
or r11d, 0x10000
tzcnt r11d, r11d
add r9d, r11d
mov r11b, pe_nt_image_headers64
cmp r9w, 0xf
ja 0x14005e336
inc qword [rax + 0x10]
mov r11b, 0xff
neg rdx
mov byte [rcx + r8], r11b
mov byte [r10 + rcx + 0x10], r11b
dec qword [rax + 0x18]
shl rdx, 5
add rdx, rcx
mov r14, qword [rdx - 0x10]
test r14, r14
je 0x14005e549
mov rsi, qword [rdx - 8]
mov rcx, r14
call qword [rsi + 0x18]
movabs rcx, 0x82133bbabf7a88a
xor rdx, rcx
movabs rcx, 0xcb313c3afff60e65
xor rax, rcx
or rax, rdx
jne 0x14005e4ec
mov rsi, qword [r14]
mov rax, qword [r14 + 0x18]
mov qword [rsp + 0x150], rax
movdqu xmm0, xmmword [r14 + 8]
movdqa xmmword [rsp + 0x140], xmm0
mov rcx, qword [0x140189110]
xor edx, edx
mov r8, r14
call fcn.14011631c
test rsi, rsi
je 0x14005e549
mov r14, qword [rsp + 0x750]
test r14, r14
jne 0x14005e40d
movzx eax, byte [0x1401891c0]
mov ecx, 0x20
mov edx, 8
call fcn.140082d50
test rax, rax
je 0x1400605c7
mov r14, rax
lea rax, [0x140152b40]
mov qword [r14], rax
movups xmmword [r14 + 8], xmm9
mov qword [r14 + 0x18], 0
mov qword [rsp + 0x750], r14
movzx eax, byte [0x1401891c0]
mov ecx, 0x20
mov edx, 8
call fcn.140082d50
test rax, rax
je 0x1400605c7
mov qword [rax], rsi
movdqa xmm0, xmmword [rsp + 0x140]
movdqu xmmword [rax + 8], xmm0
mov rcx, qword [rsp + 0x150]
mov qword [rax + 0x18], rcx
lea rcx, [0x140120668]
mov qword [rsp + 0x20], rcx
mov rcx, r14
mov rdx, r15
mov r8, r12
mov r9, rax
call fcn.140063e80
test rax, rax
je 0x14005e53f
mov r14, rax
mov r15, rdx
mov rcx, rax
call qword [rdx + 0x18]
xor rdx, r12
movabs rcx, 0xc266733dca28fb1f
xor rax, rcx
or rax, rdx
jne 0x14005e516
movdqu xmm0, xmmword [r14]
movdqu xmm1, xmmword [r14 + 0x10]
movdqa xmmword [rsp + 0x350], xmm1
movdqa xmmword [rsp + 0x340], xmm0
mov rcx, qword [0x140189110]
xor edx, edx
mov r8, r14
call fcn.14011631c
mov rax, qword [rsp + 0x340]
test rax, rax
je 0x14005e53f
mov rdx, qword [rsp + 0x348]
mov r8, qword [rsp + 0x350]
lea rcx, [rsp + 0x358]
call qword [rax + 0x10]
jmp 0x14005e53f
mov rcx, r14
call qword [rsi]
cmp qword [rsi + 8], 0
je 0x14005e549
cmp qword [rsi + 0x10], 0x11
jb 0x14005e503
mov r14, qword [r14 - 8]
mov rcx, qword [0x140189110]
xor edx, edx
mov r8, r14
call fcn.14011631c
jmp 0x14005e549
mov rcx, r14
call qword [r15]
cmp qword [r15 + 8], 0
je 0x14005e53f
cmp qword [r15 + 0x10], 0x11
jb 0x14005e52e
mov r14, qword [r14 - 8]
mov rcx, qword [0x140189110]
xor edx, edx
mov r8, r14
call fcn.14011631c
movabs r15, 0xc266733dca28fb1f
cmp dil, 7
setne byte [rsp + 0x80]
mov r8d, 0xe0
lea rcx, [rsp + 0x980]
lea rdx, [rsp + 0x680]
call sub.msvcrt.dll_memcpy
mov rax, qword [rsp + 0x338]
mov rax, qword [rax]
mov qword [rsp + 0x60], rax
mov rsi, qword [rsp + 0xa50]
test rsi, rsi
je 0x14005e643
mov rax, qword [rsi]
mov r8, qword [rsi + 8]
lea r9, [rax - 0x20]
xor r10d, r10d
mov r11, r15
and r11, r8
movdqu xmm0, xmmword [rax + r11]
movdqa xmm1, xmm0
pcmpeqb xmm1, xmm6
pmovmskb edi, xmm1
nop word [rax + rax]
test di, di
je 0x14005e5f7
lea ebx, [rdi - 1]
and ebx, edi
tzcnt ecx, edi
add rcx, r11
and rcx, r8
mov rdx, rcx
shl rdx, 5
mov rdi, r9
sub rdi, rdx
mov r14, qword [rdi + 8]
xor r14, r12
mov rdi, qword [rdi]
xor rdi, r15
or rdi, r14
mov edi, ebx
jne 0x14005e5c0
jmp 0x14005e614
pcmpeqb xmm0, xmm7
pmovmskb ecx, xmm0
test ecx, ecx
jne 0x14005f00c
add r11, r10
add r11, 0x10
add r10, 0x10
jmp 0x14005e5a2
sar rdx, 5
lea r9, [rdx - 0x10]
and r9, r8
movdqu xmm0, xmmword [rax + r9]
pcmpeqb xmm0, xmm7
psllw xmm0, 7
pmovmskb r8d, xmm0
test r8d, r8d
je 0x14005e654
bsr r8w, r8w
xor r8d, 0xf
jmp 0x14005e659
mov qword [rsp + 0x2c0], 0
jmp 0x14005e836
mov r8w, 0x10
movdqu xmm0, xmmword [rax + rdx]
pcmpeqb xmm0, xmm7
pmovmskb r10d, xmm0
or r10d, 0x10000
tzcnt r10d, r10d
add r8d, r10d
mov r10b, pe_nt_image_headers64
cmp r8w, 0xf
ja 0x14005e687
inc qword [rsi + 0x10]
mov r10b, 0xff
neg rcx
mov byte [rax + rdx], r10b
mov byte [r9 + rax + 0x10], r10b
dec qword [rsi + 0x18]
shl rcx, 5
add rcx, rax
mov r14, qword [rcx - 0x10]
test r14, r14
mov rbx, qword [rsp + 0x70]
je 0x14005e725
mov rdi, qword [rcx - 8]
mov rcx, r14
call qword [rdi + 0x18]
xor rdx, r12
xor rax, r15
or rax, rdx
jne 0x14005e6fd
movdqu xmm0, xmmword [r14]
movdqu xmm1, xmmword [r14 + 0x10]
movdqa xmmword [rsp + 0x2d0], xmm1
movdqa xmmword [rsp + 0x2c0], xmm0
mov rcx, qword [0x140189110]
xor edx, edx
mov r8, r14
call fcn.14011631c
mov rdi, qword [rsi + 0x18]
test rdi, rdi
jne 0x14005e73e
jmp 0x14005e836
mov rcx, r14
call qword [rdi]
cmp qword [rdi + 8], 0
je 0x14005e725
cmp qword [rdi + 0x10], 0x11
jb 0x14005e714
mov r14, qword [r14 - 8]
mov rcx, qword [0x140189110]
xor edx, edx
mov r8, r14
call fcn.14011631c
mov qword [rsp + 0x2c0], 0
mov rdi, qword [rsi + 0x18]
test rdi, rdi
je 0x14005e836
mov r14, qword [rsi]
movdqa xmm0, xmmword [r14]
pmovmskb r13d, xmm0
not r13d
lea rbx, [r14 + 0x10]
mov r12, r14
jmp 0x14005e780
mov rcx, qword [0x140189110]
xor edx, edx
mov r8, r15
call fcn.14011631c
lea eax, [r13 - 1]
and eax, r13d
mov r13d, eax
dec rdi
je 0x14005e7e4
test r13w, r13w
jne 0x14005e7b0
nop word cs:[rax + rax]
movdqa xmm0, xmmword [rbx]
pmovmskb r13d, xmm0
add r12, 0xfffffffffffffe00
add rbx, 0x10
cmp r13d, 0xffff
je 0x14005e790
not r13d
tzcnt eax, r13d
shl rax, 5
mov rcx, r12
sub rcx, rax
mov r15, qword [rcx - 0x10]
mov rbp, qword [rcx - 8]
mov rcx, r15
call qword [rbp]
cmp qword [rbp + 8], 0
je 0x14005e771
cmp qword [rbp + 0x10], 0x11
jb 0x14005e760
mov r15, qword [r15 - 8]
jmp 0x14005e760
mov rdi, qword [rsi + 8]
test rdi, rdi
je 0x14005e7fb
lea r8, [rdi + 0x11]
mov rcx, r14
mov dl, 0xff
call sub.msvcrt.dll_memset
mov qword [rsi + 0x18], 0
lea rax, [rdi + 1]
mov rcx, rax
shr rcx, 3
and rax, 0xfffffffffffffff8
sub rax, rcx
cmp rdi, 8
cmovb rax, rdi
mov qword [rsi + 0x10], rax
mov rbp, qword [rsp + 0xc8]
mov r13, qword [rsp + 0xd8]
mov rbx, qword [rsp + 0x70]
mov r12, qword [r13]
lea r15, [r12 + 0x10]
mov rcx, r15
call sub.KERNEL32.dll_AcquireSRWLockExclusive
mov rax, qword [0x1401891b8]
movabs rcx, 0x7fffffffffffffff
test rax, rcx
jne 0x14005e9db
xor edi, edi
movzx eax, byte [r12 + 0x18]
test al, al
jne 0x1400604b0
mov rsi, qword [rbp + 0xa0]
lea r13, [rsi + 0x10]
mov rcx, r13
call sub.KERNEL32.dll_AcquireSRWLockExclusive
mov rax, qword [0x1401891b8]
movabs rcx, 0x7fffffffffffffff
test rax, rcx
jne 0x14005e9f9
mov dword [rsp + 0x58], 0
movzx eax, byte [rsi + 0x18]
test al, al
jne 0x1400604ee
lea rdx, [r12 + 0x20]
lea rcx, [rsp + 0x340]
call fcn.14009d6e0
movzx r14d, byte [rsp + 0x340]
cmp r14b, 3
jne 0x14005e935
mov rax, qword [r12 + 0xc0]
test al, 1
jne 0x14005e9b2
cmp qword [rsp + 0x60], 0
je 0x14005e9c3
lea rax, [r12 + 0x1b8]
mov rcx, qword [rbp + 0xb0]
mov qword [rsp + 0x348], rcx
mov qword [rsp + 0x340], rax
lea rcx, [rsp + 0x340]
call fcn.140097620
cmp byte [rax + 0x124], 0
mov r14b, 3
je 0x14005e9c3
mov byte [rsp + 0x3c], 3
jmp 0x14005ec48
movzx eax, byte [rsp + 0x341]
mov byte [rsp + 0x3c], al
lea rcx, [rsp + 0x358]
mov eax, dword [rcx - 0x16]
mov dword [rsp + 0xb0], eax
movzx eax, word [rcx - 0x12]
mov word [rsp + 0xb4], ax
mov rax, qword [rsp + 0x348]
mov qword [rsp + 0x68], rax
mov rax, qword [rsp + 0x350]
mov qword [rsp + 0x78], rax
mov rax, qword [rsp + 0x358]
mov qword [rsp + 0x50], rax
movzx eax, byte [rsp + 0x360]
mov byte [rsp + 0x3d], al
lea rcx, [rsp + 0x361]
mov eax, dword [rcx]
mov ecx, dword [rcx + 3]
mov dword [rsp + 0x98], eax
mov dword [rsp + 0x9b], ecx
jmp 0x14005ec48
shr eax, 8
or al, 5
mov r14b, 3
mov byte [rsp + 0x3c], al
jmp 0x14005ec48
mov r14b, 3
cmp byte [r12 + 0x1b0], 0
je 0x14005ea15
mov byte [rsp + 0x3c], 1
jmp 0x14005ec48
call fcn.1400d9020
mov edi, eax
xor dil, 1
movzx eax, byte [r12 + 0x18]
test al, al
je 0x14005e871
jmp 0x1400604b0
call fcn.1400d9020
xor al, 1
mov dword [rsp + 0x58], eax
movzx eax, byte [rsi + 0x18]
test al, al
je 0x14005e8b2
jmp 0x1400604ee
lea rax, [r12 + 0xc0]
mov rbp, qword [rax]
test bpl, 1
jne 0x14005ec32
mov qword [rsp + 0x530], rax
mov dword [rsp + 0xf8], edi
shr rbp, 0x20
lea eax, [rbp + 2]
mov ecx, eax
shr ecx, 0x1f
mov dword [r12 + 0xc0], ecx
mov dword [r12 + 0xc4], eax
mov r9d, dword [r12 + 0xac]
mov r8d, dword [r12 + 0x12c]
lea rcx, [rsp + 0x140]
mov edx, ebp
call fcn.14009c880
cmp byte [rsp + 0xa38], 5
jne 0x14005ea8a
mov qword [rsp + 0x170], 1
movzx edi, byte [rsp + 0x80]
and dil, byte [rsp + 0x40]
mov r8d, 0xe0
lea rbx, [rsp + 0x8a0]
mov rcx, rbx
lea rdx, [rsp + 0x980]
call sub.msvcrt.dll_memcpy
movdqa xmm0, xmmword [rsp + 0x2c0]
movdqa xmm1, xmmword [rsp + 0x2d0]
movdqa xmmword [rsp + 0x320], xmm1
movdqa xmmword [rsp + 0x310], xmm0
mov byte [rsp + 0x20], dil
lea rcx, [rsp + 0x340]
mov edx, ebp
mov r8, rbx
lea r9, [rsp + 0x310]
call fcn.1400a24b0
mov rbp, qword [rsp + 0x340]
movzx r14d, byte [rsp + 0x348]
movzx r9d, byte [rsp + 0x349]
lea rcx, [rsp + 0x358]
mov eax, dword [rcx - 0xe]
mov dword [rsp + 0xb8], eax
movzx eax, word [rcx - 0xa]
mov word [rsp + 0xbc], ax
mov rbx, qword [rsp + 0x350]
mov r10, qword [rsp + 0x358]
mov r11, qword [rsp + 0x360]
movzx edx, byte [rsp + 0x368]
mov eax, dword [rcx + 0x11]
mov ecx, dword [rcx + 0x14]
mov dword [rsp + 0x88], eax
mov dword [rsp + 0x8b], ecx
cmp rbp, 3
mov byte [rsp + 0x80], dl
mov qword [rsp + 0x60], rbx
jne 0x14005f02f
mov eax, dword [rsp + 0xb8]
mov dword [rsp + 0xb0], eax
movzx eax, word [rsp + 0xbc]
mov word [rsp + 0xb4], ax
mov eax, dword [rsp + 0x88]
mov ecx, dword [rsp + 0x8b]
mov dword [rsp + 0x98], eax
mov dword [rsp + 0x9b], ecx
movzx eax, byte [rsp + 0x190]
lea ecx, [rax - 6]
cmp cl, 6
mov rbp, qword [rsp + 0xc8]
mov rdi, qword [rsp + 0x48]
jb 0x14005f2f9
lea ecx, [rax - 3]
cmp cl, 2
ja 0x14005ebe6
cmp cl, 1
jne 0x14005f2f9
test rax, rax
je 0x14005f2f9
cmp eax, 1
jne 0x14005f2ae
mov rax, qword [rsp + 0x198]
mov rdx, qword [rsp + 0x1a0]
mov r8, qword [rsp + 0x1a8]
lea rcx, [rsp + 0x1b0]
mov byte [rsp + 0x3c], r9b
mov qword [rsp + 0x50], r10
mov qword [rsp + 0xa0], r11
call qword [rax + 0x10]
jmp 0x14005f2e6
shr ebp, 8
or bpl, 5
mov eax, ebp
mov byte [rsp + 0x3c], bpl
mov rbp, qword [rsp + 0xc8]
cmp byte [rsp + 0x58], 0
jne 0x14005ec69
mov rax, qword [0x1401891b8]
movabs rcx, 0x7fffffffffffffff
test rax, rcx
jne 0x14005efde
mov rcx, r13
call fcn.1401162b4
test dil, dil
jne 0x14005ec90
mov rax, qword [0x1401891b8]
movabs rcx, 0x7fffffffffffffff
test rax, rcx
jne 0x14005eff4
mov rcx, r15
call fcn.1401162b4
mov rax, qword [rsp + 0x2c0]
test rax, rax
lea rsi, [rsp + 0x541]
mov r13, qword [rsp + 0xd8]
je 0x14005ecd0
mov rdx, qword [rsp + 0x2c8]
mov r8, qword [rsp + 0x2d0]
lea rcx, [rsp + 0x2d8]
call qword [rax + 0x10]
lea rcx, [rsp + 0x980]
call fcn.140023810
mov r15, qword [rsp + 0xf0]
mov r12, qword [rsp + 0xe8]
mov rdx, qword [rsp + 0x50]
mov byte [rsp + 0x340], r14b
movzx eax, byte [rsp + 0x3c]
mov byte [rsp + 0x341], al
movzx eax, word [rsp + 0xb4]
lea rcx, [rsp + 0x358]
mov word [rcx - 0x12], ax
mov eax, dword [rsp + 0xb0]
mov dword [rcx - 0x16], eax
mov r8, qword [rsp + 0x68]
mov qword [rsp + 0x348], r8
mov rax, qword [rsp + 0x78]
mov qword [rsp + 0x350], rax
mov qword [rsp + 0x50], rdx
mov qword [rsp + 0x358], rdx
movzx r11d, byte [rsp + 0x3d]
mov byte [rsp + 0x360], r11b
mov eax, dword [rsp + 0x98]
mov ecx, dword [rsp + 0x9b]
lea rdx, [rsp + 0x361]
mov dword [rdx + 3], ecx
mov dword [rdx], eax
cmp r14b, 3
jne 0x14005eda7
mov al, 3
mov r14, qword [rsp + 0xa8]
mov r11d, dword [rsp + 0x13c]
movzx r10d, byte [rsp + 0x3f]
mov r9, qword [rsp + 0xe0]
mov rdi, qword [rsp + 0x130]
jmp 0x14005eed5
test r14b, r14b
je 0x14005ee1b
movzx eax, r14b
cmp eax, 1
movzx r8d, byte [rsp + 0x3e]
mov r9, qword [rsp + 0x128]
mov rdi, qword [rsp + 0x120]
jne 0x14005ee50
lea rcx, [rsp + 0x361]
mov eax, dword [rcx]
mov ecx, dword [rcx + 3]
mov dword [rsp + 0x143], ecx
mov dword [rsp + 0x140], eax
mov al, 1
mov r8d, r11d
mov r11d, dword [rsp + 0x344]
mov r9, qword [rsp + 0x78]
mov rdi, qword [rsp + 0x50]
mov rcx, qword [rsp + 0x68]
mov qword [rsp + 0xc0], rcx
mov r14, qword [rsp + 0xa8]
jmp 0x14005eea1
mov r11d, dword [rsp + 0x344]
mov eax, r8d
mov qword [rsp + 0xc0], rax
xor eax, eax
mov r14, qword [rsp + 0xa8]
movzx r8d, byte [rsp + 0x3e]
mov r9, qword [rsp + 0x128]
mov rdi, qword [rsp + 0x120]
jmp 0x14005eea1
cmp qword [rsp + 0x68], 0
mov r14, qword [rsp + 0xa8]
je 0x14005ee8a
movzx ecx, byte [rsp + 0x3c]
lea rdx, [rsp + 0x348]
call fcn.1400932c0
mov rdi, qword [rsp + 0x120]
mov r9, qword [rsp + 0x128]
movzx r8d, byte [rsp + 0x3e]
jmp 0x14005ee97
movzx eax, byte [rsp + 0x3c]
shl rax, 0x20
or rax, 3
mov qword [rsp + 0xc0], rax
mov al, 4
mov ecx, dword [rsp + 0x140]
mov edx, dword [rsp + 0x143]
mov dword [rsp + 0xd3], edx
mov dword [rsp + 0xd0], ecx
mov qword [rsp + 0x128], r9
mov qword [rsp + 0x120], rdi
mov byte [rsp + 0x3e], r8b
mov r10d, r8d
mov ecx, dword [rsp + 0xd0]
mov edx, dword [rsp + 0xd3]
mov dword [rsp + 0x93], edx
mov dword [rsp + 0x90], ecx
mov ecx, dword [rsp + 0x90]
mov edx, dword [rsp + 0x93]
lea r8, [rsp + 0x361]
mov dword [r8 + 3], edx
mov dword [r8], ecx
mov rcx, qword [rsp + 0x110]
mov qword [rsp + 0x150], rcx
movdqa xmm0, xmmword [rsp + 0x100]
movdqa xmmword [rsp + 0x140], xmm0
mov byte [rsp + 0x340], al
movzx eax, byte [rsp + 0x3c]
mov byte [rsp + 0x341], al
mov dword [rsp + 0x13c], r11d
mov dword [rsp + 0x344], r11d
mov rax, qword [rsp + 0xc0]
mov qword [rsp + 0x348], rax
mov qword [rsp + 0xe0], r9
mov qword [rsp + 0x350], r9
mov qword [rsp + 0x130], rdi
mov qword [rsp + 0x358], rdi
mov byte [rsp + 0x3f], r10b
mov byte [rsp + 0x360], r10b
lea rdi, [rsp + 0x340]
mov rcx, rdi
call fcn.1400ab0a0
mov qword [rsp + 0x340], rax
mov qword [rsp + 0x348], 3
lea rcx, [rsp + 0x140]
mov rdx, rdi
call fcn.140046e20
lea rcx, [rsp + 0x2f0]
call fcn.140025250
mov rdi, qword [rsp + 0xe0]
jmp 0x14005cef1
call fcn.1400d9020
test al, al
jne 0x14005ec69
mov byte [rsi + 0x18], 1
jmp 0x14005ec69
call fcn.1400d9020
test al, al
jne 0x14005ec90
mov byte [r12 + 0x18], 1
jmp 0x14005ec90
mov qword [rsp + 0x2c0], 0
mov rbx, qword [rsp + 0x70]
mov rdi, qword [rsi + 0x18]
test rdi, rdi
jne 0x14005e73e
jmp 0x14005e836
lea rax, [rsi + 0x20]
mov qword [rsp + 0x528], rax
lea rax, [r12 + 0x170]
mov qword [rsp + 0x520], rax
mov r8d, 0xe8
lea rcx, [rsp + 0x570]
lea rdx, [rsp + 0x370]
mov edi, r9d
mov rbx, r10
mov qword [rsp + 0xa0], r11
call sub.msvcrt.dll_memcpy
mov qword [rsp + 0x540], rbp
mov byte [rsp + 0x548], r14b
mov byte [rsp + 0x549], dil
movzx eax, word [rsp + 0xbc]
lea rdx, [rsp + 0x541]
mov word [rdx + 0xd], ax
mov eax, dword [rsp + 0xb8]
mov dword [rdx + 9], eax
mov rax, qword [rsp + 0x60]
mov qword [rsp + 0x550], rax
mov qword [rsp + 0x558], rbx
mov rax, qword [rsp + 0xa0]
mov qword [rsp + 0x560], rax
movzx eax, byte [rsp + 0x80]
mov byte [rsp + 0x568], al
mov eax, dword [rsp + 0x88]
mov ecx, dword [rsp + 0x8b]
mov dword [rdx + 0x2b], ecx
mov dword [rdx + 0x28], eax
lea rbp, [r12 + 0x1b8]
mov r14d, dword [rsp + 0x254]
mov r8d, 0x130
lea rbx, [rsp + 0x340]
mov rcx, rbx
lea rdx, [rsp + 0x140]
call sub.msvcrt.dll_memcpy
lea rdi, [rsp + 0x8a0]
mov rcx, rdi
mov rdx, rbp
mov r8d, r14d
mov r9, rbx
call fcn.14009ba80
lea rax, [r12 + 0x160]
mov qword [rsp + 0x28], rax
mov rax, qword [rsp + 0x520]
mov qword [rsp + 0x20], rax
mov rcx, qword [rsp + 0x530]
lea rdx, [rsp + 0x540]
mov r8, qword [rsp + 0x528]
mov r9, rdi
call fcn.140018120
cmp al, 0xc
jne 0x14005f267
inc qword [r12 + 0x228]
mov rdi, qword [r12 + 0x170]
mov rbx, qword [r12 + 0x178]
lock inc qword [r12]
jle 0x14006066b
lea rcx, [rsp + 0x340]
mov rdx, r12
lea r8, [rsp + 0x8a0]
call fcn.14009c960
lock inc qword [rsi]
mov rbp, qword [rsp + 0xc8]
jle 0x14006066b
inc rbx
cmp rdi, rbx
setbe byte [rsp + 0x3d]
mov rax, qword [rsp + 0x340]
mov qword [rsp + 0x68], rax
mov rax, qword [rsp + 0x348]
mov qword [rsp + 0x78], rax
cmp byte [rsp + 0x58], 0
jne 0x14005f20e
mov rax, qword [0x1401891b8]
movabs rcx, 0x7fffffffffffffff
test rax, rcx
jne 0x14005f90a
mov rcx, r13
call fcn.1401162b4
cmp byte [rsp + 0xf8], 0
mov rdi, qword [rsp + 0x48]
jne 0x14005f23f
mov rax, qword [0x1401891b8]
movabs rcx, 0x7fffffffffffffff
test rax, rcx
jne 0x14005f920
mov rcx, r15
call fcn.1401162b4
mov rdx, rsi
mov r15, qword [rsp + 0xf0]
mov r12, qword [rsp + 0xe8]
mov r13, qword [rsp + 0xd8]
jmp 0x14005f41d
mov ebp, eax
mov rcx, qword [rsp + 0x8a0]
mov edx, dword [rsp + 0x8ac]
call fcn.1400941a0
mov rcx, rdi
call fcn.140094420
mov r14b, 3
mov byte [rsp + 0x3c], bpl
mov rbp, qword [rsp + 0xc8]
movzx eax, byte [rsp + 0x3d]
mov rcx, qword [rsp + 0x78]
mov rdx, qword [rsp + 0x68]
mov rdi, qword [rsp + 0x48]
jmp 0x14005f386
mov r8, qword [rsp + 0x198]
test r8, r8
je 0x14005f2f9
cmp qword [rsp + 0x1a0], 0
je 0x14005f2f9
mov rcx, qword [0x140189110]
xor edx, edx
mov byte [rsp + 0x3c], r9b
mov qword [rsp + 0x50], r10
mov qword [rsp + 0xa0], r11
call fcn.14011631c
mov r11, qword [rsp + 0xa0]
mov r10, qword [rsp + 0x50]
movzx r9d, byte [rsp + 0x3c]
mov rax, qword [rsp + 0x1d0]
test rax, rax
je 0x14005f337
mov rcx, qword [rsp + 0x1d8]
mov edi, r9d
mov rbx, r10
mov qword [rsp + 0xa0], r11
call qword [rax + 0x18]
mov r11, qword [rsp + 0xa0]
mov r10, rbx
mov r9d, edi
mov rdi, qword [rsp + 0x48]
mov rbx, qword [rsp + 0x60]
mov rax, qword [rsp + 0x1e8]
test rax, rax
je 0x14005f36e
mov rcx, qword [rsp + 0x1f0]
mov byte [rsp + 0x3c], r9b
mov rdi, r10
mov rbx, r11
call qword [rax + 0x18]
mov qword [rsp + 0x50], rbx
mov rcx, rdi
mov rdx, qword [rsp + 0x60]
mov rdi, qword [rsp + 0x48]
jmp 0x14005f37e
mov qword [rsp + 0x50], r11
mov rcx, r10
mov rdx, rbx
mov byte [rsp + 0x3c], r9b
movzx eax, byte [rsp + 0x80]
mov qword [rsp + 0x68], rdx
mov qword [rsp + 0x78], rcx
mov byte [rsp + 0x3d], al
cmp byte [rsp + 0x58], 0
mov rbx, qword [rsp + 0x70]
jne 0x14005f3ba
mov rax, qword [0x1401891b8]
movabs rcx, 0x7fffffffffffffff
test rax, rcx
jne 0x14005f8c1
mov rcx, r13
call fcn.1401162b4
cmp byte [rsp + 0xf8], 0
jne 0x14005f3e6
mov rax, qword [0x1401891b8]
movabs rcx, 0x7fffffffffffffff
test rax, rcx
jne 0x14005f8d7
mov rcx, r15
call fcn.1401162b4
cmp r14b, 4
mov r15, qword [rsp + 0xf0]
mov r12, qword [rsp + 0xe8]
lea rsi, [rsp + 0x541]
mov r13, qword [rsp + 0xd8]
mov rdx, qword [rsp + 0x50]
jne 0x14005ecf2
mov eax, dword [rsp + 0x98]
mov ecx, dword [rsp + 0x9b]
mov dword [rsp + 0xd3], ecx
mov dword [rsp + 0xd0], eax
mov rcx, qword [rsp + 0x68]
mov qword [rsp + 0x540], rcx
mov rax, qword [rsp + 0x78]
mov qword [rsp + 0x548], rax
mov qword [rsp + 0x50], rdx
mov qword [rsp + 0x550], rdx
lea r14, [rcx + 0x10]
mov rcx, r14
call sub.KERNEL32.dll_AcquireSRWLockExclusive
mov rax, qword [0x1401891b8]
movabs rcx, 0x7fffffffffffffff
test rax, rcx
jne 0x14005f8b5
xor eax, eax
mov r9, qword [rsp + 0x68]
movzx ecx, byte [r9 + 0x18]
test cl, cl
mov rdx, qword [rsp + 0x78]
jne 0x140060650
mov rcx, rdx
shr rcx, 0x20
mov dword [rsp + 0x310], edx
mov dword [rsp + 0x314], ecx
mov r8d, edx
cmp qword [r9 + 0x1c8], r8
jbe 0x1400605d8
mov rdx, qword [r9 + 0x1b8]
test rdx, rdx
je 0x1400605d8
imul r8, r8, 0x130
cmp dword [rdx + r8], 2
je 0x1400605d8
add rdx, r8
cmp dword [rdx + 0x114], ecx
jne 0x1400605d8
movzx ebx, byte [rdx + 0x124]
test al, al
jne 0x14005f51a
mov rax, qword [0x1401891b8]
movabs rcx, 0x7fffffffffffffff
test rax, rcx
jne 0x14005f8ef
mov rcx, r14
call fcn.1401162b4
cmp byte [rsp + 0x3d], 0
mov r14, qword [rsp + 0xa8]
je 0x14005f57e
test bl, bl
je 0x14005f57e
lea rcx, [rsp + 0x340]
lea rdx, [rsp + 0x540]
call fcn.14009ca40
mov rsi, qword [rsp + 0x338]
cmp qword [rsi], 0
je 0x14005f571
mov rcx, rsi
call fcn.14009cc00
mov rax, qword [rsi]
lock dec qword [rax]
jne 0x14005f571
mov rcx, rsi
call fcn.1400298c0
movdqu xmm0, xmmword [rsp + 0x340]
movdqu xmmword [rsi], xmm0
lea rcx, [rsp + 0x140]
lea rbx, [rsp + 0x540]
mov rdx, rbx
call fcn.14009ca40
cmp dil, 7
mov rax, qword [rsp + 0x550]
lea rdi, [rsp + 0x1b0]
mov qword [rdi - 0x48], rax
movups xmm0, xmmword [rsp + 0x540]
movups xmmword [rdi - 0x58], xmm0
mov byte [rsp + 0x150], 0
movups xmm0, xmmword [rsp + 0x140]
movzx eax, byte [rsp + 0x150]
mov rcx, qword [rsp + 0x151]
mov edx, dword [rsp + 0x159]
movzx r8d, word [rsp + 0x15d]
movzx r9d, byte [rsp + 0x15f]
movzx r10d, byte [rsp + 0x160]
mov r11d, dword [rdi - 0x4f]
mov esi, dword [rdi - 0x4c]
mov dword [rsp + 0x90], r11d
mov dword [rsp + 0x93], esi
mov r11, qword [rsp + 0x168]
movups xmmword [rsp + 0x158], xmm0
mov byte [rsp + 0x168], al
mov qword [rsp + 0x169], rcx
mov dword [rsp + 0x171], edx
mov word [rsp + 0x175], r8w
mov byte [rsp + 0x177], r9b
mov byte [rsp + 0x178], r10b
mov eax, dword [rsp + 0x90]
mov ecx, dword [rsp + 0x93]
mov dword [rdi - 0x34], ecx
mov dword [rdi - 0x37], eax
mov qword [rsp + 0x180], r11
movaps xmm0, xmmword [rsp + 0x2f0]
movdqa xmm1, xmmword [rsp + 0x300]
lea rax, [rsp + 0x188]
movdqu xmmword [rax + 0x10], xmm1
movups xmmword [rax], xmm0
movaps xmm0, xmmword [rsp + 0x100]
movaps xmmword [rsp + 0x140], xmm0
mov rax, qword [rsp + 0x110]
mov qword [rsp + 0x150], rax
sete byte [rsp + 0x1a8]
movzx eax, byte [rsp + 0x40]
mov byte [rsp + 0x1a9], al
mov rcx, rbx
mov rdx, r13
mov r8, r15
call fcn.14001b390
movzx eax, byte [rsp + 0x540]
cmp eax, 5
je 0x14005f7f4
cmp eax, 6
lea rsi, [rsp + 0x541]
mov rbx, qword [rsp + 0x70]
je 0x140060240
mov rax, qword [rsp + 0x150]
mov qword [rsp + 0x8b0], rax
movdqa xmm0, xmmword [rsp + 0x140]
movdqa xmmword [rsp + 0x8a0], xmm0
lea rcx, [rsp + 0x540]
call fcn.1400ab0a0
mov qword [rsp + 0x340], rax
mov qword [rsp + 0x348], 3
lea rcx, [rsp + 0x8a0]
lea rdx, [rsp + 0x340]
call fcn.140046e20
lea rcx, [rsp + 0x158]
call fcn.14009cc00
mov rax, qword [rsp + 0x158]
lock dec qword [rax]
jne 0x14005f777
lea rcx, [rsp + 0x158]
call fcn.1400298c0
lea rcx, [rsp + 0x170]
call fcn.14009cc00
mov rax, qword [rsp + 0x170]
lock dec qword [rax]
jne 0x14005f79f
lea rcx, [rsp + 0x170]
call fcn.1400298c0
mov rax, qword [rsp + 0x180]
lock dec qword [rax]
jne 0x14005f7ba
mov rcx, qword [rsp + 0x180]
call fcn.140029bc0
lea rcx, [rsp + 0x188]
call fcn.140025250
mov rdi, qword [rsp + 0x78]
mov rax, qword [rsp + 0x50]
mov qword [rsp + 0x130], rax
movzx eax, byte [rsp + 0x3d]
mov byte [rsp + 0x3f], al
mov rax, qword [rsp + 0x68]
mov qword [rsp + 0xc0], rax
jmp 0x14005cef1
movaps xmm0, xmmword [rsp + 0x1a0]
movaps xmmword [rsp + 0x3a0], xmm0
movaps xmm0, xmmword [rsp + 0x190]
movaps xmmword [rsp + 0x390], xmm0
movaps xmm0, xmmword [rsp + 0x180]
movaps xmmword [rsp + 0x380], xmm0
movdqa xmm0, xmmword [rsp + 0x140]
movdqa xmm1, xmmword [rsp + 0x150]
movaps xmm2, xmmword [rsp + 0x160]
movaps xmm3, xmmword [rsp + 0x170]
movaps xmmword [rsp + 0x370], xmm3
movaps xmmword [rsp + 0x360], xmm2
movdqa xmmword [rsp + 0x350], xmm1
movdqa xmmword [rsp + 0x340], xmm0
mov rcx, r14
lea rdx, [rsp + 0x340]
mov r8, r15
call fcn.140031f90
mov rdi, qword [rsp + 0x78]
mov rax, qword [rsp + 0x50]
mov qword [rsp + 0x130], rax
movzx eax, byte [rsp + 0x3d]
mov byte [rsp + 0x3f], al
mov rax, qword [rsp + 0x68]
mov qword [rsp + 0xc0], rax
lea rsi, [rsp + 0x541]
mov rbx, qword [rsp + 0x70]
jmp 0x14005cef1
call fcn.1400d9020
xor al, 1
jmp 0x14005f488
call fcn.1400d9020
test al, al
jne 0x14005f3ba
mov byte [rsi + 0x18], 1
jmp 0x14005f3ba
call fcn.1400d9020
test al, al
jne 0x14005f3e6
mov byte [r12 + 0x18], 1
jmp 0x14005f3e6
call fcn.1400d9020
test al, al
jne 0x14005f51a
mov rax, qword [rsp + 0x68]
mov byte [rax + 0x18], 1
jmp 0x14005f51a
call fcn.1400d9020
test al, al
jne 0x14005f20e
mov byte [rsi + 0x18], 1
jmp 0x14005f20e
call fcn.1400d9020
test al, al
jne 0x14005f23f
mov byte [r12 + 0x18], 1
jmp 0x14005f23f
mov rcx, rbp
mov rdx, r15
call fcn.14002ee30
test rax, rax
je 0x14005fa0c
mov al, 1
jmp 0x1400600f5
cmp edi, 6
jne case.default.0x14005f96b
mov eax, 3
lea rcx, [0x14011a690]
movsxd rax, dword [rcx + rax*4]
add rax, rcx
jmp rax
mov byte [rsp + 0x140], dil
movups xmm0, xmmword [rsi]
movups xmm1, xmmword [rsi + 0x10]
movups xmmword [rsp + 0x141], xmm0
movups xmmword [rsp + 0x151], xmm1
mov rax, qword [rsi + 0x1f]
mov qword [rsp + 0x160], rax
mov rcx, qword [r14 + 0xc0]
call fcn.1400aed40
mov rbx, rax
mov esi, 2
test rax, rax
je 0x14005fb32
movzx eax, dil
lea rcx, [rax - 2]
cmp rcx, 2
jb 0x14005fcce
test rax, rax
je 0x14005fcce
cmp eax, 1
jne case.default.0x14005fa0a
lea rcx, [rsp + 0x160]
mov rax, qword [rsp + 0x148]
mov rdx, qword [rsp + 0x150]
mov r8, qword [rsp + 0x158]
call qword [rax + 0x10]
lea rax, [0x14011a690]
movsxd rcx, dword [rax + rsi*4]
add rcx, rax
jmp rcx
mov r14, rdx
test rdx, rdx
je 0x14005fb63
movzx ebx, byte [rbp + 0x1c8]
mov byte [rbp + 0x1c8], 3
cmp bl, 3
je 0x14005faf9
movdqu xmm0, xmmword [rbp + 0x1a8]
movdqu xmm1, xmmword [rbp + 0x1b8]
movdqa xmmword [rsp + 0x350], xmm1
movdqa xmmword [rsp + 0x340], xmm0
mov byte [rsp + 0x360], bl
mov eax, dword [rbp + 0x1c9]
mov ecx, dword [rbp + 0x1cc]
mov dword [rsp + 0x361], eax
mov dword [rsp + 0x364], ecx
movzx eax, byte [0x1401891c0]
mov rcx, qword [0x140189110]
test rcx, rcx
jne 0x14005fa9d
call sub.KERNEL32.dll_GetProcessHeap
test rax, rax
je 0x14006049f
mov rcx, rax
mov qword [0x140189110], rax
mov r8d, 0x38
xor edx, edx
call sub.KERNEL32.dll_HeapAlloc
test rax, rax
je 0x14006049f
mov rdi, rax
mov qword [rax], 0
mov byte [rax + 0x29], 2
mov byte [rax + 0x30], 8
lea rdx, [0x14013cf0e]
mov r8d, 0x10
mov rcx, rax
call fcn.14002ad60
mov rcx, qword [rsp + 0x350]
mov edx, ebx
mov r8, rdi
call fcn.1400abe30
lea rcx, [rsp + 0x340]
call fcn.1400249c0
lea rcx, [rbp + 0x178]
mov qword [rsp + 0x348], r14
mov qword [rsp + 0x340], 3
lea rdx, [rsp + 0x340]
call fcn.140001450
mov rbx, rax
test rax, rax
jne case.0x14005fcdc.4
jmp case.0x14005fcdc.2
movzx edi, byte [rsp + 0x140]
cmp rdi, 2
je 0x14005fbfa
cmp edi, 1
je 0x14005fbfa
test rdi, rdi
jne 0x14005fc0b
lea rax, [rsp + 0x148]
jmp 0x14005fc02
cmp byte [rbp + 0x1d8], 0
jne 0x14005fb77
cmp qword [rbp + 0x70], 4
jne case.0x14005fcb8.3
mov rbx, qword [rbp + 8]
cmp qword [rbp], 0
mov qword [rbp], 0
je 0x14005fe1d
mov r14, qword [rbp + 0xb8]
mov qword [rbp + 0xb8], 0
test r14, r14
je case.0x14005fcdc.3
test rbx, rbx
je 0x14005fa18
mov rax, qword [rbx + 0x30]
mov rcx, rax
test cl, 4
jne 0x14005fbe3
mov rdx, rcx
or rdx, 2
mov rax, rcx
lock cmpxchg qword [rbx + 0x30], rdx
jne 0x14005fbb6
and ecx, 5
cmp ecx, 1
jne 0x14005fbe3
mov rax, qword [rbx + 0x20]
mov rcx, qword [rbx + 0x28]
call qword [rax + 0x10]
lock dec qword [rbx]
jne 0x14005fa18
mov rcx, rbx
call fcn.14002a7a0
jmp 0x14005fa18
lea rax, [rsp + 0x144]
cmp dword [rax], 0
je 0x14005fcba
mov rax, qword [rsp + 0x160]
mov qword [rsp + 0x360], rax
movups xmm0, xmmword [rsp + 0x140]
movups xmm1, xmmword [rsp + 0x150]
movaps xmmword [rsp + 0x350], xmm1
movaps xmmword [rsp + 0x340], xmm0
lea rcx, [rsp + 0x340]
call fcn.1400ab0a0
mov rbx, rax
mov esi, 2
jmp 0x14005fcce
mov rax, qword [rsp + 0x148]
mov ecx, eax
and ecx, 3
cmp ecx, 1
jne 0x14005fcce
lea rdi, [rax - 1]
mov r14, qword [rax - 1]
mov r15, qword [rax + 7]
mov rcx, r14
call qword [r15]
cmp qword [r15 + 8], 0
je 0x14005fc99
cmp qword [r15 + 0x10], 0x11
jb case.default.0x14005fcb8
mov r14, qword [r14 - 8]
mov rcx, qword [0x140189110]
xor edx, edx
mov r8, r14
call fcn.14011631c
mov rcx, qword [0x140189110]
xor edx, edx
mov r8, rdi
call fcn.14011631c
lea rax, [0x14011a690]
movsxd rcx, dword [rax + rsi*4]
add rcx, rax
jmp rcx
xor esi, esi
movzx eax, dil
lea rcx, [rax - 2]
cmp rcx, 2
jae case.default.0x14005fcdc
lea rax, [0x14011a690]
movsxd rcx, dword [rax + rsi*4]
add rcx, rax
jmp rcx
lea rcx, [rsp + 0x340]
mov r8d, 0x1e0
mov rdx, rbp
call sub.msvcrt.dll_memcpy
mov qword [rbp], 3
cmp dword [rsp + 0x340], 2
jae 0x1400603dc
lea rcx, [rsp + 0xbd0]
lea rdi, [rsp + 0x340]
mov r8d, 0x1e0
mov rdx, rdi
call sub.msvcrt.dll_memcpy
lea rcx, [rsp + 0x140]
mov r8d, 0x178
mov rdx, rdi
call sub.msvcrt.dll_memcpy
lea rdx, [rsp + 0x210]
lea rcx, [rsp + 0x540]
mov r8d, 0xa8
call sub.msvcrt.dll_memcpy
mov rdi, qword [rsp + 0x5c0]
mov r12, qword [rsp + 0x5c8]
mov rsi, qword [rsp + 0x5d8]
test sil, 1
jne 0x14005fd83
lea r15, str.PK_b_
jmp 0x14005fe8c
mov r15, qword [rsp + 0x5d0]
shr rsi, 5
sub rdi, rsi
lea r14, [rsi + r12]
cmp r12, r15
jne 0x14005fdc1
test r14, r14
je 0x14005fe53
test dil, 1
jne 0x14005fe68
mov rax, rdi
or rax, 1
lea r15, [0x14013a1f0]
jmp 0x14005fe72
movzx eax, byte [0x1401891c0]
mov rcx, qword [0x140189110]
test rcx, rcx
jne 0x14005fdec
call sub.KERNEL32.dll_GetProcessHeap
test rax, rax
je 0x140060397
mov rcx, rax
mov qword [0x140189110], rax
mov r8d, 0x18
xor edx, edx
call sub.KERNEL32.dll_HeapAlloc
test rax, rax
je 0x140060397
add r15, rsi
mov qword [rax], rdi
mov qword [rax + 8], r15
mov qword [rax + 0x10], 1
lea r15, [0x1401241a0]
jmp 0x14005fe72
mov rcx, qword [rbp + 0xe8]
mov rax, qword [rbp + 0xf0]
mov rdx, r15
call qword [rax + 0x30]
test rax, rax
jne case.0x14005fcb8.3
test rdx, rdx
je 0x140060192
mov rcx, rdx
call fcn.1400ac3a0
mov r14, rax
jmp 0x14005fa18
lea r15, [0x14013c600]
lea rdi, [0x140178ba0]
xor eax, eax
xor r14d, r14d
jmp 0x14005fe72
lea r15, [0x14013a208]
mov rax, rdi
mov qword [rsp + 0x980], rsi
mov r12, r14
sub r12, rsi
jb 0x14006052f
add rdi, rsi
mov rsi, rax
mov rax, qword [rsp + 0x568]
mov qword [rsp + 0x790], rax
movups xmm0, xmmword [rsp + 0x558]
movaps xmmword [rsp + 0x780], xmm0
lea rcx, [rsp + 0x570]
call fcn.14001ffe0
lea rcx, [rsp + 0x340]
call fcn.140024e60
movups xmm0, xmmword [rsp + 0xd48]
movups xmm1, xmmword [rsp + 0xd58]
movups xmm2, xmmword [rsp + 0xd68]
movups xmmword [rsp + 0x7b8], xmm0
movups xmmword [rsp + 0x7c8], xmm1
movups xmmword [rsp + 0x7d8], xmm2
mov qword [rsp + 0x798], r15
mov qword [rsp + 0x7a0], rdi
mov qword [rsp + 0x7a8], r12
mov qword [rsp + 0x7b0], rsi
cmp byte [rsp + 0xd98], 3
je 0x14005ff2d
lea rcx, [rsp + 0xd78]
call fcn.1400249c0
lea rsi, [rsp + 0x798]
mov rdi, qword [rsp + 0xda0]
cmp qword [rdi], 0
je 0x14005ff4c
lea rcx, [rdi + 8]
call fcn.140025250
mov rcx, qword [0x140189110]
xor edx, edx
mov r8, rdi
call fcn.14011631c
movaps xmm0, xmmword [rsp + 0x780]
movaps xmmword [rsp + 0x660], xmm0
mov rax, qword [rsp + 0x790]
mov qword [rsp + 0x670], rax
movdqu xmm0, xmmword [rsi]
movdqu xmm1, xmmword [rsi + 0x10]
movdqa xmmword [rsp + 0x760], xmm0
movdqa xmmword [rsp + 0x770], xmm1
cmp dword [rsp + 0x7b8], 2
je 0x14005ffaf
lea rcx, [rsp + 0x7b8]
call fcn.140022ae0
lea rcx, [rsp + 0x7d0]
call fcn.140022cd0
movzx eax, byte [0x1401891c0]
mov rcx, qword [0x140189110]
test rcx, rcx
jne 0x14005ffe7
call sub.KERNEL32.dll_GetProcessHeap
test rax, rax
je 0x140060397
mov rcx, rax
mov qword [0x140189110], rax
mov r8d, 0x18
xor edx, edx
call sub.KERNEL32.dll_HeapAlloc
test rax, rax
je 0x140060397
mov rcx, qword [rsp + 0x670]
mov qword [rax + 0x10], rcx
movaps xmm0, xmmword [rsp + 0x660]
movups xmmword [rax], xmm0
movdqa xmm0, xmmword [rsp + 0x760]
movdqa xmm1, xmmword [rsp + 0x770]
movdqu xmmword [rsp + 0x150], xmm0
movdqu xmmword [rsp + 0x160], xmm1
mov qword [rsp + 0x140], rax
lea rax, [0x140122250]
mov qword [rsp + 0x148], rax
lea rdx, [rsp + 0x140]
mov rcx, rbx
call fcn.1400ad2b0
xor ebx, ebx
mov rax, qword [rbp]
lea rcx, [rax - 3]
cmp rcx, 2
jae 0x140060083
mov qword [rbp], 4
cmp eax, 4
je 0x1400600c9
test rbx, rbx
jne 0x140060098
jmp 0x1400600eb
mov rcx, rbp
call fcn.140020130
mov qword [rbp], 4
test rbx, rbx
je 0x1400600eb
mov qword [rsp + 0xbd0], rbx
lea rcx, [rsp + 0xbd0]
call fcn.140023760
mov rax, qword [rbp]
lea rcx, [rax - 3]
cmp rcx, 3
jae 0x1400600e3
mov qword [rbp], 5
cmp rax, 5
jne 0x1400600f3
lea rcx, str.internal_error:_entered_unreachable_code_rustc_a28077b28a02b92985b3a3faecf92813155f1ea1library_std_src_threadmod.rs
lea r8, str._Users_no_.cargo_registry_src_index.crates.io_6f17d22bba15001f_futures_util_0.3.29_src_future_future_map.rs
mov edx, 0x28
call fcn.140086940
ud2
mov rcx, rbp
call fcn.140020130
mov qword [rbp], 5
xor eax, eax
movaps xmm6, xmmword [rsp + 0xdb0]
movaps xmm7, xmmword [rsp + 0xdc0]
movaps xmm8, xmmword [rsp + 0xdd0]
movaps xmm9, xmmword [rsp + 0xde0]
movaps xmm10, xmmword [rsp + 0xdf0]
movaps xmm11, xmmword [rsp + 0xe00]
movaps xmm12, xmmword [rsp + 0xe10]
movaps xmm13, xmmword [rsp + 0xe20]
add rsp, 0xe38
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret
lea r8, str._Users_no_.cargo_registry_src_index.crates.io_6f17d22bba15001f_http_0.2.11_src_header_map.rs
mov rcx, r13
call fcn.140085ca0
ud2
mov rsi, qword [r14 + 0x88]
movzx eax, byte [rsi + 0x40]
test al, al
jne 0x1400601eb
mov rax, qword [r15]
mov rdx, qword [rax]
mov rcx, qword [rax + 8]
call qword [rdx]
mov rdi, rax
mov rbx, rdx
mov al, 1
xchg byte [rsi + 0x20], al
test al, al
je 0x1400601c6
mov rcx, rbx
call qword [rdi + 0x18]
jmp 0x1400601eb
mov r14, qword [rbp + 0xb8]
mov qword [rbp + 0xb8], 0
test r14, r14
jne 0x14005fa18
jmp case.0x14005fcdc.2
lea r8, str._Users_no_.cargo_registry_src_index.crates.io_6f17d22bba15001f_http_0.2.11_src_header_map.rs
mov rcx, r14
mov rdx, r11
call fcn.140085ca0
ud2
mov rax, qword [rsi + 0x10]
test rax, rax
je 0x1400601d6
mov rcx, qword [rsi + 0x18]
call qword [rax + 0x18]
mov qword [rsi + 0x10], rdi
mov qword [rsi + 0x18], rbx
xor eax, eax
xchg byte [rsi + 0x20], al
movzx eax, byte [rsi + 0x40]
test al, al
je 0x14006021d
mov al, 1
xchg byte [rsi + 0x41], al
test al, al
je 0x140060206
xor eax, eax
lea rcx, [0x14011a690]
movsxd rax, dword [rcx + rax*4]
add rax, rcx
jmp rax
xor eax, eax
xchg byte [rsi + 0x41], al
xor eax, eax
lea rcx, [0x14011a690]
movsxd rax, dword [rcx + rax*4]
add rax, rcx
jmp rax
mov eax, 3
lea rcx, [0x14011a690]
movsxd rax, dword [rcx + rax*4]
add rax, rcx
jmp rax
lea r8, str._Users_no_.cargo_registry_src_index.crates.io_6f17d22bba15001f_http_0.2.11_src_header_map.rs
call fcn.140085ca0
ud2
movaps xmm0, xmmword [rsp + 0x1a0]
movaps xmmword [rsp + 0x3a0], xmm0
movaps xmm0, xmmword [rsp + 0x190]
movaps xmmword [rsp + 0x390], xmm0
movaps xmm0, xmmword [rsp + 0x180]
movaps xmmword [rsp + 0x380], xmm0
movaps xmm0, xmmword [rsp + 0x140]
movaps xmm1, xmmword [rsp + 0x150]
movaps xmm2, xmmword [rsp + 0x160]
movaps xmm3, xmmword [rsp + 0x170]
movaps xmmword [rsp + 0x370], xmm3
movaps xmmword [rsp + 0x360], xmm2
movaps xmmword [rsp + 0x350], xmm1
movaps xmmword [rsp + 0x340], xmm0
mov rcx, r14
call fcn.140020420
movaps xmm0, xmmword [rsp + 0x3a0]
movups xmmword [r14 + 0x60], xmm0
movaps xmm0, xmmword [rsp + 0x390]
movups xmmword [r14 + 0x50], xmm0
movaps xmm0, xmmword [rsp + 0x380]
movups xmmword [r14 + 0x40], xmm0
movaps xmm0, xmmword [rsp + 0x340]
movaps xmm1, xmmword [rsp + 0x350]
movaps xmm2, xmmword [rsp + 0x360]
movaps xmm3, xmmword [rsp + 0x370]
movups xmmword [r14 + 0x30], xmm3
movups xmmword [r14 + 0x20], xmm2
movups xmmword [r14 + 0x10], xmm1
movups xmmword [r14], xmm0
mov eax, 3
lea rcx, [0x14011a690]
movsxd rax, dword [rcx + rax*4]
add rax, rcx
jmp rax
lea r8, str._Users_no_.cargo_registry_src_index.crates.io_6f17d22bba15001f_http_0.2.11_src_header_map.rs
call fcn.140085ca0
ud2
lea rcx, str.Map_must_not_be_polled_after_it_returned__Poll::Ready_
lea r8, str._Users_no_.cargo_registry_src_index.crates.io_6f17d22bba15001f_futures_util_0.3.29_src_future_future_map.rs
mov edx, 0x36
call fcn.140086940
ud2
lea rax, str._Users_no_.cargo_registry_src_index.crates.io_6f17d22bba15001f_hyper_0.14.27_src_proto_h2_mod.rs
mov qword [rsp + 0x20], rax
lea rcx, str.called__Result::unwrap____on_an__Err__value
lea r9, [0x14013bb98]
lea r8, [rsp + 0x8a0]
mov edx, 0x2b
call fcn.140088240
ud2
lea rcx, str.called__Option::unwrap____on_a__None__value
lea r8, str._Users_no_.cargo_registry_src_index.crates.io_6f17d22bba15001f_hyper_0.14.27_src_client_conn.rs_Users_no_.cargo_registry_src_index.crates.io_6f17d22bba15001f_hyper_0.14.27_src_client_dispatch.rschecked_out_connection_was_closedCheckoutIsClosedError_Users_no_.cargo_registry_src_index.crates.io_6f17d22bba15001f_hyper_0.14.27_src_client_pool.rs_Users_no_.cargo_registry_src_index.crates.io_6f17d22bba15001f_hyper_0.14.27_src_proto_h2_client.rs_Users_no_.cargo_registry_src_index.crates.io_6f17d22bba15001f_hyper_0.14.27_src_proto_h1_io.rshttps_required_but_URI_was_not_httpsForceHttpsButUriNotHttps_Users_no_.cargo_registry_src_index.crates.io_6f17d22bba15001f_unicode_normalization_0.1.22_src_decompose.rs
mov edx, 0x2b
call fcn.140086940
ud2
mov ecx, 8
mov edx, 0x18
call fcn.140083160
ud2
lea rcx, str.internal_error:_entered_unreachable_code_rustc_a28077b28a02b92985b3a3faecf92813155f1ea1library_std_src_threadmod.rs
lea r8, [0x140120fd8]
mov edx, 0x28
call fcn.140086940
ud2
lea rcx, str.called__Option::unwrap____on_a__None__value
lea r8, str._Users_no_.cargo_registry_src_index.crates.io_6f17d22bba15001f_tokio_1.35.0_src_sync_oneshot.rscalled_after_complete
mov edx, 0x2b
call fcn.140086940
ud2
mov qword [rsp + 0x140], rbx
lea rcx, [rsp + 0x140]
call fcn.140024730
lea rax, str.Upgrade_expects_h1
mov qword [rsp + 0x540], rax
lea rax, [0x14001c6e0]
mov qword [rsp + 0x548], rax
lea rax, str.internal_error:_entered_unreachable_code:
mov qword [rsp + 0x140], rax
mov qword [rsp + 0x148], 1
mov qword [rsp + 0x160], 0
lea rax, [rsp + 0x540]
mov qword [rsp + 0x150], rax
mov qword [rsp + 0x158], 1
lea rdx, str._Users_no_.cargo_registry_src_index.crates.io_6f17d22bba15001f_hyper_0.14.27_src_client_conn.rs_Users_no_.cargo_registry_src_index.crates.io_6f17d22bba15001f_hyper_0.14.27_src_client_dispatch.rschecked_out_connection_was_closedCheckoutIsClosedError_Users_no_.cargo_registry_src_index.crates.io_6f17d22bba15001f_hyper_0.14.27_src_client_pool.rs_Users_no_.cargo_registry_src_index.crates.io_6f17d22bba15001f_hyper_0.14.27_src_proto_h2_client.rs_Users_no_.cargo_registry_src_index.crates.io_6f17d22bba15001f_hyper_0.14.27_src_proto_h1_io.rshttps_required_but_URI_was_not_httpsForceHttpsButUriNotHttps_Users_no_.cargo_registry_src_index.crates.io_6f17d22bba15001f_unicode_normalization_0.1.22_src_decompose.rs
lea rcx, [rsp + 0x140]
call fcn.140085be0
ud2
lea rax, str._Users_no_.cargo_registry_src_index.crates.io_6f17d22bba15001f_hyper_0.14.27_src_proto_h2_mod.rs
jmp 0x140060478
lea rax, str._Users_no_.cargo_registry_src_index.crates.io_6f17d22bba15001f_hyper_0.14.27_src_proto_h2_mod.rs
mov qword [rsp + 0x20], rax
lea rcx, str.called__Result::unwrap____on_an__Err__value
lea r9, [0x14013bb78]
lea r8, [rsp + 0x8a0]
mov edx, 0x2b
call fcn.140088240
ud2
mov ecx, 8
mov edx, 0x38
call fcn.140083160
ud2
mov qword [rsp + 0x340], r15
mov byte [rsp + 0x348], dil
lea rax, str._Users_no_.cargo_registry_src_index.crates.io_6f17d22bba15001f_h2_0.3.22_src_proto_streams_streams.rs
mov qword [rsp + 0x20], rax
lea rcx, str.called__Result::unwrap____on_an__Err__value
lea r9, [0x140120548]
lea r8, [rsp + 0x340]
mov edx, 0x2b
call fcn.140088240
ud2
mov qword [rsp + 0x340], r13
mov eax, dword [rsp + 0x58]
mov byte [rsp + 0x348], al
lea rax, str._Users_no_.cargo_registry_src_index.crates.io_6f17d22bba15001f_h2_0.3.22_src_proto_streams_streams.rs
mov qword [rsp + 0x20], rax
lea rcx, str.called__Result::unwrap____on_an__Err__value
lea r9, [0x140120528]
lea r8, [rsp + 0x340]
mov edx, 0x2b
call fcn.140088240
ud2
mov qword [rsp + 0x8a0], r14
lea rax, [rsp + 0x980]
mov qword [rsp + 0xa60], rax
lea rax, [0x1400c2f40]
mov qword [rsp + 0xa68], rax
lea rcx, [rsp + 0x8a0]
mov qword [rsp + 0xa70], rcx
mov qword [rsp + 0xa78], rax
lea rax, str.cannot_advance_past__remaining_:___
mov qword [rsp + 0x780], rax
mov qword [rsp + 0x788], 2
mov qword [rsp + 0x7a0], 0
lea rax, [rsp + 0xa60]
mov qword [rsp + 0x790], rax
mov qword [rsp + 0x798], 2
lea rdx, [0x14013c850]
lea rcx, [rsp + 0x780]
call fcn.140085be0
ud2
mov ecx, 8
mov edx, 0x20
call fcn.140083160
ud2
lea rax, [rsp + 0x314]
mov qword [rsp + 0x8a0], rax
lea rax, [0x14008f3f0]
mov qword [rsp + 0x8a8], rax
lea rax, str.dangling_store_key_for_stream_id
mov qword [rsp + 0x340], rax
mov qword [rsp + 0x348], 1
mov qword [rsp + 0x360], 0
lea rax, [rsp + 0x8a0]
mov qword [rsp + 0x350], rax
mov qword [rsp + 0x358], 1
lea rdx, [0x140139248]
lea rcx, [rsp + 0x340]
call fcn.140085be0
ud2
mov qword [rsp + 0x340], r14
mov byte [rsp + 0x348], al
lea rax, str._Users_no_.cargo_registry_src_index.crates.io_6f17d22bba15001f_h2_0.3.22_src_proto_streams_streams.rs
jmp 0x1400604c7
ud2
mov rcx, r14
test byte [rax + rax*4], ah
add al, byte [rax]
add al, ch
fdivr st(3), st(0)
add byte [rax], al
jmp 0x14006198e
add eax, 0xfa71850f
invalid
cmp qword [rdx + 0x28], 0
jne 0x140062089
jmp 0x14006199d
mov r8, qword [rdx + 0x30]
mov r9, qword [rdx + 0x38]
mov r11, r8
movabs rax, 0x736f6d6570736575
xor r11, rax
mov r10, r9
movabs rax, 0x646f72616e646f6d
xor r10, rax
movabs rax, 0x6c7967656e657261
xor r8, rax
movabs rax, 0x7465646279746573
xor r9, rax
mov rax, r12
xor edi, edi
and rax, 0xfffffffffffffff8
je 0x14006216b
mov r15, qword [rsp + 0x50]
nop
add r11, r10
rol r10, 0xd
mov rcx, qword [r15 + rdi]
xor r10, r11
rol r11, 0x20
xor r9, rcx
add r8, r9
rol r9, 0x10
xor r9, r8
add r11, r9
rol r9, 0x15
add r8, r10
rol r10, 0x11
xor r10, r8
rol r8, 0x20
xor r9, r11
xor r11, rcx
add rdi, 8
cmp rdi, rax
jb 0x1400620e0
mov esi, r12d
and esi, 7
cmp esi, 3
jbe 0x14006217b
mov ebx, dword [r15 + rdi]
mov eax, 4
mov rcx, rax
or rcx, 1
cmp rcx, rsi
jb 0x14006218b
jmp 0x1400621a5
mov r15, qword [rsp + 0x50]
mov esi, r12d
and esi, 7
cmp esi, 3
ja 0x14006212e
xor ebx, ebx
xor eax, eax
mov rcx, rax
or rcx, 1
cmp rcx, rsi
jae 0x1400621a5
lea rcx, [rax + rdi]
movzx r14d, word [r15 + rcx]
lea ecx, [rax*8]
shl r14, cl
or rbx, r14
or rax, 2
cmp rax, rsi
jae 0x1400621bf
add rdi, rax
movzx edi, byte [r15 + rdi]
shl eax, 3
mov ecx, eax
shl rdi, cl
or rbx, rdi
jmp 0x1400621c4
test rsi, rsi
je 0x140062220
lea ecx, [rsi*8]
mov edi, 0xff
shl rdi, cl
or rdi, rbx
cmp rsi, 7
jne 0x1400622f7
mov ecx, 8
add r11, r10
rol r10, 0xd
sub rcx, rsi
xor r10, r11
rol r11, 0x20
xor r9, rdi
add r8, r9
rol r9, 0x10
xor r9, r8
add r11, r9
rol r9, 0x15
xor r9, r11
add r8, r10
rol r10, 0x11
xor r10, r8
rol r8, 0x20
xor r11, rdi
jmp 0x140062222
xor ecx, ecx
mov esi, 1
sub rsi, rcx
mov eax, esi
and eax, 7
and rsi, 0xfffffffffffffff8
cmp rcx, rsi
jae 0x1400622a8
nop dword [rax + rax]
add r11, r10
rol r10, 0xd
xor r10, r11
rol r11, 0x20
xor r9, 0xff
add r8, r9
rol r9, 0x10
xor r9, r8
add r11, r9
rol r9, 0x15
add r8, r10
rol r10, 0x11
xor r10, r8
rol r8, 0x20
xor r9, r11
xor r11, 0xff
add rcx, 8
cmp rcx, rsi
jb 0x140062240
xor esi, esi
cmp rax, 4
setae sil
cmp eax, 4
mov edi, 0
mov ecx, 0xff
cmovae rdi, rcx
shl rsi, 2
jmp 0x1400622ac
xor edi, edi
xor esi, esi
mov rbx, rsi
lea ecx, [rsi*8]
mov r14d, 0xff
shl r14, cl
or rbx, 1
mov r15, rsi
or r15, 2
cmp rbx, rax
mov ebx, 0
cmovae r14, rbx
cmovae r15, rsi
or r14, rdi
lea ecx, [r15*8]
mov edi, 0xff
shl rdi, cl
cmp r15, rax
cmovae rdi, rbx
or rdi, r14
mov rax, r12
shl rax, 0x38
movabs rcx, 0x100000000000000
add rax, rcx
add r11, r10
rol r10, 0xd
or rax, rdi
xor r10, r11
rol r11, 0x20
xor r9, rax
add r8, r9
rol r9, 0x10
xor r9, r8
add r11, r9
rol r9, 0x15
add r8, r10
rol r10, 0x11
xor r9, r11
xor r10, r8
rol r8, 0x20
xor r11, rax
add r11, r10
rol r10, 0xd
xor r10, r11
rol r11, 0x20
xor r8, 0xff
add r8, r9
rol r9, 0x10
xor r9, r8
add r11, r9
rol r9, 0x15
add r8, r10
rol r10, 0x11
xor r10, r8
rol r8, 0x20
xor r9, r11
add r11, r10
rol r10, 0xd
xor r10, r11
rol r11, 0x20
add r8, r9
rol r9, 0x10
xor r9, r8
add r11, r9
rol r9, 0x15
add r8, r10
rol r10, 0x11
xor r10, r8
rol r8, 0x20
xor r9, r11
add r11, r10
rol r10, 0xd
add r8, r9
rol r9, 0x10
xor r9, r8
rol r9, 0x15
xor r10, r11
add r8, r10
rol r10, 0x11
mov rsi, r8
rol rsi, 0x20
xor rsi, r10
xor rsi, r9
xor rsi, r8
mov rdi, qword [rdx + 0x10]
mov rbx, qword [rdx + 0x18]
mov rax, rsi
shr rax, 0x39
movd xmm0, eax
punpcklbw xmm0, xmm0
pshuflw xmm0, xmm0, 0
pshufd xmm9, xmm0, 0
xor r13d, r13d
and rsi, rbx
movdqu xmm10, xmmword [rdi + rsi]
movdqa xmm0, xmm9
pcmpeqb xmm0, xmm10
pmovmskb r15d, xmm0
test r15d, r15d
jne 0x14006244f
pcmpeqb xmm10, xmm6
pmovmskb eax, xmm10
test eax, eax
lea r14, [rsp + 0x20]
jne 0x14006199d
add rsi, r13
add rsi, 0x10
add r13, 0x10
jmp 0x1400623ff
lea eax, [r15 - 1]
and eax, r15d
mov r15d, eax
test ax, ax
je 0x14006241c
tzcnt eax, r15d
add rax, rsi
and rax, rbx
neg rax
imul r14, rax, 0x68
cmp qword [rdi + r14 - 0x58], r12
jne 0x140062440
add r14, rdi
mov rdx, qword [r14 - 0x68]
mov rcx, qword [rsp + 0x50]
mov r8, r12
call sub.msvcrt.dll_memcmp
test eax, eax
jne 0x140062440
cmp qword [r14 - 0x50], 0
je 0x1400624ea
mov bl, 2
cmp byte [r14 - 8], 2
je 0x1400624ac
lea rdx, [r14 - 0x10]
mov rax, qword [r14 - 0x28]
mov r8, qword [r14 - 0x20]
mov r9, qword [r14 - 0x18]
lea rcx, [rsp + 0x20]
call qword [rax]
movzx ebx, byte [r14 - 8]
lea rdx, [r14 - 0x30]
mov rax, qword [r14 - 0x48]
mov r8, qword [r14 - 0x40]
mov r9, qword [r14 - 0x38]
lea rsi, [rsp + 0x78]
mov rcx, rsi
call qword [rax]
movups xmm0, xmmword [rsp + 0x20]
movups xmm1, xmmword [rsp + 0x30]
movups xmmword [rsi + 0x30], xmm1
movups xmmword [rsi + 0x20], xmm0
mov byte [rsp + 0xb8], bl
mov qword [rsp + 0x70], 1
jmp 0x14006254b
mov bl, 2
cmp byte [r14 - 8], 2
je 0x14006250f
lea rdx, [r14 - 0x10]
mov rax, qword [r14 - 0x28]
mov r8, qword [r14 - 0x20]
mov r9, qword [r14 - 0x18]
lea rcx, [rsp + 0x20]
call qword [rax]
movzx ebx, byte [r14 - 8]
lea rdx, [r14 - 0x30]
mov rax, qword [r14 - 0x48]
mov r8, qword [r14 - 0x40]
mov r9, qword [r14 - 0x38]
lea rsi, [rsp + 0x78]
mov rcx, rsi
call qword [rax]
movups xmm0, xmmword [rsp + 0x20]
movups xmm1, xmmword [rsp + 0x30]
movups xmmword [rsi + 0x30], xmm1
movups xmmword [rsi + 0x20], xmm0
mov byte [rsp + 0xb8], bl
mov qword [rsp + 0x70], 0
mov rax, qword [rsp + 0xb0]
mov qword [rsp + 0x140], rax
movzx eax, byte [rsp + 0xb8]
mov byte [rsp + 0x148], al
mov eax, dword [rsp + 0xb9]
mov dword [rsp + 0x149], eax
movzx eax, word [rsp + 0xbd]
mov word [rsp + 0x14d], ax
movzx eax, byte [rsp + 0xbf]
mov byte [rsp + 0x14f], al
mov rax, qword [rsp + 0x70]
mov rcx, qword [rsp + 0x78]
movdqu xmm0, xmmword [rsp + 0x80]
movdqu xmm1, xmmword [rsp + 0x90]
movups xmm2, xmmword [rsp + 0xa0]
movaps xmmword [rsp + 0x130], xmm2
movdqa xmmword [rsp + 0x120], xmm1
movdqa xmmword [rsp + 0x110], xmm0
mov qword [rsp + 0x100], rax
mov qword [rsp + 0x108], rcx
lea r14, [rsp + 0x20]
jmp 0x14006198e