Function at 0x1403a6950
Capabilities:
Encode data using xor
Inspect section memory permissions

Disassembly:
jmp 0x1403a6950
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbp
push rbx
sub rsp, 0x508
movdqa xmmword [rsp + 0x4f0], xmm6
mov rbx, rcx
mov rax, qword [0x14056a550]
xor rax, rsp
mov qword [rsp + 0x4e8], rax
mov qword [rsp + 0xe0], r8
mov qword [rsp + 0xd8], rdx
mov rsi, qword [rcx + 8]
lea rax, [rsi + 0x80]
mov qword [rsp + 0x40], rax
lea rax, [rsi + 0x88]
mov qword [rsp + 0x68], rax
lea rax, [rsi + 0x78]
mov qword [rsp + 0x48], rax
lea rax, [rsi + 0x286]
mov qword [rsp + 0x90], rax
mov dil, 1
xor eax, eax
mov qword [rsp + 0x60], rax
pxor xmm6, xmm6
xor eax, eax
mov qword [rsp + 0x80], rax
xor eax, eax
mov qword [rsp + 0x88], rax
mov r10d, 1
cmp r10, 1
jle 0x1403a6a50
mov eax, dword [rsp + 0x1f0]
add eax, 0xfffffff9
cmp eax, 1
ja 0x1403a6cd0
cmp qword [rsp + 0x80], 0
jne 0x1403a6cfc
xor eax, eax
cmp qword [rsp + 0x88], 0
setne al
mov qword [rsp + 0x80], rax
lea rcx, [rsp + 0x1f0]
lea rdx, [rsp + 0xf0]
mov r15, r10
call fcn.14000114f
mov r10, r15
jmp 0x1403a6ce0
mov r12d, dword [rsi + 0x294]
lea rcx, [rsp + 0xd8]
lea rdx, [rsp + 0xe0]
lea r8, [rsp + 0xb0]
lea r9, [rsp + 0x1f0]
call fcn.140003cd8
jmp 0x1403a6aba
mov eax, r8d
xor edx, edx
div r14d
test rax, rax
jne 0x1403a6d1b
nop
lea rcx, [rsp + 0xd8]
lea rdx, [rsp + 0xe0]
lea r8, [rsp + 0xb0]
lea r9, [rsp + 0x1f0]
call fcn.140003cd8
xor edi, edi
mov r12d, r15d
test eax, eax
jne 0x1403a860b
mov ecx, dword [rsp + 0xc0]
cmp ecx, 1
je 0x1403a8598
cmp ecx, 2
je 0x1403a8b58
shr r12d, 0xc
mov r15d, dword [rsi + 0x294]
xor ebp, ebp
test r15d, 0x2000
je 0x1403a6b30
cmp byte [rsi + 0x280], 0
jne 0x1403a6b30
cmp qword [rsp + 0xc8], 2
jl 0x1403a6b30
lea eax, [rcx - 5]
mov bpl, 1
cmp eax, 0xd
jb 0x1403a6b30
cmp ecx, 0x19
jl 0x1403a6b22
cmp ecx, 0x20
jb 0x1403a6b30
lea eax, [rcx - 0x32]
cmp eax, 3
jb 0x1403a6b30
lea eax, [rcx - 0x28]
cmp eax, 9
setb bpl
nop dword [rax]
and r12d, 1
mov eax, dword [rsp + 0x1f0]
cmp eax, 5
sete r13b
and r13b, bpl
lea edx, [rax - 7]
cmp edx, 1
ja 0x1403a6b90
mov r14, qword [rsp + 0xc8]
test r14, r14
je 0x1403a6a90
mov r8, qword [rsp + 0xb8]
mov rax, r8
or rax, r14
shr rax, 0x20
je 0x1403a6a7e
mov rax, r8
cqo
idiv r14
test rax, rax
je 0x1403a6a90
jmp 0x1403a6d1b
add eax, 0xfffffffb
cmp eax, 1
ja 0x1403a6bf0
cmp qword [rsp + 0xc8], 0
je 0x1403a6a90
mov r14, qword [rsp + 0xb8]
test r14, r14
je 0x1403a6a90
test r15d, 0x1000
sete cl
mov eax, 0
cmove eax, r12d
or cl, r13b
mov r10d, 1
je 0x1403a6c2c
mov r12d, eax
test byte [rsi + 0x290], 2
jne 0x1403a6cb1
jmp 0x1403a6e6a
cmp ecx, 0x1c
jl 0x1403a6c07
cmp ecx, 0x2d
jb 0x1403a6e1b
cmp ecx, 0x34
je 0x1403a6e1b
mov r14, qword [rsp + 0xb8]
mov r10d, 1
test r14, r14
jne 0x1403a6e29
cmp ecx, 0x3f
jne 0x1403a6a90
jmp 0x1403a6d60
lea rcx, [rsp + 0xb0]
mov rdx, rsi
call fcn.140005501
test eax, eax
je 0x1403a6c77
mov r14, qword [rsp + 0xc8]
test r14, r14
je 0x1403a6c8e
mov rax, qword [rsp + 0xb8]
mov rcx, rax
or rcx, r14
shr rcx, 0x20
je 0x1403a6c9c
cqo
idiv r14
mov r10, rax
test byte [rsi + 0x290], 2
jne 0x1403a6cb1
jmp 0x1403a6e6a
xor r12d, r12d
mov r10d, 1
test byte [rsi + 0x290], 2
jne 0x1403a6cb1
jmp 0x1403a6e6a
test byte [rsi + 0x290], 2
jne 0x1403a6cba
jmp 0x1403a6e61
xor edx, edx
div r14d
mov r10d, eax
test byte [rsi + 0x290], 2
je 0x1403a6e6a
test r10, r10
jne 0x1403a6e42
mov dword [rsi + 0x220], 1
mov r15d, dword [rsi + 0x294]
jmp 0x1403a6a90
mov rax, qword [rsp + 0xb0]
add rax, qword [rsp + 0xc8]
mov qword [rsp + 0xb0], rax
dec r10
mov dword [rsi + 0x220], 0
mov eax, ebp
jmp 0x1403a6fd8
mov rax, qword [rsp + 0xc8]
add qword [rsp + 0xb0], rax
dec r10
xor eax, eax
mov qword [rsp + 0x80], rax
jmp 0x1403a6cf5
mov r10d, r13d
xor r10b, bpl
cmp ecx, 0x1c
jl 0x1403a6d68
cmp ecx, 0x2d
setb dl
cmp ecx, 0x34
sete cl
or cl, dl
mov edx, 1
mov r9, qword [rsp + 0x80]
cmovne r9, rdx
mov qword [rsp + 0x80], r9
movzx ecx, cl
mov rdx, r14
mov qword [rsp + 0x88], rcx
shl rdx, cl
jmp 0x1403a6d75
xor r14d, r14d
jmp 0x1403a6e29
mov rdx, r14
xor ecx, ecx
mov qword [rsp + 0x88], rcx
movzx ecx, r13b
mov qword [rsp + 0x60], rcx
movzx ecx, r10b
mov dword [rsp + 0x54], ecx
mov r13d, dword [rsp + 0x1f4]
test r13d, r13d
mov qword [rsp + 0x30], rax
jle 0x1403a6f54
cmp rdx, qword [rsp + 0x210]
jne 0x1403a6f54
cmp qword [rsp + 0x208], 1
jne 0x1403a6f59
cmp qword [rsp + 0x200], 0
jle 0x1403a6f59
cmp r13d, 2
jb 0x1403a6eed
lea ecx, [r13 - 1]
lea rcx, [rcx + rcx*2]
mov rdx, qword [rsp + rcx*8 + 0x208]
cmp rdx, qword [rsp + rcx*8 + 0x200]
jne 0x1403a6e5b
mov rdx, r13
cmp rdx, 2
jl 0x1403a6e83
lea rcx, [rdx - 1]
add edx, 0xfffffffe
lea r9, [rdx + rdx*2]
mov r10, qword [rsp + r9*8 + 0x208]
mov rdx, rcx
cmp r10, qword [rsp + r9*8 + 0x200]
je 0x1403a6def
jmp 0x1403a6e85
mov r10d, 2
mov r14, qword [rsp + 0xc8]
xor bpl, r13b
movzx eax, bpl
mov dword [rsp + 0x54], eax
movzx eax, r13b
mov qword [rsp + 0x60], rax
jmp 0x1403a6fa9
movzx eax, r13b
mov qword [rsp + 0x60], rax
xor bpl, r13b
movzx eax, bpl
mov dword [rsp + 0x54], eax
jmp 0x1403a6fa9
lea ecx, [r13 + 1]
jmp 0x1403a6e85
xor r13d, r13d
xor r14d, r14d
xor r10d, r10d
movzx eax, r13b
mov qword [rsp + 0x60], rax
xor bpl, al
movzx eax, bpl
mov dword [rsp + 0x54], eax
jmp 0x1403a6fb3
xor ecx, ecx
cmp r13d, 2
jl 0x1403a6eed
movsxd rcx, ecx
mov edx, 1
lea r9, [rsp + 0x228]
cmp qword [r9 - 8], 1
jne 0x1403a6ea9
cmp qword [r9 - 0x10], 0
jg 0x1403a6eb2
cmp rdx, rcx
jl 0x1403a6f54
mov r10d, 1
cmp rdx, rcx
jge 0x1403a6ed7
mov r11, qword [r9 - 0x28]
sub r11, qword [r9 - 0x20]
inc r11
imul r11, qword [r9 - 0x18]
xor r10d, r10d
cmp qword [r9], r11
sete r10b
inc rdx
cmp rdx, r13
jae 0x1403a6ee8
add r9, 0x18
test r10, r10
jne 0x1403a6e9b
test r10, r10
je 0x1403a6f54
test r15d, 0x1000
je 0x1403a6f39
lea rcx, [rsp + 0xb0]
mov rdx, rsi
call fcn.140005501
test eax, eax
je 0x1403a6f2e
test bpl, bpl
je 0x1403a6f4c
mov dword [rsp + 0x54], 0
mov eax, 1
mov qword [rsp + 0x60], rax
mov r8, qword [rsp + 0xb8]
xor r12d, r12d
jmp 0x1403a6f39
xor r12d, r12d
mov r8, qword [rsp + 0xb8]
mov r10d, 1
mov rax, qword [rsp + 0x1f8]
mov r14, r8
jmp 0x1403a6fa1
mov r13d, dword [rsp + 0x1f4]
test r13d, r13d
jle 0x1403a6f87
mov eax, r13d
lea rcx, [rsp + 0x208]
xor edx, edx
nop word cs:[rax + rax]
mov r8, qword [rcx]
mov qword [rsp + rdx*8 + 0xf0], r8
inc rdx
add rcx, 0x18
cmp rax, rdx
jne 0x1403a6f70
lea rcx, [rsp + 0x1f0]
lea rdx, [rsp + 0xf0]
call fcn.14000114f
mov r10, qword [rsp + 0x30]
mov qword [rsp + 0xb0], rax
mov dword [rsi + 0x220], 0
mov eax, 1
mov qword [rsp + 0x38], rax
xor eax, eax
mov qword [rsp + 0x70], rax
mov eax, 0
mov qword [rsp + 0x58], rax
mov ebp, 0
mov eax, 0
test dil, 1
mov edi, 0
je 0x1403a69ed
mov ecx, dword [rsp + 0xc0]
cmp ecx, 0x3f
mov qword [rsp + 0x30], r10
jne 0x1403a7025
mov r8d, 1
mov rcx, rsi
lea rdx, [rsp + 0xb0]
call fcn.140005a47
mov r10, qword [rsp + 0x30]
xor ebp, ebp
mov dil, 1
test eax, eax
je 0x1403a69ed
jmp 0x1403a888c
mov r15, rbx
mov rbx, qword [rsp + 0xb0]
cmp dword [rsp + 0x54], 0
je 0x1403a706b
lea ecx, [r14 - 1]
mov edx, ebx
and edx, ecx
test dl, 3
lea r11, [rsp + 0xa0]
je 0x1403a70b6
cmp r14, 1
jne 0x1403a70ea
movzx ecx, byte [rbx]
mov byte [rsp + 0xa0], cl
mov r14d, 1
jmp 0x1403a71c6
test r12d, r12d
lea rdi, [rsp + 0xa0]
je 0x1403a7145
cmp ecx, 0x38
je 0x1403a7145
lea rcx, [rsp + 0xb0]
mov edx, r14d
mov r8, rsi
mov r9, rdi
call fcn.1400030ad
test eax, eax
je 0x1403a714c
mov ebp, eax
mov ecx, 0x5f
xor edx, edx
call fcn.140004539
jmp 0x1403a714e
cmp r14, 0x10
je 0x1403a715a
cmp r14, 8
je 0x1403a7198
cmp r14, 4
jne 0x1403a71b7
mov ecx, dword [rbx]
bswap ecx
mov dword [rsp + 0xa0], ecx
mov r14d, 4
jmp 0x1403a71c6
jle 0x1403a71c6
mov rcx, r14
shr rcx, 0x3f
add rcx, r14
sar rcx, 1
lea rdx, [r14 - 1]
xor r8d, r8d
nop word cs:[rax + rax]
movzx r9d, byte [rbx + r8]
movzx r10d, byte [rbx + rdx]
mov byte [rsp + r8 + 0xa0], r10b
xor r9b, byte [rbx + rdx]
xor r9b, r10b
mov byte [rsp + rdx + 0xa0], r9b
inc r8
dec rdx
cmp rcx, r8
jne 0x1403a7110
mov qword [rsp + 0x28], r11
mov ebp, eax
jmp 0x1403a7153
mov qword [rsp + 0x28], rbx
jmp 0x1403a71cb
xor ebp, ebp
mov qword [rsp + 0x28], rdi
mov r10, qword [rsp + 0x30]
jmp 0x1403a71cd
movdqu xmm0, xmmword [rbx]
movdqa xmm1, xmm0
punpckhbw xmm1, xmm6
pshuflw xmm1, xmm1, 0x1b
pshufhw xmm1, xmm1, 0x1b
punpcklbw xmm0, xmm6
pshuflw xmm0, xmm0, 0x1b
pshufhw xmm0, xmm0, 0x1b
packuswb xmm0, xmm1
pshufd xmm0, xmm0, 0x1b
movdqa xmmword [rsp + 0xa0], xmm0
mov r14d, 0x10
jmp 0x1403a71c6
mov ecx, dword [rbx]
mov edx, dword [rbx + 4]
bswap edx
mov dword [rsp + 0xa0], edx
bswap ecx
mov dword [rsp + 0xa4], ecx
mov r14d, 8
jmp 0x1403a71c6
movzx ecx, word [rbx]
rol cx, 8
mov word [rsp + 0xa0], cx
mov qword [rsp + 0x28], r11
mov ebp, eax
mov rbx, r15
mov eax, dword [rsi + 0x294]
test eax, 0x20000000
je 0x1403a7278
cmp r10, 1
jne 0x1403a7278
mov rcx, qword [rsp + 0xd8]
cmp byte [rcx], 1
jne 0x1403a727f
cmp word [rsi + 0x27a], 0
jne 0x1403a727f
and eax, 0xdfffffff
mov dword [rsi + 0x294], eax
cmp byte [rsi + 0x27c], 1
jne 0x1403a728a
mov ecx, dword [rsi + 0x290]
test ecx, 0x8000000
je 0x1403a723f
test cl, 1
je 0x1403a7236
cmp byte [rsi + 0x27d], 2
je 0x1403a728a
test byte [rsi + 0x299], 0x40
jne 0x1403a728a
mov ecx, r14d
cmp rcx, qword [rsi + 0x1c8]
jne 0x1403a728a
mov rcx, qword [rsi + 0x80]
add rcx, r14
cmp rcx, qword [rsi + 0x90]
ja 0x1403a728a
mov rcx, qword [rsp + 0x28]
mov qword [rsi + 0x110], rcx
mov qword [rsi + 0x230], r14
or eax, 0x40000000
jmp 0x1403a7284
test eax, 0x20000000
je 0x1403a728a
and eax, 0xdfffffff
mov dword [rsi + 0x294], eax
mov dil, 1
test eax, 0x40000000
jne 0x1403a69ed
mov ecx, dword [rsi + 0x238]
mov r15, qword [rsi + 0x80]
cmp ecx, 7
jne 0x1403a7563
mov r13, rbx
mov rdi, r14
mov rbx, r13
nop word [rax + rax]
mov rax, qword [rsi + 0x90]
sub rax, r15
cmp rax, 2
jge 0x1403a7360
mov rcx, rsi
call fcn.140004b6f
test eax, eax
jne 0x1403a860b
and byte [rsi + 0x298], 0xbf
mov rcx, rsi
xor edx, edx
call fcn.140005d58
test eax, eax
jne 0x1403a8a93
movsx eax, byte [rsi + 0x27c]
dec eax
cmp eax, 7
ja case.default.0x1403a731d
lea rcx, [0x1403a8c6c]
movsxd rax, dword [rcx + rax*4]
add rax, rcx
jmp rax
mov rax, qword [rsp + 0x68]
mov r15, qword [rax]
test r15, r15
mov r10, qword [rsp + 0x30]
jne 0x1403a7339
mov rax, qword [rsp + 0x48]
mov r15, qword [rax]
mov qword [rsi + 0x80], r15
mov rax, qword [rsi + 0x1c8]
lea rcx, [r15 + rax]
dec rcx
jmp 0x1403a74c0
mov eax, dword [rsi + 0x250]
test eax, eax
jns 0x1403a73b3
mov byte [rsi + 0x286], 0x81
mov byte [r15], 0x81
mov r15, qword [rsi + 0x80]
inc r15
mov qword [rsi + 0x80], r15
movzx eax, byte [rsi + 0x286]
xor ecx, ecx
cmp eax, 0x81
sete cl
sub eax, ecx
mov dword [rsi + 0x250], eax
mov ecx, dword [rsi + 0x90]
sub ecx, r15d
cmp eax, ecx
cmovb ecx, eax
mov dword [rsi + 0x254], ecx
test rdi, rdi
je 0x1403a7bce
test eax, eax
jne 0x1403a74ea
mov dword [rsi + 0x250], 0xffffffff
movzx eax, byte [rsi + 0x286]
mov byte [r15], al
mov r15, qword [rsi + 0x80]
inc r15
mov qword [rsi + 0x80], r15
jmp 0x1403a72c0
mov rax, qword [rsp + 0x68]
mov r15, qword [rax]
test r15, r15
mov r10, qword [rsp + 0x30]
jne 0x1403a7408
mov rax, qword [rsp + 0x48]
mov r15, qword [rax]
mov qword [rsi + 0x80], r15
mov rcx, qword [rsi + 0x1c8]
add rcx, r15
jmp 0x1403a74c0
mov rax, qword [rsp + 0x68]
mov rax, qword [rax]
test rax, rax
mov r10, qword [rsp + 0x30]
jne 0x1403a7438
mov rax, qword [rsp + 0x48]
mov rax, qword [rax]
lea r15, [rax + 4]
mov qword [rsi + 0x80], r15
mov rcx, qword [rsi + 0x1c8]
add rcx, rax
add rcx, 0xfffffffffffffffc
jmp 0x1403a74c0
mov ecx, 8
mov edx, 2
lea r8, str.for_wseq.c
mov r9d, 0xafb
call fcn.140004539
mov r15, qword [rsi + 0x80]
mov rcx, qword [rsi + 0x90]
mov r10, qword [rsp + 0x30]
jmp 0x1403a74c7
mov rcx, qword [rsp + 0x68]
mov rax, qword [rcx]
test rax, rax
mov r10, qword [rsp + 0x30]
jne 0x1403a749e
mov rcx, qword [rsp + 0x48]
mov rax, qword [rcx]
mov byte [rax + 2], 1
mov rax, qword [rcx]
mov byte [rax + 3], 0
mov rcx, qword [rcx]
lea r15, [rcx + 4]
mov qword [rsi + 0x80], r15
add rcx, qword [rsi + 0x1c8]
nop
mov qword [rsi + 0x90], rcx
sub ecx, r15d
mov eax, dword [rsi + 0x250]
cmp eax, ecx
cmovb ecx, eax
mov dword [rsi + 0x254], ecx
xor ebp, ebp
test eax, eax
jns 0x1403a73b3
jmp 0x1403a736a
mov ebx, dword [rsi + 0x254]
cmp ebx, edi
cmovae ebx, edi
test ebx, ebx
je 0x1403a72b4
mov r8d, ebx
mov qword [rsp + 0x98], r8
mov rcx, r15
mov r15, qword [rsp + 0x28]
mov rdx, r15
call fcn.14000419c
mov r10, qword [rsp + 0x30]
mov rax, qword [rsp + 0x98]
sub rdi, rax
movq xmm0, qword [rsi + 0x250]
movd xmm1, ebx
pshufd xmm1, xmm1, 0x50
psubd xmm0, xmm1
movq qword [rsi + 0x250], xmm0
add r15, rax
mov qword [rsp + 0x28], r15
add rax, qword [rsi + 0x80]
mov qword [rsi + 0x80], rax
mov r15, rax
jmp 0x1403a72b4
lea rdx, [r15 + r14]
mov r13, qword [rsi + 0x90]
cmp rdx, r13
mov rdi, qword [rsp + 0x40]
jbe 0x1403a7b9e
movzx edx, byte [rsi + 0x27c]
cmp dl, 5
jne 0x1403a75a5
mov r8, qword [rsi + 0x240]
test r8, r8
mov r9d, 0x20000
cmove r8, r9
cmp r14, r8
jae 0x1403a7c94
cmp ecx, 0xb
jne 0x1403a75d6
mov eax, edx
and al, 0xfe
cmp al, 4
jne 0x1403a75d6
mov rax, r13
sub rax, qword [rsi + 0x78]
mov r8, qword [rsi + 0x240]
test r8, r8
mov r9d, 0x20000
cmove r8, r9
cmp rax, r8
jae 0x1403a7b9e
mov r11, r14
mov rbp, qword [rsp + 0x28]
mov qword [rsp + 0x78], rbx
nop word cs:[rax + rax]
cmp dl, 3
jne 0x1403a7671
sub r13, r15
cmp dword [rsp + 0x60], 0
mov qword [rsp + 0x38], r11
je 0x1403a786f
mov rcx, qword [rsp + 0xc8]
lea rax, [rcx - 2]
shrd rax, rcx, 1
neg rcx
and r13, rcx
cmp rax, 7
ja case.0x1403a7637.2
lea rcx, [0x1403a8bc8]
movsxd rax, dword [rcx + rax*4]
add rax, rcx
jmp rax
test r13, r13
jle case.0x1403a7637.2
lea rax, [r13 + 2]
xor ecx, ecx
nop dword [rax + rax]
movzx edx, word [rbp + rcx]
rol dx, 8
mov word [r15 + rcx], dx
add rcx, 2
add rax, 0xfffffffffffffffe
cmp rax, 2
ja 0x1403a7650
jmp case.0x1403a7637.2
cmp r11, 0x201
mov eax, 0x200
cmovge rax, r11
mov rbx, qword [rsi + 0x1c8]
mov r8, rbx
shr r8, 3
cmp r8, rax
cmovbe r8, rax
cmp ecx, 0xb
sete cl
and dl, 0xfe
cmp dl, 4
sete al
and al, cl
cmp al, 1
jne 0x1403a76d9
mov rdx, qword [rsi + 0x78]
mov rcx, qword [rsi + 0x240]
test rcx, rcx
mov r9d, 0x20000
cmove rcx, r9
sub rdx, r13
add rdx, rcx
cmp r8, rdx
cmovge r8, rdx
cmp r11, rdx
cmovl rdx, r11
jmp 0x1403a76dc
mov rdx, r11
test byte [rsi + 0x297], 1
sete cl
or cl, al
cmp cl, 1
jne 0x1403a7809
mov qword [rsp + 0x38], r11
add rdx, 0xf
and rdx, 0xfffffffffffffff0
add r8, 0xf
and r8, 0xfffffffffffffff0
mov rdi, qword [rsi + 0x88]
mov r13, qword [rsi + 0x1b0]
mov r15, qword [rsi + 0x1d0]
sub rdi, qword [rsi + 0x78]
mov rcx, rsi
call fcn.1400021a8
test eax, eax
je 0x1403a7888
cmp dword [rsi + 0x238], 0xb
mov r9, qword [rsp + 0x30]
jne 0x1403a774e
movzx eax, byte [rsi + 0x27c]
and al, 0xfe
cmp al, 4
je 0x1403a877e
cmp dword [rsi + 0x290], 0
jns 0x1403a877e
movsx ecx, byte [rsi + 0x27c]
cmp ecx, 1
je 0x1403a877e
mov qword [rsi + 0x1b0], r13
mov qword [rsi + 0x1c8], rbx
mov qword [rsi + 0x1d0], r15
mov rax, qword [rsi + 0x78]
mov r15, qword [rsi + 0x80]
add rdi, rax
mov qword [rsi + 0x88], rdi
mov edx, dword [rsi + 0x294]
mov r8d, edx
or r8d, 0x1000000
mov dword [rsi + 0x294], r8d
sub r15, rax
mov rax, qword [rsp + 0x38]
add rax, r15
mov qword [rsi + 0x200], rax
mov r8, qword [rsp + 0xd8]
cmp byte [r8], 1
jne 0x1403a78a4
cmp r9, 1
jne 0x1403a78a4
cmp ecx, 8
mov rbx, qword [rsp + 0x78]
ja 0x1403a7b7d
mov r8d, 0x1e2
bt r8d, ecx
jae 0x1403a7af6
or byte [rsi + 0x297], 2
mov rdi, qword [rsp + 0x40]
jmp 0x1403a791f
mov rdx, qword [rsi + 0x78]
sub r15, rdx
mov rax, qword [rsi + 0x200]
add rax, r11
add rax, r15
mov qword [rsi + 0x200], rax
mov rcx, rsi
mov r8, r15
mov rdi, r11
call fcn.1400053c6
cmp eax, 0xffffffff
je 0x1403a874a
mov rcx, rsi
mov rdx, rbp
mov r8, rdi
call fcn.1400053c6
cmp eax, 0xffffffff
je 0x1403a874a
mov rax, qword [rsp + 0x48]
mov r15, qword [rax]
mov rdi, qword [rsp + 0x40]
mov qword [rdi], r15
xor r11d, r11d
mov rbx, qword [rsp + 0x78]
jmp 0x1403a795e
mov rcx, r15
mov rbx, rbp
mov rdx, rbp
mov r8, r13
call fcn.14000419c
mov r15, qword [rdi]
jmp 0x1403a7a36
mov rdi, qword [rsp + 0x40]
mov r15, qword [rdi]
mov rbx, qword [rsp + 0x78]
mov r10, qword [rsp + 0x30]
mov r11, qword [rsp + 0x38]
jmp 0x1403a7a97
mov rcx, qword [rsi + 0x1a0]
mov qword [rsp + 0xe8], 0
xor edx, edx
lea r8, [rsp + 0xec]
mov r9d, 1
call qword [sym.imp.KERNEL32.dll_SetFilePointer]
mov dword [rsp + 0xe8], eax
cmp eax, 0xffffffff
mov rbx, qword [rsp + 0x78]
jne 0x1403a78f4
call qword [sym.imp.KERNEL32.dll_GetLastError]
test eax, eax
je 0x1403a78f4
mov qword [rsp + 0xe8], 0xffffffffffffffff
mov rax, qword [rsp + 0xe8]
mov qword [rsi + 0x1f8], rax
test byte [rsi + 0x29c], 4
mov rdi, qword [rsp + 0x40]
je 0x1403a791f
mov rax, qword [rsi + 0x168]
mov qword [rsi + 0x1f8], rax
mov rdx, qword [rsi + 0x78]
mov rcx, rsi
mov r8, r15
call fcn.1400053c6
cmp eax, 0xffffffff
je 0x1403a874a
mov rcx, rsi
mov rdx, rbp
mov r8, qword [rsp + 0x38]
call fcn.1400053c6
cmp eax, 0xffffffff
je 0x1403a874a
mov rax, qword [rsp + 0x48]
mov r15, qword [rax]
mov qword [rdi], r15
xor r11d, r11d
mov r10, qword [rsp + 0x30]
jmp 0x1403a7a97
test r13, r13
jle case.0x1403a7637.2
lea rax, [r13 + 4]
xor ecx, ecx
nop word [rax + rax]
mov edx, dword [rbp + rcx]
bswap edx
mov dword [r15 + rcx], edx
add rcx, 4
add rax, 0xfffffffffffffffc
cmp rax, 4
ja 0x1403a7980
jmp case.0x1403a7637.2
test r13, r13
jle case.0x1403a7637.2
lea rax, [r13 + 8]
xor ecx, ecx
nop dword [rax]
mov edx, dword [rbp + rcx]
mov r8d, dword [rbp + rcx + 4]
bswap r8d
mov dword [r15 + rcx], r8d
bswap edx
mov dword [r15 + rcx + 4], edx
add rcx, 8
add rax, 0xfffffffffffffff8
cmp rax, 8
ja 0x1403a79b0
jmp case.0x1403a7637.2
test r13, r13
jle case.0x1403a7637.2
lea rax, [r13 + 0x10]
xor ecx, ecx
nop word cs:[rax + rax]
movdqu xmm0, xmmword [rbp + rcx]
movdqa xmm1, xmm0
punpckhbw xmm1, xmm6
pshuflw xmm1, xmm1, 0x1b
pshufhw xmm1, xmm1, 0x1b
punpcklbw xmm0, xmm6
pshuflw xmm0, xmm0, 0x1b
pshufhw xmm0, xmm0, 0x1b
packuswb xmm0, xmm1
pshufd xmm0, xmm0, 0x1b
movdqu xmmword [r15 + rcx], xmm0
add rcx, 0x10
add rax, 0xfffffffffffffff0
cmp rax, 0x10
ja 0x1403a79f0
mov rbx, rbp
add r15, r13
mov qword [rsi + 0x80], r15
mov rcx, rsi
call fcn.140004b6f
test eax, eax
jne 0x1403a860b
mov r11, qword [rsp + 0x38]
sub r11, r13
mov rbp, rbx
add rbp, r13
mov rcx, qword [rsp + 0x68]
mov rax, qword [rcx]
test rax, rax
jne 0x1403a7a73
mov rcx, qword [rsp + 0x48]
mov rax, qword [rcx]
mov byte [rax + 2], 0
mov rax, qword [rcx]
mov byte [rax + 3], 0
mov r15, qword [rcx]
add r15, 4
mov rdi, qword [rsp + 0x40]
mov qword [rdi], r15
mov r10, qword [rsp + 0x30]
mov rbx, qword [rsp + 0x78]
lea rax, [r15 + r11]
mov r13, qword [rsi + 0x90]
cmp rax, r13
jbe 0x1403a7bef
mov ecx, dword [rsi + 0x238]
movzx edx, byte [rsi + 0x27c]
cmp ecx, 0xb
jne 0x1403a75f0
mov eax, edx
and al, 0xfe
cmp al, 4
jne 0x1403a75f0
mov rax, r13
sub rax, qword [rsi + 0x78]
mov r8, qword [rsi + 0x240]
test r8, r8
mov r9d, 0x20000
cmove r8, r9
cmp rax, r8
jb 0x1403a75f0
jmp 0x1403a7bef
mov r8d, 0x14
bt r8d, ecx
jae 0x1403a7b43
add rax, 0xfffffffffffffffc
mov rcx, rax
shr rcx, 8
mov r8, rax
shr r8, 0x10
mov r9, rax
shr r9, 0x18
test edx, 0x2000
jne 0x1403a7b5d
mov byte [rdi], al
mov rdx, qword [rsp + 0x68]
mov rax, qword [rdx]
mov byte [rax + 1], cl
mov rax, qword [rdx]
mov byte [rax + 2], r8b
mov rax, qword [rdx]
mov byte [rax + 3], r9b
jmp 0x1403a77f8
cmp ecx, 3
jne 0x1403a7b7d
add eax, 0xfffffffe
mov byte [rdi], al
mov rcx, qword [rsp + 0x68]
mov rcx, qword [rcx]
mov byte [rcx + 1], ah
jmp 0x1403a77f8
mov byte [rdi], r9b
mov r9, qword [rsp + 0x68]
mov rdx, qword [r9]
mov byte [rdx + 1], r8b
mov rdx, qword [r9]
mov byte [rdx + 2], cl
mov rcx, qword [r9]
mov byte [rcx + 3], al
jmp 0x1403a77f8
mov ecx, 8
mov edx, 2
lea r8, str.for_wseq.c
mov r9d, 0xda6
call fcn.140004539
jmp 0x1403a77f8
mov r11, r14
cmp qword [rsp + 0x38], 0
je 0x1403a7be4
cmp r14, 4
je 0x1403a7bfc
cmp r14, 8
jne 0x1403a7bd6
mov rax, qword [rsp + 0xb0]
mov ecx, r15d
or ecx, eax
test cl, 7
jne 0x1403a7c03
mov eax, 1
jmp 0x1403a7bd8
mov dil, 1
jmp 0x1403a69ed
xor eax, eax
mov qword [rsp + 0x70], rax
xor eax, eax
mov qword [rsp + 0x58], rax
cmp dword [rsi + 0x238], 0xb
jne 0x1403a7c3b
jmp 0x1403a7c22
mov qword [rsp + 0x28], rbp
xor ebp, ebp
cmp r14, 4
jne 0x1403a7baf
mov eax, dword [rsp + 0xb0]
or eax, r15d
xor ecx, ecx
test al, 3
sete cl
mov qword [rsp + 0x58], rcx
xor eax, eax
mov qword [rsp + 0x70], rax
cmp dword [rsi + 0x238], 0xb
jne 0x1403a7c3b
movzx eax, byte [rsi + 0x27c]
and al, 0xfe
cmp al, 4
jne 0x1403a7c3b
xor eax, eax
mov qword [rsp + 0x38], rax
jmp 0x1403a7cd6
cmp r11, 4
mov rax, qword [rsp + 0x58]
jne 0x1403a7c5a
test rax, rax
je 0x1403a7c5a
mov rax, qword [rsp + 0x28]
mov eax, dword [rax]
mov dword [r15], eax
jmp case.0x1403a8488.2
cmp r11, 8
mov rax, qword [rsp + 0x70]
jne 0x1403a7c7a
test rax, rax
je 0x1403a7c7a
mov rax, qword [rsp + 0x28]
mov rax, qword [rax]
mov qword [r15], rax
jmp case.0x1403a8488.2
cmp r11, 1
jne 0x1403a8457
mov rax, qword [rsp + 0x28]
movzx eax, byte [rax]
mov byte [r15], al
jmp case.0x1403a8488.2
mov qword [rsi + 0x88], r15
or eax, 0x400
mov dword [rsi + 0x294], eax
mov rdx, qword [rsi + 0x78]
mov rcx, rsi
xor r8d, r8d
call fcn.1400053c6
cmp eax, 0xffffffff
je 0x1403a8a93
mov ebp, eax
mov r15, qword [rsi + 0x80]
mov r13, qword [rsi + 0x90]
mov r11, r14
mov r10, qword [rsp + 0x30]
sub r13d, r15d
mov dword [rsi + 0x254], r13d
mov dil, 1
test r11, r11
jle 0x1403a69ed
mov qword [rsp + 0x78], rbx
jmp 0x1403a7d32
mov rbx, qword [rsp + 0x28]
mov eax, edi
mov r13d, dword [rsi + 0x254]
sub r13d, edi
mov r15, qword [rsi + 0x80]
add r15, rax
add rbx, rax
mov qword [rsp + 0x28], rbx
mov dword [rsi + 0x254], r13d
mov qword [rsi + 0x80], r15
sub r11, rax
mov rbx, qword [rsp + 0x78]
jle 0x1403a84b3
test r13d, r13d
jle 0x1403a7d66
mov rax, qword [rsi + 0x240]
test rax, rax
mov ecx, 0x20000
cmove rax, rcx
cmp r11, rax
jae 0x1403a7d66
cmp dword [rsp + 0x60], 0
je 0x1403a7e33
mov eax, r13d
cmp r11, rax
jbe 0x1403a7e3a
mov rax, qword [rsp + 0x68]
mov r13, qword [rax]
test r13, r13
mov qword [rsp + 0x38], r11
je 0x1403a7dbb
mov rdx, qword [rsi + 0x78]
mov rcx, rsi
xor r8d, r8d
call fcn.1400053c6
sub r15, r13
je 0x1403a7e03
mov rax, qword [rsi + 0x78]
mov qword [rsi + 0x80], rax
cmp byte [rsi + 0x27c], 5
jne 0x1403a7e19
mov rcx, rsi
mov rdx, r13
mov r8, r15
call fcn.1400053c6
cmp eax, 0xffffffff
lea r13, [rsp + 0xe8]
jmp 0x1403a7df2
mov rax, qword [rsp + 0x48]
mov rdx, qword [rax]
sub r15, rdx
lea r13, [rsp + 0xe8]
je 0x1403a7e7c
mov qword [rsi + 0x80], rdx
cmp byte [rsi + 0x27c], 5
jne 0x1403a7e49
mov rcx, rsi
mov r8, r15
call fcn.1400053c6
cmp eax, 0xffffffff
mov r10, qword [rsp + 0x30]
mov r11, qword [rsp + 0x38]
jne 0x1403a7e68
jmp 0x1403a87cb
mov ebp, eax
lea r13, [rsp + 0xe8]
mov r10, qword [rsp + 0x30]
mov r11, qword [rsp + 0x38]
jmp 0x1403a7e7c
mov rcx, rsi
mov rdx, r13
mov r8, r15
call fcn.1403a9560
mov ebp, eax
lea r13, [rsp + 0xe8]
jmp 0x1403a7e56
mov rdi, qword [rsp + 0x38]
jmp 0x1403a7ea0
cmp r13d, r11d
cmovae r13d, r11d
mov edi, r13d
jmp 0x1403a8252
mov rcx, rsi
mov r8, r15
call fcn.1403a9560
mov ebp, eax
test ebp, ebp
mov r10, qword [rsp + 0x30]
mov r11, qword [rsp + 0x38]
jne 0x1403a860d
mov eax, dword [rsi + 0x90]
sub eax, dword [rsi + 0x80]
mov dword [rsi + 0x254], eax
xor ebp, ebp
mov rax, qword [rsi + 0x240]
test rax, rax
mov ecx, 0x20000
cmove rax, rcx
mov edi, 1
cmp r11, rax
jae 0x1403a7ee7
cmp dword [rsp + 0x60], 0
jne 0x1403a7ee7
mov qword [rsp + 0x38], rdi
mov edi, dword [rsi + 0x254]
cmp edi, r11d
cmovae edi, r11d
cmp edi, 8
ja case.0x1403a7ec9.3
lea rcx, [0x1403a8c08]
movsxd rax, dword [rcx + rdi*4]
add rax, rcx
jmp rax
mov rbx, qword [rsp + 0x28]
movzx eax, byte [rbx]
mov rcx, qword [rsp + 0x40]
mov rcx, qword [rcx]
mov byte [rcx], al
mov edi, 1
jmp 0x1403a7cf8
cmp dword [rsp + 0x60], 0
je 0x1403a8117
xor edi, edi
sub edi, dword [rsp + 0xc8]
mov qword [rsp + 0xe8], 0
cmp r11, 0x6400000
mov r15d, 0x6400000
cmovl r15, r11
nop dword [rax + rax]
mov rcx, r15
xor edx, edx
mov r8, r13
call fcn.140003765
test eax, eax
jne 0x1403a7f40
mov rcx, qword [rsp + 0xe8]
test rcx, rcx
je 0x1403a7f20
jmp 0x1403a7f59
shr r15, 1
mov qword [rsp + 0xe8], 0
and r15d, edi
jne 0x1403a7f20
jmp 0x1403a87e1
mov r13, qword [rsp + 0x38]
test r13, r13
jle 0x1403a8227
mov rdi, qword [rsp + 0x28]
xor ebx, ebx
jmp 0x1403a7f98
mov rcx, rsi
mov r8, r13
call fcn.1400053c6
cmp eax, 0xffffffff
je 0x1403a875b
add rbx, r13
add rdi, r13
mov r13, qword [rsp + 0x38]
cmp r13, rbx
jle 0x1403a821d
mov rdx, qword [rsp + 0xe8]
sub r13, rbx
cmp r13, r15
cmovge r13, r15
mov rcx, qword [rsp + 0xc8]
lea rax, [rcx - 2]
shrd rax, rcx, 1
cmp rax, 7
ja case.0x1403a7fd3.2
lea rcx, [0x1403a8c2c]
movsxd rax, dword [rcx + rax*4]
add rax, rcx
jmp rax
test r13, r13
jle case.0x1403a7fd3.2
lea rax, [r13 + 2]
xor ecx, ecx
nop word cs:[rax + rax]
movzx r8d, word [rdi + rcx]
rol r8w, 8
mov word [rdx + rcx], r8w
add rcx, 2
add rax, 0xfffffffffffffffe
cmp rax, 2
ja 0x1403a7ff0
jmp case.0x1403a7fd3.2
test r13, r13
jle case.0x1403a7fd3.2
lea rax, [r13 + 4]
xor ecx, ecx
nop word cs:[rax + rax]
mov r8d, dword [rdi + rcx]
bswap r8d
mov dword [rdx + rcx], r8d
add rcx, 4
add rax, 0xfffffffffffffffc
cmp rax, 4
ja 0x1403a8030
jmp case.0x1403a7fd3.2
test r13, r13
jle case.0x1403a7fd3.2
lea rax, [r13 + 8]
xor ecx, ecx
nop dword [rax]
mov r8d, dword [rdi + rcx]
mov r9d, dword [rdi + rcx + 4]
bswap r9d
mov dword [rdx + rcx], r9d
bswap r8d
mov dword [rdx + rcx + 4], r8d
add rcx, 8
add rax, 0xfffffffffffffff8
cmp rax, 8
ja 0x1403a8060
jmp case.0x1403a7fd3.2
test r13, r13
jle case.0x1403a7fd3.2
lea rax, [r13 + 0x10]
xor ecx, ecx
nop word cs:[rax + rax]
movdqu xmm0, xmmword [rdi + rcx]
movdqa xmm1, xmm0
punpckhbw xmm1, xmm6
pshuflw xmm1, xmm1, 0x1b
pshufhw xmm1, xmm1, 0x1b
punpcklbw xmm0, xmm6
pshuflw xmm0, xmm0, 0x1b
pshufhw xmm0, xmm0, 0x1b
packuswb xmm0, xmm1
pshufd xmm0, xmm0, 0x1b
movdqu xmmword [rdx + rcx], xmm0
add rcx, 0x10
add rax, 0xfffffffffffffff0
cmp rax, 0x10
ja 0x1403a80a0
nop word cs:[rax + rax]
cmp byte [rsi + 0x27c], 5
je 0x1403a7f70
mov rcx, rsi
mov r8, r13
call fcn.1403a9560
test eax, eax
je 0x1403a7f84
mov ebp, eax
jmp 0x1403a821f
cmp byte [rsi + 0x27c], 5
jne 0x1403a81ea
mov rcx, rsi
mov rdx, qword [rsp + 0x28]
mov r8, r11
call fcn.1400053c6
cmp eax, 0xffffffff
je 0x1403a87cb
xor r11d, r11d
xor ebp, ebp
mov r10, qword [rsp + 0x30]
jmp 0x1403a7ea0
mov rbx, qword [rsp + 0x28]
movzx eax, byte [rbx]
mov rdx, qword [rsp + 0x40]
mov rcx, qword [rdx]
mov byte [rcx], al
movzx eax, byte [rbx + 1]
mov rcx, qword [rdx]
mov byte [rcx + 1], al
mov edi, 2
jmp 0x1403a7cf8
mov rax, qword [rsp + 0x40]
mov rcx, qword [rax]
mov r8d, edi
mov rbx, qword [rsp + 0x28]
mov rdx, rbx
mov r15, r11
call fcn.14000419c
mov r11, r15
mov r10, qword [rsp + 0x30]
jmp 0x1403a7cf8
cmp qword [rsp + 0x58], 0
je 0x1403a8397
mov rbx, qword [rsp + 0x28]
mov eax, dword [rbx]
mov rcx, qword [rsp + 0x40]
mov rcx, qword [rcx]
mov dword [rcx], eax
mov edi, 4
jmp 0x1403a7cf8
cmp qword [rsp + 0x70], 0
je 0x1403a83d1
mov rbx, qword [rsp + 0x28]
mov rax, qword [rbx]
mov rcx, qword [rsp + 0x40]
mov rcx, qword [rcx]
mov qword [rcx], rax
mov edi, 8
jmp 0x1403a7cf8
mov rcx, rsi
mov rdx, qword [rsp + 0x28]
mov r8, r11
call fcn.1403a9560
test eax, eax
jne 0x1403a860b
mov eax, 1
mov qword [rsp + 0x38], rax
xor edi, edi
xor ebp, ebp
xor r11d, r11d
mov r10, qword [rsp + 0x30]
jmp case.0x1403a7ec9.0
xor ebp, ebp
mov rcx, qword [rsp + 0xe8]
call fcn.140001b0e
test ebp, ebp
jne 0x1403a860d
mov rax, qword [rsp + 0x40]
mov r15, qword [rax]
mov eax, 1
mov qword [rsp + 0x38], rax
xor edi, edi
xor ebp, ebp
xor r11d, r11d
mov r10, qword [rsp + 0x30]
mov eax, edi
mov ecx, r11d
cmp rcx, rax
cmovb rax, rcx
mov rdx, qword [rsp + 0xc8]
lea rcx, [rdx - 2]
shrd rcx, rdx, 1
cmp rcx, 7
ja case.0x1403a7ec9.0
lea rdx, [0x1403a8c4c]
movsxd rcx, dword [rdx + rcx*4]
add rcx, rdx
jmp rcx
test rax, rax
je case.0x1403a7ec9.0
add rax, 2
xor ecx, ecx
mov rbx, qword [rsp + 0x28]
nop dword [rax]
movzx edx, word [rbx + rcx]
rol dx, 8
mov word [r15 + rcx], dx
add rax, 0xfffffffffffffffe
add rcx, 2
cmp rax, 2
ja 0x1403a82a0
jmp 0x1403a7cf8
test rax, rax
je case.0x1403a7ec9.0
add rax, 4
xor ecx, ecx
mov rbx, qword [rsp + 0x28]
nop word cs:[rax + rax]
mov edx, dword [rbx + rcx]
bswap edx
mov dword [r15 + rcx], edx
add rax, 0xfffffffffffffffc
add rcx, 4
cmp rax, 4
ja 0x1403a82e0
jmp 0x1403a7cf8
test rax, rax
je case.0x1403a7ec9.0
add rax, 8
xor ecx, ecx
mov rbx, qword [rsp + 0x28]
mov edx, dword [rbx + rcx]
mov r8d, dword [rbx + rcx + 4]
bswap r8d
mov dword [r15 + rcx], r8d
bswap edx
mov dword [r15 + rcx + 4], edx
add rax, 0xfffffffffffffff8
add rcx, 8
cmp rax, 8
ja 0x1403a8310
jmp 0x1403a7cf8
test rax, rax
je case.0x1403a7ec9.0
add rax, 0x10
xor ecx, ecx
mov rbx, qword [rsp + 0x28]
nop dword [rax]
movdqu xmm0, xmmword [rbx + rcx]
movdqa xmm1, xmm0
punpckhbw xmm1, xmm6
pshuflw xmm1, xmm1, 0x1b
pshufhw xmm1, xmm1, 0x1b
punpcklbw xmm0, xmm6
pshuflw xmm0, xmm0, 0x1b
pshufhw xmm0, xmm0, 0x1b
packuswb xmm0, xmm1
pshufd xmm0, xmm0, 0x1b
movdqu xmmword [r15 + rcx], xmm0
add rax, 0xfffffffffffffff0
add rcx, 0x10
cmp rax, 0x10
ja 0x1403a8350
jmp 0x1403a7cf8
mov rbx, qword [rsp + 0x28]
movzx eax, byte [rbx]
mov rdx, qword [rsp + 0x40]
mov rcx, qword [rdx]
mov byte [rcx], al
movzx eax, byte [rbx + 1]
mov rcx, qword [rdx]
mov byte [rcx + 1], al
movzx eax, byte [rbx + 2]
mov rcx, qword [rdx]
mov byte [rcx + 2], al
movzx eax, byte [rbx + 3]
mov rcx, qword [rdx]
mov byte [rcx + 3], al
mov edi, 4
jmp 0x1403a7cf8
cmp qword [rsp + 0x58], 0
mov rdx, qword [rsp + 0x40]
je 0x1403a83fa
mov rbx, qword [rsp + 0x28]
mov eax, dword [rbx]
mov rcx, qword [rdx]
mov dword [rcx], eax
mov eax, dword [rbx + 4]
mov dword [rcx + 4], eax
mov edi, 8
jmp 0x1403a7cf8
mov rbx, qword [rsp + 0x28]
movzx eax, byte [rbx]
mov rcx, qword [rdx]
mov byte [rcx], al
movzx eax, byte [rbx + 1]
mov rcx, qword [rdx]
mov byte [rcx + 1], al
movzx eax, byte [rbx + 2]
mov rcx, qword [rdx]
mov byte [rcx + 2], al
movzx eax, byte [rbx + 3]
mov rcx, qword [rdx]
mov byte [rcx + 3], al
movzx eax, byte [rbx + 4]
mov rcx, qword [rdx]
mov byte [rcx + 4], al
movzx eax, byte [rbx + 5]
mov rcx, qword [rdx]
mov byte [rcx + 5], al
movzx eax, byte [rbx + 6]
mov rcx, qword [rdx]
mov byte [rcx + 6], al
movzx eax, byte [rbx + 7]
mov rcx, qword [rdx]
mov byte [rcx + 7], al
mov edi, 8
jmp 0x1403a7cf8
cmp dword [rsp + 0x60], 0
je 0x1403a84bb
mov rcx, qword [rsp + 0xc8]
lea rax, [rcx - 2]
shrd rax, rcx, 1
cmp rax, 7
mov r9, qword [rsp + 0x28]
ja case.0x1403a8488.2
lea rcx, [0x1403a8be8]
movsxd rax, dword [rcx + rax*4]
add rax, rcx
jmp rax
test r11, r11
jle case.0x1403a8488.2
lea rax, [r11 + 2]
xor ecx, ecx
movzx edx, word [r9 + rcx]
rol dx, 8
mov word [r15 + rcx], dx
add rax, 0xfffffffffffffffe
add rcx, 2
cmp rax, 2
ja 0x1403a8495
jmp case.0x1403a8488.2
mov dil, 1
jmp 0x1403a69ed
mov rcx, r15
mov rdx, qword [rsp + 0x28]
mov r8, r11
mov r15, rdi
mov rdi, r11
call fcn.14000419c
mov r11, rdi
mov rdi, r15
mov r10, qword [rsp + 0x30]
add qword [rdi], r11
xor eax, eax
mov qword [rsp + 0x38], rax
mov dil, 1
jmp 0x1403a69ed
test r11, r11
jle case.0x1403a8488.2
lea rax, [r11 + 4]
xor ecx, ecx
mov edx, dword [r9 + rcx]
bswap edx
mov dword [r15 + rcx], edx
add rax, 0xfffffffffffffffc
add rcx, 4
cmp rax, 4
ja 0x1403a84f9
jmp case.0x1403a8488.2
test r11, r11
jle case.0x1403a8488.2
lea rax, [r11 + 8]
xor ecx, ecx
mov edx, dword [r9 + rcx]
mov r8d, dword [r9 + rcx + 4]
bswap r8d
mov dword [r15 + rcx], r8d
bswap edx
mov dword [r15 + rcx + 4], edx
add rax, 0xfffffffffffffff8
add rcx, 8
cmp rax, 8
ja 0x1403a851e
jmp case.0x1403a8488.2
test r11, r11
jle case.0x1403a8488.2
lea rax, [r11 + 0x10]
xor ecx, ecx
movdqu xmm0, xmmword [r9 + rcx]
movdqa xmm1, xmm0
punpckhbw xmm1, xmm6
pshuflw xmm1, xmm1, 0x1b
pshufhw xmm1, xmm1, 0x1b
punpcklbw xmm0, xmm6
pshuflw xmm0, xmm0, 0x1b
pshufhw xmm0, xmm0, 0x1b
packuswb xmm0, xmm1
pshufd xmm0, xmm0, 0x1b
movdqu xmmword [r15 + rcx], xmm0
add rax, 0xfffffffffffffff0
add rcx, 0x10
cmp rax, 0x10
ja 0x1403a8550
jmp case.0x1403a8488.2
cmp dword [rsi + 0x220], 0
mov r15, qword [rsp + 0x68]
mov rdi, qword [rsp + 0x40]
je 0x1403a85dc
mov dword [rsi + 0x220], 0
mov rax, qword [rsi + 0x80]
mov rcx, qword [rsi + 0x88]
test rcx, rcx
je 0x1403a85cf
cmp rax, rcx
jne 0x1403a85dc
jmp 0x1403a85ea
mov rcx, qword [rsp + 0x48]
mov rcx, qword [rcx]
cmp rax, rcx
je 0x1403a85ea
cmp word [rsi + 0x27a], 0
je 0x1403a8699
mov eax, dword [rsi + 0x294]
test eax, 0x1000000
je 0x1403a8b19
mov rcx, rsi
call fcn.1403a9840
test eax, eax
je 0x1403a8b00
mov ebp, eax
mov rax, qword [rsi + 0x30]
test rax, rax
je 0x1403a8680
test byte [rax + 0x74], 2
jne 0x1403a8652
mov eax, dword [rsi + 0x294]
mov r8d, dword [rsi + 0x29c]
and eax, 7
shr r8d, 0x11
and r8d, 8
or r8d, eax
mov dword [rsp + 0x20], ebp
mov rcx, rsi
mov edx, 0xffffffff
mov r9d, ebp
call fcn.14000475f
mov ebp, eax
jmp 0x1403a8b5a
mov dword [rax + 0x68], ebp
mov dword [rax + 0x6c], ebp
mov rax, qword [rsi + 0xd8]
test rax, rax
je 0x1403a8b5a
mov qword [rax + 8], 0
mov qword [rsi + 0xd8], 0
jmp 0x1403a8b5a
mov ecx, 1
mov edx, ebp
mov r8d, ebp
mov r9, rsi
call fcn.140002b35
mov ebp, eax
jmp 0x1403a8b5a
cmp dword [rsi + 0x238], 7
jne 0x1403a89d2
mov ecx, dword [rsi + 0x250]
test ecx, ecx
js 0x1403a86bb
mov r14, rbx
mov rax, qword [rdi]
jmp 0x1403a8991
mov rax, qword [rsi + 0x80]
mov rcx, qword [rsi + 0x90]
sub rcx, rax
cmp rcx, 1
jg 0x1403a8946
mov rcx, rsi
call fcn.140004b6f
test eax, eax
jne 0x1403a860b
and byte [rsi + 0x298], 0xbf
mov rcx, rsi
xor edx, edx
call fcn.140005d58
test eax, eax
jne 0x1403a8a93
movsx eax, byte [rsi + 0x27c]
dec eax
cmp eax, 7
ja case.default.0x1403a871f
lea rcx, [0x1403a8ba8]
movsxd rax, dword [rcx + rax*4]
add rax, rcx
jmp rax
mov rax, qword [r15]
test rax, rax
jne 0x1403a8731
mov rax, qword [rsp + 0x48]
mov rax, qword [rax]
mov qword [rsi + 0x80], rax
mov rcx, qword [rsi + 0x1c8]
add rcx, rax
dec rcx
jmp 0x1403a893f
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [rsi + 0x1a8], eax
jmp 0x1403a8a93
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [rsi + 0x1a8], eax
mov rcx, qword [rsp + 0xe8]
call fcn.140001b0e
mov ebp, 0x26
jmp 0x1403a860d
mov rax, qword [rsi + 0x30]
test rax, rax
je 0x1403a881f
test byte [rax + 0x74], 2
jne 0x1403a8834
mov eax, dword [rsi + 0x294]
mov r8d, dword [rsi + 0x29c]
and eax, 7
shr r8d, 0x11
and r8d, 8
or r8d, eax
mov dword [rsp + 0x20], 0x42
mov rcx, rsi
mov edx, 0xffffffff
mov r9d, 0x42
jmp 0x1403a8646
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [rsi + 0x1a8], eax
mov ebp, 0x26
jmp 0x1403a860d
mov rcx, qword [rsi + 0x30]
test rcx, rcx
je 0x1403a8853
test byte [rcx + 0x74], 2
jne 0x1403a8867
mov ecx, dword [rsi + 0x294]
mov r8d, dword [rsi + 0x29c]
and ecx, 7
shr r8d, 0x11
and r8d, 8
or r8d, ecx
mov dword [rsp + 0x20], eax
mov rcx, rsi
mov edx, 0xffffffff
mov r9d, eax
jmp 0x1403a8646
mov ecx, 1
mov edx, 0x42
mov r8d, 0x42
jmp 0x1403a868a
movabs rcx, 0x4200000042
mov qword [rax + 0x68], rcx
mov rax, qword [rsi + 0xd8]
mov ebp, 0x42
jmp 0x1403a865f
mov ecx, 1
mov edx, eax
mov r8d, eax
mov r9, rsi
call fcn.140002b35
jmp 0x1403a888c
mov dword [rcx + 0x68], eax
mov dword [rcx + 0x6c], eax
mov rcx, qword [rsi + 0xd8]
test rcx, rcx
je 0x1403a888c
mov qword [rcx + 8], 0
mov qword [rsi + 0xd8], 0
mov ebp, eax
jmp 0x1403a8b5a
mov rax, qword [r15]
test rax, rax
jne 0x1403a88a3
mov rax, qword [rsp + 0x48]
mov rax, qword [rax]
mov qword [rsi + 0x80], rax
mov rcx, qword [rsi + 0x1c8]
add rcx, rax
jmp 0x1403a893f
mov rcx, qword [r15]
test rcx, rcx
jne 0x1403a88c9
mov rax, qword [rsp + 0x48]
mov rcx, qword [rax]
lea rax, [rcx + 4]
mov qword [rsi + 0x80], rax
mov rdx, qword [rsi + 0x1c8]
add rcx, rdx
add rcx, 0xfffffffffffffffc
jmp 0x1403a893f
lea r8, str.for_wseq.c
mov ecx, 8
mov edx, 2
mov r9d, 0xbdb
call fcn.140004539
mov rax, qword [rdi]
jmp 0x1403a8946
mov rax, qword [r15]
mov rcx, r15
test rax, rax
jne 0x1403a8918
mov rcx, qword [rsp + 0x48]
mov rax, qword [rcx]
mov byte [rax + 2], 1
mov rax, qword [rcx]
mov byte [rax + 3], 0
mov rax, qword [rcx]
add rax, 4
mov qword [rsi + 0x80], rax
mov rcx, qword [rsi + 0x1c8]
add rcx, rax
add rcx, 0xfffffffffffffffc
mov qword [rsi + 0x90], rcx
mov r14, rbx
mov byte [rsi + 0x286], 0x81
mov byte [rax], 0x81
mov rax, qword [rsi + 0x80]
inc rax
mov qword [rsi + 0x80], rax
movzx ecx, byte [rsi + 0x286]
xor edx, edx
cmp ecx, 0x81
sete dl
sub ecx, edx
mov dword [rsi + 0x250], ecx
mov edx, dword [rsi + 0x90]
sub edx, eax
cmp ecx, edx
cmovb edx, ecx
mov dword [rsi + 0x254], edx
mov dl, 0x80
sub dl, cl
mov rcx, qword [rsp + 0x90]
mov byte [rcx], dl
mov byte [rax], dl
mov rdx, qword [rdi]
lea rbx, [rdx + 1]
mov qword [rdi], rbx
mov rax, qword [rsp + 0x48]
mov rax, qword [rax]
movzx ecx, byte [rcx]
lea r8, [rax + rcx]
sub rbx, r8
neg r8
add rdx, r8
dec rdx
cmp rbx, 2
jl 0x1403a8a28
mov byte [rax + rdx], cl
mov rbx, r14
cmp byte [rsi + 0x27c], 3
jne 0x1403a89f9
mov rax, qword [r15]
test rax, rax
jne 0x1403a89eb
mov r15, qword [rsp + 0x48]
mov rax, qword [r15]
movzx ecx, byte [rax + 3]
or byte [rax + 2], 2
mov rax, qword [r15]
mov byte [rax + 3], cl
mov eax, dword [rsi + 0x294]
mov rcx, rsi
test eax, 0x1000000
jne 0x1403a8a1e
test eax, 0x40000000
jne 0x1403a8af1
call fcn.140004b6f
jmp 0x1403a8af6
call fcn.1403a9840
jmp 0x1403a8af6
movdqu xmm6, xmmword [rsi + 0x168]
mov rcx, qword [rsi + 0x1a0]
mov r8d, 1
call fcn.1403a6850
cmp rax, 0xffffffffffffffff
je 0x1403a8a93
mov edi, 1
mov r8d, 1
mov rcx, rsi
mov rdx, qword [rsp + 0x90]
call fcn.1400053c6
cmp eax, 0xffffffff
je 0x1403a8a93
sub rdi, rbx
mov rcx, qword [rsi + 0x1a0]
mov rdx, rdi
mov r8d, 1
call fcn.1403a6850
cmp rax, 0xffffffffffffffff
je 0x1403a8a93
movdqu xmmword [rsi + 0x168], xmm6
jmp 0x1403a89cf
mov rax, qword [rsi + 0x30]
test rax, rax
je 0x1403a8adc
test byte [rax + 0x74], 2
jne 0x1403a8b88
mov eax, dword [rsi + 0x294]
mov r8d, dword [rsi + 0x29c]
and eax, 7
shr r8d, 0x11
and r8d, 8
or r8d, eax
mov dword [rsp + 0x20], 0x26
mov rcx, rsi
mov edx, 0xffffffff
mov r9d, 0x26
jmp 0x1403a8646
mov ecx, 1
mov edx, 0x26
mov r8d, 0x26
jmp 0x1403a868a
call fcn.1403a9f20
mov ebp, eax
test eax, eax
jne 0x1403a860d
inc qword [rsi + 0x148]
mov eax, 0xfbffffff
and eax, dword [rsi + 0x294]
and byte [rsi + 0x298], 0xbf
and byte [rsi + 0x29e], 0xef
and eax, 0xfff7ffdc
mov dword [rsi + 0x294], eax
mov ecx, dword [rsi + 0x1e0]
call fcn.1400023f6
test eax, eax
je 0x1403a8b50
mov ebp, eax
mov rax, qword [rsi + 0x30]
test rax, rax
jne 0x1403a8616
xor ecx, ecx
jmp 0x1403a8685
mov qword [rbx + 8], 0
xor ebp, ebp
mov rcx, qword [rsp + 0x4e8]
xor rcx, rsp
call fcn.140003706
mov eax, ebp
movaps xmm6, xmmword [rsp + 0x4f0]
add rsp, 0x508
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret
movabs rcx, 0x2600000026
mov qword [rax + 0x68], rcx
mov rax, qword [rsi + 0xd8]
mov ebp, 0x26
jmp 0x1403a865f