Function at 0x1400174b0
Capabilities:
Encode data using xor

Disassembly:
mov qword [rsp + 8], rcx
push rbp
push rsi
push rdi
push r12
push r14
push r15
sub rsp, 0xf8
mov rbp, rcx
mov rcx, qword [rcx + 0x8630]
mov edx, dword [rcx]
mov r15, qword [rcx + 0x10]
test edx, edx
je 0x1400174df
mov rax, qword [rbp + 0x10]
jmp 0x1400174e6
mov rax, qword [rcx + 0x38]
inc rax
mov r8, qword [rbp + 0x86d0]
mov edi, 0x10
dec r8
shl r8, 4
sub rax, r8
cmp rax, rdi
jae 0x140017524
test edx, edx
je 0x140017513
mov rax, qword [rbp + 0x10]
sub rax, r8
mov qword [rsp + 0x40], rax
jmp 0x140017529
mov rax, qword [rcx + 0x38]
inc rax
sub rax, r8
mov qword [rsp + 0x40], rax
jmp 0x140017529
mov qword [rsp + 0x40], rdi
mov qword [rsp + 0xe8], r13
test edx, edx
je 0x14001753b
mov r13, qword [rbp + 8]
jmp 0x140017542
mov r13, qword [rcx + 0x28]
inc r13
mov rax, qword [rcx + 0x30]
cmp r8, rax
jbe 0x14001754f
xor eax, eax
jmp 0x140017552
and eax, 0xf
mov r11d, dword [rbp + 0x85b0]
dec rax
xor edx, edx
add rax, r15
mov qword [rsp + 0xf0], rbx
mov dword [rsp + 0xb8], r11d
div r15
xor edx, edx
imul rax, r15
mov qword [rsp + 0x58], rax
mov rax, qword [rcx + 0x20]
dec rax
add rax, r15
div r15
imul rax, r15
mov qword [rsp + 0x48], rax
test r11d, r11d
jne 0x14001759e
xor ebx, ebx
jmp 0x1400175a1
mov ebx, dword [rbp + 0x18]
mov eax, dword [rbp + 0x30]
mov r14d, dword [rbp + 0x1c]
mov r10d, dword [rbp + 0x98]
neg eax
mov edx, 2
mov dword [rsp + 0xb0], ebx
sbb rax, rax
xor r9d, r9d
xor r12d, r12d
and eax, 2
mov dword [rsp + 0xa8], r14d
mov qword [rsp + 0xa0], r9
sub rdx, rax
mov qword [rsp + 0xc0], rax
movzx eax, byte [rbp + 0x80d0]
mov byte [rsp + 0x138], al
movzx eax, byte [rbp + 0x80d1]
mov qword [rsp + 0xc8], rdx
mov byte [rsp + 0x140], al
mov rax, qword [rbp + 0x8830]
xor edx, edx
mov qword [rsp + 0x98], rax
mov rax, qword [rbp + 0x8838]
mov qword [rsp + 0x88], r12
mov qword [rsp + 0x60], rax
mov rax, qword [rbp + 0x8840]
mov qword [rsp + 0x68], rax
mov rax, qword [rcx + 0x40]
mov rcx, qword [rcx + 0x48]
mov qword [rsp + 0x80], rax
mov rax, r8
div r15
lea rax, [rcx + rax*8]
mov qword [rsp + 0x78], rax
cmp r15, rdi
jb 0x140017675
test r10d, r10d
je 0x140017692
mov edi, 0x22
mov eax, 0x17
cmp r10d, 1
cmove edi, eax
jmp 0x140017692
cmp r15, 4
jb 0x14001768d
mov edi, 0x5d
mov eax, 0x40
test r10d, r10d
cmove edi, eax
jmp 0x140017692
mov edi, 0x102
mov edx, dword [rbp + 0x85bc]
mov dword [rsp + 0x148], edi
mov eax, edx
neg eax
sbb ecx, ecx
and ecx, 3
add ecx, 8
movsxd r8, ecx
mov qword [rsp + 0x50], r8
test edx, edx
je 0x1400176cd
cmp r15, 0x10
jb 0x1400176cd
xor ecx, ecx
lea eax, [r11 - 1]
cmp eax, 1
setbe cl
inc ecx
jmp 0x1400176cf
xor ecx, ecx
movsxd rax, ecx
mov rcx, r8
mov edx, 1
sub rcx, rax
mov qword [rsp + 0x90], rcx
cmp r15, rdx
jbe 0x140017704
mov ecx, edx
nop dword [rax]
rol ecx, 1
inc r12
mov eax, ecx
cmp rax, r15
jb 0x1400176f0
mov qword [rsp + 0x88], r12
mov rcx, r12
shl edx, cl
mov eax, edx
cmp r15, rax
je 0x140017729
lea rdx, str.....libgfflibjxrlib_strdec.c
lea rcx, str.tScale___size_t__1U____nBits_
mov r8d, 0x795
call fcn.1401ebaa4
cmp dword [rbp + 0x70], 4
jge 0x140017735
mov rcx, qword [rbp + 0x40]
jmp 0x140017739
mov rcx, qword [rbp + 0x50]
mov rax, qword [rsp + 0x40]
mov rsi, qword [rbp + 0x8630]
xor edx, edx
sub rax, qword [rsp + 0x58]
mov qword [rsp + 0xd0], rax
div qword [rsi + 0x10]
mov rdx, rcx
mov r8, rax
mov rcx, rbp
call fcn.14000d1c0
test eax, eax
je 0x140017772
or eax, 0xffffffff
jmp 0x140019b45
mov rcx, qword [rbp + 0x86d0]
xor edx, edx
lea rax, [rcx - 1]
shl rax, 4
div r15
test rdx, rdx
jne 0x140019b43
shl rcx, 4
cmp rcx, qword [rsi + 0x30]
jbe 0x140019b43
mov rax, qword [rsi + 0x38]
add rax, 0x10
cmp rcx, rax
ja 0x140019b43
movsxd rcx, dword [rsp + 0xb8]
lea r11, [0x140000000]
lea eax, [rcx - 1]
cmp eax, 1
ja 0x140017a96
test ebx, ebx
je 0x140017a96
mov rsi, qword [rbp + 0x8a30]
mov r14, qword [rbp + 0x8a38]
mov rbx, qword [rsp + 0x68]
mov rbp, qword [rsp + 0x60]
mov rax, r15
xor r11d, r11d
xor r10d, r10d
shl rax, 4
mov rdi, rcx
mov qword [rsp + 0x70], rax
lea r12, [0x140000000]
nop word [rax + rax]
xor r8d, r8d
test r13, r13
je 0x14001789e
nop dword [rax]
mov rdx, r8
and rdx, 0xfffffffffffffff0
cmp rdi, 2
jne 0x140017848
mov rax, r8
shr rax, 1
and eax, 7
add rax, r10
movzx eax, byte [rax + r12 + 0x265fb0]
lea r9, [rax + rdx*8]
jmp 0x140017868
mov rcx, r8
mov rax, r11
shr rcx, 1
and ecx, 7
shr rax, 1
lea rcx, [rcx + rax*8]
movzx eax, byte [rcx + r12 + 0x2660b0]
lea r9, [rax + rdx*4]
mov rax, r8
shl rdx, 4
add r8, r15
and eax, 0xf
add rax, r10
movzx ecx, byte [rax + r12 + 0x265fb0]
mov eax, dword [rbp + r9*4]
add rcx, rdx
mov dword [rsi + rcx*4], eax
mov eax, dword [rbx + r9*4]
mov dword [r14 + rcx*4], eax
cmp r8, r13
jb 0x140017820
mov rax, qword [rsp + 0x70]
add r11, r15
add r10, rax
cmp r11, 0x10
jb 0x140017810
mov r12, qword [rsp + 0x88]
mov ebx, dword [rsp + 0xb0]
mov edi, dword [rsp + 0x148]
mov rbp, qword [rsp + 0x130]
cmp r15, 4
jne 0x140017a75
cmp dword [rsp + 0xb8], 1
jne 0x14001798d
mov qword [rsp + 0x70], 0
test r13, r13
je 0x14001798d
mov rbp, qword [rsp + 0x70]
lea rbx, [0x140000000]
mov r11, rbp
mov r10, rbp
add rbp, 8
and r11d, 0xf
and r10, 0xfffffffffffffff0
movzx r9d, byte [r11 + rbx + 0x265fb0]
movzx eax, byte [r11 + rbx + 0x266030]
movzx r8d, byte [r11 + rbx + 0x265ff0]
shl r10, 4
add rax, r10
add r9, r10
add r8, r10
mov ecx, dword [rsi + r9*4]
mov edx, dword [rsi + rax*4]
mov qword [rsp + 0xa0], rax
inc ecx
add edx, ecx
sar edx, 1
mov dword [rsi + r8*4], edx
mov edx, dword [r14 + rax*4]
mov ecx, dword [r14 + r9*4]
inc edx
mov r9, rax
add edx, ecx
movzx ecx, byte [r11 + rbx + 0x266070]
add rcx, r10
sar edx, 1
mov dword [r14 + r8*4], edx
mov eax, dword [rsi + rax*4]
mov dword [rsi + rcx*4], eax
mov eax, dword [r14 + r9*4]
mov dword [r14 + rcx*4], eax
cmp rbp, r13
jb 0x140017902
mov rbp, qword [rsp + 0xa0]
lea rdi, [r13 - 8]
xor r11d, r11d
lea rbx, [0x140000000]
xor r10d, r10d
test rdi, rdi
je 0x140017a23
nop dword [rax + rax]
lea rcx, [r10 - 8]
mov rax, r10
mov rdx, r10
and rdx, 0xfffffffffffffff0
and eax, 0xf
add r10, 8
shl rdx, 4
add rax, r11
movzx r9d, byte [rax + rbx + 0x265fb0]
lea rax, [rcx - 4]
and ecx, 0xf
add r9, rdx
and eax, 0xf
add rcx, r11
movzx ebp, byte [rcx + rbx + 0x265fb0]
add rax, r11
movzx r8d, byte [rax + rbx + 0x265fb0]
add rbp, rdx
add r8, rdx
mov edx, dword [rsi + r9*4]
inc edx
add edx, dword [rsi + rbp*4]
sar edx, 1
mov dword [rsi + r8*4], edx
mov edx, dword [r14 + r9*4]
inc edx
add edx, dword [r14 + rbp*4]
sar edx, 1
mov dword [r14 + r8*4], edx
cmp r10, rdi
jb 0x1400179b0
lea rax, [r10 + 4]
and r10, 0xfffffffffffffff0
and eax, 0xf
shl r10, 4
add rax, r11
add r11, 0x40
movzx ecx, byte [rax + rbx + 0x265fb0]
mov eax, dword [rsi + rbp*4]
add rcx, r10
mov dword [rsi + rcx*4], eax
mov eax, dword [r14 + rbp*4]
mov dword [r14 + rcx*4], eax
cmp r11, 0x100
jb 0x1400179a3
mov ebx, dword [rsp + 0xb0]
mov edi, dword [rsp + 0x148]
mov rbp, qword [rsp + 0x130]
mov r9, r14
mov qword [rsp + 0x68], r14
mov r14d, dword [rsp + 0xa8]
mov r10, rsi
mov qword [rsp + 0x60], rsi
lea r11, [0x140000000]
jmp 0x140017aa0
mov r9, qword [rsp + 0x68]
mov r10, qword [rsp + 0x60]
cmp r14d, 1
jne 0x140018064
mov r14, qword [rsp + 0x50]
mov r8d, 0x80
mov rcx, r14
mov eax, r8d
shl eax, cl
cdq
idiv edi
mov r9d, eax
mov dword [rsp + 0x130], eax
cmp ebx, 8
ja case.0x140017ae1.1
movsxd rcx, ebx
mov edx, dword [r11 + rcx*4 + 0x19b68]
add rdx, r11
jmp rdx
mov rsi, qword [rsp + 0x58]
mov r14, rsi
mov qword [rsp + 0x138], rsi
cmp rsi, qword [rsp + 0x40]
jae 0x140017c84
mov rdx, qword [rsp + 0x48]
mov rax, r15
shl rsi, 4
shl rax, 4
mov r8d, 0xff
mov qword [rsp + 0x70], rax
nop dword [rax]
mov rcx, r12
mov rax, r14
mov rbx, rdx
shr rax, cl
mov rcx, qword [rsp + 0x78]
mov rax, qword [rcx + rax*8]
cmp rdx, r13
jae 0x140017c5f
mov r14, rax
mov rcx, qword [rsp + 0x90]
mov rax, rbx
and eax, 0xf
add rax, rsi
movzx edx, byte [rax + r11 + 0x265fb0]
mov rax, rbx
and rax, 0xfffffffffffffff0
shl rax, 4
add rdx, rax
mov rax, qword [rsp + 0x98]
mov r9d, dword [r10 + rdx*4]
mov r10d, dword [rax + rdx*4]
add r10d, dword [rsp + 0x130]
imul r9d, edi
neg r9d
sar r9d, cl
mov rcx, qword [rsp + 0x68]
mov r11d, dword [rcx + rdx*4]
mov rcx, qword [rsp + 0x90]
imul r10d, edi
mov eax, r9d
sar eax, 1
imul r11d, edi
sar r11d, cl
mov rcx, qword [rsp + 0x50]
sar r10d, cl
lea ecx, [r11 + 1]
sar ecx, 1
sub r10d, eax
mov eax, r10d
sub eax, ecx
mov rcx, r12
add r9d, eax
mov rax, rbx
shr rax, cl
mov rcx, qword [rsp + 0x80]
mov rcx, qword [rcx + rax*8]
add rcx, r14
add rcx, qword [rbp + 0x80f0]
add r11d, r9d
jns 0x140017bee
xor r11d, r11d
jmp 0x140017bf5
cmp r11d, r8d
cmovg r11d, r8d
mov rax, qword [rsp + 0xc0]
mov byte [rcx + rax], r11b
test r10d, r10d
jns 0x140017c0b
xor r10d, r10d
jmp 0x140017c12
cmp r10d, r8d
cmovg r10d, r8d
mov byte [rcx + 1], r10b
test r9d, r9d
jns 0x140017c20
xor r9d, r9d
jmp 0x140017c27
cmp r9d, r8d
cmovg r9d, r8d
mov rax, qword [rsp + 0xc8]
mov r10, qword [rsp + 0x60]
add rbx, r15
lea r11, [0x140000000]
mov byte [rcx + rax], r9b
cmp rbx, r13
jb 0x140017b41
mov r14, qword [rsp + 0x138]
mov rdx, qword [rsp + 0x48]
lea r11, [0x140000000]
add rsi, qword [rsp + 0x70]
mov r10, qword [rsp + 0x60]
add r14, r15
mov qword [rsp + 0x138], r14
cmp r14, qword [rsp + 0x40]
jb 0x140017b20
mov rsi, qword [rsp + 0x58]
mov r14, qword [rsp + 0x50]
jmp 0x140019953
mov rsi, qword [rsp + 0x58]
mov rbx, qword [rsp + 0x48]
mov r8, r14
mov edx, edi
mov rcx, rbp
mov r9, rsi
mov qword [rsp + 0x20], rbx
call fcn.1400162a0
jmp 0x140019958
mov rsi, qword [rsp + 0x58]
mov rbx, qword [rsp + 0x48]
mov rax, rsi
mov qword [rsp + 0x130], rax
cmp rsi, qword [rsp + 0x40]
jae 0x140019958
mov r14, rsi
mov rcx, r15
shl r14, 4
shl rcx, 4
mov qword [rsp + 0x140], rcx
nop dword [rax + rax]
mov rcx, r12
mov rsi, rbx
shr rax, cl
mov rcx, qword [rsp + 0x78]
mov r9, qword [rcx + rax*8]
mov qword [rsp + 0x138], r9
cmp rbx, r13
jae 0x140017e0d
nop dword [rax]
nop word [rax + rax]
mov rcx, qword [rsp + 0x90]
mov rax, rsi
and eax, 0xf
add rax, r14
movzx edx, byte [rax + r11 + 0x265fb0]
mov rax, rsi
and rax, 0xfffffffffffffff0
shl rax, 4
add rdx, rax
mov rax, qword [rsp + 0x98]
mov r11d, dword [rax + rdx*4]
mov ebx, dword [r10 + rdx*4]
imul ebx, edi
sar ebx, cl
mov rcx, qword [rsp + 0x68]
imul r11d, edi
mov r8d, dword [rcx + rdx*4]
mov rcx, qword [rsp + 0x90]
neg ebx
mov eax, ebx
sar eax, 1
imul r8d, edi
sar r8d, cl
mov rcx, qword [rsp + 0x50]
sar r11d, cl
lea ecx, [r8 + 1]
sub r11d, eax
sar ecx, 1
mov eax, r11d
sub eax, ecx
mov rcx, r12
add ebx, eax
mov rax, rsi
shr rax, cl
mov rcx, qword [rsp + 0x80]
add r8d, ebx
mov r10, qword [rcx + rax*8]
mov ecx, ebx
add r10, r9
add r10, qword [rbp + 0x80f0]
lea rdx, [r10 + 2]
lea r9, [r10 + 1]
lea rax, [r10 + 3]
mov qword [rsp + 0x30], rax
mov qword [rsp + 0x28], rdx
mov qword [rsp + 0x20], r9
mov r9, r10
mov edx, r11d
call fcn.1400117c0
mov r9, qword [rsp + 0x138]
mov r10, qword [rsp + 0x60]
add rsi, r15
lea r11, [0x140000000]
cmp rsi, r13
jb 0x140017d20
mov rbx, qword [rsp + 0x48]
lea r11, [0x140000000]
mov rax, qword [rsp + 0x130]
add r14, qword [rsp + 0x140]
mov r10, qword [rsp + 0x60]
add rax, r15
mov qword [rsp + 0x130], rax
cmp rax, qword [rsp + 0x40]
jb 0x140017cf0
mov rsi, qword [rsp + 0x58]
mov r14, qword [rsp + 0x50]
jmp 0x140019958
mov rcx, qword [rsp + 0x90]
mov rsi, qword [rsp + 0x58]
mov r11, qword [rbp + 0x8848]
mov rbx, qword [rsp + 0x48]
shl r8d, cl
mov qword [rsp + 0x140], r11
mov eax, r8d
cdq
idiv edi
sar eax, 1
mov dword [rsp + 0x138], eax
mov rax, rsi
mov qword [rsp + 0x88], rax
cmp rsi, qword [rsp + 0x40]
jae 0x140019958
mov r14, rsi
mov rcx, r15
mov r8d, 0xff
shl r14, 4
shl rcx, 4
mov qword [rsp + 0xa0], rcx
nop dword [rax]
mov rcx, r12
mov rsi, rbx
shr rax, cl
mov rcx, qword [rsp + 0x78]
mov rax, qword [rcx + rax*8]
mov qword [rsp + 0x70], rax
cmp rbx, r13
jae 0x140018007
mov rax, rsi
lea rcx, [0x140000000]
and eax, 0xf
add rax, r14
movzx edx, byte [rax + rcx + 0x265fb0]
mov rcx, qword [rsp + 0x50]
mov rax, rsi
and rax, 0xfffffffffffffff0
shl rax, 4
add rdx, rax
mov rax, qword [rsp + 0x98]
sub r9d, dword [rax + rdx*4]
mov ebx, dword [r10 + rdx*4]
mov rax, qword [rsp + 0x90]
imul r9d, edi
imul ebx, edi
mov r11d, dword [r11 + rdx*4]
sar r9d, cl
mov rcx, rax
add r11d, dword [rsp + 0x138]
sar ebx, cl
mov rcx, qword [rsp + 0x68]
mov r10d, dword [rcx + rdx*4]
mov rcx, rax
lea eax, [r9 + 1]
imul r11d, edi
sar r11d, cl
sar eax, 1
imul r10d, edi
sub r11d, eax
neg r10d
sar r10d, cl
mov ecx, ebx
mov eax, r11d
sar ecx, 1
sub eax, ecx
lea ecx, [r10 + 1]
sar ecx, 1
add r9d, eax
mov eax, r9d
sub eax, ecx
mov rcx, r12
add ebx, eax
mov rax, rsi
shr rax, cl
mov rcx, qword [rsp + 0x80]
add r10d, ebx
mov rcx, qword [rcx + rax*8]
add rcx, qword [rsp + 0x70]
add rcx, qword [rbp + 0x80f0]
test ebx, ebx
jns 0x140017f99
xor ebx, ebx
jmp 0x140017fa0
cmp ebx, r8d
cmovg ebx, r8d
mov byte [rcx], bl
test r9d, r9d
jns 0x140017fac
xor r9d, r9d
jmp 0x140017fb3
cmp r9d, r8d
cmovg r9d, r8d
mov byte [rcx + 1], r9b
test r10d, r10d
jns 0x140017fc1
xor r10d, r10d
jmp 0x140017fc8
cmp r10d, r8d
cmovg r10d, r8d
mov byte [rcx + 2], r10b
test r11d, r11d
jns 0x140017fd6
xor r11d, r11d
jmp 0x140017fdd
cmp r11d, r8d
cmovg r11d, r8d
mov r9d, dword [rsp + 0x130]
mov r10, qword [rsp + 0x60]
add rsi, r15
mov byte [rcx + 3], r11b
mov r11, qword [rsp + 0x140]
cmp rsi, r13
jb 0x140017ed0
mov rbx, qword [rsp + 0x48]
mov rax, qword [rsp + 0x88]
add r14, qword [rsp + 0xa0]
mov r10, qword [rsp + 0x60]
add rax, r15
mov qword [rsp + 0x88], rax
cmp rax, qword [rsp + 0x40]
jb 0x140017eb0
mov rsi, qword [rsp + 0x58]
mov r14, qword [rsp + 0x50]
jmp 0x140019958
mov r8d, 0x80d
lea rdx, str.....libgfflibjxrlib_strdec.c
lea rcx, [0x140268fd8]
call fcn.1401ebaa4
mov rsi, qword [rsp + 0x58]
jmp 0x140019953
cmp r14d, 2
jne 0x1400184cc
movzx ecx, byte [rsp + 0x138]
mov r14, qword [rsp + 0x50]
mov r8d, 0x8000
mov eax, r8d
sar eax, cl
mov rcx, r14
shl eax, cl
cdq
idiv edi
mov dword [rsp + 0x130], eax
test ebx, ebx
je case.0x140017ae1.0
sub ebx, 3
je case.0x140017ae1.0
dec ebx
je 0x140018277
sub ebx, 2
je case.0x140017ae1.0
dec ebx
je 0x1400180c3
mov r8d, 0x845
jmp 0x140018047
mov rsi, qword [rsp + 0x58]
mov r14, rsi
mov qword [rsp + 0x140], rsi
cmp rsi, qword [rsp + 0x40]
jae 0x14001992b
mov rdx, qword [rsp + 0x48]
mov rax, r15
shl rsi, 4
shl rax, 4
mov r8d, 0xffff
mov qword [rsp + 0x88], rax
nop dword [rax]
mov rcx, r12
mov rax, r14
mov rbx, rdx
shr rax, cl
mov rcx, qword [rsp + 0x78]
mov rax, qword [rcx + rax*8]
cmp rdx, r13
jae 0x140018239
mov r14, rax
mov rcx, qword [rsp + 0x90]
mov rax, rbx
and eax, 0xf
add rax, rsi
movzx edx, byte [rax + r11 + 0x265fb0]
mov rax, rbx
and rax, 0xfffffffffffffff0
shl rax, 4
add rdx, rax
mov rax, qword [rsp + 0x98]
mov r11d, dword [r9 + rdx*4]
mov r9d, dword [rax + rdx*4]
mov r10d, dword [r10 + rdx*4]
imul r10d, edi
imul r11d, edi
add r9d, dword [rsp + 0x130]
sar r11d, cl
neg r10d
sar r10d, cl
mov rcx, qword [rsp + 0x50]
imul r9d, edi
sar r9d, cl
mov eax, r10d
lea ecx, [r11 + 1]
sar eax, 1
sar ecx, 1
sub r9d, eax
mov eax, r9d
sub eax, ecx
mov rcx, r12
add r10d, eax
mov rax, rbx
shr rax, cl
mov rcx, qword [rsp + 0x80]
add r11d, r10d
mov rdx, qword [rcx + rax*8]
movzx ecx, byte [rsp + 0x138]
mov rax, qword [rbp + 0x80f0]
shl r10d, cl
add rdx, r14
shl r9d, cl
shl r11d, cl
test r10d, r10d
jns 0x1400181d5
xor r10d, r10d
jmp 0x1400181dc
cmp r10d, r8d
cmovg r10d, r8d
mov word [rax + rdx*2], r10w
test r9d, r9d
jns 0x1400181eb
xor r9d, r9d
jmp 0x1400181f2
cmp r9d, r8d
cmovg r9d, r8d
mov word [rax + rdx*2 + 2], r9w
test r11d, r11d
jns 0x140018202
xor r11d, r11d
jmp 0x140018209
cmp r11d, r8d
cmovg r11d, r8d
mov r10, qword [rsp + 0x60]
mov r9, qword [rsp + 0x68]
add rbx, r15
mov word [rax + rdx*2 + 4], r11w
lea r11, [0x140000000]
cmp rbx, r13
jb 0x140018121
mov r14, qword [rsp + 0x140]
mov rdx, qword [rsp + 0x48]
add rsi, qword [rsp + 0x88]
mov r10, qword [rsp + 0x60]
mov r9, qword [rsp + 0x68]
add r14, r15
lea r11, [0x140000000]
mov qword [rsp + 0x140], r14
cmp r14, qword [rsp + 0x40]
jb 0x140018100
mov rsi, qword [rsp + 0x58]
mov r14, qword [rsp + 0x50]
jmp 0x140019953
mov rsi, qword [rsp + 0x58]
mov r11, qword [rbp + 0x8848]
mov rbx, qword [rsp + 0x48]
mov eax, r8d
mov qword [rsp + 0x88], r11
mov r14, rsi
shl eax, cl
mov rcx, qword [rsp + 0x90]
mov qword [rsp + 0xa8], rsi
cdq
shl r8d, cl
idiv edi
mov r9d, eax
mov dword [rsp + 0x130], eax
mov eax, r8d
cdq
idiv edi
sar eax, 1
mov dword [rsp + 0x140], eax
cmp rsi, qword [rsp + 0x40]
jae 0x140017e3d
mov rdx, rsi
mov rax, r15
mov r8d, 0xffff
shl rdx, 4
shl rax, 4
mov qword [rsp + 0xb8], rax
mov qword [rsp + 0xa0], rdx
nop word [rax + rax]
mov rcx, r12
mov rax, r14
mov rsi, rbx
shr rax, cl
mov rcx, qword [rsp + 0x78]
mov rax, qword [rcx + rax*8]
mov qword [rsp + 0x70], rax
cmp rbx, r13
jae 0x140018492
mov r14, qword [rsp + 0xa0]
nop dword [rax + rax]
mov rax, rsi
lea rcx, [0x140000000]
and eax, 0xf
add rax, r14
movzx edx, byte [rax + rcx + 0x265fb0]
mov rcx, qword [rsp + 0x50]
mov rax, rsi
and rax, 0xfffffffffffffff0
shl rax, 4
add rdx, rax
mov rax, qword [rsp + 0x98]
sub r9d, dword [rax + rdx*4]
mov ebx, dword [r10 + rdx*4]
mov r11d, dword [r11 + rdx*4]
imul r9d, edi
imul ebx, edi
add r11d, dword [rsp + 0x140]
mov rax, qword [rsp + 0x90]
sar r9d, cl
mov rcx, rax
sar ebx, cl
mov rcx, qword [rsp + 0x68]
imul r11d, edi
mov r10d, dword [rcx + rdx*4]
mov rcx, rax
lea eax, [r9 + 1]
sar r11d, cl
sar eax, 1
imul r10d, edi
sub r11d, eax
neg r10d
sar r10d, cl
mov ecx, ebx
mov eax, r11d
sar ecx, 1
sub eax, ecx
lea ecx, [r10 + 1]
add r9d, eax
sar ecx, 1
mov eax, r9d
sub eax, ecx
mov rcx, r12
add ebx, eax
mov rax, rsi
shr rax, cl
mov rcx, qword [rsp + 0x80]
add r10d, ebx
mov rdx, qword [rcx + rax*8]
movzx ecx, byte [rsp + 0x138]
mov rax, qword [rbp + 0x80f0]
add rdx, qword [rsp + 0x70]
shl ebx, cl
shl r9d, cl
shl r10d, cl
shl r11d, cl
test ebx, ebx
jns 0x14001840c
xor ebx, ebx
jmp 0x140018413
cmp ebx, r8d
cmovg ebx, r8d
mov word [rax + rdx*2], bx
test r9d, r9d
jns 0x140018421
xor r9d, r9d
jmp 0x140018428
cmp r9d, r8d
cmovg r9d, r8d
mov word [rax + rdx*2 + 2], r9w
test r10d, r10d
jns 0x140018438
xor r10d, r10d
jmp 0x14001843f
cmp r10d, r8d
cmovg r10d, r8d
mov word [rax + rdx*2 + 4], r10w
test r11d, r11d
jns 0x14001844f
xor r11d, r11d
jmp 0x140018456
cmp r11d, r8d
cmovg r11d, r8d
mov r9d, dword [rsp + 0x130]
mov r10, qword [rsp + 0x60]
add rsi, r15
mov word [rax + rdx*2 + 6], r11w
mov r11, qword [rsp + 0x88]
cmp rsi, r13
jb 0x140018330
mov r14, qword [rsp + 0xa8]
mov rdx, qword [rsp + 0xa0]
mov rbx, qword [rsp + 0x48]
add rdx, qword [rsp + 0xb8]
mov r10, qword [rsp + 0x60]
add r14, r15
mov qword [rsp + 0xa8], r14
mov qword [rsp + 0xa0], rdx
cmp r14, qword [rsp + 0x40]
jb 0x140018300
mov rsi, qword [rsp + 0x58]
mov r14, qword [rsp + 0x50]
jmp 0x140019958
cmp r14d, 3
jne 0x140018969
test ebx, ebx
je 0x140018940
sub ebx, r14d
je 0x140018940
dec ebx
je 0x1400186fa
sub ebx, 2
je 0x140018940
dec ebx
je 0x140018524
mov r8d, 0x87b
lea rdx, str.....libgfflibjxrlib_strdec.c
lea rcx, [0x140268fd8]
call fcn.1401ebaa4
mov rsi, qword [rsp + 0x58]
mov r14, qword [rsp + 0x50]
jmp 0x140019953
mov rsi, qword [rsp + 0x58]
mov rax, rsi
mov qword [rsp + 0x130], rax
cmp rsi, qword [rsp + 0x40]
jae 0x140017c84
movzx esi, byte [rsp + 0x138]
mov rdx, qword [rsp + 0x48]
mov r14, rax
mov rcx, r15
shl r14, 4
mov ebx, 0x7fff
shl rcx, 4
mov qword [rsp + 0x140], rcx
nop word [rax + rax]
mov rcx, r12
mov r11, rdx
shr rax, cl
mov rcx, qword [rsp + 0x78]
mov rax, qword [rcx + rax*8]
mov qword [rsp + 0x138], rax
cmp rdx, r13
jae 0x1400186bb
nop dword [rax]
nop word [rax + rax]
mov rax, r11
lea rcx, [0x140000000]
and eax, 0xf
add rax, r14
movzx edx, byte [rax + rcx + 0x265fb0]
mov rcx, qword [rsp + 0x90]
mov rax, r11
and rax, 0xfffffffffffffff0
shl rax, 4
add rdx, rax
mov rax, qword [rsp + 0x98]
mov r8d, dword [r10 + rdx*4]
mov r10d, dword [r9 + rdx*4]
mov r9d, dword [rax + rdx*4]
imul r8d, edi
imul r10d, edi
imul r9d, edi
sar r10d, cl
neg r8d
sar r8d, cl
mov rcx, qword [rsp + 0x50]
sar r9d, cl
mov eax, r8d
lea ecx, [r10 + 1]
sar eax, 1
sar ecx, 1
sub r9d, eax
mov eax, r9d
sub eax, ecx
mov rcx, r12
add r8d, eax
mov rax, r11
shr rax, cl
mov rcx, qword [rsp + 0x80]
add r10d, r8d
mov rdx, qword [rcx + rax*8]
mov rax, qword [rbp + 0x80f0]
mov ecx, esi
add rdx, qword [rsp + 0x138]
shl r8d, cl
shl r9d, cl
shl r10d, cl
cmp r8d, 0xffff8000
jge 0x140018658
mov r8d, 0xffff8000
jmp 0x14001865f
cmp r8d, ebx
cmovg r8d, ebx
mov word [rax + rdx*2], r8w
cmp r9d, 0xffff8000
jge 0x140018675
mov r9d, 0xffff8000
jmp 0x14001867c
cmp r9d, ebx
cmovg r9d, ebx
mov word [rax + rdx*2 + 2], r9w
cmp r10d, 0xffff8000
jge 0x140018693
mov r10d, 0xffff8000
jmp 0x14001869a
cmp r10d, ebx
cmovg r10d, ebx
mov r9, qword [rsp + 0x68]
add r11, r15
mov word [rax + rdx*2 + 4], r10w
mov r10, qword [rsp + 0x60]
cmp r11, r13
jb 0x1400185a0
mov rdx, qword [rsp + 0x48]
mov rax, qword [rsp + 0x130]
add r14, qword [rsp + 0x140]
mov r10, qword [rsp + 0x60]
mov r9, qword [rsp + 0x68]
add rax, r15
mov qword [rsp + 0x130], rax
cmp rax, qword [rsp + 0x40]
jb 0x140018570
mov rsi, qword [rsp + 0x58]
mov r14, qword [rsp + 0x50]
jmp 0x140019953
mov rsi, qword [rsp + 0x58]
mov r10, qword [rbp + 0x8848]
mov qword [rsp + 0x140], r10
mov r14, rsi
mov qword [rsp + 0x88], rsi
cmp rsi, qword [rsp + 0x40]
jae 0x140017c84
mov r8, qword [rsp + 0x48]
mov rdx, rsi
mov rax, r15
shl rdx, 4
shl rax, 4
mov ebx, 0x7fff
mov qword [rsp + 0xa0], rax
mov qword [rsp + 0x130], rdx
nop dword [rax]
mov rcx, r12
mov rax, r14
mov rsi, r8
shr rax, cl
mov rcx, qword [rsp + 0x78]
mov rax, qword [rcx + rax*8]
mov qword [rsp + 0x70], rax
cmp r8, r13
jae 0x1400188ff
mov r14, qword [rsp + 0x130]
nop dword [rax + rax]
mov rcx, qword [rsp + 0x50]
mov rax, rsi
and eax, 0xf
add rax, r14
movzx edx, byte [rax + r11 + 0x265fb0]
mov rax, rsi
and rax, 0xfffffffffffffff0
shl rax, 4
add rdx, rax
mov rax, qword [rsp + 0x98]
mov r8d, dword [rax + rdx*4]
mov r9d, dword [r9 + rdx*4]
mov r10d, dword [r10 + rdx*4]
imul r8d, edi
imul r9d, edi
imul r10d, edi
mov rax, qword [rsp + 0x60]
neg r8d
neg r9d
mov r11d, dword [rax + rdx*4]
mov rax, qword [rsp + 0x90]
sar r8d, cl
mov rcx, rax
lea eax, [r8 + 1]
imul r11d, edi
sar r11d, cl
sar r10d, cl
sar r9d, cl
sar eax, 1
mov ecx, r11d
sub r10d, eax
sar ecx, 1
mov eax, r10d
sub eax, ecx
lea ecx, [r9 + 1]
add r8d, eax
sar ecx, 1
mov eax, r8d
sub eax, ecx
mov rcx, r12
add r11d, eax
mov rax, rsi
shr rax, cl
mov rcx, qword [rsp + 0x80]
add r9d, r11d
mov rdx, qword [rcx + rax*8]
movzx ecx, byte [rsp + 0x138]
mov rax, qword [rbp + 0x80f0]
add rdx, qword [rsp + 0x70]
shl r11d, cl
shl r8d, cl
shl r9d, cl
shl r10d, cl
cmp r11d, 0xffff8000
jge 0x14001885c
mov r11d, 0xffff8000
jmp 0x140018863
cmp r11d, ebx
cmovg r11d, ebx
mov word [rax + rdx*2], r11w
cmp r8d, 0xffff8000
jge 0x140018879
mov r8d, 0xffff8000
jmp 0x140018880
cmp r8d, ebx
cmovg r8d, ebx
mov word [rax + rdx*2 + 2], r8w
cmp r9d, 0xffff8000
jge 0x140018897
mov r9d, 0xffff8000
jmp 0x14001889e
cmp r9d, ebx
cmovg r9d, ebx
mov word [rax + rdx*2 + 4], r9w
cmp r10d, 0xffff8000
jge 0x1400188b5
mov r10d, 0xffff8000
jmp 0x1400188bc
cmp r10d, ebx
cmovg r10d, ebx
mov r14, qword [rsp + 0x130]
mov r9, qword [rsp + 0x68]
add rsi, r15
mov word [rax + rdx*2 + 6], r10w
mov r10, qword [rsp + 0x140]
lea r11, [0x140000000]
cmp rsi, r13
jb 0x140018780
mov r14, qword [rsp + 0x88]
mov rdx, qword [rsp + 0x130]
mov r8, qword [rsp + 0x48]
add rdx, qword [rsp + 0xa0]
mov r9, qword [rsp + 0x68]
add r14, r15
mov qword [rsp + 0x88], r14
lea r11, [0x140000000]
mov qword [rsp + 0x130], rdx
cmp r14, qword [rsp + 0x40]
jb 0x140018750
mov rsi, qword [rsp + 0x58]
mov r14, qword [rsp + 0x50]
jmp 0x140019953
mov rsi, qword [rsp + 0x58]
mov r14, qword [rsp + 0x50]
mov rbx, qword [rsp + 0x48]
mov r9, rsi
mov r8, r14
mov edx, edi
mov rcx, rbp
mov qword [rsp + 0x20], rbx
call fcn.1400162a0
jmp 0x140019958
cmp r14d, 4
jne 0x140018b40
test ebx, ebx
je 0x140018940
sub ebx, 3
je 0x140018940
sub ebx, 3
je 0x140018940
dec ebx
je 0x140018990
mov r8d, 0x89a
jmp 0x140018502
mov rax, qword [rsp + 0x58]
mov rsi, rax
mov qword [rsp + 0x130], rax
cmp rax, qword [rsp + 0x40]
jae 0x14001994b
mov rdx, qword [rsp + 0x48]
mov r14, rax
mov rax, r15
shl r14, 4
shl rax, 4
mov ebx, 0x7fff
mov qword [rsp + 0x70], rax
nop dword [rax + rax]
mov rcx, r12
mov rax, rsi
shr rax, cl
mov rcx, qword [rsp + 0x78]
mov rax, qword [rcx + rax*8]
mov qword [rsp + 0x140], rax
cmp rdx, r13
jae 0x140018b05
mov rsi, rdx
nop word [rax + rax]
mov rcx, qword [rsp + 0x90]
mov rax, rsi
and eax, 0xf
add rax, r14
movzx edx, byte [rax + r11 + 0x265fb0]
mov rax, rsi
and rax, 0xfffffffffffffff0
shl rax, 4
add rdx, rax
mov rax, qword [rsp + 0x98]
mov r11d, dword [r10 + rdx*4]
mov r10d, dword [r9 + rdx*4]
mov r9d, dword [rax + rdx*4]
imul r9d, edi
imul r11d, edi
imul r10d, edi
mov rdx, qword [rbp + 0x80f0]
sar r10d, cl
neg r11d
sar r11d, cl
mov rcx, qword [rsp + 0x50]
sar r9d, cl
mov eax, r11d
lea ecx, [r10 + 1]
sar eax, 1
sar ecx, 1
sub r9d, eax
mov eax, r9d
sub eax, ecx
mov rcx, r12
add r11d, eax
mov rax, rsi
add rsi, r15
shr rax, cl
mov rcx, qword [rsp + 0x80]
mov r8, qword [rcx + rax*8]
movzx eax, r11w
mov ecx, r11d
add r8, qword [rsp + 0x140]
sar ecx, 0x1f
and ax, bx
xor ax, cx
sub ax, cx
lea ecx, [r10 + r11]
mov r10, qword [rsp + 0x60]
mov word [rdx + r8*2], ax
mov eax, r9d
and r9w, bx
sar eax, 0x1f
lea r11, [0x140000000]
xor r9w, ax
sub r9w, ax
mov eax, ecx
and cx, bx
sar eax, 0x1f
mov word [rdx + r8*2 + 2], r9w
mov r9, qword [rsp + 0x68]
xor cx, ax
sub cx, ax
mov word [rdx + r8*2 + 4], cx
cmp rsi, r13
jb 0x140018a00
mov rsi, qword [rsp + 0x130]
mov rdx, qword [rsp + 0x48]
add r14, qword [rsp + 0x70]
mov r10, qword [rsp + 0x60]
mov r9, qword [rsp + 0x68]
add rsi, r15
lea r11, [0x140000000]
mov qword [rsp + 0x130], rsi
cmp rsi, qword [rsp + 0x40]
jb 0x1400189d0
mov rsi, qword [rsp + 0x58]
mov r14, qword [rsp + 0x50]
jmp 0x140019953
cmp r14d, 5
jne 0x140018d22
movzx ecx, byte [rsp + 0x138]
mov r14, qword [rsp + 0x50]
mov eax, 0x80000000
sar eax, cl
mov dword [rsp + 0x138], ecx
mov rcx, r14
shl eax, cl
cdq
idiv edi
mov r8d, eax
mov dword [rsp + 0x130], eax
test ebx, ebx
je case.0x140017ae1.0
sub ebx, 3
je case.0x140017ae1.0
sub ebx, 3
je case.0x140017ae1.0
dec ebx
je 0x140018ba0
mov r8d, 0x8bc
jmp 0x140018047
mov rsi, qword [rsp + 0x58]
mov r14, rsi
mov qword [rsp + 0x140], rsi
cmp rsi, qword [rsp + 0x40]
jae 0x14001992b
mov rdx, qword [rsp + 0x48]
mov rax, r15
shl rsi, 4
shl rax, 4
mov qword [rsp + 0x88], rax
mov rcx, r12
mov rax, r14
mov rbx, rdx
shr rax, cl
mov rcx, qword [rsp + 0x78]
mov rax, qword [rcx + rax*8]
mov qword [rsp + 0x70], rax
cmp rdx, r13
jae 0x140018ce4
mov r14d, dword [rsp + 0x138]
nop
mov rcx, qword [rsp + 0x90]
mov rax, rbx
and eax, 0xf
add rax, rsi
movzx edx, byte [rax + r11 + 0x265fb0]
mov rax, rbx
and rax, 0xfffffffffffffff0
shl rax, 4
add rdx, rax
mov rax, qword [rsp + 0x98]
mov r11d, dword [r10 + rdx*4]
mov r10d, dword [r9 + rdx*4]
mov r9d, dword [rax + rdx*4]
imul r11d, edi
imul r10d, edi
mov rdx, qword [rbp + 0x80f0]
add r9d, r8d
sar r10d, cl
neg r11d
sar r11d, cl
mov rcx, qword [rsp + 0x50]
imul r9d, edi
sar r9d, cl
mov eax, r11d
lea ecx, [r10 + 1]
sar eax, 1
sar ecx, 1
sub r9d, eax
mov eax, r9d
sub eax, ecx
mov rcx, r12
add r11d, eax
mov rax, rbx
add rbx, r15
shr rax, cl
mov rcx, qword [rsp + 0x80]
mov r8, qword [rcx + rax*8]
mov ecx, r14d
mov eax, r11d
add r8, qword [rsp + 0x70]
shl eax, cl
shl r9d, cl
mov dword [rdx + r8*4], eax
lea eax, [r10 + r11]
mov r10, qword [rsp + 0x60]
shl eax, cl
mov dword [rdx + r8*4 + 4], r9d
mov r9, qword [rsp + 0x68]
mov dword [rdx + r8*4 + 8], eax
mov r8d, dword [rsp + 0x130]
lea r11, [0x140000000]
cmp rbx, r13
jb 0x140018c00
mov r14, qword [rsp + 0x140]
mov rdx, qword [rsp + 0x48]
add rsi, qword [rsp + 0x88]
mov r10, qword [rsp + 0x60]
mov r9, qword [rsp + 0x68]
add r14, r15
lea r11, [0x140000000]
mov qword [rsp + 0x140], r14
cmp r14, qword [rsp + 0x40]
jb 0x140018bd3
mov rsi, qword [rsp + 0x58]
mov r14, qword [rsp + 0x50]
jmp 0x140019953
cmp r14d, 6
jne 0x140018eda
test ebx, ebx
je 0x140018940
sub ebx, 3
je 0x140018940
sub ebx, 3
je 0x140018940
dec ebx
je 0x140018d55
mov r8d, 0x8db
jmp 0x140018502
mov rsi, qword [rsp + 0x58]
mov rax, rsi
mov qword [rsp + 0x130], rax
cmp rsi, qword [rsp + 0x40]
jae 0x140017c84
movzx r14d, byte [rsp + 0x138]
mov rdx, qword [rsp + 0x48]
mov rcx, r15
shl rsi, 4
shl rcx, 4
mov qword [rsp + 0x140], rcx
mov rcx, r12
mov rbx, rdx
shr rax, cl
mov rcx, qword [rsp + 0x78]
mov rax, qword [rcx + rax*8]
mov qword [rsp + 0x138], rax
cmp rdx, r13
jae 0x140018e94
nop dword [rax]
nop dword [rax + rax]
mov rcx, qword [rsp + 0x90]
mov rax, rbx
and eax, 0xf
add rax, rsi
movzx edx, byte [rax + r11 + 0x265fb0]
mov rax, rbx
and rax, 0xfffffffffffffff0
shl rax, 4
add rdx, rax
mov rax, qword [rsp + 0x98]
mov r11d, dword [r10 + rdx*4]
mov r10d, dword [r9 + rdx*4]
mov r9d, dword [rax + rdx*4]
imul r11d, edi
imul r9d, edi
imul r10d, edi
mov rdx, qword [rbp + 0x80f0]
sar r10d, cl
neg r11d
sar r11d, cl
mov rcx, qword [rsp + 0x50]
sar r9d, cl
mov eax, r11d
lea ecx, [r10 + 1]
sar eax, 1
sar ecx, 1
sub r9d, eax
mov eax, r9d
sub eax, ecx
mov rcx, r12
add r11d, eax
mov rax, rbx
add rbx, r15
shr rax, cl
mov rcx, qword [rsp + 0x80]
mov r8, qword [rcx + rax*8]
mov ecx, r14d
mov eax, r11d
add r8, qword [rsp + 0x138]
shl eax, cl
shl r9d, cl
mov dword [rdx + r8*4], eax
lea eax, [r10 + r11]
mov r10, qword [rsp + 0x60]
shl eax, cl
mov dword [rdx + r8*4 + 4], r9d
mov r9, qword [rsp + 0x68]
mov dword [rdx + r8*4 + 8], eax
lea r11, [0x140000000]
cmp rbx, r13
jb 0x140018dc0
mov rdx, qword [rsp + 0x48]
mov rax, qword [rsp + 0x130]
add rsi, qword [rsp + 0x140]
mov r10, qword [rsp + 0x60]
mov r9, qword [rsp + 0x68]
add rax, r15
lea r11, [0x140000000]
mov qword [rsp + 0x130], rax
cmp rax, qword [rsp + 0x40]
jb 0x140018d91
mov rsi, qword [rsp + 0x58]
mov r14, qword [rsp + 0x50]
jmp 0x140019953
cmp r14d, 7
jne 0x14001910d
test ebx, ebx
je 0x140018940
sub ebx, 3
je 0x140018940
sub ebx, 3
je 0x140018940
dec ebx
je 0x140018f0d
mov r8d, 0x8fb
jmp 0x140018502
mov rsi, qword [rsp + 0x58]
mov rbx, qword [rsp + 0x48]
mov rax, rsi
mov qword [rsp + 0xa8], rax
cmp rsi, qword [rsp + 0x40]
jae 0x140017e3d
mov rdx, rsi
mov rcx, r15
shl rdx, 4
shl rcx, 4
mov qword [rsp + 0xb8], rcx
mov qword [rsp + 0xa0], rdx
nop dword [rax + rax]
mov rcx, r12
mov r8, rbx
mov qword [rsp + 0x88], rbx
shr rax, cl
mov rcx, qword [rsp + 0x78]
mov r9, qword [rcx + rax*8]
mov qword [rsp + 0x70], r9
cmp rbx, r13
jae 0x1400190b5
nop dword [rax + rax]
mov rcx, qword [rsp + 0x90]
mov rax, r8
and eax, 0xf
add rax, rdx
movzx edx, byte [rax + r11 + 0x265fb0]
mov rax, r8
and rax, 0xfffffffffffffff0
shl rax, 4
add rdx, rax
mov rax, qword [rsp + 0x98]
mov esi, dword [rax + rdx*4]
mov ebp, dword [r10 + rdx*4]
imul ebp, edi
imul esi, edi
neg ebp
sar ebp, cl
mov rcx, qword [rsp + 0x68]
mov r14d, dword [rcx + rdx*4]
mov rcx, qword [rsp + 0x90]
movzx edx, byte [rsp + 0x140]
imul r14d, edi
sar r14d, cl
mov rcx, qword [rsp + 0x50]
mov eax, ebp
sar esi, cl
sar eax, 1
lea ecx, [r14 + 1]
sub esi, eax
sar ecx, 1
mov eax, esi
sub eax, ecx
mov rcx, r12
add ebp, eax
mov rax, r8
movzx r8d, byte [rsp + 0x138]
shr rax, cl
mov rcx, qword [rsp + 0x80]
mov rdi, qword [rcx + rax*8]
mov rax, qword [rsp + 0x130]
mov ecx, ebp
mov rbx, qword [rax + 0x80f0]
add rdi, r9
call fcn.1400118d0
movzx r8d, byte [rsp + 0x138]
movzx edx, byte [rsp + 0x140]
mov ecx, esi
movss dword [rbx + rdi*4], xmm0
call fcn.1400118d0
movzx r8d, byte [rsp + 0x138]
movzx edx, byte [rsp + 0x140]
movss dword [rbx + rdi*4 + 4], xmm0
lea ecx, [r14 + rbp]
call fcn.1400118d0
mov r8, qword [rsp + 0x88]
mov rdx, qword [rsp + 0xa0]
movss dword [rbx + rdi*4 + 8], xmm0
mov edi, dword [rsp + 0x148]
mov r9, qword [rsp + 0x70]
mov r10, qword [rsp + 0x60]
add r8, r15
lea r11, [0x140000000]
mov qword [rsp + 0x88], r8
cmp r8, r13
jb 0x140018f80
mov rbx, qword [rsp + 0x48]
mov rax, qword [rsp + 0xa8]
add rdx, qword [rsp + 0xb8]
mov edi, dword [rsp + 0x148]
mov r10, qword [rsp + 0x60]
add rax, r15
mov qword [rsp + 0xa0], rdx
mov qword [rsp + 0xa8], rax
lea r11, [0x140000000]
cmp rax, qword [rsp + 0x40]
jb 0x140018f50
mov rbp, qword [rsp + 0x130]
mov rsi, qword [rsp + 0x58]
mov r14, qword [rsp + 0x50]
jmp 0x140019958
test r14d, r14d
jne 0x1400193c2
mov rdx, qword [rbp + 0x28]
mov qword [rsp + 0x138], rdx
test ebx, ebx
jne 0x14001912e
cmp dword [rbp + 0x85b0], ebx
je 0x14001914f
lea rdx, str.....libgfflibjxrlib_strdec.c
lea rcx, str.cfExt__Y_ONLY__pSC__m_param.cfColorFormat__Y_ONLY
mov r8d, 0x903
call fcn.1401ebaa4
mov rdx, qword [rsp + 0x138]
cmp dword [rbp + 0x70], 4
mov rdi, qword [rsp + 0x40]
jge 0x140019289
mov rax, qword [rsp + 0x58]
mov rsi, rax
mov qword [rsp + 0x130], rax
cmp rax, rdi
jae 0x140019930
mov r8, qword [rsp + 0x48]
mov rdi, rax
mov rax, r15
shl rdi, 4
shl rax, 4
mov qword [rsp + 0x140], rax
mov rcx, r12
mov rax, rsi
mov rbx, r8
shr rax, cl
mov rcx, qword [rsp + 0x78]
mov r14, qword [rcx + rax*8]
add r14, rdx
cmp r8, r13
jae 0x14001925c
mov rsi, qword [rsp + 0x80]
nop dword [rax + rax]
mov r9, qword [rbp + 0x80f0]
mov rdx, rbx
mov rcx, r12
shr rdx, cl
lea rcx, [0x140000000]
mov r10d, 7
movzx eax, byte [rsi + rdx*8]
mov r11, qword [rsi + rdx*8]
and al, 7
shr r11, 3
sub r10b, al
add r11, r14
mov rax, rbx
and eax, 0xf
add rax, rdi
movzx edx, byte [rax + rcx + 0x265fb0]
mov rax, rbx
movzx ecx, r10b
and rax, 0xfffffffffffffff0
shl rax, 4
add rdx, rax
mov rax, qword [rsp + 0x98]
cmp dword [rax + rdx*4], 0
movzx eax, byte [r11 + r9]
setg dl
shr al, cl
add rbx, r15
xor dl, byte [rbp + 0x80d4]
add dl, al
and dl, 1
shl dl, cl
xor byte [r11 + r9], dl
cmp rbx, r13
jb 0x1400191c0
mov rsi, qword [rsp + 0x130]
mov rdx, qword [rsp + 0x138]
mov r8, qword [rsp + 0x48]
add rdi, qword [rsp + 0x140]
add rsi, r15
mov qword [rsp + 0x130], rsi
cmp rsi, qword [rsp + 0x40]
jb 0x140019192
mov rsi, qword [rsp + 0x58]
mov r14, qword [rsp + 0x50]
jmp 0x140019953
mov rsi, qword [rsp + 0x58]
mov r14, rsi
mov qword [rsp + 0x140], rsi
cmp rsi, rdi
jae 0x14001993f
mov r8, qword [rsp + 0x48]
mov rax, r15
shl rsi, 4
shl rax, 4
mov qword [rsp + 0x70], rax
nop word [rax + rax]
mov rcx, r12
mov rax, r14
mov r11, r8
shr rax, cl
mov rcx, qword [rsp + 0x78]
mov rbx, qword [rcx + rax*8]
add rbx, rdx
cmp r8, r13
jae 0x140019395
movzx eax, bl
mov edi, 7
and al, 7
sub dil, al
shr rbx, 3
movzx eax, dil
mov r14d, eax
nop dword [rax]
mov r9, qword [rbp + 0x80f0]
mov rax, r11
mov rcx, r12
shr rax, cl
mov rcx, qword [rsp + 0x80]
mov r10, qword [rcx + rax*8]
mov rax, r11
lea rcx, [0x140000000]
and eax, 0xf
add r10, rbx
add rax, rsi
movzx ecx, byte [rax + rcx + 0x265fb0]
mov rax, r11
and rax, 0xfffffffffffffff0
shl rax, 4
add rcx, rax
mov rax, qword [rsp + 0x98]
cmp dword [rax + rcx*4], 0
movzx eax, byte [r10 + r9]
movzx ecx, dil
setg dl
shr al, cl
mov ecx, r14d
xor dl, byte [rbp + 0x80d4]
add r11, r15
add dl, al
and dl, 1
shl dl, cl
xor byte [r10 + r9], dl
cmp r11, r13
jb 0x140019300
mov r14, qword [rsp + 0x140]
mov rdx, qword [rsp + 0x138]
mov r8, qword [rsp + 0x48]
mov rdi, qword [rsp + 0x40]
add rsi, qword [rsp + 0x70]
add r14, r15
mov qword [rsp + 0x140], r14
cmp r14, rdi
jb 0x1400192c0
mov rbx, qword [rsp + 0x48]
mov rsi, qword [rsp + 0x58]
mov r14, qword [rsp + 0x50]
jmp 0x14001995d
cmp r14d, 8
jne 0x140019590
mov rsi, qword [rsp + 0x58]
mov rcx, qword [rsp + 0x50]
mov eax, 0x10
shl eax, cl
mov r14, rsi
mov qword [rsp + 0x138], rsi
cdq
idiv edi
mov dword [rsp + 0x130], eax
cmp rsi, qword [rsp + 0x40]
jae 0x14001992b
mov rdx, qword [rsp + 0x48]
mov rax, r15
shl rsi, 4
shl rax, 4
mov ebx, 0x1f
mov qword [rsp + 0x70], rax
nop word [rax + rax]
mov rcx, r12
mov rax, r14
mov r11, rdx
shr rax, cl
mov rcx, qword [rsp + 0x78]
mov rax, qword [rcx + rax*8]
cmp rdx, r13
jae 0x14001955c
mov r14, rax
nop dword [rax]
nop word [rax + rax]
mov rax, r11
lea rcx, [0x140000000]
and eax, 0xf
add rax, rsi
movzx edx, byte [rax + rcx + 0x265fb0]
mov rcx, qword [rsp + 0x90]
mov rax, r11
and rax, 0xfffffffffffffff0
shl rax, 4
add rdx, rax
mov rax, qword [rsp + 0x98]
mov r8d, dword [r9 + rdx*4]
mov r9d, dword [rax + rdx*4]
mov r10d, dword [r10 + rdx*4]
imul r10d, edi
imul r8d, edi
add r9d, dword [rsp + 0x130]
sar r8d, cl
neg r10d
sar r10d, cl
mov rcx, qword [rsp + 0x50]
imul r9d, edi
sar r9d, cl
mov eax, r10d
lea ecx, [r8 + 1]
sar eax, 1
sar ecx, 1
sub r9d, eax
mov eax, r9d
sub eax, ecx
mov rcx, r12
add r10d, eax
mov rax, r11
shr rax, cl
mov rcx, qword [rsp + 0x80]
add r8d, r10d
mov rcx, qword [rcx + rax*8]
mov rax, qword [rbp + 0x80f0]
add rcx, r14
test r10d, r10d
jns 0x1400194f9
xor r10d, r10d
jmp 0x140019500
cmp r10d, ebx
cmovg r10d, ebx
test r9d, r9d
jns 0x14001950a
xor r9d, r9d
jmp 0x140019511
cmp r9d, ebx
cmovg r9d, ebx
test r8d, r8d
jns 0x14001951b
xor r8d, r8d
jmp 0x140019522
cmp r8d, ebx
cmovg r8d, ebx
shl r8w, 5
add r11, r15
add r8w, r9w
mov r9, qword [rsp + 0x68]
shl r8w, 5
add r8w, r10w
mov r10, qword [rsp + 0x60]
mov word [rax + rcx*2], r8w
cmp r11, r13
jb 0x140019450
mov r14, qword [rsp + 0x138]
mov rdx, qword [rsp + 0x48]
add rsi, qword [rsp + 0x70]
mov r10, qword [rsp + 0x60]
mov r9, qword [rsp + 0x68]
add r14, r15
mov qword [rsp + 0x138], r14
cmp r14, qword [rsp + 0x40]
jb 0x140019420
mov rsi, qword [rsp + 0x58]
mov r14, qword [rsp + 0x50]
jmp 0x140019953
cmp r14d, 0xa
jne 0x140019768
mov r14, qword [rsp + 0x50]
mov eax, 0x20
mov rcx, r14
shl eax, cl
cdq
idiv edi
mov r10d, eax
mov dword [rsp + 0x130], eax
mov rax, qword [rsp + 0x58]
mov rsi, rax
mov qword [rsp + 0x138], rax
cmp rax, qword [rsp + 0x40]
jae 0x140019950
mov rdx, qword [rsp + 0x48]
mov r14, rax
mov rax, r15
shl r14, 4
shl rax, 4
mov ebx, 0x1f
mov qword [rsp + 0x70], rax
nop
mov rcx, r12
mov rax, rsi
mov r11, rdx
shr rax, cl
mov rcx, qword [rsp + 0x78]
mov rax, qword [rcx + rax*8]
cmp rdx, r13
jae 0x140019739
mov rsi, rax
nop dword [rax]
nop word [rax + rax]
mov rax, r11
lea rcx, [0x140000000]
and eax, 0xf
add rax, r14
movzx edx, byte [rax + rcx + 0x265fb0]
mov rcx, qword [rsp + 0x90]
mov rax, r11
and rax, 0xfffffffffffffff0
shl rax, 4
add rdx, rax
mov rax, qword [rsp + 0x60]
mov eax, dword [rax + rdx*4]
mov r8d, dword [r9 + rdx*4]
imul eax, edi
neg eax
imul r8d, edi
sar eax, cl
sar r8d, cl
mov rcx, qword [rsp + 0x98]
mov r9d, dword [rcx + rdx*4]
mov rcx, qword [rsp + 0x50]
lea edx, [r8 + 1]
sar edx, 1
add r9d, r10d
imul r9d, edi
sar r9d, cl
mov ecx, eax
sar ecx, 1
sub r9d, ecx
mov ecx, r9d
sub ecx, edx
add eax, ecx
mov rcx, r12
add r8d, eax
cdq
sub eax, edx
sar eax, 1
mov r10d, eax
mov eax, r8d
cdq
sub eax, edx
mov rdx, r11
shr rdx, cl
mov rcx, qword [rsp + 0x80]
sar eax, 1
mov rcx, qword [rcx + rdx*8]
mov rdx, qword [rbp + 0x80f0]
add rcx, rsi
test r10d, r10d
jns 0x1400196d3
xor r10d, r10d
jmp 0x1400196da
cmp r10d, ebx
cmovg r10d, ebx
test r9d, r9d
jns 0x1400196e4
xor r9d, r9d
jmp 0x1400196f2
cmp r9d, 0x3f
mov r8d, 0x3f
cmovg r9d, r8d
test eax, eax
jns 0x1400196fa
xor eax, eax
jmp 0x1400196ff
cmp eax, ebx
cmovg eax, ebx
shl ax, 6
add r11, r15
add ax, r9w
mov r9, qword [rsp + 0x68]
shl ax, 5
add ax, r10w
mov r10d, dword [rsp + 0x130]
mov word [rdx + rcx*2], ax
cmp r11, r13
jb 0x140019620
mov rsi, qword [rsp + 0x138]
mov rdx, qword [rsp + 0x48]
add r14, qword [rsp + 0x70]
mov r9, qword [rsp + 0x68]
add rsi, r15
mov qword [rsp + 0x138], rsi
cmp rsi, qword [rsp + 0x40]
jb 0x1400195f0
mov rsi, qword [rsp + 0x58]
mov r14, qword [rsp + 0x50]
jmp 0x140019953
cmp r14d, 9
mov r14, qword [rsp + 0x50]
jne 0x14001805a
mov eax, 0x200
mov rcx, r14
shl eax, cl
cdq
idiv edi
mov dword [rsp + 0x130], eax
mov rax, qword [rsp + 0x58]
mov rsi, rax
mov qword [rsp + 0x138], rax
cmp rax, qword [rsp + 0x40]
jae 0x140019950
mov rdx, qword [rsp + 0x48]
mov rbx, rax
mov rax, r15
shl rbx, 4
shl rax, 4
mov qword [rsp + 0x140], rax
mov rcx, r12
mov rax, rsi
mov r11, rdx
shr rax, cl
mov rcx, qword [rsp + 0x78]
mov r14, qword [rcx + rax*8]
cmp rdx, r13
jae 0x1400198f7
mov esi, dword [rsp + 0x130]
nop word [rax + rax]
mov rax, r11
lea rcx, [0x140000000]
and eax, 0xf
add rax, rbx
movzx edx, byte [rax + rcx + 0x265fb0]
mov rcx, qword [rsp + 0x90]
mov rax, r11
and rax, 0xfffffffffffffff0
shl rax, 4
add rdx, rax
mov rax, qword [rsp + 0x98]
mov r8d, dword [r9 + rdx*4]
mov r9d, dword [rax + rdx*4]
mov r10d, dword [r10 + rdx*4]
imul r10d, edi
imul r8d, edi
sar r8d, cl
add r9d, esi
neg r10d
sar r10d, cl
mov rcx, qword [rsp + 0x50]
mov edx, 0x3ff
imul r9d, edi
sar r9d, cl
mov eax, r10d
lea ecx, [r8 + 1]
sar eax, 1
sar ecx, 1
sub r9d, eax
mov eax, r9d
sub eax, ecx
mov rcx, r12
add r10d, eax
mov rax, r11
shr rax, cl
mov rcx, qword [rsp + 0x80]
add r8d, r10d
mov rcx, qword [rcx + rax*8]
mov rax, qword [rbp + 0x80f0]
add rcx, r14
test r10d, r10d
jns 0x140019899
xor r10d, r10d
jmp 0x1400198a0
cmp r10d, edx
cmovg r10d, edx
test r9d, r9d
jns 0x1400198aa
xor r9d, r9d
jmp 0x1400198b1
cmp r9d, edx
cmovg r9d, edx
test r8d, r8d
jns 0x1400198bb
xor r8d, r8d
jmp 0x1400198c2
cmp r8d, edx
cmovg r8d, edx
shl r8d, 0xa
add r11, r15
add r8d, r9d
mov r9, qword [rsp + 0x68]
shl r8d, 0xa
add r8d, r10d
mov r10, qword [rsp + 0x60]
mov dword [rax + rcx*4], r8d
cmp r11, r13
jb 0x1400197f0
mov rsi, qword [rsp + 0x138]
mov rdx, qword [rsp + 0x48]
add rbx, qword [rsp + 0x140]
mov r10, qword [rsp + 0x60]
mov r9, qword [rsp + 0x68]
add rsi, r15
mov qword [rsp + 0x138], rsi
cmp rsi, qword [rsp + 0x40]
jb 0x1400197c1
mov rsi, qword [rsp + 0x58]
mov r14, qword [rsp + 0x50]
jmp 0x140019953
mov r14, rcx
jmp 0x140019953
mov rbx, qword [rsp + 0x48]
mov r14, qword [rsp + 0x50]
mov rsi, rax
jmp 0x14001995d
mov rbx, qword [rsp + 0x48]
mov r14, qword [rsp + 0x50]
jmp 0x14001995d
mov r14, qword [rsp + 0x50]
mov rsi, rax
mov rbx, qword [rsp + 0x48]
mov rdi, qword [rsp + 0x40]
cmp byte [rbp + 0xa8], 0
jbe 0x140019984
mov r8d, dword [rsp + 0x148]
mov r9, r14
mov rdx, r12
mov rcx, rbp
call fcn.140016d20
test eax, eax
jne 0x14001776a
mov rax, qword [rsp + 0xd0]
xor edx, edx
dec rax
add rax, r15
div r15
cmp dword [rbp + 0x18], 7
mov qword [rbp + 0x8110], rax
jne 0x140019b43
cmp dword [rbp + 0x90], 0
jne 0x140019b43
mov eax, dword [rbp + 0x1c]
cmp eax, 1
je 0x140019ad5
jle 0x140019b43
cmp eax, 4
jle 0x140019a55
cmp eax, 7
jg 0x140019b43
cmp rsi, rdi
jae 0x140019b43
mov r9, qword [rsp + 0xc0]
nop word [rax + rax]
mov rcx, r12
mov rax, rsi
mov rdx, rbx
shr rax, cl
mov rcx, qword [rsp + 0x78]
mov r8, qword [rcx + rax*8]
cmp rbx, r13
jae 0x140019a48
mov rdi, qword [rsp + 0xc8]
mov rax, rdx
mov rcx, r12
add rdx, r15
shr rax, cl
mov rcx, qword [rsp + 0x80]
mov rcx, qword [rcx + rax*8]
add rcx, r8
add rcx, qword [rbp + 0x80f0]
mov eax, dword [rcx + rdi*4]
mov dword [rcx + 4], eax
mov dword [rcx + r9*4], eax
cmp rdx, r13
jb 0x140019a12
mov rdi, qword [rsp + 0x40]
add rsi, r15
cmp rsi, rdi
jb 0x1400199f0
jmp 0x140019b43
cmp rsi, rdi
jae 0x140019b43
mov r9, qword [rsp + 0xc0]
nop word [rax + rax]
mov rcx, r12
mov rax, rsi
mov rdx, rbx
shr rax, cl
mov rcx, qword [rsp + 0x78]
mov r8, qword [rcx + rax*8]
cmp rbx, r13
jae 0x140019acb
mov rdi, qword [rsp + 0xc8]
mov rax, rdx
mov rcx, r12
add rdx, r15
shr rax, cl
mov rcx, qword [rsp + 0x80]
mov rcx, qword [rcx + rax*8]
add rcx, r8
add rcx, qword [rbp + 0x80f0]
movzx eax, word [rcx + rdi*2]
mov word [rcx + 2], ax
mov word [rcx + r9*2], ax
cmp rdx, r13
jb 0x140019a92
mov rdi, qword [rsp + 0x40]
add rsi, r15
cmp rsi, rdi
jb 0x140019a70
jmp 0x140019b43
cmp rsi, rdi
jae 0x140019b43
mov r9, qword [rsp + 0xc0]
mov rcx, r12
mov rax, rsi
mov rdx, rbx
shr rax, cl
mov rcx, qword [rsp + 0x78]
mov r8, qword [rcx + rax*8]
cmp rbx, r13
jae 0x140019b3b
mov rdi, qword [rsp + 0xc8]
mov rax, rdx
mov rcx, r12
add rdx, r15
shr rax, cl
mov rcx, qword [rsp + 0x80]
mov rcx, qword [rcx + rax*8]
add rcx, r8
add rcx, qword [rbp + 0x80f0]
movzx eax, byte [rcx + rdi]
mov byte [rcx + 1], al
mov byte [rcx + r9], al
cmp rdx, r13
jb 0x140019b04
mov rdi, qword [rsp + 0x40]
add rsi, r15
cmp rsi, rdi
jb 0x140019ae2
xor eax, eax
mov r13, qword [rsp + 0xe8]
mov rbx, qword [rsp + 0xf0]
add rsp, 0xf8
pop r15
pop r14
pop r12
pop rdi
pop rsi
pop rbp
ret