Function at 0x14007d520
Capabilities:
Encode data using xor
Hash data using fnv

Disassembly:
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbp
push rbx
sub rsp, 0xd28
movaps xmmword [rsp + 0xd10], xmm14
movdqa xmmword [rsp + 0xd00], xmm13
movaps xmmword [rsp + 0xcf0], xmm12
movaps xmmword [rsp + 0xce0], xmm11
movaps xmmword [rsp + 0xcd0], xmm10
movaps xmmword [rsp + 0xcc0], xmm9
movdqa xmmword [rsp + 0xcb0], xmm8
movaps xmmword [rsp + 0xca0], xmm7
movaps xmmword [rsp + 0xc90], xmm6
mov r15, r8
mov rbp, rdx
mov qword [rsp + 0xe0], rcx
lea r12, [rdx + 0x90]
lea r14, [rdx + 8]
lea rbx, [rsp + 0x778]
xorps xmm6, xmm6
movdqa xmm7, xmmword [str.________________F]
pcmpeqd xmm8, xmm8
movdqa xmm9, xmmword [0x140187560]
movdqa xmm10, xmmword [0x140187540]
movdqa xmm11, xmmword [0x140187550]
lea rax, [rdx + 0xa0]
mov qword [rsp + 0x488], rax
lea rdi, [rsp + 0x770]
mov qword [rsp + 0xc0], rsi
nop
lea rcx, [rsp + 0x610]
mov rdx, r12
mov r8, r15
call fcn.140040d10
movzx esi, byte [rsp + 0x610]
cmp rsi, 5
jne 0x1400812f9
mov rax, qword [rbp]
mov qword [rbp], 2
cmp rax, 2
je 0x14007d690
mov qword [rsp + 0x770], rax
mov rax, qword [r14 + 0x60]
mov qword [rbx + 0x60], rax
movups xmm0, xmmword [r14 + 0x50]
movups xmmword [rbx + 0x50], xmm0
movups xmm0, xmmword [r14 + 0x40]
movups xmmword [rbx + 0x40], xmm0
movdqu xmm0, xmmword [r14]
movdqu xmm1, xmmword [r14 + 0x10]
movups xmm2, xmmword [r14 + 0x20]
movups xmm3, xmmword [r14 + 0x30]
movups xmmword [rbx + 0x30], xmm3
movups xmmword [rbx + 0x20], xmm2
movdqu xmmword [rbx + 0x10], xmm1
movdqu xmmword [rbx], xmm0
mov rcx, rbp
mov rdx, rdi
mov r8, r15
call fcn.140081790
jmp 0x14007d5f0
mov rdx, qword [rbp + 0xb0]
mov r8, qword [r15]
lea rcx, [rsp + 0x2e0]
call fcn.140072100
mov rsi, qword [rsp + 0x3e0]
cmp rsi, 4
je 0x1400814c2
cmp esi, 3
je 0x14008153d
mov byte [rsp + 0x80], r13b
cmp esi, 2
je 0x140081539
mov r8d, 0x100
lea r13, [rsp + 0x160]
mov rcx, r13
lea rdx, [rsp + 0x2e0]
call sub.msvcrt.dll_memcpy
lea rax, [rsp + 0x2f8]
movups xmm0, xmmword [rax + 0xf0]
movaps xmmword [rsp + 0x610], xmm0
mov r8d, 0x100
lea rdi, [rsp + 0xb90]
mov rcx, rdi
mov rdx, r13
call sub.msvcrt.dll_memcpy
movaps xmm0, xmmword [rsp + 0x610]
movaps xmmword [rsp + 0x740], xmm0
mov r8d, 0x100
lea r13, [rsp + 0xa90]
mov rcx, r13
mov rdx, rdi
call sub.msvcrt.dll_memcpy
mov qword [rsp + 0xf8], rsi
movdqa xmm0, xmmword [rsp + 0x740]
lea rax, [rsp + 0x100]
movdqu xmmword [rax], xmm0
mov rax, qword [rsp + 0x100]
test rsi, rsi
je 0x14007d868
test rax, rax
mov rsi, qword [rsp + 0xc0]
je 0x140081539
mov rax, qword [rsp + 0x108]
test rax, rax
je 0x140081539
add rax, 0xd0
mov rax, qword [rax]
test al, 4
jne 0x14007d899
mov r8d, 0xe0
lea rcx, [rsp + 0x4d0]
mov rdx, r13
call sub.msvcrt.dll_memcpy
lea rax, [rsp + 0xb70]
movdqu xmm0, xmmword [rax]
movdqu xmm1, xmmword [rax + 0x10]
movdqa xmmword [rsp + 0x460], xmm1
movdqa xmmword [rsp + 0x450], xmm0
lea rdi, [0x1401a1211]
mov qword [rsp + 0x20], rdi
mov r8d, 0xa
lea rcx, [rsp + 0x7f0]
lea rdx, str.keep_aliveHTTP_1.1_100_Continue_r_n_r_n0_r_n_r_n_r_n0_r_n_r_n
lea r9, [rsp + 0x160]
call fcn.14001d490
movzx eax, byte [rsp + 0x800]
mov rdx, qword [rsp + 0x7f0]
mov r8, qword [rsp + 0x7f8]
test eax, eax
je 0x14007d9d0
cmp eax, 2
lea rsi, [rsp + 0x618]
lea rbx, [0x1401b5068]
lea r13, [rsp + 0x930]
je 0x14007da0a
cmp eax, 3
je 0x140081539
mov rcx, rsi
call fcn.140003980
jmp 0x14007da1d
test rax, rax
mov rsi, qword [rsp + 0xc0]
je 0x140081539
mov rax, qword [rsp + 0x108]
test rax, rax
je 0x140081539
add rax, 0x30
mov rax, qword [rax]
test al, 4
je 0x14007d7ab
lea rcx, [rsp + 0xf8]
call fcn.14008acc0
cmp qword [rsp + 0xf8], 0
mov rax, qword [rsp + 0x100]
lea rdi, [rsp + 0x770]
je 0x14007d948
test rax, rax
je 0x14007d9ad
mov rdx, qword [rsp + 0x108]
test rdx, rdx
je 0x14007d9ad
mov rax, qword [rdx + 0xd0]
nop word cs:[rax + rax]
mov rcx, rax
test cl, 4
jne 0x14007d90d
mov r8, rcx
or r8, 2
mov rax, rcx
lock cmpxchg qword [rdx + 0xd0], r8
jne 0x14007d8f0
and ecx, 5
cmp ecx, 1
jne 0x14007d926
mov rax, qword [rdx + 0xc0]
mov rcx, qword [rdx + 0xc8]
call qword [rax + 0x10]
mov rax, qword [rsp + 0x108]
test rax, rax
je 0x14007d9ad
lock dec qword [rax]
jne 0x14007d9ad
mov rcx, qword [rsp + 0x108]
call fcn.1400bab20
jmp 0x14007d9ad
test rax, rax
je 0x14007d9ad
mov rdx, qword [rsp + 0x108]
test rdx, rdx
je 0x14007d9ad
mov rax, qword [rdx + 0x30]
nop
mov rcx, rax
test cl, 4
jne 0x14007d97a
mov r8, rcx
or r8, 2
mov rax, rcx
lock cmpxchg qword [rdx + 0x30], r8
jne 0x14007d960
and ecx, 5
cmp ecx, 1
jne 0x14007d98d
mov rax, qword [rdx + 0x20]
mov rcx, qword [rdx + 0x28]
call qword [rax + 0x10]
mov rax, qword [rsp + 0x108]
test rax, rax
je 0x14007d9ad
lock dec qword [rax]
jne 0x14007d9ad
mov rcx, qword [rsp + 0x108]
call fcn.1400bbcf0
mov rcx, r13
call fcn.14000d960
lea rcx, [rsp + 0xb70]
call fcn.140038a00
movzx r13d, byte [rsp + 0x80]
jmp 0x14007d5e7
xor eax, eax
lea rsi, [rsp + 0x618]
lea rbx, [0x1401b5068]
lea r13, [rsp + 0x930]
nop dword [rax]
cmp r8, rax
je 0x14007d85b
movzx ecx, byte [rdx + rax]
inc rax
cmp cl, byte [rcx + rbx]
je 0x14007d9f0
jmp 0x140081539
mov qword [rsp + 0x618], 0
mov byte [rsp + 0x620], dl
movdqu xmm0, xmmword [rsi]
movdqu xmm1, xmmword [rsi + 0x10]
movdqa xmmword [rsp + 0x7f0], xmm0
movdqa xmmword [rsp + 0x800], xmm1
mov qword [rsp + 0x20], rdi
mov r8d, 0x10
mov rcx, r13
lea rdx, [0x1401a2ccc]
lea r9, [rsp + 0x160]
call fcn.14001d490
movzx eax, byte [rsp + 0x940]
mov rdx, qword [rsp + 0x930]
mov r8, qword [rsp + 0x938]
test eax, eax
mov qword [rsp + 0x118], rbp
mov qword [rsp + 0x158], r15
mov qword [rsp + 0xb8], r12
mov qword [rsp + 0xf0], r14
je 0x14007daae
cmp eax, 2
je 0x14007dac6
cmp eax, 3
je 0x140081539
mov rcx, rsi
call fcn.140003980
jmp 0x14007dad9
xor eax, eax
cmp r8, rax
je 0x14007daa4
movzx ecx, byte [rdx + rax]
inc rax
cmp cl, byte [rcx + rbx]
je 0x14007dab0
jmp 0x140081539
mov qword [rsp + 0x618], 0
mov byte [rsp + 0x620], dl
movups xmm0, xmmword [rsi]
movups xmm1, xmmword [rsi + 0x10]
lea rax, [rsp + 0x2f8]
movups xmmword [rax + 0x18], xmm1
movups xmmword [rax + 8], xmm0
movaps xmm0, xmmword [rsp + 0x7f0]
movdqa xmm1, xmmword [rsp + 0x800]
movaps xmmword [rsp + 0x2e0], xmm0
movdqa xmmword [rsp + 0x2f0], xmm1
movups xmm0, xmmword [0x1401a2cf0]
movups xmmword [rax + 0x38], xmm0
movups xmm0, xmmword [0x1401a2ce0]
movups xmmword [rax + 0x28], xmm0
movups xmm0, xmmword [0x1401a2d10]
movups xmmword [rax + 0x58], xmm0
movups xmm0, xmmword [0x1401a2d00]
movups xmmword [rax + 0x48], xmm0
movups xmm0, xmmword [0x1401a2d30]
movups xmmword [rax + 0x78], xmm0
movdqu xmm0, xmmword [0x1401a2d20]
movdqu xmmword [rax + 0x68], xmm0
lea rdx, [rsp + 0x2e0]
xor ecx, ecx
jmp 0x14007db97
mov rcx, qword [rsp + 0x88]
inc rcx
mov rax, rcx
shl rax, 5
lea rdx, [rsp + rax]
add rdx, 0x2e0
cmp rcx, 5
je 0x14007dfa2
mov qword [rsp + 0x88], rcx
mov rax, qword [rsp + 0x508]
test rax, rax
je 0x14007db70
lea rcx, [rsp + 0x4d0]
mov qword [rsp + 0x50], rdx
mov qword [rsp + 0x40], rax
call fcn.140024930
mov r10, qword [rsp + 0x40]
mov r9, qword [rsp + 0x50]
mov r12d, eax
movzx edi, word [rsp + 0x528]
mov ebx, edi
and ebx, r12d
mov rbp, qword [rsp + 0x4e8]
mov r14, qword [rsp + 0x4f0]
mov r11, qword [rsp + 0x4f8]
xor r15d, r15d
mov qword [rsp + 0x60], r11
jmp 0x14007dc16
movzx eax, byte [rax + 8]
cmp al, byte [r9 + 8]
je 0x14007dcc4
nop dword [rax]
inc r15
inc rbx
mov rax, rbx
nop dword [rax]
mov rbx, rax
mov eax, 0
cmp rbx, r14
jae 0x14007dc20
movzx r13d, word [rbp + rbx*4]
cmp r13, 0xffff
je 0x14007db70
movzx eax, word [rbp + rbx*4 + 2]
mov ecx, eax
and ecx, edi
mov edx, ebx
sub edx, ecx
and edx, edi
cmp r15, rdx
ja 0x14007db70
cmp ax, r12w
jne 0x14007dc10
cmp r10, r13
jbe 0x140081539
imul rsi, r13, 0x68
mov rcx, qword [r11 + rsi + 0x40]
test rcx, rcx
setne al
cmp qword [r9], 0
sete dl
cmp al, dl
je 0x14007dc10
lea rax, [r11 + rsi]
add rax, 0x40
test rcx, rcx
je 0x14007dbff
mov r8, qword [rax + 0x10]
cmp r8, qword [r9 + 0x10]
jne 0x14007dc10
mov rdx, qword [r9 + 8]
mov rcx, qword [rax + 8]
call sub.msvcrt.dll_memcmp
mov r11, qword [rsp + 0x60]
mov r10, qword [rsp + 0x40]
mov r9, qword [rsp + 0x50]
test eax, eax
jne 0x14007dc10
cmp qword [r11 + rsi], 0
je 0x14007dce7
add r11, rsi
mov rdx, qword [r11 + 8]
lea rcx, [rsp + 0x4d0]
call fcn.140025690
mov r14, qword [rsp + 0x4f0]
cmp r14, rbx
jbe 0x140081539
mov rax, qword [rsp + 0x4e8]
mov dword [rax + rbx*4], 0xffff
mov rcx, qword [rsp + 0x508]
cmp rcx, r13
jbe 0x140081539
mov r8, qword [rsp + 0x4f8]
lea rdx, [r8 + rsi]
movups xmm0, xmmword [r8 + rsi]
movups xmm1, xmmword [r8 + rsi + 0x10]
movups xmm2, xmmword [r8 + rsi + 0x20]
movups xmm3, xmmword [r8 + rsi + 0x30]
movaps xmmword [rsp + 0x160], xmm0
movaps xmmword [rsp + 0x170], xmm1
movaps xmmword [rsp + 0x180], xmm2
movaps xmmword [rsp + 0x190], xmm3
movups xmm0, xmmword [r8 + rsi + 0x40]
movaps xmmword [rsp + 0x1a0], xmm0
movups xmm0, xmmword [r8 + rsi + 0x50]
movaps xmmword [rsp + 0x1b0], xmm0
mov r9, qword [r8 + rsi + 0x60]
mov qword [rsp + 0x1c0], r9
dec rcx
imul r9, rcx, 0x68
mov r10, qword [r8 + r9 + 0x60]
movdqu xmm0, xmmword [r8 + r9 + 0x50]
movdqu xmm1, xmmword [r8 + r9 + 0x40]
movups xmm2, xmmword [r8 + r9]
movups xmm3, xmmword [r8 + r9 + 0x10]
movups xmm4, xmmword [r8 + r9 + 0x20]
movups xmm5, xmmword [r8 + r9 + 0x30]
movups xmmword [r8 + rsi], xmm2
movups xmmword [r8 + rsi + 0x10], xmm3
movups xmmword [r8 + rsi + 0x20], xmm4
movups xmmword [r8 + rsi + 0x30], xmm5
movdqu xmmword [r8 + rsi + 0x40], xmm1
movdqu xmmword [r8 + rsi + 0x50], xmm0
mov qword [r8 + rsi + 0x60], r10
mov qword [rsp + 0x508], rcx
cmp rcx, r13
mov r9d, 0
cmovbe rdx, r9
jbe 0x14007dea3
movzx r8d, word [r8 + rsi + 0x60]
movzx r9d, word [rsp + 0x528]
and r9w, r8w
movzx r11d, r9w
jmp 0x14007de20
inc r10
mov r11, r10
nop word cs:[rax + rax]
mov r10, r11
mov r11d, 0
cmp r10, r14
jae 0x14007de20
movzx r11d, word [rax + r10*4]
cmp r11, 0xffff
cmovne r9, r11
je 0x14007de0b
cmp r9, rcx
jb 0x14007de0b
mov word [rax + r10*4], r13w
mov word [rax + r10*4 + 2], r8w
cmp qword [rdx], 0
je 0x14007dea3
mov r10, qword [rdx + 8]
mov r8, qword [rsp + 0x520]
cmp r10, r8
jae 0x140081539
mov r9, qword [rdx + 0x10]
mov rdx, qword [rsp + 0x510]
lea r10, [r10 + r10*8]
mov qword [rdx + r10*8], 0
mov qword [rdx + r10*8 + 8], r13
cmp r9, r8
jae 0x140081539
lea r8, [r9 + r9*8]
mov qword [rdx + r8*8 + 0x10], 0
mov qword [rdx + r8*8 + 0x18], r13
test rcx, rcx
je 0x14007df15
lea r8, [rbx + 1]
movzx ecx, word [rsp + 0x528]
nop word cs:[rax + rax]
mov rdx, r8
mov r8d, 0
cmp rdx, r14
jae 0x14007dec0
movzx r8d, word [rax + rdx*4]
cmp r8w, 0xffff
je 0x14007df15
movzx r9d, word [rax + rdx*4 + 2]
mov r10d, ecx
and r10d, r9d
mov r11d, edx
sub r11d, r10d
test r11d, ecx
je 0x14007df15
cmp rbx, r14
jae 0x140081539
mov word [rax + rbx*4], r8w
mov word [rax + rbx*4 + 2], r9w
mov dword [rax + rdx*4], 0xffff
lea r8, [rdx + 1]
mov rbx, rdx
jmp 0x14007dec0
lea rcx, [rsp + 0x178]
mov rax, qword [rcx + 0x20]
mov qword [rsp + 0x630], rax
movdqu xmm0, xmmword [rcx]
movdqu xmm1, xmmword [rcx + 0x10]
movdqa xmmword [rsp + 0x620], xmm1
movdqa xmmword [rsp + 0x610], xmm0
mov rax, qword [rsp + 0x1a0]
test rax, rax
je 0x14007df6c
mov rdx, qword [rsp + 0x1a8]
mov r8, qword [rsp + 0x1b0]
lea rcx, [rsp + 0x1b8]
call qword [rax + 0x10]
cmp byte [rsp + 0x630], 2
je 0x14007db70
mov rax, qword [rsp + 0x610]
mov rdx, qword [rsp + 0x618]
mov r8, qword [rsp + 0x620]
lea rcx, [rsp + 0x628]
call qword [rax + 0x10]
jmp 0x14007db70
movdqu xmm13, xmmword [0x1401a2d50]
movdqa xmmword [rsp + 0x170], xmm13
movups xmm14, xmmword [0x1401a2d40]
movaps xmmword [rsp + 0x160], xmm14
mov rax, qword [rsp + 0x508]
test rax, rax
je 0x14007e216
lea rcx, [rsp + 0x4d0]
lea rdx, [rsp + 0x160]
mov qword [rsp + 0x50], rax
call fcn.140024930
mov r10, qword [rsp + 0x50]
mov r13d, eax
movzx esi, word [rsp + 0x528]
mov r14d, esi
and r14d, r13d
mov rbp, qword [rsp + 0x4e8]
mov r12, qword [rsp + 0x4f0]
mov r15, qword [rsp + 0x4f8]
mov r9, qword [rsp + 0x160]
mov rdx, qword [rsp + 0x168]
movzx eax, byte [rsp + 0x168]
mov byte [rsp + 0x40], al
mov rax, qword [rsp + 0x170]
mov qword [rsp + 0x88], rax
xor edi, edi
mov qword [rsp + 0x60], r9
mov qword [rsp + 0x70], rdx
jmp 0x14007e076
movzx ecx, byte [rsp + 0x40]
cmp byte [rax + 8], cl
je 0x14007e146
nop word [rax + rax]
inc rdi
inc r14
mov rax, r14
lea rbx, [rsp + 0x778]
nop word cs:[rax + rax]
mov r14, rax
mov eax, 0
cmp r14, r12
jae 0x14007e090
movzx eax, word [rbp + r14*4]
cmp rax, 0xffff
je 0x14007e158
movzx ecx, word [rbp + r14*4 + 2]
mov r11d, ecx
and r11d, esi
mov r8d, r14d
sub r8d, r11d
and r8d, esi
cmp rdi, r8
ja 0x14007e158
cmp cx, r13w
jne 0x14007e070
cmp r10, rax
jbe 0x140081539
test r9, r9
sete r8b
imul rbx, rax, 0x68
mov rcx, qword [r15 + rbx + 0x40]
test rcx, rcx
setne al
cmp al, r8b
je 0x14007e070
lea rax, [r15 + rbx]
add rax, 0x40
test rcx, rcx
je 0x14007e059
mov rcx, qword [rsp + 0x88]
cmp qword [rax + 0x10], rcx
jne 0x14007e070
mov rcx, qword [rax + 8]
mov r8, qword [rsp + 0x88]
call sub.msvcrt.dll_memcmp
mov rdx, qword [rsp + 0x70]
mov r10, qword [rsp + 0x50]
mov r9, qword [rsp + 0x60]
test eax, eax
jne 0x14007e070
lea rsi, [r15 + rbx]
add rsi, 0x18
lea rbx, [rsp + 0x778]
jmp 0x14007e15a
xor esi, esi
test r9, r9
movabs r12, 0xfefefefefefefeff
movabs rbp, 0x8080808080808080
movzx r13d, byte [rsp + 0x80]
je 0x14007e190
lea rcx, [rsp + 0x178]
mov r8, qword [rsp + 0x88]
call qword [r9 + 0x10]
test rsi, rsi
je 0x14007e23b
cmp qword [rsi + 0x10], 8
jne 0x14007e1b7
mov rax, qword [rsi + 8]
movabs rcx, 0x7372656c69617274
cmp qword [rax], rcx
je 0x14007e23b
movdqa xmmword [rsp + 0x620], xmm13
movaps xmmword [rsp + 0x610], xmm14
lea rcx, [rsp + 0x160]
lea rdx, [rsp + 0x4d0]
lea r8, [rsp + 0x610]
call fcn.140025de0
cmp byte [rsp + 0x180], 2
je 0x14007e23b
mov rax, qword [rsp + 0x160]
mov rdx, qword [rsp + 0x168]
mov r8, qword [rsp + 0x170]
lea rcx, [rsp + 0x178]
call qword [rax + 0x10]
jmp 0x14007e23b
lea rbx, [rsp + 0x778]
movabs r12, 0xfefefefefefefeff
movabs rbp, 0x8080808080808080
movzx r13d, byte [rsp + 0x80]
movups xmm0, xmmword [0x1401b3958]
movaps xmmword [rsp + 0x170], xmm0
movdqu xmm0, xmmword [0x1401b3948]
movdqa xmmword [rsp + 0x160], xmm0
lea rcx, [rsp + 0x8d8]
lea rdx, [rsp + 0x4d0]
lea r8, [rsp + 0x160]
call fcn.140025de0
cmp byte [rsp + 0x8f8], 2
je 0x14007f092
movdqu xmm0, xmmword [rsp + 0x8d8]
movdqu xmm1, xmmword [rsp + 0x8e8]
movdqa xmmword [rsp + 0x9f0], xmm0
movdqa xmmword [rsp + 0xa00], xmm1
mov rax, qword [rsp + 0x8f8]
mov qword [rsp + 0xa10], rax
mov rsi, qword [rsp + 0x9f8]
mov rdi, qword [rsp + 0xa00]
xor eax, eax
nop dword [rax]
cmp rdi, rax
je 0x14007e2ee
movzx ecx, byte [rsi + rax]
inc rax
cmp cl, 9
je 0x14007e2d0
add cl, 0xe0
cmp cl, 0x5f
jb 0x14007e2d0
jmp 0x140081539
mov qword [rsp + 0x610], 0
mov qword [rsp + 0x618], rdi
mov qword [rsp + 0x620], rsi
mov qword [rsp + 0x628], rdi
mov qword [rsp + 0x630], 0
mov qword [rsp + 0x638], rdi
mov qword [rsp + 0x640], 1
movabs rax, 0x2c0000002c
mov qword [rsp + 0x648], rax
mov word [rsp + 0x650], 1
lea rax, [rsi + 8]
mov qword [rsp + 0xd8], rax
xor r14d, r14d
xor r15d, r15d
xor eax, eax
mov qword [rsp + 0x88], rax
mov qword [rsp + 0x98], rsi
mov qword [rsp + 0x90], rdi
jmp 0x14007e394
movzx r13d, byte [rsp + 0x80]
cmp byte [rsp + 0x50], 0
je 0x14007f06f
mov rax, r15
mov r13, qword [rsp + 0x88]
cmp r13, rdi
ja 0x14007e566
movzx ecx, byte [rsp + 0x648]
mov r8, rcx
movabs rdx, 0x101010101010101
imul r8, rdx
jmp 0x14007e3dc
mov r13, r14
cmp r14, rdi
ja 0x14007edf4
mov r10, rdi
sub r10, r13
lea r9, [rsi + r13]
cmp r10, 0x10
jae 0x14007e420
cmp rdi, r13
je 0x14007e550
xor edx, edx
nop word [rax + rax]
cmp byte [r9 + rdx], cl
je 0x14007e503
inc rdx
cmp r10, rdx
jne 0x14007e400
jmp 0x14007e550
mov r15, r14
lea r11, [r9 + 7]
and r11, 0xfffffffffffffff8
sub r11, r9
je 0x14007e460
cmp r11, r10
cmovae r11, r10
test r11, r11
je 0x14007e460
xor edx, edx
nop
cmp byte [r9 + rdx], cl
je 0x14007e503
inc rdx
cmp r11, rdx
jne 0x14007e440
lea rdx, [r10 - 0x10]
cmp r11, rdx
jbe 0x14007e467
jmp 0x14007e4b4
lea rdx, [r10 - 0x10]
xor r11d, r11d
mov rsi, qword [rsp + 0xd8]
add rsi, r13
nop word cs:[rax + rax]
mov rdi, qword [rsi + r11 - 8]
xor rdi, r8
lea rbx, [rdi + r12]
not rdi
and rdi, rbx
mov rbx, qword [rsi + r11]
xor rbx, r8
lea r14, [rbx + r12]
not rbx
and rbx, r14
or rbx, rdi
test rbx, rbp
jne 0x14007e4b4
add r11, 0x10
cmp r11, rdx
jbe 0x14007e480
cmp r11, r10
lea rbx, [rsp + 0x778]
mov rsi, qword [rsp + 0x98]
mov rdi, qword [rsp + 0x90]
mov r14, r15
je 0x14007e550
add r9, r11
mov r10, rdi
sub r10, r11
sub r10, r13
xor edx, edx
nop word cs:[rax + rax]
cmp byte [r9 + rdx], cl
je 0x14007e500
inc rdx
cmp r10, rdx
jne 0x14007e4f0
jmp 0x14007e550
add rdx, r11
add rdx, r13
mov r14, rdx
inc r14
je 0x14007e3d0
cmp r14, rdi
ja 0x14007e3d0
cmp byte [rsi + rdx], cl
jne 0x14007e3d0
mov qword [rsp + 0x630], r14
mov qword [rsp + 0x610], r14
mov cl, 1
mov dword [rsp + 0x50], ecx
mov r15, r14
mov qword [rsp + 0x88], r14
jmp 0x14007e584
mov qword [rsp + 0x630], r14
mov qword [rsp + 0x630], rdi
mov r14, rdi
mov r13, rdi
mov qword [rsp + 0x88], r13
mov byte [rsp + 0x651], 1
mov dword [rsp + 0x50], 0
mov r15, rax
mov rdx, rdi
lea rcx, [rsi + rax]
sub rdx, rax
call fcn.1400a09f0
mov r8, rdx
lea rcx, [0x1401b5068]
mov qword [rsp + 0x20], rcx
lea rcx, [rsp + 0x160]
mov rdx, rax
lea r9, [rsp + 0x7f0]
call fcn.14001d490
movzx r13d, byte [rsp + 0x170]
cmp r13d, 3
je 0x14007e380
mov qword [rsp + 0x70], r15
mov qword [rsp + 0x60], r14
mov r11, qword [rsp + 0x508]
test r11, r11
je 0x14007efc0
mov r15, qword [rsp + 0x160]
mov rbp, qword [rsp + 0x168]
cmp dword [rsp + 0x4d0], 2
mov qword [rsp + 0x68], r11
jne 0x14007e6b8
movdqu xmm0, xmmword [rsp + 0x4d8]
pshufd xmm1, xmm0, 0x44
pxor xmm1, xmm10
movdqa xmmword [rsp + 0x160], xmm1
pshufd xmm1, xmm0, 0xee
pxor xmm1, xmm11
movdqa xmmword [rsp + 0x170], xmm1
movdqa xmmword [rsp + 0x180], xmm0
lea rax, [rsp + 0x190]
movaps xmmword [rax], xmm6
mov qword [rax + 0x10], 0
xor eax, eax
cmp r13d, 2
setne al
mov qword [rsp + 0x5b0], rax
mov r8d, 8
lea rdi, [rsp + 0x160]
mov rcx, rdi
lea r14, [rsp + 0x5b0]
mov rdx, r14
call fcn.14001a7b0
cmp r13d, 2
lea rbx, [0x1401b5068]
jne 0x14007e71d
movzx eax, r15b
mov qword [rsp + 0x5b0], rax
mov r8d, 8
mov rcx, rdi
mov rdx, r14
call fcn.14001a7b0
jmp 0x14007e7d9
xor ecx, ecx
cmp r13d, 2
setne cl
movabs rax, 0xcbf29ce484222325
xor rcx, rax
movabs r12, 0x1efac7090aef4a21
imul rcx, r12
cmp r13d, 2
jne 0x14007e739
movzx eax, r15b
xor ecx, eax
imul r12d, ecx
and r12d, 0x7fff
movzx edi, word [rsp + 0x528]
mov eax, r12d
and eax, edi
mov rbx, qword [rsp + 0x4e8]
mov rbp, qword [rsp + 0x4f0]
mov r10, qword [rsp + 0x4f8]
jmp 0x14007e922
test r13d, r13d
je 0x14007e7a5
mov rcx, rdi
mov rdx, r15
mov r8, rbp
call fcn.14001a7b0
jmp 0x14007e7d9
lea rax, [r15 + rbp]
test r13d, r13d
lea r10, [0x1401b5068]
movabs r11, 0x100000001b3
mov qword [rsp + 0x40], rbp
je 0x14007e99a
test rbp, rbp
je 0x14007e9ea
mov r8, rbp
and r8, 7
je 0x14007ee04
mov rdx, r15
nop word cs:[rax + rax]
movzx r12d, byte [rdx]
inc rdx
xor r12, rcx
imul r12, r11
mov rcx, r12
dec r8
jne 0x14007e780
cmp rbp, 8
jae 0x14007ee20
jmp 0x14007e8de
test rbp, rbp
je 0x14007e7d9
xor esi, esi
nop dword [rax]
movzx eax, byte [r15 + rsi]
movzx eax, byte [rax + rbx]
mov byte [rsp + 0x5b0], al
mov r8d, 1
mov rcx, rdi
mov rdx, r14
call fcn.14001a7b0
inc rsi
cmp rbp, rsi
jne 0x14007e7b0
mov qword [rsp + 0x40], rbp
mov rax, qword [rsp + 0x170]
mov r9, qword [rsp + 0x190]
shl r9, 0x38
or r9, qword [rsp + 0x198]
mov rcx, qword [rsp + 0x178]
mov r8, qword [rsp + 0x160]
add r8, rax
rol rax, 0xd
xor rcx, r9
xor rax, r8
rol r8, 0x20
mov rdx, qword [rsp + 0x168]
add rdx, rcx
rol rcx, 0x10
xor rcx, rdx
add r8, rcx
rol rcx, 0x15
add rdx, rax
rol rax, 0x11
xor rcx, r8
xor rax, rdx
rol rdx, 0x20
xor r8, r9
add r8, rax
rol rax, 0xd
xor rax, r8
rol r8, 0x20
xor rdx, 0xff
add rdx, rcx
rol rcx, 0x10
xor rcx, rdx
add r8, rcx
rol rcx, 0x15
add rdx, rax
rol rax, 0x11
xor rax, rdx
rol rdx, 0x20
xor rcx, r8
add r8, rax
rol rax, 0xd
xor rax, r8
rol r8, 0x20
add rdx, rcx
rol rcx, 0x10
xor rcx, rdx
add r8, rcx
rol rcx, 0x15
add rdx, rax
rol rax, 0x11
xor rax, rdx
rol rdx, 0x20
xor rcx, r8
add r8, rax
rol rax, 0xd
xor rax, r8
add rdx, rcx
shl rcx, 0x10
xor rcx, rdx
shr rcx, 0x2b
add rdx, rax
shr rax, 0x2f
xor rax, rcx
mov r12, rdx
shr r12, 0x20
xor r12, rdx
xor r12, rax
and r12d, 0x7fff
movzx edi, word [rsp + 0x528]
mov eax, r12d
and eax, edi
mov rbx, qword [rsp + 0x4e8]
mov rbp, qword [rsp + 0x4f0]
mov r10, qword [rsp + 0x4f8]
test r13d, r13d
je 0x14007eeb6
cmp r13d, 2
mov r11, qword [rsp + 0x68]
jne 0x14007ea1c
xor ecx, ecx
jmp 0x14007e930
inc rcx
inc r13
mov rax, r13
nop
mov r13, rax
mov eax, 0
cmp r13, rbp
jae 0x14007e930
movzx r14d, word [rbx + r13*4]
cmp r14, 0xffff
je 0x14007efc0
movzx eax, word [rbx + r13*4 + 2]
mov edx, edi
and edx, eax
mov r8d, r13d
sub r8d, edx
mov edx, edi
and edx, r8d
cmp rcx, rdx
ja 0x14007efc0
cmp ax, r12w
jne 0x14007e926
cmp r11, r14
jbe 0x140081539
imul rax, r14, 0x68
cmp qword [r10 + rax + 0x40], 0
jne 0x14007e926
add rax, r10
add rax, 0x40
cmp byte [rax + 8], r15b
jne 0x14007e926
jmp 0x14007ead4
test rbp, rbp
je 0x14007ee89
mov r8, rbp
mov rdx, r15
and r8, 3
je 0x14007f004
nop word cs:[rax + rax]
movzx r9d, byte [rdx]
movzx r12d, byte [r9 + r10]
xor r12, rcx
imul r12, r11
inc rdx
mov rcx, r12
dec r8
jne 0x14007e9c0
cmp rbp, 4
jae 0x14007f020
jmp 0x14007e8de
and ecx, 0x7fff
movzx edi, word [rsp + 0x528]
mov eax, ecx
and eax, edi
mov rbx, qword [rsp + 0x4e8]
mov rbp, qword [rsp + 0x4f0]
mov r10, qword [rsp + 0x4f8]
mov r12d, ecx
mov r11, qword [rsp + 0x68]
xor esi, esi
mov qword [rsp + 0x120], r15
jmp 0x14007ea40
inc rsi
inc r13
mov rax, r13
nop word cs:[rax + rax]
mov r13, rax
mov eax, 0
cmp r13, rbp
jae 0x14007ea40
movzx r14d, word [rbx + r13*4]
cmp r14, 0xffff
je 0x14007efc0
movzx eax, word [rbx + r13*4 + 2]
mov ecx, edi
and ecx, eax
mov edx, r13d
sub edx, ecx
mov ecx, edi
and ecx, edx
cmp rsi, rcx
ja 0x14007efc0
cmp ax, r12w
jne 0x14007ea28
cmp r11, r14
jbe 0x140081539
imul rax, r14, 0x68
cmp qword [r10 + rax + 0x40], 0
je 0x14007ea28
add rax, r10
add rax, 0x40
mov rcx, qword [rsp + 0x40]
cmp qword [rax + 0x10], rcx
jne 0x14007ea28
mov rcx, qword [rax + 8]
mov rdx, r15
mov r8, qword [rsp + 0x40]
mov r15, r10
call sub.msvcrt.dll_memcmp
mov r10, r15
mov r11, qword [rsp + 0x68]
mov r15, qword [rsp + 0x120]
test eax, eax
jne 0x14007ea28
cmp r14, r11
lea rbx, [rsp + 0x778]
jae 0x140081539
imul rsi, r14, 0x68
cmp qword [r10 + rsi], 0
je 0x14007eb0c
add r10, rsi
mov rdx, qword [r10 + 8]
lea rcx, [rsp + 0x4d0]
call fcn.140025690
mov rbp, qword [rsp + 0x4f0]
cmp rbp, r13
jbe 0x140081539
mov rax, qword [rsp + 0x4e8]
mov dword [rax + r13*4], 0xffff
mov rcx, qword [rsp + 0x508]
cmp rcx, r14
jbe 0x140081539
mov r8, qword [rsp + 0x4f8]
lea rdx, [r8 + rsi]
movups xmm0, xmmword [r8 + rsi]
movups xmm1, xmmword [r8 + rsi + 0x10]
movups xmm2, xmmword [r8 + rsi + 0x20]
movups xmm3, xmmword [r8 + rsi + 0x30]
movaps xmmword [rsp + 0x160], xmm0
movaps xmmword [rsp + 0x170], xmm1
movaps xmmword [rsp + 0x180], xmm2
movaps xmmword [rsp + 0x190], xmm3
movups xmm0, xmmword [r8 + rsi + 0x40]
movaps xmmword [rsp + 0x1a0], xmm0
movups xmm0, xmmword [r8 + rsi + 0x50]
movaps xmmword [rsp + 0x1b0], xmm0
mov r9, qword [r8 + rsi + 0x60]
mov qword [rsp + 0x1c0], r9
dec rcx
imul r9, rcx, 0x68
mov r10, qword [r8 + r9 + 0x60]
movdqu xmm0, xmmword [r8 + r9 + 0x50]
movdqu xmm1, xmmword [r8 + r9 + 0x40]
movups xmm2, xmmword [r8 + r9]
movups xmm3, xmmword [r8 + r9 + 0x10]
movups xmm4, xmmword [r8 + r9 + 0x20]
movups xmm5, xmmword [r8 + r9 + 0x30]
movups xmmword [r8 + rsi], xmm2
movups xmmword [r8 + rsi + 0x10], xmm3
movups xmmword [r8 + rsi + 0x20], xmm4
movups xmmword [r8 + rsi + 0x30], xmm5
movdqu xmmword [r8 + rsi + 0x40], xmm1
movdqu xmmword [r8 + rsi + 0x50], xmm0
mov qword [r8 + rsi + 0x60], r10
mov qword [rsp + 0x508], rcx
cmp rcx, r14
mov r9d, 0
cmovbe rdx, r9
jbe 0x14007ecc3
movzx r8d, word [r8 + rsi + 0x60]
movzx r9d, word [rsp + 0x528]
and r9w, r8w
movzx r11d, r9w
jmp 0x14007ec40
inc r10
mov r11, r10
nop word [rax + rax]
mov r10, r11
mov r11d, 0
cmp r10, rbp
jae 0x14007ec40
movzx r11d, word [rax + r10*4]
cmp r11, 0xffff
cmovne r9, r11
je 0x14007ec31
cmp r9, rcx
jb 0x14007ec31
mov word [rax + r10*4], r14w
mov word [rax + r10*4 + 2], r8w
cmp qword [rdx], 0
je 0x14007ecc3
mov r10, qword [rdx + 8]
mov r8, qword [rsp + 0x520]
cmp r10, r8
jae 0x140081539
mov r9, qword [rdx + 0x10]
mov rdx, qword [rsp + 0x510]
lea r10, [r10 + r10*8]
mov qword [rdx + r10*8], 0
mov qword [rdx + r10*8 + 8], r14
cmp r9, r8
jae 0x140081539
lea r8, [r9 + r9*8]
mov qword [rdx + r8*8 + 0x10], 0
mov qword [rdx + r8*8 + 0x18], r14
test rcx, rcx
mov rsi, qword [rsp + 0x98]
mov rdi, qword [rsp + 0x90]
mov r14, qword [rsp + 0x60]
je 0x14007ed45
lea r8, [r13 + 1]
movzx ecx, word [rsp + 0x528]
nop dword [rax]
mov rdx, r8
mov r8d, 0
cmp rdx, rbp
jae 0x14007ecf0
movzx r8d, word [rax + rdx*4]
cmp r8w, 0xffff
je 0x14007ed45
movzx r9d, word [rax + rdx*4 + 2]
mov r10d, ecx
and r10d, r9d
mov r11d, edx
sub r11d, r10d
test r11d, ecx
je 0x14007ed45
cmp r13, rbp
jae 0x140081539
mov word [rax + r13*4], r8w
mov word [rax + r13*4 + 2], r9w
mov dword [rax + rdx*4], 0xffff
lea r8, [rdx + 1]
mov r13, rdx
jmp 0x14007ecf0
lea rcx, [rsp + 0x178]
mov rax, qword [rcx + 0x20]
mov qword [rsp + 0x950], rax
movdqu xmm0, xmmword [rcx]
movdqu xmm1, xmmword [rcx + 0x10]
movdqa xmmword [rsp + 0x940], xmm1
movdqa xmmword [rsp + 0x930], xmm0
mov rax, qword [rsp + 0x1a0]
test rax, rax
je 0x14007ed9c
mov rdx, qword [rsp + 0x1a8]
mov r8, qword [rsp + 0x1b0]
lea rcx, [rsp + 0x1b8]
call qword [rax + 0x10]
cmp byte [rsp + 0x950], 2
movabs r12, 0xfefefefefefefeff
movabs rbp, 0x8080808080808080
movzx r13d, byte [rsp + 0x80]
mov r15, qword [rsp + 0x70]
je 0x14007e389
mov rax, qword [rsp + 0x930]
mov rdx, qword [rsp + 0x938]
mov r8, qword [rsp + 0x940]
lea rcx, [rsp + 0x948]
call qword [rax + 0x10]
jmp 0x14007e389
mov qword [rsp + 0x630], r14
mov r13, r14
jmp 0x14007e566
mov r12, rcx
mov rdx, r15
cmp rbp, 8
jb 0x14007e8de
nop word cs:[rax + rax]
movzx ecx, byte [rdx]
xor rcx, r12
imul rcx, r11
movzx r8d, byte [rdx + 1]
xor r8, rcx
imul r8, r11
movzx ecx, byte [rdx + 2]
xor rcx, r8
imul rcx, r11
movzx r8d, byte [rdx + 3]
xor r8, rcx
imul r8, r11
movzx ecx, byte [rdx + 4]
xor rcx, r8
imul rcx, r11
movzx r8d, byte [rdx + 5]
xor r8, rcx
imul r8, r11
movzx ecx, byte [rdx + 6]
xor rcx, r8
imul rcx, r11
movzx r12d, byte [rdx + 7]
add rdx, 8
xor r12, rcx
imul r12, r11
cmp rdx, rax
jne 0x14007ee20
jmp 0x14007e8de
and ecx, 0x7fff
movzx edi, word [rsp + 0x528]
mov eax, ecx
and eax, edi
mov rbx, qword [rsp + 0x4e8]
mov rbp, qword [rsp + 0x4f0]
mov r10, qword [rsp + 0x4f8]
mov r12d, ecx
mov r11, qword [rsp + 0x68]
mov rcx, qword [rsp + 0x40]
dec rcx
xor edx, edx
mov r13, rax
jmp 0x14007eed6
inc rdx
inc r13
mov rax, r13
nop dword [rax]
mov r13, rax
mov eax, 0
cmp r13, rbp
jae 0x14007eee0
movzx r14d, word [rbx + r13*4]
cmp r14, 0xffff
je 0x14007efc0
movzx eax, word [rbx + r13*4 + 2]
mov r8d, edi
and r8d, eax
mov r9d, r13d
sub r9d, r8d
mov r8d, edi
and r8d, r9d
cmp rdx, r8
ja 0x14007efc0
cmp ax, r12w
jne 0x14007eed0
cmp r11, r14
jbe 0x140081539
imul rax, r14, 0x68
cmp qword [r10 + rax + 0x40], 0
je 0x14007eed0
add rax, r10
add rax, 0x40
mov r8, qword [rsp + 0x40]
cmp qword [rax + 0x10], r8
jne 0x14007eed0
cmp qword [rsp + 0x40], 0
je 0x14007ead4
mov rax, qword [rax + 8]
movzx r8d, byte [r15]
lea r9, [0x1401b5068]
movzx r8d, byte [r8 + r9]
cmp r8b, byte [rax]
jne 0x14007eed0
xor r8d, r8d
nop dword [rax]
cmp rcx, r8
je 0x14007ead4
movzx r9d, byte [r15 + r8 + 1]
mov rsi, r10
lea r10, [0x1401b5068]
movzx r10d, byte [r9 + r10]
lea r9, [r8 + 1]
cmp r10b, byte [rax + r8 + 1]
mov r10, rsi
mov r8, r9
je 0x14007ef80
cmp r9, qword [rsp + 0x40]
jb 0x14007eed0
jmp 0x14007ead4
lea rbx, [rsp + 0x778]
movabs r12, 0xfefefefefefefeff
movabs rbp, 0x8080808080808080
movzx r13d, byte [rsp + 0x80]
mov rsi, qword [rsp + 0x98]
mov rdi, qword [rsp + 0x90]
mov r14, qword [rsp + 0x60]
mov r15, qword [rsp + 0x70]
jmp 0x14007e389
mov r12, rcx
cmp rbp, 4
jb 0x14007e8de
nop word cs:[rax + rax]
movzx ecx, byte [rdx]
movzx ecx, byte [rcx + r10]
xor rcx, r12
imul rcx, r11
movzx r8d, byte [rdx + 1]
movzx r8d, byte [r8 + r10]
xor r8, rcx
imul r8, r11
movzx ecx, byte [rdx + 2]
movzx ecx, byte [rcx + r10]
xor rcx, r8
imul rcx, r11
movzx r8d, byte [rdx + 3]
movzx r12d, byte [r8 + r10]
xor r12, rcx
imul r12, r11
add rdx, 4
cmp rdx, rax
jne 0x14007f020
jmp 0x14007e8de
mov rax, qword [rsp + 0x9f0]
mov rdx, qword [rsp + 0x9f8]
mov r8, qword [rsp + 0xa00]
lea rcx, [rsp + 0xa08]
call qword [rax + 0x10]
mov rax, qword [rsp + 0x2e0]
test rax, rax
je 0x14007f0ba
mov rdx, qword [rsp + 0x2e8]
mov r8, qword [rsp + 0x2f0]
lea rcx, [rsp + 0x2f8]
call qword [rax + 0x10]
mov rax, qword [rsp + 0x300]
test rax, rax
mov rbp, qword [rsp + 0x118]
mov r15, qword [rsp + 0x158]
mov r12, qword [rsp + 0xb8]
mov r14, qword [rsp + 0xf0]
je 0x14007f102
mov rdx, qword [rsp + 0x308]
mov r8, qword [rsp + 0x310]
lea rcx, [rsp + 0x318]
call qword [rax + 0x10]
mov rax, qword [rsp + 0x320]
test rax, rax
lea rdi, [rsp + 0x770]
je 0x14007f132
mov rdx, qword [rsp + 0x328]
mov r8, qword [rsp + 0x330]
lea rcx, [rsp + 0x338]
call qword [rax + 0x10]
mov rax, qword [rsp + 0x340]
test rax, rax
je 0x14007f15a
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
je 0x14007f182
mov rdx, qword [rsp + 0x368]
mov r8, qword [rsp + 0x370]
lea rcx, [rsp + 0x378]
call qword [rax + 0x10]
cmp qword [rsp + 0x450], 0
je 0x14007f1a4
mov ecx, 1
mov rdx, qword [rsp + 0x460]
mov rax, rdx
test rcx, rcx
jne 0x14007f1dc
jmp 0x14007f1f7
mov rdx, qword [rsp + 0x458]
mov rax, qword [rsp + 0x460]
lea rcx, [rsp + 0x2e0]
call qword [rax + 0x30]
mov rax, qword [rsp + 0x2f0]
mov rcx, qword [rsp + 0x2e0]
mov rdx, qword [rsp + 0x2e8]
test rcx, rcx
je 0x14007f1f7
cmp rax, rdx
jne 0x14007f1f7
test rdx, rdx
je 0x14007f3e4
lea rcx, [rsp + 0x4d0]
call fcn.1400276a0
movzx ecx, byte [rsp + 0x588]
cmp qword [rsp + 0x450], 0
je 0x14007f229
cmp qword [rsp + 0x460], 0
sete sil
mov qword [rsp + 0x88], rcx
cmp cl, 7
je 0x14007f255
jmp 0x14007f2eb
mov rsi, rcx
mov rcx, qword [rsp + 0x458]
mov rax, qword [rsp + 0x460]
call qword [rax + 0x28]
mov rcx, rsi
mov esi, eax
mov qword [rsp + 0x88], rcx
cmp cl, 7
jne 0x14007f2eb
lea rcx, [rsp + 0x4d0]
call fcn.1400273d0
test rax, rax
je 0x14007f2eb
test rdx, rdx
je 0x14007f2eb
mov rax, qword [rsp + 0x108]
mov qword [rsp + 0x170], rax
movdqu xmm0, xmmword [rsp + 0xf8]
movdqa xmmword [rsp + 0x160], xmm0
mov byte [rsp + 0x2e0], 2
mov dword [rsp + 0x2e4], 2
lea rsi, [rsp + 0x2e0]
mov rcx, rsi
call fcn.140028680
mov qword [rsp + 0x2e0], rax
mov qword [rsp + 0x2e8], 3
lea rcx, [rsp + 0x160]
mov rdx, rsi
call fcn.140095f60
lea rcx, [rsp + 0x4d0]
call fcn.14000d960
jmp 0x1400812df
mov byte [rsp + 0x3f], sil
mov rax, qword [rsp + 0x5a0]
test rax, rax
mov rbx, qword [rsp + 0x78]
je 0x14007f6d3
mov rcx, qword [rax]
mov r9, qword [rax + 8]
lea r10, [rcx - 0x20]
xor r11d, r11d
movabs rsi, 0x43c2169ef10b1c9
mov r15, r14
and rsi, r9
movdqu xmm0, xmmword [rcx + rsi]
movdqa xmm1, xmm0
pcmpeqb xmm1, xmm9
pmovmskb edi, xmm1
nop word cs:[rax + rax]
test di, di
je 0x14007f390
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 r13, 0xf1171ca47ea26852
xor r14, r13
mov rdi, qword [rdi]
movabs r13, 0x43c2169ef10b1c9
xor rdi, r13
or rdi, r14
mov edi, ebx
mov rbx, qword [rsp + 0x78]
jne 0x14007f340
jmp 0x14007f3b4
pcmpeqb xmm0, xmm8
pmovmskb edx, xmm0
test edx, edx
mov r14, r15
jne 0x14007f6d3
add rsi, r11
add rsi, 0x10
add r11, 0x10
jmp 0x14007f31e
sar r8, 5
lea r10, [r8 - 0x10]
and r10, r9
movdqu xmm0, xmmword [rcx + r10]
pcmpeqb xmm0, xmm8
psllw xmm0, 7
pmovmskb r9d, xmm0
test r9d, r9d
je 0x14007f40f
bsr r9w, r9w
xor r9d, 0xf
jmp 0x14007f414
movzx ecx, byte [rsp + 0x588]
cmp rcx, 7
ja 0x14008000b
mov eax, 0xb2
bt rax, rcx
mov edx, 0
jb 0x14007f1ff
jmp 0x14007f1ea
mov r9w, 0x10
mov r14, r15
movdqu xmm0, xmmword [rcx + r8]
pcmpeqb xmm0, xmm8
pmovmskb r11d, xmm0
or r11d, 0x10000
tzcnt r11d, r11d
add r9d, r11d
mov r11b, pe_nt_image_headers64
cmp r9w, 0xf
ja 0x14007f447
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 r15, qword [rdx - 0x10]
test r15, r15
je 0x14007f6d3
mov rsi, qword [rdx - 8]
mov rcx, r15
call qword [rsi + 0x18]
movabs rcx, 0xf1171ca47ea26852
xor rdx, rcx
movabs rcx, 0x43c2169ef10b1c9
xor rax, rcx
or rax, rdx
jne 0x14007f67a
mov rsi, qword [r15]
mov rax, qword [r15 + 0x18]
mov qword [rsp + 0x620], rax
movdqu xmm0, xmmword [r15 + 8]
movdqa xmmword [rsp + 0x610], xmm0
mov rcx, qword [0x1401ee100]
xor edx, edx
mov r8, r15
call fcn.140104a84
test rsi, rsi
je 0x14007f6d3
mov rax, qword [rsp + 0x620]
mov qword [rsp + 0x170], rax
movaps xmm0, xmmword [rsp + 0x610]
movaps xmmword [rsp + 0x160], xmm0
mov r15, qword [rsp + 0x5a0]
test r15, r15
jne 0x14007f55e
movzx eax, byte [0x1401ee110]
mov rax, qword [0x1401ee100]
test rax, rax
jne 0x14007f525
call sub.kernel32.dll_GetProcessHeap
test rax, rax
je 0x140081539
mov qword [0x1401ee100], rax
mov r8d, 0x20
mov rcx, rax
xor edx, edx
call sub.kernel32.dll_HeapAlloc
test rax, rax
je 0x140081539
mov r15, rax
movups xmm0, xmmword [0x1401b72d0]
movups xmmword [rax + 0x10], xmm0
movups xmm0, xmmword [0x1401b72c0]
movups xmmword [rax], xmm0
mov qword [rsp + 0x5a0], rax
mov rdi, r12
movzx eax, byte [0x1401ee110]
mov rax, qword [0x1401ee100]
test rax, rax
jne 0x14007f589
call sub.kernel32.dll_GetProcessHeap
test rax, rax
je 0x140081539
mov qword [0x1401ee100], rax
mov r8d, 0x20
mov rcx, rax
xor edx, edx
call sub.kernel32.dll_HeapAlloc
test rax, rax
je 0x140081539
mov qword [rax], rsi
movdqa xmm0, xmmword [rsp + 0x160]
movdqu xmmword [rax + 8], xmm0
mov rcx, qword [rsp + 0x170]
mov qword [rax + 0x18], rcx
lea rcx, [0x1401b4fb0]
mov qword [rsp + 0x20], rcx
mov rcx, r15
movabs rdx, 0x78afb932ee5b95ba
movabs r8, 0x2b2305a68d8bdee2
mov r9, rax
call fcn.1400a4e80
test rax, rax
je 0x14007f6d0
mov r15, rax
mov r12, rdx
mov rcx, rax
call qword [rdx + 0x18]
movabs rcx, 0x2b2305a68d8bdee2
xor rdx, rcx
movabs rcx, 0x78afb932ee5b95ba
xor rax, rcx
or rax, rdx
jne 0x14007f6a4
movdqu xmm0, xmmword [r15]
movdqu xmm1, xmmword [r15 + 0x10]
movdqa xmmword [rsp + 0x2f0], xmm1
movdqa xmmword [rsp + 0x2e0], xmm0
mov rcx, qword [0x1401ee100]
xor edx, edx
mov r8, r15
call fcn.140104a84
mov rax, qword [rsp + 0x2e0]
test rax, rax
je 0x14007f6d0
mov rdx, qword [rsp + 0x2e8]
mov r8, qword [rsp + 0x2f0]
lea rcx, [rsp + 0x2f8]
call qword [rax + 0x10]
jmp 0x14007f6d0
mov rcx, r15
call qword [rsi]
cmp qword [rsi + 8], 0
je 0x14007f6d3
cmp qword [rsi + 0x10], 0x11
jb 0x14007f691
mov r15, qword [r15 - 8]
mov rcx, qword [0x1401ee100]
xor edx, edx
mov r8, r15
call fcn.140104a84
jmp 0x14007f6d3
mov rcx, r15
call qword [r12]
cmp qword [r12 + 8], 0
je 0x14007f6d0
cmp qword [r12 + 0x10], 0x11
jb 0x14007f6bf
mov r15, qword [r15 - 8]
mov rcx, qword [0x1401ee100]
xor edx, edx
mov r8, r15
call fcn.140104a84
mov r12, rdi
cmp byte [rsp + 0x88], 7
setne byte [rsp + 0x5f]
mov r8d, 0xe0
lea rcx, [rsp + 0x7f0]
lea rdx, [rsp + 0x4d0]
call sub.msvcrt.dll_memcpy
mov rax, qword [rsp + 0x488]
mov rcx, qword [rax]
test rcx, rcx
mov qword [rsp + 0x50], rcx
cmove rax, rcx
mov qword [rsp + 0x40], rax
mov rax, qword [rsp + 0x8c0]
test rax, rax
je 0x14007f8f6
mov rcx, qword [rax]
mov r9, qword [rax + 8]
lea r10, [rcx - 0x20]
xor r11d, r11d
movabs rsi, 0x78afb932ee5b95ba
mov r15, r14
and rsi, r9
movdqu xmm0, xmmword [rcx + rsi]
movdqa xmm1, xmm0
pcmpeqb xmm1, xmm7
pmovmskb edi, xmm1
nop word [rax + rax]
test di, di
je 0x14007f7ab
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 r13, 0x2b2305a68d8bdee2
xor r14, r13
mov rdi, qword [rdi]
movabs r13, 0x78afb932ee5b95ba
xor rdi, r13
or rdi, r14
mov edi, ebx
jne 0x14007f760
jmp 0x14007f7d4
pcmpeqb xmm0, xmm8
pmovmskb edx, xmm0
test edx, edx
mov r14, r15
mov rbx, qword [rsp + 0x78]
jne 0x14007f8f6
add rsi, r11
add rsi, 0x10
add r11, 0x10
jmp 0x14007f740
sar r8, 5
lea r10, [r8 - 0x10]
and r10, r9
movdqu xmm0, xmmword [rcx + r10]
pcmpeqb xmm0, xmm8
psllw xmm0, 7
pmovmskb r9d, xmm0
test r9d, r9d
je 0x14007f804
bsr r9w, r9w
xor r9d, 0xf
jmp 0x14007f809
mov r9w, 0x10
mov r14, r15
mov rbx, qword [rsp + 0x78]
movdqu xmm0, xmmword [rcx + r8]
pcmpeqb xmm0, xmm8
pmovmskb r11d, xmm0
or r11d, 0x10000
tzcnt r11d, r11d
add r9d, r11d
mov r11b, pe_nt_image_headers64
cmp r9w, 0xf
ja 0x14007f841
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 r15, qword [rdx - 0x10]
test r15, r15
je 0x14007f8f6
mov rsi, qword [rdx - 8]
mov rcx, r15
call qword [rsi + 0x18]
movabs rcx, 0x2b2305a68d8bdee2
xor rdx, rcx
movabs rcx, 0x78afb932ee5b95ba
xor rax, rcx
or rax, rdx
jne 0x14007f8ce
movdqu xmm0, xmmword [r15]
movdqu xmm1, xmmword [r15 + 0x10]
movdqa xmmword [rsp + 0x4c0], xmm1
movdqa xmmword [rsp + 0x4b0], xmm0
mov rcx, qword [0x1401ee100]
xor edx, edx
mov r8, r15
call fcn.140104a84
mov rdi, qword [rsp + 0x8c0]
test rdi, rdi
jne 0x14007f913
jmp 0x14007fa21
mov rcx, r15
call qword [rsi]
cmp qword [rsi + 8], 0
je 0x14007f8f6
cmp qword [rsi + 0x10], 0x11
jb 0x14007f8e5
mov r15, qword [r15 - 8]
mov rcx, qword [0x1401ee100]
xor edx, edx
mov r8, r15
call fcn.140104a84
mov qword [rsp + 0x4b0], 0
mov rdi, qword [rsp + 0x8c0]
test rdi, rdi
je 0x14007fa21
mov rsi, qword [rdi + 0x18]
test rsi, rsi
je 0x14007fa21
mov rbx, qword [rdi]
movdqa xmm0, xmmword [rbx]
pmovmskb r14d, xmm0
not r14d
lea rbp, [rbx + 0x10]
mov r15, rbx
jmp 0x14007f960
mov rcx, qword [0x1401ee100]
xor edx, edx
mov r8, r12
call fcn.140104a84
lea eax, [r14 - 1]
and eax, r14d
mov r14d, eax
dec rsi
je 0x14007f9c7
test r14w, r14w
jne 0x14007f991
nop word cs:[rax + rax]
movdqa xmm0, xmmword [rbp]
pmovmskb r14d, xmm0
add r15, 0xfffffffffffffe00
add rbp, 0x10
cmp r14d, 0xffff
je 0x14007f970
not r14d
tzcnt eax, r14d
shl rax, 5
mov rcx, r15
sub rcx, rax
mov r12, qword [rcx - 0x10]
mov r13, qword [rcx - 8]
mov rcx, r12
call qword [r13]
cmp qword [r13 + 8], 0
je 0x14007f951
cmp qword [r13 + 0x10], 0x11
jb 0x14007f940
mov r12, qword [r12 - 8]
jmp 0x14007f940
mov rsi, qword [rdi + 8]
test rsi, rsi
je 0x14007f9de
lea r8, [rsi + 0x11]
mov rcx, rbx
mov dl, 0xff
call sub.msvcrt.dll_memset
mov qword [rdi + 0x18], 0
lea rax, [rsi + 1]
mov rcx, rax
shr rcx, 3
and rax, 0xfffffffffffffff8
sub rax, rcx
cmp rsi, 8
cmovb rax, rsi
mov qword [rdi + 0x10], rax
mov rbp, qword [rsp + 0x118]
mov r12, qword [rsp + 0xb8]
mov r14, qword [rsp + 0xf0]
mov rbx, qword [rsp + 0x78]
mov r12, qword [r12]
lea r13, [r12 + 0x10]
mov rcx, r13
call sub.kernel32.dll_AcquireSRWLockExclusive
movzx eax, byte [r12 + 0x18]
test al, al
jne 0x140081539
mov rdi, qword [rbp + 0x98]
lea r15, [rdi + 0x10]
mov rcx, r15
call sub.kernel32.dll_AcquireSRWLockExclusive
movzx eax, byte [rdi + 0x18]
test al, al
jne 0x140081539
lea rdx, [r12 + 0x20]
lea rcx, [rsp + 0x2e0]
call fcn.140018ac0
movzx esi, byte [rsp + 0x2e0]
cmp sil, 3
mov qword [rsp + 0x120], r13
jne 0x14007fb0b
mov r8, qword [r12 + 0xc0]
test r8b, 1
jne 0x14007fb83
cmp qword [rsp + 0x50], 0
je 0x14007fb93
mov rdx, qword [rsp + 0x40]
mov ecx, dword [rdx + 8]
cmp qword [r12 + 0x1c8], rcx
jbe 0x140081539
mov rax, qword [r12 + 0x1b8]
test rax, rax
je 0x140081539
imul rcx, rcx, 0x130
cmp dword [rax + rcx], 2
je 0x140081539
mov edx, dword [rdx + 0xc]
add rax, rcx
cmp dword [rax + 0x114], edx
jne 0x140081539
mov sil, 3
cmp byte [rax + 0x124], 0
je 0x14007fb93
mov r13b, 3
jmp 0x14007fba8
movzx r13d, byte [rsp + 0x2e1]
mov eax, dword [rsp + 0x2e4]
mov dword [rsp + 0x128], eax
mov rax, qword [rsp + 0x2e8]
mov qword [rsp + 0xb0], rax
mov rax, qword [rsp + 0x2f0]
mov qword [rsp + 0xd0], rax
mov rbx, qword [rsp + 0x2f8]
movzx eax, byte [rsp + 0x300]
mov byte [rsp + 0x39], al
movzx eax, byte [rsp + 0x307]
shl eax, 0x10
movzx ecx, word [rsp + 0x305]
or ecx, eax
shl rcx, 0x20
mov eax, dword [rsp + 0x301]
or rax, rcx
mov qword [rsp + 0xc0], rax
jmp 0x14007fba8
shr r8d, 8
or r8b, 5
mov sil, 3
mov r13d, r8d
jmp 0x14007fba8
cmp byte [r12 + 0x1b0], 0
je 0x14007fcd4
mov sil, 3
mov r13b, 1
mov rcx, r15
call fcn.140104ae4
mov rcx, qword [rsp + 0x120]
call fcn.140104ae4
mov rax, qword [rsp + 0x4b0]
test rax, rax
mov r12, qword [rsp + 0xb8]
je 0x14007fbed
mov rdx, qword [rsp + 0x4b8]
mov r8, qword [rsp + 0x4c0]
lea rcx, [rsp + 0x4c8]
call qword [rax + 0x10]
lea rcx, [rsp + 0x7f0]
call fcn.14000d960
movzx ecx, sil
lea rax, [0x140187580]
movsxd r11, dword [rax + rcx*4]
add r11, rax
movdqa xmm13, xmm12
mov rax, qword [rsp + 0x138]
mov qword [rsp + 0x98], rax
mov rax, qword [rsp + 0x140]
mov qword [rsp + 0x70], rax
mov rax, qword [rsp + 0x148]
mov qword [rsp + 0x90], rax
mov rax, qword [rsp + 0x150]
mov qword [rsp + 0x68], rax
mov eax, dword [rsp + 0x58]
mov qword [rsp + 0x50], rax
mov rax, qword [rsp + 0xa8]
mov qword [rsp + 0x40], rax
mov eax, dword [rsp + 0xa0]
mov dword [rsp + 0x60], eax
movzx eax, word [rsp + 0x4e]
mov word [rsp + 0xd8], ax
mov rdx, qword [rsp + 0xd0]
mov qword [rsp + 0x78], rbx
mov r8, rbx
movzx esi, byte [rsp + 0x39]
mov r9d, esi
mov r10, qword [rsp + 0xc0]
mov rax, qword [rsp + 0xb0]
movzx edi, byte [rsp + 0x80]
mov ebx, edi
mov qword [rsp + 0xc8], rdi
mov r15, qword [rsp + 0x158]
lea rdi, [rsp + 0x770]
jmp r11
mov eax, dword [rsp + 0xb0]
xor ecx, ecx
jmp 0x14008110c
shr r8, 0x20
lea eax, [r8 + 2]
mov ecx, eax
shr ecx, 0x1f
mov dword [r12 + 0xc0], ecx
mov dword [r12 + 0xc4], eax
mov eax, dword [r12 + 0xac]
mov ecx, dword [r12 + 0x12c]
mov qword [rsp + 0x50], r8
mov dword [rsp + 0x274], r8d
mov byte [rsp + 0x1b0], 6
mov word [rsp + 0x280], 0
mov qword [rsp + 0x1d8], 0
mov dword [rsp + 0x218], 0
mov dword [rsp + 0x1e0], ecx
mov dword [rsp + 0x278], 0
mov qword [rsp + 0x160], 0
mov dword [rsp + 0x224], 0
mov dword [rsp + 0x230], 0
mov dword [rsp + 0x23c], 0
lea rcx, [rsp + 0x178]
mov byte [rcx + 0x10e], 0
mov dword [rcx + 0x10a], 0
movups xmmword [rcx + 0x6c], xmm6
mov dword [rcx + 0x7c], 0
mov dword [rsp + 0x200], eax
mov dword [rsp + 0x204], eax
mov dword [rsp + 0x27c], 0
mov dword [rsp + 0x248], 0
mov word [rsp + 0x287], 0x100
mov dword [rsp + 0x1a8], 0x3b9aca00
mov dword [rsp + 0x254], 0
mov qword [rsp + 0x178], 0
mov qword [rsp + 0x208], 0
mov dword [rsp + 0x260], 0
movzx ecx, byte [rsp + 0x8a8]
xor eax, eax
mov qword [rsp + 0x480], rcx
cmp rcx, 5
sete al
mov qword [rsp + 0x190], rax
mov rax, qword [rsp + 0x7f0]
mov qword [rsp + 0x730], rax
movzx eax, byte [rsp + 0x7f8]
mov byte [rsp + 0x3a], al
movzx edx, byte [rsp + 0x7f9]
movzx eax, word [rsp + 0x7fa]
mov word [rsp + 0xd8], ax
mov eax, dword [rsp + 0x7fc]
mov dword [rsp + 0x60], eax
mov rax, qword [rsp + 0x800]
mov qword [rsp + 0x40], rax
mov rax, qword [rsp + 0x808]
mov qword [rsp + 0x110], rax
mov rax, qword [rsp + 0x810]
mov qword [rsp + 0x130], rax
mov rax, qword [rsp + 0x818]
mov qword [rsp + 0xc8], rax
mov rax, qword [rsp + 0x820]
mov qword [rsp + 0x68], rax
mov rax, qword [rsp + 0x828]
mov qword [rsp + 0x90], rax
mov rax, qword [rsp + 0x830]
mov qword [rsp + 0x70], rax
mov rax, qword [rsp + 0x838]
mov qword [rsp + 0x98], rax
movdqu xmm13, xmmword [rsp + 0x840]
lea rcx, [rsp + 0x850]
mov rax, qword [rcx + 0x50]
mov qword [rsp + 0x600], rax
movups xmm0, xmmword [rcx + 0x40]
movaps xmmword [rsp + 0x5f0], xmm0
movups xmm0, xmmword [rcx]
movups xmm1, xmmword [rcx + 0x10]
movups xmm2, xmmword [rcx + 0x20]
movups xmm3, xmmword [rcx + 0x30]
movaps xmmword [rsp + 0x5e0], xmm3
movaps xmmword [rsp + 0x5d0], xmm2
movaps xmmword [rsp + 0x5c0], xmm1
movaps xmmword [rsp + 0x5b0], xmm0
mov rax, qword [rcx + 0x68]
mov qword [rsp + 0x75f], rax
movups xmm0, xmmword [rcx + 0x59]
movaps xmmword [rsp + 0x750], xmm0
mov r13, qword [rsp + 0x8c0]
movzx eax, byte [rsp + 0x8c8]
mov byte [rsp + 0x5e], al
movaps xmm0, xmmword [rsp + 0x4b0]
movaps xmm1, xmmword [rsp + 0x4c0]
movaps xmmword [rsp + 0x9e0], xmm1
movaps xmmword [rsp + 0x9d0], xmm0
test r13, r13
je 0x14007ff9f
mov rcx, r13
mov ebx, edx
call fcn.1400a5e00
mov rcx, qword [0x1401ee100]
xor edx, edx
mov r8, r13
call fcn.140104a84
mov edx, ebx
cmp qword [rsp + 0x5f0], 0
setne al
movzx ebp, byte [rsp + 0x5b0]
test bpl, bpl
setne bl
or bl, al
je 0x140080003
mov r14, qword [rsp + 0x5e0]
lea rcx, [rsp + 0x5e8]
movups xmm0, xmmword [rcx]
movups xmm1, xmmword [rcx + 0x10]
movaps xmmword [rsp + 0x2e0], xmm0
movaps xmmword [rsp + 0x2f0], xmm1
test bpl, bpl
je 0x140080012
mov rax, qword [rcx - 0x37]
mov rcx, qword [rcx - 0x30]
mov qword [rsp + 0x437], rcx
mov qword [rsp + 0x430], rax
jmp 0x140080015
mov bpl, 3
xor r14d, r14d
jmp 0x140080015
xor edx, edx
jmp 0x14007f1ea
mov bpl, 3
mov rax, qword [rsp + 0x5d0]
test rax, rax
mov byte [rsp + 0x3b], dl
je 0x140080050
mov rsi, qword [rsp + 0x5c0]
lea rcx, [rsp + 0x5e8]
movups xmm0, xmmword [rcx - 0x20]
movaps xmmword [rsp + 0x410], xmm0
mov rcx, qword [rcx - 0x10]
mov qword [rsp + 0x420], rcx
jmp 0x140080052
xor esi, esi
mov rcx, qword [rsp + 0x437]
lea rdx, [rsp + 0x8d9]
mov qword [rdx + 7], rcx
mov rcx, qword [rsp + 0x430]
mov qword [rdx], rcx
mov rcx, qword [rsp + 0x420]
mov qword [rdx + 0x27], rcx
movaps xmm0, xmmword [rsp + 0x410]
movups xmmword [rdx + 0x17], xmm0
movaps xmm0, xmmword [rsp + 0x2e0]
movaps xmm1, xmmword [rsp + 0x2f0]
movups xmmword [rdx + 0x47], xmm1
movups xmmword [rdx + 0x37], xmm0
mov byte [rsp + 0x8d8], bpl
mov qword [rsp + 0x8e8], rsi
mov qword [rsp + 0x908], r14
test rax, rax
je 0x1400800dc
mov qword [rsp + 0x738], rsi
test bl, bl
je 0x140080106
test r14, r14
lea rsi, [rsp + 0x498]
jne 0x14008013a
jmp 0x140080200
mov rax, qword [rsp + 0x5c0]
mov rdx, qword [rsp + 0x5c8]
lea rcx, [rsp + 0x5d8]
xor r8d, r8d
call qword [rax + 0x10]
mov qword [rsp + 0x738], rsi
test bl, bl
jne 0x1400800ca
mov rax, qword [rsp + 0x5e0]
mov rdx, qword [rsp + 0x5e8]
mov r8, qword [rsp + 0x5f0]
lea rcx, [rsp + 0x5f8]
call qword [rax + 0x10]
test r14, r14
lea rsi, [rsp + 0x498]
je 0x140080200
lea rax, [rsp + 0x8d9]
movups xmm0, xmmword [rax + 0x37]
movups xmm1, xmmword [rax + 0x47]
lea rax, [rsp + 0x2f8]
movups xmmword [rax], xmm1
movups xmmword [rax - 0x10], xmm0
mov qword [rsp + 0x2e0], r14
mov rax, qword [rsp + 0x2e8]
mov r13, qword [rsp + 0x2f0]
cmp r13, 1
mov r8, r13
adc r8, 0
test r13, r13
mov rdx, rax
mov ebx, ebp
mov rbp, rax
lea rax, [0x1401b49d0]
cmove rdx, rax
lea rcx, [rsp + 0x410]
call fcn.140003980
lea rcx, [rsp + 0x2f8]
mov rdx, rbp
mov ebp, ebx
mov r8, r13
call qword [r14 + 0x10]
mov rax, qword [rsp + 0x410]
lea rcx, [rsp + 0x418]
movups xmm0, xmmword [rcx]
movaps xmmword [rsp + 0x2e0], xmm0
mov rcx, qword [rcx + 0x10]
mov qword [rsp + 0x2f0], rcx
test rax, rax
je 0x140080200
mov rcx, qword [rsp + 0x2f0]
mov qword [rsi + 0x10], rcx
movaps xmm0, xmmword [rsp + 0x2e0]
movups xmmword [rsi], xmm0
mov qword [rsp + 0x490], rax
jmp 0x140080222
lea rax, [0x14018f8f0]
mov qword [rsp + 0x490], rax
lea rcx, str.Invalid_checksumincomplete_frame
mov qword [rsp + 0x498], rcx
movups xmmword [rsi + 8], xmm6
mov rcx, qword [rsp + 0x480]
test rcx, rcx
mov r14, qword [rsp + 0xf0]
lea r13, [rsp + 0x930]
je 0x14008029b
cmp ecx, 7
je 0x14008029b
cmp qword [rsp + 0x4a0], 0
jne 0x14008029b
mov rdx, qword [rsp + 0x498]
lea rcx, [rsp + 0x4a8]
xor r8d, r8d
call qword [rax + 0x10]
lea rax, [0x14018f8f0]
mov qword [rsp + 0x490], rax
lea rcx, [0x1401b49d0]
mov qword [rsp + 0x498], rcx
mov qword [rsp + 0x4a0], 1
mov qword [rsp + 0x4a8], 0
mov qword [rsp + 0x410], rax
mov rcx, qword [rsi + 0x10]
lea rdx, [rsp + 0x418]
mov qword [rdx + 0x10], rcx
movups xmm0, xmmword [rsi]
movups xmmword [rdx], xmm0
cmp qword [rsp + 0x420], 0
je 0x1400802dd
mov rcx, qword [rsi + 0x10]
mov qword [rsp + 0x440], rcx
movups xmm0, xmmword [rsi]
movaps xmmword [rsp + 0x430], xmm0
jmp 0x1400802f5
mov rdx, qword [rsp + 0x418]
lea rcx, [rsp + 0x428]
xor r8d, r8d
call qword [rax + 0x10]
xor eax, eax
lea rbx, [rsp + 0x9f0]
mov rcx, qword [rsp + 0x480]
mov byte [rsp + 0x2e0], cl
mov rcx, qword [rsp + 0x75f]
lea rdx, [rsp + 0x2f8]
mov qword [rdx - 8], rcx
movaps xmm0, xmmword [rsp + 0x750]
movups xmmword [rdx - 0x17], xmm0
mov qword [rsp + 0x2f8], 0
mov qword [rsp + 0x318], 0
mov qword [rsp + 0x338], rax
mov rax, qword [rsp + 0x440]
mov qword [rdx + 0x58], rax
movaps xmm0, xmmword [rsp + 0x430]
movups xmmword [rdx + 0x48], xmm0
movdqa xmm0, xmmword [rsp + 0x9d0]
movdqa xmm1, xmmword [rsp + 0x9e0]
lea rax, [rsp + 0x358]
movdqu xmmword [rax + 0x10], xmm1
movdqu xmmword [rax], xmm0
mov word [rsp + 0x378], 0
cmp bpl, 3
je 0x1400803ac
lea rcx, [rsp + 0x2e0]
lea rdx, [rsp + 0x8d8]
call fcn.140016380
cmp qword [rsp + 0x738], 0
mov rbp, qword [rsp + 0x118]
movzx esi, byte [rsp + 0x3f]
je 0x14008047f
lea rax, [rsp + 0x8d9]
movups xmm0, xmmword [rax + 0xf]
movups xmm1, xmmword [rax + 0x1f]
movaps xmmword [rsp + 0x440], xmm1
movaps xmmword [rsp + 0x430], xmm0
mov r13, qword [rsp + 0x438]
mov r8, qword [rsp + 0x440]
lea rcx, [rsp + 0x410]
mov rdx, r13
mov rbx, r8
call fcn.140003980
mov rax, qword [rsp + 0x318]
test rax, rax
je 0x140080433
mov rdx, qword [rsp + 0x320]
mov r8, qword [rsp + 0x328]
lea rcx, [rsp + 0x330]
call qword [rax + 0x10]
movdqu xmm0, xmmword [rsp + 0x410]
movdqu xmm1, xmmword [rsp + 0x420]
lea rax, [rsp + 0x318]
movdqu xmmword [rax + 0x10], xmm1
movdqu xmmword [rax], xmm0
mov rax, qword [rsp + 0x430]
lea rcx, [rsp + 0x448]
mov rdx, r13
mov r8, rbx
call qword [rax + 0x10]
lea r13, [rsp + 0x930]
lea rbx, [rsp + 0x9f0]
mov r8d, 0xa0
mov rcx, r13
lea rdx, [rsp + 0x2e0]
call sub.msvcrt.dll_memcpy
mov rax, qword [rsp + 0x948]
or rax, qword [rsp + 0x968]
jne 0x140080564
cmp byte [rsp + 0x5e], 3
jne 0x140080555
mov rcx, r13
call fcn.14000ce60
cmp qword [rsp + 0x130], 0
je 0x1400804df
mov rcx, qword [0x1401ee100]
xor edx, edx
mov r8, qword [rsp + 0x110]
call fcn.140104a84
mov rsi, qword [rsp + 0x90]
test rsi, rsi
mov rdi, qword [rsp + 0x298]
mov r13, qword [rsp + 0xa8]
mov ebx, dword [rsp + 0xa0]
je 0x1400808b9
mov rax, qword [rsp + 0xc8]
lea r12, [rax + 0x30]
jmp 0x140080537
mov rax, qword [r12 - 0x18]
mov rdx, qword [r12 - 0x10]
mov r8, qword [r12 - 8]
mov rcx, r12
call qword [rax + 0x10]
add r12, 0x68
dec rsi
je 0x1400808b9
mov rax, qword [r12 + 0x10]
test rax, rax
je 0x140080515
lea rcx, [r12 + 0x28]
mov rdx, qword [r12 + 0x18]
mov r8, qword [r12 + 0x20]
call qword [rax + 0x10]
jmp 0x140080515
mov rcx, r13
lea rdx, [0x1401b5178]
call fcn.140016380
mov rdx, r13
mov r13, rbx
movzx ebx, byte [rsp + 0x5f]
and bl, sil
mov r8d, 0xa0
mov rcx, r13
call sub.msvcrt.dll_memcpy
mov rcx, qword [rsp + 0xc8]
mov rsi, rcx
shr rsi, 8
or bl, 4
mov r9, qword [rsp + 0x730]
cmp r9, 3
mov byte [rsp + 0xef], bl
jne 0x1400805e8
mov rax, qword [rsp + 0x50]
mov dword [rsp + 0x58], eax
mov r13d, ecx
mov rdi, qword [rsp + 0x130]
mov rbx, qword [rsp + 0x110]
mov rax, qword [rsp + 0x40]
mov qword [rsp + 0xa8], rax
mov eax, dword [rsp + 0x60]
mov dword [rsp + 0xa0], eax
mov r12, qword [rsp + 0xb8]
jmp 0x1400809b5
lea r8, [rdi + 0x20]
mov qword [rsp + 0x80], r8
lea r8, [r12 + 0xc0]
mov qword [rsp + 0xa8], r8
lea r8, [r12 + 0x170]
mov qword [rsp + 0xa0], r8
mov rdx, r13
mov r13, rcx
mov rcx, qword [rsp + 0x68]
mov qword [rsp + 0x640], rcx
mov rcx, qword [rsp + 0x90]
mov qword [rsp + 0x648], rcx
mov rcx, qword [rsp + 0x70]
mov qword [rsp + 0x650], rcx
mov rcx, qword [rsp + 0x98]
mov qword [rsp + 0x658], rcx
movdqu xmmword [rsp + 0x660], xmm13
mov r8d, 0xa0
lea rcx, [rsp + 0x670]
mov r14, r9
call sub.msvcrt.dll_memcpy
mov byte [rsp + 0x710], 0
mov eax, dword [rsp + 0x7ec]
lea rcx, [rsp + 0x611]
mov dword [rcx + 0x108], eax
mov rax, qword [rsp + 0x7e4]
mov qword [rcx + 0x100], rax
mov byte [rsp + 0x71d], 2
mov rax, qword [rsp + 0x50]
mov dword [rsp + 0x720], eax
mov byte [rsp + 0x724], bl
movzx eax, byte [rsp + 0x12f]
mov byte [rcx + 0x116], al
movzx eax, word [rsp + 0x12d]
mov word [rcx + 0x114], ax
mov qword [rsp + 0x610], r14
movzx eax, byte [rsp + 0x3a]
mov byte [rsp + 0x618], al
movzx eax, byte [rsp + 0x3b]
mov byte [rsp + 0x619], al
movzx eax, word [rsp + 0xd8]
mov word [rsp + 0x61a], ax
mov eax, dword [rsp + 0x60]
mov dword [rsp + 0x61c], eax
mov rax, qword [rsp + 0x40]
mov qword [rsp + 0x620], rax
mov rax, qword [rsp + 0x110]
mov qword [rsp + 0x628], rax
mov r14, qword [rsp + 0x130]
mov qword [rsp + 0x630], r14
mov byte [rsp + 0x638], r13b
mov rax, rsi
shr rax, 0x30
mov byte [rsp + 0x63f], al
mov rax, rsi
shr rax, 0x20
mov word [rsp + 0x63d], ax
mov qword [rsp + 0x478], rsi
mov dword [rsp + 0x639], esi
lea r13, [r12 + 0x1b8]
mov eax, dword [rsp + 0x274]
mov dword [rsp + 0x58], eax
mov r8d, 0x130
lea rbx, [rsp + 0x2e0]
mov rcx, rbx
lea rdx, [rsp + 0x160]
call sub.msvcrt.dll_memcpy
lea rsi, [rsp + 0x930]
mov rcx, rsi
mov rdx, r13
mov r8d, dword [rsp + 0x58]
mov r9, rbx
call fcn.140010d70
lea rax, [r12 + 0x160]
mov qword [rsp + 0x28], rax
mov rax, qword [rsp + 0xa0]
mov qword [rsp + 0x20], rax
mov rcx, qword [rsp + 0xa8]
lea rdx, [rsp + 0x610]
mov r8, qword [rsp + 0x80]
mov r9, rsi
call fcn.1400b99c0
cmp al, 0xc
jne 0x140080a2c
inc qword [r12 + 0x228]
mov rsi, qword [r12 + 0x170]
mov rbx, qword [r12 + 0x178]
lock inc qword [r12]
jle 0x140081539
lea rcx, [rsp + 0x2e0]
mov rdx, r12
lea r8, [rsp + 0x930]
call fcn.140018310
lock inc qword [rdi]
mov r14, qword [rsp + 0x120]
mov r12, qword [rsp + 0x110]
mov r13, qword [rsp + 0x130]
jle 0x140081539
inc rbx
cmp rsi, rbx
setbe sil
mov rax, qword [rsp + 0x2e0]
mov qword [rsp + 0xb0], rax
mov rax, qword [rsp + 0x2e8]
mov qword [rsp + 0xd0], rax
mov rcx, r15
call fcn.140104ae4
mov rcx, r14
call fcn.140104ae4
mov qword [rsp + 0x298], r13
mov qword [rsp + 0x290], r12
mov qword [rsp + 0x78], rdi
movzx r13d, byte [rsp + 0x3e]
jmp case.0x14007fcc3.4
cmp qword [rsp + 0x68], 0
je 0x1400808d7
mov rcx, qword [0x1401ee100]
xor edx, edx
mov r8, qword [rsp + 0xc8]
call fcn.140104a84
movq rsi, xmm13
test rsi, rsi
je 0x140080908
mov rax, qword [rsp + 0x70]
lea r12, [rax + 0x38]
mov rax, qword [r12 - 0x18]
mov rdx, qword [r12 - 0x10]
mov r8, qword [r12 - 8]
mov rcx, r12
call qword [rax + 0x10]
add r12, 0x48
dec rsi
jne 0x1400808ea
cmp qword [rsp + 0x98], 0
je 0x140080926
mov rcx, qword [0x1401ee100]
xor edx, edx
mov r8, qword [rsp + 0x70]
call fcn.140104a84
mov byte [rsp + 0x3a], 3
mov byte [rsp + 0x3b], 7
movdqa xmm13, xmm12
mov rax, qword [rsp + 0x138]
mov qword [rsp + 0x98], rax
mov rax, qword [rsp + 0x140]
mov qword [rsp + 0x70], rax
mov rax, qword [rsp + 0x148]
mov qword [rsp + 0x90], rax
mov rax, qword [rsp + 0x150]
mov qword [rsp + 0x68], rax
mov qword [rsp + 0x40], r13
mov dword [rsp + 0x60], ebx
movzx eax, word [rsp + 0x4e]
mov word [rsp + 0xd8], ax
mov qword [rsp + 0xa8], r13
mov r12, qword [rsp + 0xb8]
mov rsi, qword [rsp + 0x478]
mov dword [rsp + 0xa0], ebx
mov rbx, qword [rsp + 0x290]
movzx r13d, byte [rsp + 0x80]
lea rcx, [rsp + 0x160]
call fcn.14007cb60
mov eax, dword [rsp + 0x58]
mov qword [rsp + 0x50], rax
mov eax, r13d
mov qword [rsp + 0xc8], rax
mov eax, dword [rsp + 0xa0]
mov dword [rsp + 0x128], eax
mov byte [rsp + 0x39], r13b
mov qword [rsp + 0x298], rdi
mov qword [rsp + 0x290], rbx
mov rax, qword [rsp + 0xa8]
mov qword [rsp + 0xb0], rax
movzx r13d, byte [rsp + 0x3b]
mov qword [rsp + 0x478], rsi
mov qword [rsp + 0xc0], rsi
mov rsi, rdi
lea rdi, [rsp + 0x770]
jmp 0x140080a8d
mov r13d, eax
mov rcx, qword [rsp + 0x930]
mov edx, dword [rsp + 0x93c]
call fcn.140011860
mov rcx, rsi
call fcn.1400116f0
mov byte [rsp + 0x3a], 3
mov qword [rsp + 0x298], r14
mov rax, qword [rsp + 0x110]
mov qword [rsp + 0x290], rax
mov r12, qword [rsp + 0xb8]
mov r14, qword [rsp + 0xf0]
lea rdi, [rsp + 0x770]
mov rbx, qword [rsp + 0xd0]
mov rsi, qword [rsp + 0x78]
mov rcx, r15
call fcn.140104ae4
mov rcx, qword [rsp + 0x120]
call fcn.140104ae4
movzx ecx, byte [rsp + 0x3a]
lea rax, [0x140187580]
movsxd r11, dword [rax + rcx*4]
add r11, rax
mov r15, qword [rsp + 0xc8]
mov eax, r15d
mov byte [rsp + 0x80], r15b
mov qword [rsp + 0xd0], rbx
mov rdx, rbx
mov qword [rsp + 0x78], rsi
mov r8, rsi
movzx esi, byte [rsp + 0x39]
mov r9d, esi
mov r10, qword [rsp + 0xc0]
mov rax, qword [rsp + 0xb0]
mov ebx, r15d
mov r15, qword [rsp + 0x158]
jmp r11
mov rax, qword [rsp + 0xb0]
test rax, rax
je 0x1400810fe
mov qword [rsp + 0x2e0], rax
mov rax, qword [rsp + 0xd0]
mov qword [rsp + 0x2e8], rax
mov rax, qword [rsp + 0x78]
mov qword [rsp + 0x2f0], rax
mov ecx, r13d
lea rdx, [rsp + 0x2e0]
call fcn.14001a190
jmp 0x14008110a
mov rdi, qword [rsp + 0xb0]
mov qword [rsp + 0x160], rdi
mov rbx, qword [rsp + 0xd0]
mov qword [rsp + 0x168], rbx
mov rax, qword [rsp + 0x78]
mov qword [rsp + 0x170], rax
lea r15, [rdi + 0x10]
mov rcx, r15
call sub.kernel32.dll_AcquireSRWLockExclusive
movzx eax, byte [rdi + 0x18]
test al, al
jne 0x140081539
mov rdx, rdi
mov byte [rsp + 0x3e], r13b
mov ecx, ebx
cmp qword [rdi + 0x1c8], rcx
jbe 0x140081539
mov rax, qword [rdx + 0x1b8]
test rax, rax
je 0x140081539
imul rcx, rcx, 0x130
cmp dword [rax + rcx], 2
je 0x140081539
mov rdx, rbx
shr rdx, 0x20
add rax, rcx
cmp dword [rax + 0x114], edx
jne 0x140081539
movzx ebx, byte [rax + 0x124]
mov rcx, r15
call fcn.140104ae4
mov byte [rsp + 0x39], sil
test sil, sil
mov r15, qword [rsp + 0x158]
lea r12, [rsp + 0x2e0]
lea rbp, [rsp + 0x160]
je 0x140080c57
test bl, bl
je 0x140080c57
lea rcx, [rsp + 0x610]
mov rdx, rbp
call fcn.140018370
mov rdi, qword [rsp + 0x488]
mov rsi, qword [rdi]
test rsi, rsi
je 0x140080c4a
mov rcx, rdi
call fcn.140018410
lock dec qword [rsi]
jne 0x140080c4a
mov rcx, qword [rdi]
call fcn.140026650
movdqu xmm0, xmmword [rsp + 0x610]
movdqu xmmword [rdi], xmm0
mov rcx, r12
mov rdx, rbp
call fcn.140018370
cmp byte [rsp + 0x88], 7
mov rax, qword [rsp + 0x170]
lea rcx, [rsp + 0x2f8]
mov qword [rcx + 0x10], rax
movups xmm0, xmmword [rsp + 0x160]
movups xmmword [rcx], xmm0
mov byte [rsp + 0x2f0], 0
mov rax, qword [rsp + 0x2e8]
movzx ecx, byte [rsp + 0x2f0]
mov edx, dword [rsp + 0x2f1]
movzx r8d, word [rsp + 0x2f5]
movzx r9d, byte [rsp + 0x2f7]
mov r10, qword [rsp + 0x2e0]
mov r11, qword [rsp + 0x2f8]
movzx ebx, byte [rsp + 0x300]
mov esi, dword [rsp + 0x301]
movzx edi, word [rsp + 0x305]
movzx ebp, byte [rsp + 0x307]
mov r14, qword [rsp + 0x308]
mov qword [rsp + 0x178], r10
mov qword [rsp + 0x180], rax
mov byte [rsp + 0x188], cl
mov dword [rsp + 0x189], edx
mov word [rsp + 0x18d], r8w
mov byte [rsp + 0x18f], r9b
mov qword [rsp + 0x190], r11
mov byte [rsp + 0x198], bl
mov byte [rsp + 0x19f], bpl
mov word [rsp + 0x19d], di
mov dword [rsp + 0x199], esi
mov qword [rsp + 0x1a0], r14
movaps xmm0, xmmword [rsp + 0x450]
movdqa xmm1, xmmword [rsp + 0x460]
lea rax, [rsp + 0x1a8]
movdqu xmmword [rax + 0x10], xmm1
movups xmmword [rax], xmm0
movups xmm0, xmmword [rsp + 0xf8]
movaps xmmword [rsp + 0x160], xmm0
mov rax, qword [rsp + 0x108]
mov qword [rsp + 0x170], rax
sete byte [rsp + 0x1c8]
movzx eax, byte [rsp + 0x3f]
mov byte [rsp + 0x1c9], al
lea rcx, [rsp + 0x610]
mov rdx, qword [rsp + 0xb8]
mov r8, r15
call fcn.140040d10
movzx eax, byte [rsp + 0x610]
cmp eax, 5
je 0x140080f91
cmp eax, 6
mov rbp, qword [rsp + 0x118]
mov r14, qword [rsp + 0xf0]
lea rbx, [rsp + 0x778]
lea rdi, [rsp + 0x770]
movzx esi, byte [rsp + 0x39]
je 0x1400815dc
mov rax, qword [rsp + 0x170]
mov qword [rsp + 0x800], rax
movdqa xmm0, xmmword [rsp + 0x160]
movdqa xmmword [rsp + 0x7f0], xmm0
lea rcx, [rsp + 0x610]
call fcn.140028680
mov qword [rsp + 0x2e0], rax
mov qword [rsp + 0x2e8], 3
lea rcx, [rsp + 0x7f0]
lea rdx, [rsp + 0x2e0]
call fcn.140095f60
lea rcx, [rsp + 0x178]
call fcn.140018410
mov rax, qword [rsp + 0x178]
lock dec qword [rax]
jne 0x140080e7a
mov rcx, qword [rsp + 0x178]
call fcn.140026650
lea rcx, [rsp + 0x190]
call fcn.140018410
mov rax, qword [rsp + 0x190]
lock dec qword [rax]
jne 0x140080ea2
mov rcx, qword [rsp + 0x190]
call fcn.140026650
mov rax, qword [rsp + 0x1a0]
lock dec qword [rax]
mov r12, qword [rsp + 0xb8]
jne 0x140080ec5
mov rcx, qword [rsp + 0x1a0]
call fcn.1400bc0c0
lea rcx, [rsp + 0x1a8]
call fcn.140038a00
movzx eax, word [rsp + 0xd8]
mov word [rsp + 0x4e], ax
mov eax, dword [rsp + 0x60]
mov dword [rsp + 0xa0], eax
mov rax, qword [rsp + 0x40]
mov qword [rsp + 0xa8], rax
mov rax, qword [rsp + 0x78]
mov qword [rsp + 0x2d0], rax
mov rax, qword [rsp + 0xd0]
mov qword [rsp + 0x2c8], rax
mov rax, qword [rsp + 0xc8]
mov r13d, eax
mov rax, qword [rsp + 0x50]
mov dword [rsp + 0x58], eax
mov byte [rsp + 0x3d], sil
mov rax, qword [rsp + 0xb0]
mov qword [rsp + 0x2c0], rax
mov rax, qword [rsp + 0x68]
mov qword [rsp + 0x150], rax
mov rax, qword [rsp + 0x90]
mov qword [rsp + 0x148], rax
mov rax, qword [rsp + 0x70]
mov qword [rsp + 0x140], rax
mov rax, qword [rsp + 0x98]
mov qword [rsp + 0x138], rax
mov rsi, qword [rsp + 0xc0]
mov qword [rsp + 0x2b8], rsi
movdqa xmm12, xmm13
jmp 0x14007d5e7
movaps xmm0, xmmword [rsp + 0x1c0]
movaps xmmword [rsp + 0x340], xmm0
movaps xmm0, xmmword [rsp + 0x1b0]
movaps xmmword [rsp + 0x330], xmm0
movaps xmm0, xmmword [rsp + 0x1a0]
movaps xmmword [rsp + 0x320], xmm0
movdqa xmm0, xmmword [rsp + 0x160]
movdqa xmm1, xmmword [rsp + 0x170]
movaps xmm2, xmmword [rsp + 0x180]
movaps xmm3, xmmword [rsp + 0x190]
movaps xmmword [rsp + 0x310], xmm3
movaps xmmword [rsp + 0x300], xmm2
movdqa xmmword [rsp + 0x2f0], xmm1
movdqa xmmword [rsp + 0x2e0], xmm0
mov rbp, qword [rsp + 0x118]
mov rcx, rbp
mov rdx, r12
mov r8, r15
call fcn.140081790
movzx eax, word [rsp + 0xd8]
mov word [rsp + 0x4e], ax
mov eax, dword [rsp + 0x60]
mov dword [rsp + 0xa0], eax
mov rax, qword [rsp + 0x40]
mov qword [rsp + 0xa8], rax
mov rax, qword [rsp + 0x78]
mov qword [rsp + 0x2d0], rax
mov rax, qword [rsp + 0xd0]
mov qword [rsp + 0x2c8], rax
mov rax, qword [rsp + 0xc8]
mov r13d, eax
mov rax, qword [rsp + 0x50]
mov dword [rsp + 0x58], eax
movzx eax, byte [rsp + 0x39]
mov byte [rsp + 0x3d], al
mov rax, qword [rsp + 0xb0]
mov qword [rsp + 0x2c0], rax
mov rax, qword [rsp + 0x68]
mov qword [rsp + 0x150], rax
mov rax, qword [rsp + 0x90]
mov qword [rsp + 0x148], rax
mov rax, qword [rsp + 0x70]
mov qword [rsp + 0x140], rax
mov rax, qword [rsp + 0x98]
mov qword [rsp + 0x138], rax
mov rsi, qword [rsp + 0xc0]
mov qword [rsp + 0x2b8], rsi
movdqa xmm12, xmm13
mov r12, qword [rsp + 0xb8]
mov r14, qword [rsp + 0xf0]
lea rbx, [rsp + 0x778]
lea rdi, [rsp + 0x770]
jmp 0x14007d5e7
movzx eax, r13b
shl rax, 0x20
or rax, 3
mov cl, 4
mov rdx, qword [rsp + 0x2a0]
mov r8, qword [rsp + 0x2a8]
movzx r9d, byte [rsp + 0x3c]
mov r10, qword [rsp + 0x2b0]
movzx ebx, byte [rsp + 0x80]
mov qword [rsp + 0x2d0], r8
mov qword [rsp + 0x2c8], rdx
mov byte [rsp + 0x3d], r9b
mov qword [rsp + 0x2c0], rax
mov eax, dword [rsp + 0x128]
mov dword [rsp + 0x2dc], eax
mov qword [rsp + 0x2b8], r10
mov qword [rsp + 0x2a0], rdx
mov qword [rsp + 0x2a8], r8
mov byte [rsp + 0x3c], r9b
mov qword [rsp + 0x2b0], r10
mov byte [rsp + 0x39], sil
mov rax, qword [rsp + 0x108]
mov qword [rsp + 0x170], rax
movdqu xmm0, xmmword [rsp + 0xf8]
movdqa xmmword [rsp + 0x160], xmm0
mov byte [rsp + 0x2e0], cl
mov byte [rsp + 0x3e], r13b
mov byte [rsp + 0x2e1], r13b
mov eax, dword [rsp + 0x2dc]
mov dword [rsp + 0x2e4], eax
mov rax, qword [rsp + 0x2c0]
mov qword [rsp + 0x2e8], rax
mov rax, qword [rsp + 0x2c8]
mov qword [rsp + 0x2f0], rax
mov rax, qword [rsp + 0x2d0]
mov qword [rsp + 0x2f8], rax
movzx eax, byte [rsp + 0x3d]
mov byte [rsp + 0x300], al
mov rcx, qword [rsp + 0x2b8]
mov rax, rcx
shr rax, 0x30
mov byte [rsp + 0x307], al
mov rax, rcx
shr rax, 0x20
mov word [rsp + 0x305], ax
mov dword [rsp + 0x301], ecx
lea rsi, [rsp + 0x2e0]
mov rcx, rsi
call fcn.140028680
mov qword [rsp + 0x2e0], rax
mov qword [rsp + 0x2e8], 3
lea rcx, [rsp + 0x160]
mov rdx, rsi
call fcn.140095f60
movzx eax, word [rsp + 0xd8]
mov word [rsp + 0x4e], ax
mov eax, dword [rsp + 0x60]
mov dword [rsp + 0xa0], eax
mov rax, qword [rsp + 0x40]
mov qword [rsp + 0xa8], rax
mov r13d, ebx
mov rax, qword [rsp + 0x50]
mov dword [rsp + 0x58], eax
mov rax, qword [rsp + 0x68]
mov qword [rsp + 0x150], rax
mov rax, qword [rsp + 0x90]
mov qword [rsp + 0x148], rax
mov rax, qword [rsp + 0x70]
mov qword [rsp + 0x140], rax
mov rax, qword [rsp + 0x98]
mov qword [rsp + 0x138], rax
movdqa xmm12, xmm13
lea rbx, [rsp + 0x778]
lea rcx, [rsp + 0x450]
call fcn.140038a00
mov rsi, qword [rsp + 0xc0]
jmp 0x14007d5e7
cmp esi, 6
jne 0x140081312
mov rax, qword [rsp + 0xe0]
mov qword [rax], 3
jmp 0x140081579
mov byte [rsp + 0x160], sil
lea rax, [rsp + 0x611]
movups xmm0, xmmword [rax]
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rsp + 0x161], xmm0
movups xmmword [rsp + 0x171], xmm1
mov rax, qword [rax + 0x1f]
mov qword [rsp + 0x180], rax
mov rcx, qword [rbp + 0xc0]
call fcn.14002d550
test rax, rax
je 0x1400813ae
mov rcx, qword [rsp + 0xe0]
mov qword [rcx], 2
mov qword [rcx + 8], rax
lea eax, [rsi - 2]
cmp eax, 2
jb 0x140081579
test esi, esi
je 0x140081579
cmp esi, 1
jne 0x140081425
lea rcx, [rsp + 0x180]
mov rax, qword [rsp + 0x168]
mov rdx, qword [rsp + 0x170]
mov r8, qword [rsp + 0x178]
call qword [rax + 0x10]
jmp 0x140081579
test rsi, rsi
je 0x140081493
cmp esi, 1
je 0x1400813c1
cmp esi, 2
jne 0x1400813d0
mov eax, dword [rsp + 0x164]
test eax, eax
je 0x1400814a2
mov rax, qword [rsp + 0x180]
mov qword [rsp + 0x300], rax
movups xmm0, xmmword [rsp + 0x160]
movups xmm1, xmmword [rsp + 0x170]
movaps xmmword [rsp + 0x2f0], xmm1
movaps xmmword [rsp + 0x2e0], xmm0
lea rcx, [rsp + 0x2e0]
call fcn.140028680
mov rcx, qword [rsp + 0xe0]
mov qword [rcx], 2
mov qword [rcx + 8], rax
jmp 0x140081579
mov rax, qword [rsp + 0x168]
mov ecx, eax
and ecx, 3
lea rdx, [rcx - 2]
cmp rdx, 2
jb 0x140081579
test rcx, rcx
je 0x140081579
lea rsi, [rax - 1]
mov rdi, qword [rax - 1]
mov rbx, qword [rax + 7]
mov rcx, rdi
call qword [rbx]
cmp qword [rbx + 8], 0
je 0x14008147d
cmp qword [rbx + 0x10], 0x11
jb 0x14008146c
mov rdi, qword [rdi - 8]
mov rcx, qword [0x1401ee100]
xor edx, edx
mov r8, rdi
call fcn.140104a84
mov rcx, qword [0x1401ee100]
xor edx, edx
mov r8, rsi
call fcn.140104a84
jmp 0x140081579
mov eax, dword [rsp + 0x168]
test eax, eax
jne 0x1400813d0
mov rax, qword [rsp + 0xe0]
mov qword [rax], 0
lea eax, [rsi - 2]
cmp eax, 2
jae 0x140081375
jmp 0x140081579
mov rcx, qword [rbp + 0xb8]
mov eax, 1
xchg qword [rcx + 0x10], rax
cmp rax, 2
jb 0x140081513
cmp rax, 3
je 0x140081513
cmp rax, 2
jne 0x140081539
mov rax, qword [rbp + 0xb8]
mov cl, 1
xchg byte [rax + 0x28], cl
test cl, cl
jne 0x1400814e4
mov rdx, qword [rax + 0x18]
mov rcx, qword [rax + 0x20]
mov qword [rax + 0x18], 0
xor r8d, r8d
xchg byte [rax + 0x28], r8b
test rdx, rdx
je 0x140081513
call qword [rdx + 8]
add rbp, 0x88
mov rcx, rbp
mov rdx, r15
call fcn.14005bdc0
movzx eax, al
lea rax, [rax + rax*2]
mov rcx, qword [rsp + 0xe0]
mov qword [rcx], rax
jmp 0x140081579
ud2
lea rcx, [rsp + 0xb90]
lea rdx, [rsp + 0x160]
mov r8d, 0x100
call sub.msvcrt.dll_memcpy
movdqu xmm0, xmmword [rsp + 0x610]
movdqa xmmword [rsp + 0x740], xmm0
mov rax, qword [rsp + 0xe0]
mov qword [rax], 0
movaps xmm6, xmmword [rsp + 0xc90]
movaps xmm7, xmmword [rsp + 0xca0]
movaps xmm8, xmmword [rsp + 0xcb0]
movaps xmm9, xmmword [rsp + 0xcc0]
movaps xmm10, xmmword [rsp + 0xcd0]
movaps xmm11, xmmword [rsp + 0xce0]
movaps xmm12, xmmword [rsp + 0xcf0]
movaps xmm13, xmmword [rsp + 0xd00]
movaps xmm14, xmmword [rsp + 0xd10]
add rsp, 0xd28
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret
movaps xmm0, xmmword [rsp + 0x1c0]
movaps xmmword [rsp + 0x340], xmm0
movaps xmm0, xmmword [rsp + 0x1b0]
movaps xmmword [rsp + 0x330], xmm0
movaps xmm0, xmmword [rsp + 0x1a0]
movaps xmmword [rsp + 0x320], xmm0
movaps xmm0, xmmword [rsp + 0x160]
movaps xmm1, xmmword [rsp + 0x170]
movaps xmm2, xmmword [rsp + 0x180]
movaps xmm3, xmmword [rsp + 0x190]
movaps xmmword [rsp + 0x310], xmm3
movaps xmmword [rsp + 0x300], xmm2
movaps xmmword [rsp + 0x2f0], xmm1
movaps xmmword [rsp + 0x2e0], xmm0
cmp dword [rbp], 2
jne 0x1400816ab
movaps xmm0, xmmword [rsp + 0x340]
movups xmmword [rbp + 0x60], xmm0
movaps xmm0, xmmword [rsp + 0x330]
movups xmmword [rbp + 0x50], xmm0
movaps xmm0, xmmword [rsp + 0x320]
movups xmmword [rbp + 0x40], xmm0
movaps xmm0, xmmword [rsp + 0x2e0]
movaps xmm1, xmmword [rsp + 0x2f0]
movaps xmm2, xmmword [rsp + 0x300]
movaps xmm3, xmmword [rsp + 0x310]
movups xmmword [rbp + 0x30], xmm3
movups xmmword [rbp + 0x20], xmm2
movups xmmword [rbp + 0x10], xmm1
movups xmmword [rbp], xmm0
jmp 0x1400812fe
lea rsi, [rbp + 0x18]
mov rcx, rsi
call fcn.140018410
mov rax, qword [rbp + 0x18]
lock dec qword [rax]
jne 0x1400816c9
mov rcx, qword [rsi]
call fcn.140026650
lea rsi, [rbp + 0x30]
mov rcx, rsi
call fcn.140018410
mov rax, qword [rbp + 0x30]
lock dec qword [rax]
jne 0x1400816e7
mov rcx, qword [rsi]
call fcn.140026650
mov rax, qword [rbp + 0x40]
lock dec qword [rax]
jne 0x1400816fa
mov rcx, qword [rbp + 0x40]
call fcn.1400bc0c0
lea rcx, [rbp + 0x48]
call fcn.140038a00
mov rcx, rbp
call fcn.14008acc0
cmp qword [rbp], 0
mov rax, qword [rbp + 8]
je 0x14008174d
test rax, rax
je 0x140081652
mov rcx, qword [rbp + 0x10]
call fcn.1400b2820
mov rax, qword [rbp + 0x10]
test rax, rax
je 0x140081652
lock dec qword [rax]
jne 0x140081652
mov rcx, qword [rbp + 0x10]
call fcn.1400bab20
jmp 0x140081652
test rax, rax
je 0x140081652
mov rcx, qword [rbp + 0x10]
call fcn.1400b2870
mov rax, qword [rbp + 0x10]
test rax, rax
je 0x140081652
lock dec qword [rax]
jne 0x140081652
mov rcx, qword [rbp + 0x10]
call fcn.1400bbcf0
jmp 0x140081652