Function at 0x7a0e50
Capabilities:
Resolve function by parsing pe exports

Disassembly:
mov dword [rsp + 0x18], r8d
mov qword [rsp + 0x10], rdx
mov qword [rsp + 8], rcx
sub rsp, 0x2a8
mov rax, qword [rsp + 0x2b0]
mov rax, qword [rax + 0x1c8]
mov qword [rsp + 0x78], rax
mov rax, qword [rsp + 0x78]
movsx eax, word [rax + 0xe]
mov dword [rsp + 0x9c], eax
mov rax, qword [rsp + 0x78]
movsx eax, word [rax + 0xc]
mov dword [rsp + 0x38], eax
mov dword [rsp + 0x80], 0
mov rax, qword [rsp + 0x78]
mov eax, dword [rax + 0x8e4]
mov dword [rsp + 0x98], eax
mov rax, qword [rsp + 0x2b0]
mov eax, dword [rax + 0xb8]
shr eax, 8
inc eax
mov dword [rsp + 0x184], eax
xor edx, edx
mov rcx, qword [rsp + 0x78]
mov eax, dword [rcx + 0xb8]
mov ecx, dword [rsp + 0x184]
div ecx
mov dword [rsp + 0x6c], eax
mov rax, qword [rsp + 0x78]
mov eax, dword [rax + 0x8f0]
mov dword [rsp + 0x30], eax
mov eax, dword [rsp + 0x38]
and eax, 0x20
test eax, eax
je 0x7a0f0f
mov dword [rsp + 0x188], 0x800000
jmp 0x7a0f1a
mov dword [rsp + 0x188], 0x8000
mov eax, dword [rsp + 0x188]
mov dword [rsp + 0x34], eax
mov dword [rsp + 0x70], 0
mov rax, qword [rsp + 0x78]
movsx eax, word [rax + 0xa]
test eax, eax
je 0x7a0f6c
mov eax, dword [rsp + 0x38]
and eax, 0x80
test eax, eax
jne 0x7a0f6c
mov rax, qword [rsp + 0x78]
movsx eax, word [rax + 8]
cmp eax, 3
jge 0x7a0f62
mov eax, dword [rsp + 0x34]
shl eax, 2
mov dword [rsp + 0x34], eax
jmp 0x7a0f6c
mov eax, dword [rsp + 0x34]
shl eax, 1
mov dword [rsp + 0x34], eax
mov rax, qword [rsp + 0x78]
mov eax, dword [rax + 0xb8]
add eax, dword [rsp + 0x2c0]
mov rcx, qword [rsp + 0x2b0]
cmp eax, dword [rcx + 0xb8]
jbe 0x7a0fb0
mov rax, qword [rsp + 0x2b0]
mov rcx, qword [rsp + 0x78]
mov ecx, dword [rcx + 0xb8]
mov eax, dword [rax + 0xb8]
sub eax, ecx
mov dword [rsp + 0x2c0], eax
cmp dword [rsp + 0x2c0], 0
jne 0x7a0fc1
xor eax, eax
jmp 0x7a5fb8
mov rax, qword [rsp + 0x78]
cmp dword [rax + 0xb8], 0
jne 0x7a1048
mov rcx, qword [rsp + 0x78]
call fcn.007a0c10
mov rax, qword [rsp + 0x78]
add rax, 0x28
mov rcx, qword [rsp + 0x2b0]
mov r8, qword [rcx + 0x98]
mov rcx, qword [rsp + 0x2b0]
mov rdx, qword [rcx + 0x90]
mov rcx, rax
call fcn.007a5fd0
mov rax, qword [rsp + 0x2b0]
cmp dword [rax + 0xc4], 0
je 0x7a1048
mov rax, qword [rsp + 0x78]
add rax, 0x70
mov rcx, qword [rsp + 0x2b0]
mov r8, qword [rcx + 0xa0]
mov rcx, qword [rsp + 0x2b0]
mov rdx, qword [rcx + 0x90]
mov rcx, rax
call fcn.007a5fd0
movsxd rax, dword [rsp + 0x6c]
mov rcx, qword [rsp + 0x78]
movsx eax, byte [rcx + rax*8 + 0xc0]
test eax, eax
jne 0x7a1111
mov rax, qword [rsp + 0x78]
cmp qword [rax + 0x8c0], 0
jne 0x7a10b6
mov rcx, qword [rsp + 0x78]
call fcn.007a6250
mov dword [rsp + 0x18c], eax
mov rax, qword [rsp + 0x78]
mov ecx, dword [rsp + 0x18c]
mov dword [rax + 0x8c8], ecx
mov eax, dword [rsp + 0x18c]
imul eax, eax, 0x100
mov eax, eax
mov ecx, eax
call fcn.00778580
mov rcx, qword [rsp + 0x78]
mov qword [rcx + 0x8c0], rax
movsxd rax, dword [rsp + 0x6c]
mov rcx, qword [rsp + 0x78]
mov rdx, qword [rsp + 0x78]
mov edx, dword [rdx + 0xb8]
mov dword [rcx + rax*8 + 0xc4], edx
mov rax, qword [rsp + 0x78]
mov ecx, dword [rsp + 0x6c]
imul ecx, dword [rax + 0x8c8]
mov eax, ecx
mov eax, eax
mov rcx, qword [rsp + 0x78]
add rax, qword [rcx + 0x8c0]
mov rdx, rax
mov rcx, qword [rsp + 0x78]
call fcn.007a6430
movsxd rax, dword [rsp + 0x6c]
mov rcx, qword [rsp + 0x78]
mov byte [rcx + rax*8 + 0xc0], 1
mov rax, qword [rsp + 0x78]
add rax, 0x8f4
mov r8d, 0x10
mov rdx, rax
lea rcx, [rsp + 0x20]
call fcn.007783e0
mov rax, qword [rsp + 0x78]
add rax, 0x904
mov r8d, 8
mov rdx, rax
lea rcx, [rsp + 0x50]
call fcn.007783e0
mov rax, qword [rsp + 0x78]
movsx eax, word [rax + 0xa]
test eax, eax
je 0x7a1174
mov eax, dword [rsp + 0x38]
and eax, 0xa000
test eax, eax
je 0x7a1172
mov dword [rsp + 0x80], 0xffffff00
jmp 0x7a11b4
mov eax, dword [rsp + 0x38]
and eax, 0x2000
test eax, eax
je 0x7a11b4
mov eax, dword [rsp + 0x38]
and eax, 0x8000
test eax, eax
je 0x7a119b
mov dword [rsp + 0x190], 0xfffffe00
jmp 0x7a11a6
mov dword [rsp + 0x190], 0xffffff00
mov eax, dword [rsp + 0x190]
mov dword [rsp + 0x80], eax
mov eax, dword [rsp + 0x38]
and eax, 0x20
test eax, eax
je 0x7a122f
mov eax, dword [rsp + 0x9c]
mov ecx, 0xff800000
mov dword [rsp + 0x194], ecx
movzx ecx, al
mov eax, dword [rsp + 0x194]
sar eax, cl
mov dword [rsp + 0x48], eax
mov eax, dword [rsp + 0x9c]
movzx ecx, al
mov eax, dword [rsp + 0x48]
shl eax, cl
mov dword [rsp + 0x5c], eax
mov eax, dword [rsp + 0x9c]
mov ecx, 0x7fffff
mov dword [rsp + 0x198], ecx
movzx ecx, al
mov eax, dword [rsp + 0x198]
sar eax, cl
mov dword [rsp + 0x58], eax
mov eax, dword [rsp + 0x9c]
movzx ecx, al
mov eax, dword [rsp + 0x58]
shl eax, cl
mov dword [rsp + 0x68], eax
jmp 0x7a129d
mov eax, dword [rsp + 0x9c]
mov ecx, 0xffff8000
mov dword [rsp + 0x19c], ecx
movzx ecx, al
mov eax, dword [rsp + 0x19c]
sar eax, cl
mov dword [rsp + 0x48], eax
mov eax, dword [rsp + 0x9c]
movzx ecx, al
mov eax, dword [rsp + 0x48]
shl eax, cl
mov dword [rsp + 0x5c], eax
mov eax, dword [rsp + 0x9c]
mov ecx, 0x7fff
mov dword [rsp + 0x1a0], ecx
movzx ecx, al
mov eax, dword [rsp + 0x1a0]
sar eax, cl
mov dword [rsp + 0x58], eax
mov eax, dword [rsp + 0x9c]
movzx ecx, al
mov eax, dword [rsp + 0x58]
shl eax, cl
mov dword [rsp + 0x68], eax
mov rax, qword [rsp + 0x78]
movsx eax, word [rax + 8]
cmp eax, 3
jne 0x7a20a2
mov rax, qword [rsp + 0x78]
movsx eax, word [rax + 0xa]
test eax, eax
jne 0x7a20a2
mov eax, dword [rsp + 0x38]
and eax, 1
test eax, eax
je 0x7a20a2
mov eax, dword [rsp + 0x38]
and eax, 2
test eax, eax
je 0x7a158e
mov eax, dword [rsp + 0x38]
and eax, 0x40
test eax, eax
je 0x7a14da
mov rax, qword [rsp + 0x2b8]
mov qword [rsp + 0x88], rax
mov dword [rsp + 0x3c], 0
jmp 0x7a1311
mov eax, dword [rsp + 0x3c]
inc eax
mov dword [rsp + 0x3c], eax
mov eax, dword [rsp + 0x2c0]
cmp dword [rsp + 0x3c], eax
jae 0x7a14d5
xor edx, edx
mov rcx, qword [rsp + 0x78]
call fcn.007a8ca0
mov dword [rsp + 0x60], eax
cmp dword [rsp + 0x60], 0x80000000
jne 0x7a1341
jmp 0x7a14d5
mov eax, dword [rsp + 0x60]
mov ecx, dword [rsp + 0x24]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0x24], eax
mov eax, dword [rsp + 0x24]
mov ecx, dword [rsp + 0x20]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0x20], eax
mov rax, qword [rsp + 0x78]
cmp dword [rax + 0x64], 4
jge 0x7a1400
mov rax, qword [rsp + 0x78]
mov rax, qword [rax + 0x40]
inc rax
mov qword [rsp + 0x1a8], rax
mov rax, qword [rsp + 0x78]
mov rcx, qword [rsp + 0x1a8]
mov qword [rax + 0x40], rcx
mov rax, qword [rsp + 0x78]
mov rax, qword [rax + 0x38]
cmp qword [rsp + 0x1a8], rax
jne 0x7a13bc
mov rax, qword [rsp + 0x78]
add rax, 0x28
mov rcx, rax
mov rax, qword [rsp + 0x78]
call qword [rax + 0x28]
mov rax, qword [rsp + 0x78]
mov rax, qword [rax + 0x40]
movzx eax, byte [rax]
mov rcx, qword [rsp + 0x78]
mov ecx, dword [rcx + 0x64]
shl eax, cl
mov rcx, qword [rsp + 0x78]
mov ecx, dword [rcx + 0x50]
or ecx, eax
mov eax, ecx
mov rcx, qword [rsp + 0x78]
mov dword [rcx + 0x50], eax
mov rax, qword [rsp + 0x78]
movsxd rax, dword [rax + 0x64]
add rax, 8
mov rcx, qword [rsp + 0x78]
mov dword [rcx + 0x64], eax
jmp 0x7a1361
mov rax, qword [rsp + 0x78]
mov eax, dword [rax + 0x50]
mov dword [rsp + 0xa0], eax
mov rax, qword [rsp + 0x78]
cmp dword [rax + 0x64], 0x20
jle 0x7a1459
mov rax, qword [rsp + 0x78]
mov eax, dword [rax + 0x64]
sub eax, 4
mov rcx, qword [rsp + 0x78]
mov dword [rcx + 0x64], eax
mov rax, qword [rsp + 0x78]
mov rax, qword [rax + 0x40]
movzx eax, byte [rax]
mov rcx, qword [rsp + 0x78]
movsxd rcx, dword [rcx + 0x64]
mov edx, 8
sub rdx, rcx
mov rcx, rdx
sar eax, cl
mov rcx, qword [rsp + 0x78]
mov dword [rcx + 0x50], eax
jmp 0x7a147f
mov rax, qword [rsp + 0x78]
mov eax, dword [rax + 0x64]
sub eax, 4
mov rcx, qword [rsp + 0x78]
mov dword [rcx + 0x64], eax
mov rax, qword [rsp + 0x78]
mov eax, dword [rax + 0x50]
shr eax, 4
mov rcx, qword [rsp + 0x78]
mov dword [rcx + 0x50], eax
mov eax, dword [rsp + 0xa0]
and eax, 0xf
mov ecx, dword [rsp + 0x20]
shl ecx, 4
add eax, ecx
mov dword [rsp + 0xa0], eax
mov eax, dword [rsp + 0x30]
imul eax, eax, 3
add eax, dword [rsp + 0xa0]
mov dword [rsp + 0x30], eax
mov rax, qword [rsp + 0x88]
mov ecx, dword [rsp + 0xa0]
mov dword [rax], ecx
mov rax, qword [rsp + 0x88]
add rax, 4
mov qword [rsp + 0x88], rax
jmp 0x7a1307
jmp 0x7a1589
mov rax, qword [rsp + 0x2b8]
mov qword [rsp + 0x88], rax
mov dword [rsp + 0x3c], 0
jmp 0x7a14fe
mov eax, dword [rsp + 0x3c]
inc eax
mov dword [rsp + 0x3c], eax
mov eax, dword [rsp + 0x2c0]
cmp dword [rsp + 0x3c], eax
jae 0x7a1589
xor edx, edx
mov rcx, qword [rsp + 0x78]
call fcn.007a8ca0
mov dword [rsp + 0x60], eax
cmp dword [rsp + 0x60], 0x80000000
jne 0x7a1527
jmp 0x7a1589
mov eax, dword [rsp + 0x60]
mov ecx, dword [rsp + 0x24]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0x24], eax
mov eax, dword [rsp + 0x24]
mov ecx, dword [rsp + 0x20]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0x20], eax
mov eax, dword [rsp + 0x30]
imul eax, eax, 3
add eax, dword [rsp + 0x20]
mov dword [rsp + 0x30], eax
mov eax, dword [rsp + 0x9c]
movzx ecx, al
mov eax, dword [rsp + 0x20]
shl eax, cl
mov rcx, qword [rsp + 0x88]
mov dword [rcx], eax
mov rax, qword [rsp + 0x88]
add rax, 4
mov qword [rsp + 0x88], rax
jmp 0x7a14f4
jmp 0x7a209d
mov eax, dword [rsp + 0x38]
and eax, 0x10
test eax, eax
je 0x7a1c2f
mov rax, qword [rsp + 0x2b8]
mov qword [rsp + 0x88], rax
mov dword [rsp + 0x3c], 0
jmp 0x7a15c1
mov eax, dword [rsp + 0x3c]
inc eax
mov dword [rsp + 0x3c], eax
mov eax, dword [rsp + 0x2c0]
cmp dword [rsp + 0x3c], eax
jae 0x7a1c2a
mov eax, dword [rsp + 0x38]
and eax, 0x400
test eax, eax
je 0x7a1600
xor edx, edx
mov rcx, qword [rsp + 0x78]
call fcn.007a6a90
mov dword [rsp + 0x60], eax
cmp dword [rsp + 0x60], 0x80000000
jne 0x7a15fe
jmp 0x7a1c2a
jmp 0x7a161f
xor edx, edx
mov rcx, qword [rsp + 0x78]
call fcn.007a7cb0
mov dword [rsp + 0x60], eax
cmp dword [rsp + 0x60], 0x80000000
jne 0x7a161f
jmp 0x7a1c2a
mov eax, dword [rsp + 0x38]
and eax, 0x8000
test eax, eax
je 0x7a1782
mov rax, qword [rsp + 0x78]
mov eax, dword [rax + 0xbc]
mov dword [rsp + 0x64], eax
mov rax, qword [rsp + 0x78]
add rax, 0x90c
mov qword [rsp + 0x40], rax
jmp 0x7a165f
mov rax, qword [rsp + 0x40]
add rax, 0x60
mov qword [rsp + 0x40], rax
mov eax, dword [rsp + 0x64]
mov ecx, dword [rsp + 0x64]
dec ecx
mov dword [rsp + 0x64], ecx
test eax, eax
je 0x7a177d
movsxd rax, dword [rsp + 0x98]
mov rcx, qword [rsp + 0x40]
mov eax, dword [rcx + rax*4 + 0x10]
mov dword [rsp + 0xa8], eax
mov rax, qword [rsp + 0x40]
mov eax, dword [rax + 8]
imul eax, dword [rsp + 0xa8]
add eax, 0x100
sar eax, 9
add eax, dword [rsp + 0x60]
mov dword [rsp + 0xa4], eax
cmp dword [rsp + 0xa8], 0
je 0x7a1749
cmp dword [rsp + 0x60], 0
je 0x7a1749
mov eax, dword [rsp + 0x60]
mov ecx, dword [rsp + 0xa8]
xor ecx, eax
mov eax, ecx
test eax, eax
jl 0x7a1711
mov rax, qword [rsp + 0x40]
mov eax, dword [rax + 8]
mov rcx, qword [rsp + 0x40]
mov ecx, dword [rcx + 8]
inc ecx
mov rdx, qword [rsp + 0x40]
mov dword [rdx + 8], ecx
cmp eax, 0x200
jne 0x7a170f
mov rax, qword [rsp + 0x40]
mov eax, dword [rax + 8]
dec eax
mov rcx, qword [rsp + 0x40]
mov dword [rcx + 8], eax
jmp 0x7a1749
mov rax, qword [rsp + 0x40]
mov eax, dword [rax + 8]
mov ecx, dword [rsp + 0x80]
mov rdx, qword [rsp + 0x40]
mov edx, dword [rdx + 8]
dec edx
mov r8, qword [rsp + 0x40]
mov dword [r8 + 8], edx
cmp eax, ecx
jne 0x7a1749
mov rax, qword [rsp + 0x40]
mov eax, dword [rax + 8]
inc eax
mov rcx, qword [rsp + 0x40]
mov dword [rcx + 8], eax
mov eax, dword [rsp + 0xa4]
mov dword [rsp + 0x60], eax
mov rax, qword [rsp + 0x40]
mov eax, dword [rax]
mov ecx, dword [rsp + 0x98]
add ecx, eax
mov eax, ecx
and eax, 7
cdqe
mov rcx, qword [rsp + 0x40]
mov edx, dword [rsp + 0x60]
mov dword [rcx + rax*4 + 0x10], edx
jmp 0x7a1651
jmp 0x7a18cf
mov rax, qword [rsp + 0x78]
mov eax, dword [rax + 0xbc]
mov dword [rsp + 0x64], eax
mov rax, qword [rsp + 0x78]
add rax, 0x90c
mov qword [rsp + 0x40], rax
jmp 0x7a17b1
mov rax, qword [rsp + 0x40]
add rax, 0x60
mov qword [rsp + 0x40], rax
mov eax, dword [rsp + 0x64]
mov ecx, dword [rsp + 0x64]
dec ecx
mov dword [rsp + 0x64], ecx
test eax, eax
je 0x7a18cf
movsxd rax, dword [rsp + 0x98]
mov rcx, qword [rsp + 0x40]
mov eax, dword [rcx + rax*4 + 0x10]
mov dword [rsp + 0xac], eax
mov rax, qword [rsp + 0x40]
mov eax, dword [rax + 8]
imul eax, dword [rsp + 0xac]
add eax, 0x80
sar eax, 8
add eax, dword [rsp + 0x60]
mov dword [rsp + 0xa4], eax
cmp dword [rsp + 0xac], 0
je 0x7a189b
cmp dword [rsp + 0x60], 0
je 0x7a189b
mov eax, dword [rsp + 0x60]
mov ecx, dword [rsp + 0xac]
xor ecx, eax
mov eax, ecx
test eax, eax
jl 0x7a1863
mov rax, qword [rsp + 0x40]
mov eax, dword [rax + 8]
mov rcx, qword [rsp + 0x40]
mov ecx, dword [rcx + 8]
inc ecx
mov rdx, qword [rsp + 0x40]
mov dword [rdx + 8], ecx
cmp eax, 0x100
jne 0x7a1861
mov rax, qword [rsp + 0x40]
mov eax, dword [rax + 8]
dec eax
mov rcx, qword [rsp + 0x40]
mov dword [rcx + 8], eax
jmp 0x7a189b
mov rax, qword [rsp + 0x40]
mov eax, dword [rax + 8]
mov ecx, dword [rsp + 0x80]
mov rdx, qword [rsp + 0x40]
mov edx, dword [rdx + 8]
dec edx
mov r8, qword [rsp + 0x40]
mov dword [r8 + 8], edx
cmp eax, ecx
jne 0x7a189b
mov rax, qword [rsp + 0x40]
mov eax, dword [rax + 8]
inc eax
mov rcx, qword [rsp + 0x40]
mov dword [rcx + 8], eax
mov eax, dword [rsp + 0xa4]
mov dword [rsp + 0x60], eax
mov rax, qword [rsp + 0x40]
mov eax, dword [rax]
mov ecx, dword [rsp + 0x98]
add ecx, eax
mov eax, ecx
and eax, 7
cdqe
mov rcx, qword [rsp + 0x40]
mov edx, dword [rsp + 0x60]
mov dword [rcx + rax*4 + 0x10], edx
jmp 0x7a17a3
mov eax, dword [rsp + 0x98]
inc eax
and eax, 7
mov dword [rsp + 0x98], eax
mov eax, dword [rsp + 0x38]
and eax, 0x40
test eax, eax
je 0x7a1be8
mov rax, qword [rsp + 0x78]
cmp dword [rax + 0x8e0], 8
jl 0x7a1a18
mov rax, qword [rsp + 0x78]
cmp dword [rax + 0x64], 0
je 0x7a1937
mov rax, qword [rsp + 0x78]
mov eax, dword [rax + 0x64]
dec eax
mov rcx, qword [rsp + 0x78]
mov dword [rcx + 0x64], eax
mov rax, qword [rsp + 0x78]
mov eax, dword [rax + 0x50]
and eax, 1
mov dword [rsp + 0x1b0], eax
jmp 0x7a19c4
mov rax, qword [rsp + 0x78]
mov rax, qword [rax + 0x40]
inc rax
mov qword [rsp + 0x1b8], rax
mov rax, qword [rsp + 0x78]
mov rcx, qword [rsp + 0x1b8]
mov qword [rax + 0x40], rcx
mov rax, qword [rsp + 0x78]
mov rax, qword [rax + 0x38]
cmp qword [rsp + 0x1b8], rax
je 0x7a1971
jmp 0x7a1985
mov rax, qword [rsp + 0x78]
add rax, 0x28
mov rcx, rax
mov rax, qword [rsp + 0x78]
call qword [rax + 0x28]
mov rax, qword [rsp + 0x78]
mov dword [rax + 0x64], 7
mov rax, qword [rsp + 0x78]
mov rax, qword [rax + 0x40]
movzx eax, byte [rax]
mov dword [rsp + 0x1c0], eax
mov rax, qword [rsp + 0x78]
mov ecx, dword [rsp + 0x1c0]
mov dword [rax + 0x50], ecx
mov eax, dword [rsp + 0x1c0]
and eax, 1
mov dword [rsp + 0x1b0], eax
cmp dword [rsp + 0x1b0], 0
je 0x7a19ed
mov rax, qword [rsp + 0x78]
mov eax, dword [rax + 0x50]
shr eax, 1
mov rcx, qword [rsp + 0x78]
mov dword [rcx + 0x50], eax
mov dword [rsp + 0x1c4], 1
jmp 0x7a1a0a
mov rax, qword [rsp + 0x78]
mov eax, dword [rax + 0x50]
shr eax, 1
mov rcx, qword [rsp + 0x78]
mov dword [rcx + 0x50], eax
mov dword [rsp + 0x1c4], 0
cmp dword [rsp + 0x1c4], 0
jne 0x7a1b96
mov rax, qword [rsp + 0x78]
cmp dword [rax + 0x64], 4
jge 0x7a1ab7
mov rax, qword [rsp + 0x78]
mov rax, qword [rax + 0x40]
inc rax
mov qword [rsp + 0x1c8], rax
mov rax, qword [rsp + 0x78]
mov rcx, qword [rsp + 0x1c8]
mov qword [rax + 0x40], rcx
mov rax, qword [rsp + 0x78]
mov rax, qword [rax + 0x38]
cmp qword [rsp + 0x1c8], rax
jne 0x7a1a73
mov rax, qword [rsp + 0x78]
add rax, 0x28
mov rcx, rax
mov rax, qword [rsp + 0x78]
call qword [rax + 0x28]
mov rax, qword [rsp + 0x78]
mov rax, qword [rax + 0x40]
movzx eax, byte [rax]
mov rcx, qword [rsp + 0x78]
mov ecx, dword [rcx + 0x64]
shl eax, cl
mov rcx, qword [rsp + 0x78]
mov ecx, dword [rcx + 0x50]
or ecx, eax
mov eax, ecx
mov rcx, qword [rsp + 0x78]
mov dword [rcx + 0x50], eax
mov rax, qword [rsp + 0x78]
movsxd rax, dword [rax + 0x64]
add rax, 8
mov rcx, qword [rsp + 0x78]
mov dword [rcx + 0x64], eax
jmp 0x7a1a18
mov rax, qword [rsp + 0x78]
mov eax, dword [rax + 0x50]
mov dword [rsp + 0xa4], eax
mov rax, qword [rsp + 0x78]
cmp dword [rax + 0x64], 0x20
jle 0x7a1b10
mov rax, qword [rsp + 0x78]
mov eax, dword [rax + 0x64]
sub eax, 4
mov rcx, qword [rsp + 0x78]
mov dword [rcx + 0x64], eax
mov rax, qword [rsp + 0x78]
mov rax, qword [rax + 0x40]
movzx eax, byte [rax]
mov rcx, qword [rsp + 0x78]
movsxd rcx, dword [rcx + 0x64]
mov edx, 8
sub rdx, rcx
mov rcx, rdx
sar eax, cl
mov rcx, qword [rsp + 0x78]
mov dword [rcx + 0x50], eax
jmp 0x7a1b36
mov rax, qword [rsp + 0x78]
mov eax, dword [rax + 0x64]
sub eax, 4
mov rcx, qword [rsp + 0x78]
mov dword [rcx + 0x64], eax
mov rax, qword [rsp + 0x78]
mov eax, dword [rax + 0x50]
shr eax, 4
mov rcx, qword [rsp + 0x78]
mov dword [rcx + 0x50], eax
mov eax, dword [rsp + 0xa4]
and eax, 0xf
mov dword [rsp + 0xa4], eax
mov rax, qword [rsp + 0x78]
mov eax, dword [rax + 0x8dc]
cmp dword [rsp + 0xa4], eax
je 0x7a1b7e
mov rax, qword [rsp + 0x78]
mov ecx, dword [rsp + 0xa4]
mov dword [rax + 0x8dc], ecx
mov rax, qword [rsp + 0x78]
mov dword [rax + 0x8e0], 0
jmp 0x7a1b96
mov rax, qword [rsp + 0x78]
mov eax, dword [rax + 0x8e0]
inc eax
mov rcx, qword [rsp + 0x78]
mov dword [rcx + 0x8e0], eax
mov eax, dword [rsp + 0x60]
shl eax, 4
mov rcx, qword [rsp + 0x78]
add eax, dword [rcx + 0x8dc]
mov dword [rsp + 0xa4], eax
mov eax, dword [rsp + 0x30]
imul eax, eax, 3
add eax, dword [rsp + 0xa4]
mov dword [rsp + 0x30], eax
mov rax, qword [rsp + 0x88]
mov ecx, dword [rsp + 0xa4]
mov dword [rax], ecx
mov rax, qword [rsp + 0x88]
add rax, 4
mov qword [rsp + 0x88], rax
jmp 0x7a1c25
mov eax, dword [rsp + 0x30]
imul eax, eax, 3
add eax, dword [rsp + 0x60]
mov dword [rsp + 0x30], eax
mov eax, dword [rsp + 0x9c]
movzx ecx, al
mov eax, dword [rsp + 0x60]
shl eax, cl
mov rcx, qword [rsp + 0x88]
mov dword [rcx], eax
mov rax, qword [rsp + 0x88]
add rax, 4
mov qword [rsp + 0x88], rax
jmp 0x7a15b7
jmp 0x7a209d
mov rax, qword [rsp + 0x2b8]
mov qword [rsp + 0x88], rax
mov dword [rsp + 0x3c], 0
jmp 0x7a1c53
mov eax, dword [rsp + 0x3c]
inc eax
mov dword [rsp + 0x3c], eax
mov eax, dword [rsp + 0x2c0]
cmp dword [rsp + 0x3c], eax
jae 0x7a209d
xor edx, edx
mov rcx, qword [rsp + 0x78]
call fcn.007a8ca0
mov dword [rsp + 0x60], eax
cmp dword [rsp + 0x60], 0x80000000
jne 0x7a1c83
jmp 0x7a209d
mov eax, dword [rsp + 0x24]
imul eax, dword [rsp + 0x50]
add eax, 0x80
sar eax, 8
mov ecx, dword [rsp + 0x20]
add ecx, eax
mov eax, ecx
add eax, dword [rsp + 0x60]
mov dword [rsp + 0xb0], eax
cmp dword [rsp + 0x24], 0
jl 0x7a1cbb
mov dword [rsp + 0x1d0], 1
jmp 0x7a1cc6
mov dword [rsp + 0x1d0], 0
cmp dword [rsp + 0x60], 0
jle 0x7a1cda
mov dword [rsp + 0x1d4], 1
jmp 0x7a1ce5
mov dword [rsp + 0x1d4], 0
mov eax, dword [rsp + 0x1d4]
cmp dword [rsp + 0x1d0], eax
jne 0x7a1d16
mov eax, dword [rsp + 0x50]
mov ecx, dword [rsp + 0x50]
inc ecx
mov dword [rsp + 0x50], ecx
cmp eax, 0x100
jne 0x7a1d14
mov eax, dword [rsp + 0x50]
dec eax
mov dword [rsp + 0x50], eax
jmp 0x7a1d32
mov eax, dword [rsp + 0x50]
mov ecx, dword [rsp + 0x50]
dec ecx
mov dword [rsp + 0x50], ecx
test eax, eax
jne 0x7a1d32
mov eax, dword [rsp + 0x50]
inc eax
mov dword [rsp + 0x50], eax
mov eax, dword [rsp + 0x20]
mov ecx, dword [rsp + 0xb0]
sub ecx, eax
mov eax, ecx
mov dword [rsp + 0x24], eax
mov eax, dword [rsp + 0x24]
mov ecx, dword [rsp + 0x20]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0x20], eax
mov eax, dword [rsp + 0x38]
and eax, 0x40
test eax, eax
je 0x7a205b
mov rax, qword [rsp + 0x78]
cmp dword [rax + 0x8e0], 8
jl 0x7a1e8b
mov rax, qword [rsp + 0x78]
cmp dword [rax + 0x64], 0
je 0x7a1daa
mov rax, qword [rsp + 0x78]
mov eax, dword [rax + 0x64]
dec eax
mov rcx, qword [rsp + 0x78]
mov dword [rcx + 0x64], eax
mov rax, qword [rsp + 0x78]
mov eax, dword [rax + 0x50]
and eax, 1
mov dword [rsp + 0x1d8], eax
jmp 0x7a1e37
mov rax, qword [rsp + 0x78]
mov rax, qword [rax + 0x40]
inc rax
mov qword [rsp + 0x1e0], rax
mov rax, qword [rsp + 0x78]
mov rcx, qword [rsp + 0x1e0]
mov qword [rax + 0x40], rcx
mov rax, qword [rsp + 0x78]
mov rax, qword [rax + 0x38]
cmp qword [rsp + 0x1e0], rax
je 0x7a1de4
jmp 0x7a1df8
mov rax, qword [rsp + 0x78]
add rax, 0x28
mov rcx, rax
mov rax, qword [rsp + 0x78]
call qword [rax + 0x28]
mov rax, qword [rsp + 0x78]
mov dword [rax + 0x64], 7
mov rax, qword [rsp + 0x78]
mov rax, qword [rax + 0x40]
movzx eax, byte [rax]
mov dword [rsp + 0x1e8], eax
mov rax, qword [rsp + 0x78]
mov ecx, dword [rsp + 0x1e8]
mov dword [rax + 0x50], ecx
mov eax, dword [rsp + 0x1e8]
and eax, 1
mov dword [rsp + 0x1d8], eax
cmp dword [rsp + 0x1d8], 0
je 0x7a1e60
mov rax, qword [rsp + 0x78]
mov eax, dword [rax + 0x50]
shr eax, 1
mov rcx, qword [rsp + 0x78]
mov dword [rcx + 0x50], eax
mov dword [rsp + 0x1ec], 1
jmp 0x7a1e7d
mov rax, qword [rsp + 0x78]
mov eax, dword [rax + 0x50]
shr eax, 1
mov rcx, qword [rsp + 0x78]
mov dword [rcx + 0x50], eax
mov dword [rsp + 0x1ec], 0
cmp dword [rsp + 0x1ec], 0
jne 0x7a2009
mov rax, qword [rsp + 0x78]
cmp dword [rax + 0x64], 4
jge 0x7a1f2a
mov rax, qword [rsp + 0x78]
mov rax, qword [rax + 0x40]
inc rax
mov qword [rsp + 0x1f0], rax
mov rax, qword [rsp + 0x78]
mov rcx, qword [rsp + 0x1f0]
mov qword [rax + 0x40], rcx
mov rax, qword [rsp + 0x78]
mov rax, qword [rax + 0x38]
cmp qword [rsp + 0x1f0], rax
jne 0x7a1ee6
mov rax, qword [rsp + 0x78]
add rax, 0x28
mov rcx, rax
mov rax, qword [rsp + 0x78]
call qword [rax + 0x28]
mov rax, qword [rsp + 0x78]
mov rax, qword [rax + 0x40]
movzx eax, byte [rax]
mov rcx, qword [rsp + 0x78]
mov ecx, dword [rcx + 0x64]
shl eax, cl
mov rcx, qword [rsp + 0x78]
mov ecx, dword [rcx + 0x50]
or ecx, eax
mov eax, ecx
mov rcx, qword [rsp + 0x78]
mov dword [rcx + 0x50], eax
mov rax, qword [rsp + 0x78]
movsxd rax, dword [rax + 0x64]
add rax, 8
mov rcx, qword [rsp + 0x78]
mov dword [rcx + 0x64], eax
jmp 0x7a1e8b
mov rax, qword [rsp + 0x78]
mov eax, dword [rax + 0x50]
mov dword [rsp + 0xb0], eax
mov rax, qword [rsp + 0x78]
cmp dword [rax + 0x64], 0x20
jle 0x7a1f83
mov rax, qword [rsp + 0x78]
mov eax, dword [rax + 0x64]
sub eax, 4
mov rcx, qword [rsp + 0x78]
mov dword [rcx + 0x64], eax
mov rax, qword [rsp + 0x78]
mov rax, qword [rax + 0x40]
movzx eax, byte [rax]
mov rcx, qword [rsp + 0x78]
movsxd rcx, dword [rcx + 0x64]
mov edx, 8
sub rdx, rcx
mov rcx, rdx
sar eax, cl
mov rcx, qword [rsp + 0x78]
mov dword [rcx + 0x50], eax
jmp 0x7a1fa9
mov rax, qword [rsp + 0x78]
mov eax, dword [rax + 0x64]
sub eax, 4
mov rcx, qword [rsp + 0x78]
mov dword [rcx + 0x64], eax
mov rax, qword [rsp + 0x78]
mov eax, dword [rax + 0x50]
shr eax, 4
mov rcx, qword [rsp + 0x78]
mov dword [rcx + 0x50], eax
mov eax, dword [rsp + 0xb0]
and eax, 0xf
mov dword [rsp + 0xb0], eax
mov rax, qword [rsp + 0x78]
mov eax, dword [rax + 0x8dc]
cmp dword [rsp + 0xb0], eax
je 0x7a1ff1
mov rax, qword [rsp + 0x78]
mov ecx, dword [rsp + 0xb0]
mov dword [rax + 0x8dc], ecx
mov rax, qword [rsp + 0x78]
mov dword [rax + 0x8e0], 0
jmp 0x7a2009
mov rax, qword [rsp + 0x78]
mov eax, dword [rax + 0x8e0]
inc eax
mov rcx, qword [rsp + 0x78]
mov dword [rcx + 0x8e0], eax
mov eax, dword [rsp + 0x20]
shl eax, 4
mov rcx, qword [rsp + 0x78]
add eax, dword [rcx + 0x8dc]
mov dword [rsp + 0xb0], eax
mov rax, qword [rsp + 0x88]
mov ecx, dword [rsp + 0xb0]
mov dword [rax], ecx
mov eax, dword [rsp + 0x30]
imul eax, eax, 3
add eax, dword [rsp + 0xb0]
mov dword [rsp + 0x30], eax
mov rax, qword [rsp + 0x88]
add rax, 4
mov qword [rsp + 0x88], rax
jmp 0x7a2098
mov eax, dword [rsp + 0x30]
imul eax, eax, 3
add eax, dword [rsp + 0x20]
mov dword [rsp + 0x30], eax
mov eax, dword [rsp + 0x9c]
movzx ecx, al
mov eax, dword [rsp + 0x20]
shl eax, cl
mov rcx, qword [rsp + 0x88]
mov dword [rcx], eax
mov rax, qword [rsp + 0x88]
add rax, 4
mov qword [rsp + 0x88], rax
jmp 0x7a1c49
jmp 0x7a5aba
mov rax, qword [rsp + 0x78]
movsx eax, word [rax + 8]
cmp eax, 3
jne 0x7a43a2
mov rax, qword [rsp + 0x78]
movsx eax, word [rax + 0xa]
test eax, eax
jne 0x7a43a2
mov eax, dword [rsp + 0x38]
and eax, 1
test eax, eax
jne 0x7a43a2
mov rax, qword [rsp + 0x78]
mov eax, dword [rax + 0x8d0]
mov dword [rsp + 0xbc], eax
mov rax, qword [rsp + 0x78]
mov eax, dword [rax + 0x8d4]
mov dword [rsp + 0xb8], eax
mov rax, qword [rsp + 0x78]
mov eax, dword [rax + 0x8cc]
mov dword [rsp + 0xb4], eax
mov rax, qword [rsp + 0x78]
mov eax, dword [rax + 0x8d8]
mov dword [rsp + 0xc0], eax
mov eax, dword [rsp + 0x38]
and eax, 2
test eax, eax
je 0x7a253f
mov eax, dword [rsp + 0x38]
and eax, 0x40
test eax, eax
je 0x7a23d6
mov rax, qword [rsp + 0x2b8]
mov qword [rsp + 0x88], rax
mov dword [rsp + 0x3c], 0
jmp 0x7a215e
mov eax, dword [rsp + 0x3c]
inc eax
mov dword [rsp + 0x3c], eax
mov eax, dword [rsp + 0x2c0]
cmp dword [rsp + 0x3c], eax
jae 0x7a23d1
xor edx, edx
mov rcx, qword [rsp + 0x78]
call fcn.007a8ca0
mov dword [rsp + 0x60], eax
cmp dword [rsp + 0x60], 0x80000000
jne 0x7a218e
jmp 0x7a23d1
mov edx, 1
mov rcx, qword [rsp + 0x78]
call fcn.007a8ca0
mov dword [rsp + 0xcc], eax
mov eax, dword [rsp + 0xcc]
and eax, 1
mov ecx, dword [rsp + 0x60]
shl ecx, 1
or ecx, eax
mov eax, ecx
mov dword [rsp + 0xc8], eax
mov eax, dword [rsp + 0xcc]
mov ecx, dword [rsp + 0xc8]
add ecx, eax
mov eax, ecx
sar eax, 1
mov ecx, dword [rsp + 0x24]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0x24], eax
mov eax, dword [rsp + 0x24]
mov ecx, dword [rsp + 0x20]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0x20], eax
mov eax, dword [rsp + 0xcc]
mov ecx, dword [rsp + 0xc8]
sub ecx, eax
mov eax, ecx
sar eax, 1
mov ecx, dword [rsp + 0x2c]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0x2c], eax
mov eax, dword [rsp + 0x2c]
mov ecx, dword [rsp + 0x28]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0x28], eax
mov rax, qword [rsp + 0x78]
cmp dword [rax + 0x64], 8
jge 0x7a22be
mov rax, qword [rsp + 0x78]
mov rax, qword [rax + 0x40]
inc rax
mov qword [rsp + 0x1f8], rax
mov rax, qword [rsp + 0x78]
mov rcx, qword [rsp + 0x1f8]
mov qword [rax + 0x40], rcx
mov rax, qword [rsp + 0x78]
mov rax, qword [rax + 0x38]
cmp qword [rsp + 0x1f8], rax
jne 0x7a227a
mov rax, qword [rsp + 0x78]
add rax, 0x28
mov rcx, rax
mov rax, qword [rsp + 0x78]
call qword [rax + 0x28]
mov rax, qword [rsp + 0x78]
mov rax, qword [rax + 0x40]
movzx eax, byte [rax]
mov rcx, qword [rsp + 0x78]
mov ecx, dword [rcx + 0x64]
shl eax, cl
mov rcx, qword [rsp + 0x78]
mov ecx, dword [rcx + 0x50]
or ecx, eax
mov eax, ecx
mov rcx, qword [rsp + 0x78]
mov dword [rcx + 0x50], eax
mov rax, qword [rsp + 0x78]
movsxd rax, dword [rax + 0x64]
add rax, 8
mov rcx, qword [rsp + 0x78]
mov dword [rcx + 0x64], eax
jmp 0x7a221f
mov rax, qword [rsp + 0x78]
mov eax, dword [rax + 0x50]
mov dword [rsp + 0xc4], eax
mov rax, qword [rsp + 0x78]
cmp dword [rax + 0x64], 0x20
jle 0x7a2317
mov rax, qword [rsp + 0x78]
mov eax, dword [rax + 0x64]
sub eax, 8
mov rcx, qword [rsp + 0x78]
mov dword [rcx + 0x64], eax
mov rax, qword [rsp + 0x78]
mov rax, qword [rax + 0x40]
movzx eax, byte [rax]
mov rcx, qword [rsp + 0x78]
movsxd rcx, dword [rcx + 0x64]
mov edx, 8
sub rdx, rcx
mov rcx, rdx
sar eax, cl
mov rcx, qword [rsp + 0x78]
mov dword [rcx + 0x50], eax
jmp 0x7a233d
mov rax, qword [rsp + 0x78]
mov eax, dword [rax + 0x64]
sub eax, 8
mov rcx, qword [rsp + 0x78]
mov dword [rcx + 0x64], eax
mov rax, qword [rsp + 0x78]
mov eax, dword [rax + 0x50]
shr eax, 8
mov rcx, qword [rsp + 0x78]
mov dword [rcx + 0x50], eax
mov eax, dword [rsp + 0x20]
shl eax, 4
mov ecx, dword [rsp + 0xc4]
sar ecx, 4
and ecx, 0xf
add eax, ecx
mov rcx, qword [rsp + 0x88]
mov dword [rcx], eax
mov eax, dword [rsp + 0x30]
imul eax, eax, 3
mov rcx, qword [rsp + 0x88]
add eax, dword [rcx]
mov dword [rsp + 0x30], eax
mov rax, qword [rsp + 0x88]
add rax, 4
mov qword [rsp + 0x88], rax
mov eax, dword [rsp + 0x28]
shl eax, 4
mov ecx, dword [rsp + 0xc4]
and ecx, 0xf
add eax, ecx
mov rcx, qword [rsp + 0x88]
mov dword [rcx], eax
mov eax, dword [rsp + 0x30]
imul eax, eax, 3
mov rcx, qword [rsp + 0x88]
add eax, dword [rcx]
mov dword [rsp + 0x30], eax
mov rax, qword [rsp + 0x88]
add rax, 4
mov qword [rsp + 0x88], rax
jmp 0x7a2154
jmp 0x7a253a
mov rax, qword [rsp + 0x2b8]
mov qword [rsp + 0x88], rax
mov dword [rsp + 0x3c], 0
jmp 0x7a23fa
mov eax, dword [rsp + 0x3c]
inc eax
mov dword [rsp + 0x3c], eax
mov eax, dword [rsp + 0x2c0]
cmp dword [rsp + 0x3c], eax
jae 0x7a253a
xor edx, edx
mov rcx, qword [rsp + 0x78]
call fcn.007a8ca0
mov dword [rsp + 0x60], eax
cmp dword [rsp + 0x60], 0x80000000
jne 0x7a242a
jmp 0x7a253a
mov edx, 1
mov rcx, qword [rsp + 0x78]
call fcn.007a8ca0
mov dword [rsp + 0xd4], eax
mov eax, dword [rsp + 0xd4]
and eax, 1
mov ecx, dword [rsp + 0x60]
shl ecx, 1
or ecx, eax
mov eax, ecx
mov dword [rsp + 0xd0], eax
mov eax, dword [rsp + 0xd4]
mov ecx, dword [rsp + 0xd0]
add ecx, eax
mov eax, ecx
sar eax, 1
mov ecx, dword [rsp + 0x24]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0x24], eax
mov eax, dword [rsp + 0xd4]
mov ecx, dword [rsp + 0xd0]
sub ecx, eax
mov eax, ecx
sar eax, 1
mov ecx, dword [rsp + 0x2c]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0x2c], eax
mov eax, dword [rsp + 0x24]
mov ecx, dword [rsp + 0x20]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0x20], eax
mov eax, dword [rsp + 0x30]
imul eax, eax, 3
add eax, dword [rsp + 0x20]
mov dword [rsp + 0x30], eax
mov eax, dword [rsp + 0x2c]
mov ecx, dword [rsp + 0x28]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0x28], eax
mov eax, dword [rsp + 0x30]
imul eax, eax, 3
add eax, dword [rsp + 0x28]
mov dword [rsp + 0x30], eax
mov eax, dword [rsp + 0x9c]
movzx ecx, al
mov eax, dword [rsp + 0x20]
shl eax, cl
mov rcx, qword [rsp + 0x88]
mov dword [rcx], eax
mov rax, qword [rsp + 0x88]
add rax, 4
mov qword [rsp + 0x88], rax
mov eax, dword [rsp + 0x9c]
movzx ecx, al
mov eax, dword [rsp + 0x28]
shl eax, cl
mov rcx, qword [rsp + 0x88]
mov dword [rcx], eax
mov rax, qword [rsp + 0x88]
add rax, 4
mov qword [rsp + 0x88], rax
jmp 0x7a23f0
jmp 0x7a4355
mov eax, dword [rsp + 0x38]
and eax, 0x10
test eax, eax
je 0x7a3bae
mov rax, qword [rsp + 0x2b8]
mov qword [rsp + 0x88], rax
mov dword [rsp + 0x3c], 0
jmp 0x7a2572
mov eax, dword [rsp + 0x3c]
inc eax
mov dword [rsp + 0x3c], eax
mov eax, dword [rsp + 0x2c0]
cmp dword [rsp + 0x3c], eax
jae 0x7a3ba9
mov eax, dword [rsp + 0x38]
and eax, 0x1000
test eax, eax
je 0x7a25d0
xor edx, edx
mov rcx, qword [rsp + 0x78]
call fcn.007a6a90
mov dword [rsp + 0xe0], eax
cmp dword [rsp + 0xe0], 0x80000000
jne 0x7a25b5
jmp 0x7a3ba9
mov edx, 1
mov rcx, qword [rsp + 0x78]
call fcn.007a6a90
mov dword [rsp + 0xe8], eax
jmp 0x7a2aff
mov eax, dword [rsp + 0x38]
and eax, 0x400
test eax, eax
je 0x7a28a2
xor edx, edx
mov rcx, qword [rsp + 0x78]
call fcn.007a6a90
mov dword [rsp + 0x60], eax
cmp dword [rsp + 0x60], 0x80000000
jne 0x7a2600
jmp 0x7a3ba9
mov edx, 1
mov rcx, qword [rsp + 0x78]
call fcn.007a6a90
mov dword [rsp + 0xe4], eax
mov eax, dword [rsp + 0xbc]
cmp dword [rsp + 0xb8], eax
jle 0x7a2766
mov eax, dword [rsp + 0xb8]
mov ecx, dword [rsp + 0xbc]
add ecx, eax
mov eax, ecx
mov ecx, dword [rsp + 0xc0]
mov edx, dword [rsp + 0xb4]
add edx, ecx
mov ecx, edx
cmp eax, ecx
jge 0x7a26b2
mov eax, dword [rsp + 0xc0]
cmp dword [rsp + 0xb8], eax
jge 0x7a26b2
mov eax, dword [rsp + 0x60]
mov dword [rsp + 0xe8], eax
mov eax, dword [rsp + 0xe4]
mov dword [rsp + 0xe0], eax
mov eax, dword [rsp + 0xe0]
mov ecx, dword [rsp + 0xe8]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0xec], eax
mov eax, dword [rsp + 0xe8]
mov ecx, dword [rsp + 0xe0]
sub ecx, eax
mov eax, ecx
mov dword [rsp + 0xf4], eax
jmp 0x7a2761
mov eax, dword [rsp + 0x60]
mov dword [rsp + 0xf4], eax
mov eax, dword [rsp + 0xbc]
cmp dword [rsp + 0xb4], eax
jge 0x7a2721
mov eax, dword [rsp + 0xe4]
shl eax, 1
mov ecx, dword [rsp + 0xf4]
and ecx, 1
or eax, ecx
mov dword [rsp + 0xec], eax
mov eax, dword [rsp + 0xf4]
mov ecx, dword [rsp + 0xec]
add ecx, eax
mov eax, ecx
sar eax, 1
mov dword [rsp + 0xe0], eax
mov eax, dword [rsp + 0xf4]
mov ecx, dword [rsp + 0xec]
sub ecx, eax
mov eax, ecx
sar eax, 1
mov dword [rsp + 0xe8], eax
jmp 0x7a2761
mov eax, dword [rsp + 0xe4]
mov dword [rsp + 0xe0], eax
mov eax, dword [rsp + 0xf4]
mov ecx, dword [rsp + 0xe0]
sub ecx, eax
mov eax, ecx
mov dword [rsp + 0xe8], eax
mov eax, dword [rsp + 0xe8]
mov ecx, dword [rsp + 0xe4]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0xec], eax
jmp 0x7a289d
mov eax, dword [rsp + 0xb8]
mov ecx, dword [rsp + 0xbc]
add ecx, eax
mov eax, ecx
mov ecx, dword [rsp + 0xc0]
mov edx, dword [rsp + 0xb4]
add edx, ecx
mov ecx, edx
cmp eax, ecx
jge 0x7a27ee
mov eax, dword [rsp + 0xc0]
cmp dword [rsp + 0xbc], eax
jge 0x7a27ee
mov eax, dword [rsp + 0x60]
mov dword [rsp + 0xe0], eax
mov eax, dword [rsp + 0xe4]
mov dword [rsp + 0xe8], eax
mov eax, dword [rsp + 0xe8]
mov ecx, dword [rsp + 0xe0]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0xec], eax
mov eax, dword [rsp + 0xe8]
mov ecx, dword [rsp + 0xe0]
sub ecx, eax
mov eax, ecx
mov dword [rsp + 0xf4], eax
jmp 0x7a289d
mov eax, dword [rsp + 0x60]
mov dword [rsp + 0xf4], eax
mov eax, dword [rsp + 0xb8]
cmp dword [rsp + 0xb4], eax
jge 0x7a285d
mov eax, dword [rsp + 0xe4]
shl eax, 1
mov ecx, dword [rsp + 0xf4]
and ecx, 1
or eax, ecx
mov dword [rsp + 0xec], eax
mov eax, dword [rsp + 0xf4]
mov ecx, dword [rsp + 0xec]
add ecx, eax
mov eax, ecx
sar eax, 1
mov dword [rsp + 0xe0], eax
mov eax, dword [rsp + 0xf4]
mov ecx, dword [rsp + 0xec]
sub ecx, eax
mov eax, ecx
sar eax, 1
mov dword [rsp + 0xe8], eax
jmp 0x7a289d
mov eax, dword [rsp + 0xe4]
mov dword [rsp + 0xe8], eax
mov eax, dword [rsp + 0xe8]
mov ecx, dword [rsp + 0xf4]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0xe0], eax
mov eax, dword [rsp + 0xe4]
mov ecx, dword [rsp + 0xe0]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0xec], eax
jmp 0x7a29ea
xor edx, edx
mov rcx, qword [rsp + 0x78]
call fcn.007a7cb0
mov dword [rsp + 0x60], eax
cmp dword [rsp + 0x60], 0x80000000
jne 0x7a28c1
jmp 0x7a3ba9
mov edx, 1
mov rcx, qword [rsp + 0x78]
call fcn.007a7cb0
mov dword [rsp + 0xe4], eax
mov eax, dword [rsp + 0xb8]
cmp dword [rsp + 0xb4], eax
jg 0x7a2945
mov eax, dword [rsp + 0xbc]
cmp dword [rsp + 0xb4], eax
jg 0x7a2945
mov eax, dword [rsp + 0xe4]
shl eax, 1
mov ecx, dword [rsp + 0x60]
and ecx, 1
or eax, ecx
mov dword [rsp + 0xec], eax
mov eax, dword [rsp + 0x60]
mov ecx, dword [rsp + 0xec]
add ecx, eax
mov eax, ecx
sar eax, 1
mov dword [rsp + 0xe0], eax
mov eax, dword [rsp + 0x60]
mov ecx, dword [rsp + 0xec]
sub ecx, eax
mov eax, ecx
sar eax, 1
mov dword [rsp + 0xe8], eax
jmp 0x7a29d1
mov eax, dword [rsp + 0xb8]
cmp dword [rsp + 0xbc], eax
jg 0x7a2994
mov eax, dword [rsp + 0xe4]
mov dword [rsp + 0xe0], eax
mov eax, dword [rsp + 0x60]
mov ecx, dword [rsp + 0xe0]
sub ecx, eax
mov eax, ecx
mov dword [rsp + 0xe8], eax
mov eax, dword [rsp + 0xe8]
mov ecx, dword [rsp + 0xe4]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0xec], eax
jmp 0x7a29d1
mov eax, dword [rsp + 0xe4]
mov dword [rsp + 0xe8], eax
mov eax, dword [rsp + 0xe8]
mov ecx, dword [rsp + 0x60]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0xe0], eax
mov eax, dword [rsp + 0xe0]
mov ecx, dword [rsp + 0xe4]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0xec], eax
mov eax, dword [rsp + 0xe8]
mov ecx, dword [rsp + 0xe0]
sub ecx, eax
mov eax, ecx
mov dword [rsp + 0xf4], eax
mov eax, dword [rsp + 0xb4]
sar eax, 8
mov ecx, dword [rsp + 0xb4]
sub ecx, eax
mov eax, ecx
mov dword [rsp + 0x200], eax
mov ecx, dword [rsp + 0xec]
sar ecx, 1
call fcn.00781830
mov ecx, dword [rsp + 0x200]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0xb4], eax
mov eax, dword [rsp + 0xbc]
sar eax, 8
mov ecx, dword [rsp + 0xbc]
sub ecx, eax
mov eax, ecx
mov dword [rsp + 0x204], eax
mov ecx, dword [rsp + 0xe0]
call fcn.00781830
mov ecx, dword [rsp + 0x204]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0xbc], eax
mov eax, dword [rsp + 0xb8]
sar eax, 8
mov ecx, dword [rsp + 0xb8]
sub ecx, eax
mov eax, ecx
mov dword [rsp + 0x208], eax
mov ecx, dword [rsp + 0xe8]
call fcn.00781830
mov ecx, dword [rsp + 0x208]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0xb8], eax
mov eax, dword [rsp + 0xc0]
sar eax, 8
mov ecx, dword [rsp + 0xc0]
sub ecx, eax
mov eax, ecx
mov dword [rsp + 0x20c], eax
mov ecx, dword [rsp + 0xf4]
call fcn.00781830
mov ecx, dword [rsp + 0x20c]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0xc0], eax
mov eax, dword [rsp + 0x38]
and eax, 0x4000
test eax, eax
je 0x7a2aff
mov eax, dword [rsp + 0xf4]
mov dword [rsp + 0xe0], eax
mov eax, dword [rsp + 0xec]
sar eax, 1
mov dword [rsp + 0xe8], eax
mov eax, dword [rsp + 0x38]
and eax, 0x8000
test eax, eax
je 0x7a3123
mov rax, qword [rsp + 0x78]
mov eax, dword [rax + 0xbc]
mov dword [rsp + 0x64], eax
mov rax, qword [rsp + 0x78]
add rax, 0x90c
mov qword [rsp + 0x40], rax
jmp 0x7a2b3f
mov rax, qword [rsp + 0x40]
add rax, 0x60
mov qword [rsp + 0x40], rax
mov eax, dword [rsp + 0x64]
mov ecx, dword [rsp + 0x64]
dec ecx
mov dword [rsp + 0x64], ecx
test eax, eax
je 0x7a311e
mov rax, qword [rsp + 0x40]
cmp dword [rax], 0
jle 0x7a2d8a
movsxd rax, dword [rsp + 0x98]
mov rcx, qword [rsp + 0x40]
mov eax, dword [rcx + rax*4 + 0x10]
mov dword [rsp + 0xfc], eax
movsxd rax, dword [rsp + 0x98]
mov rcx, qword [rsp + 0x40]
mov eax, dword [rcx + rax*4 + 0x30]
mov dword [rsp + 0xf8], eax
mov rax, qword [rsp + 0x40]
mov eax, dword [rax]
mov ecx, dword [rsp + 0x98]
add ecx, eax
mov eax, ecx
and eax, 7
mov dword [rsp + 0x100], eax
mov rax, qword [rsp + 0x40]
mov eax, dword [rax + 8]
imul eax, dword [rsp + 0xfc]
add eax, 0x100
sar eax, 9
add eax, dword [rsp + 0xe0]
mov dword [rsp + 0xdc], eax
mov rax, qword [rsp + 0x40]
mov eax, dword [rax + 0xc]
imul eax, dword [rsp + 0xf8]
add eax, 0x100
sar eax, 9
add eax, dword [rsp + 0xe8]
mov dword [rsp + 0xd8], eax
cmp dword [rsp + 0xfc], 0
je 0x7a2c9a
cmp dword [rsp + 0xe0], 0
je 0x7a2c9a
mov eax, dword [rsp + 0xe0]
mov ecx, dword [rsp + 0xfc]
xor ecx, eax
mov eax, ecx
test eax, eax
jl 0x7a2c62
mov rax, qword [rsp + 0x40]
mov eax, dword [rax + 8]
mov rcx, qword [rsp + 0x40]
mov ecx, dword [rcx + 8]
inc ecx
mov rdx, qword [rsp + 0x40]
mov dword [rdx + 8], ecx
cmp eax, 0x200
jne 0x7a2c60
mov rax, qword [rsp + 0x40]
mov eax, dword [rax + 8]
dec eax
mov rcx, qword [rsp + 0x40]
mov dword [rcx + 8], eax
jmp 0x7a2c9a
mov rax, qword [rsp + 0x40]
mov eax, dword [rax + 8]
mov ecx, dword [rsp + 0x80]
mov rdx, qword [rsp + 0x40]
mov edx, dword [rdx + 8]
dec edx
mov r8, qword [rsp + 0x40]
mov dword [r8 + 8], edx
cmp eax, ecx
jne 0x7a2c9a
mov rax, qword [rsp + 0x40]
mov eax, dword [rax + 8]
inc eax
mov rcx, qword [rsp + 0x40]
mov dword [rcx + 8], eax
cmp dword [rsp + 0xf8], 0
je 0x7a2d39
cmp dword [rsp + 0xe8], 0
je 0x7a2d39
mov eax, dword [rsp + 0xe8]
mov ecx, dword [rsp + 0xf8]
xor ecx, eax
mov eax, ecx
test eax, eax
jl 0x7a2d01
mov rax, qword [rsp + 0x40]
mov eax, dword [rax + 0xc]
mov rcx, qword [rsp + 0x40]
mov ecx, dword [rcx + 0xc]
inc ecx
mov rdx, qword [rsp + 0x40]
mov dword [rdx + 0xc], ecx
cmp eax, 0x200
jne 0x7a2cff
mov rax, qword [rsp + 0x40]
mov eax, dword [rax + 0xc]
dec eax
mov rcx, qword [rsp + 0x40]
mov dword [rcx + 0xc], eax
jmp 0x7a2d39
mov rax, qword [rsp + 0x40]
mov eax, dword [rax + 0xc]
mov ecx, dword [rsp + 0x80]
mov rdx, qword [rsp + 0x40]
mov edx, dword [rdx + 0xc]
dec edx
mov r8, qword [rsp + 0x40]
mov dword [r8 + 0xc], edx
cmp eax, ecx
jne 0x7a2d39
mov rax, qword [rsp + 0x40]
mov eax, dword [rax + 0xc]
inc eax
mov rcx, qword [rsp + 0x40]
mov dword [rcx + 0xc], eax
mov eax, dword [rsp + 0xdc]
mov dword [rsp + 0xe0], eax
movsxd rax, dword [rsp + 0x100]
mov rcx, qword [rsp + 0x40]
mov edx, dword [rsp + 0xe0]
mov dword [rcx + rax*4 + 0x10], edx
mov eax, dword [rsp + 0xd8]
mov dword [rsp + 0xe8], eax
movsxd rax, dword [rsp + 0x100]
mov rcx, qword [rsp + 0x40]
mov edx, dword [rsp + 0xe8]
mov dword [rcx + rax*4 + 0x30], edx
jmp 0x7a3119
mov rax, qword [rsp + 0x40]
cmp dword [rax], 0xffffffff
jne 0x7a2f5b
mov rax, qword [rsp + 0x40]
mov rcx, qword [rsp + 0x40]
mov eax, dword [rax + 8]
imul eax, dword [rcx + 0x10]
add eax, 0x100
sar eax, 9
mov ecx, dword [rsp + 0xe0]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0xdc], eax
mov rax, qword [rsp + 0x40]
cmp dword [rax + 0x10], 0
je 0x7a2e62
cmp dword [rsp + 0xe0], 0
je 0x7a2e62
mov rax, qword [rsp + 0x40]
mov ecx, dword [rsp + 0xe0]
mov eax, dword [rax + 0x10]
xor eax, ecx
test eax, eax
jl 0x7a2e2a
mov rax, qword [rsp + 0x40]
mov eax, dword [rax + 8]
mov rcx, qword [rsp + 0x40]
mov ecx, dword [rcx + 8]
inc ecx
mov rdx, qword [rsp + 0x40]
mov dword [rdx + 8], ecx
cmp eax, 0x200
jne 0x7a2e28
mov rax, qword [rsp + 0x40]
mov eax, dword [rax + 8]
dec eax
mov rcx, qword [rsp + 0x40]
mov dword [rcx + 8], eax
jmp 0x7a2e62
mov rax, qword [rsp + 0x40]
mov eax, dword [rax + 8]
mov ecx, dword [rsp + 0x80]
mov rdx, qword [rsp + 0x40]
mov edx, dword [rdx + 8]
dec edx
mov r8, qword [rsp + 0x40]
mov dword [r8 + 8], edx
cmp eax, ecx
jne 0x7a2e62
mov rax, qword [rsp + 0x40]
mov eax, dword [rax + 8]
inc eax
mov rcx, qword [rsp + 0x40]
mov dword [rcx + 8], eax
mov eax, dword [rsp + 0xdc]
mov dword [rsp + 0xe0], eax
mov rax, qword [rsp + 0x40]
mov eax, dword [rax + 0xc]
imul eax, dword [rsp + 0xe0]
add eax, 0x100
sar eax, 9
mov ecx, dword [rsp + 0xe8]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0xd8], eax
cmp dword [rsp + 0xe0], 0
je 0x7a2f39
cmp dword [rsp + 0xe8], 0
je 0x7a2f39
mov eax, dword [rsp + 0xe8]
mov ecx, dword [rsp + 0xe0]
xor ecx, eax
mov eax, ecx
test eax, eax
jl 0x7a2f01
mov rax, qword [rsp + 0x40]
mov eax, dword [rax + 0xc]
mov rcx, qword [rsp + 0x40]
mov ecx, dword [rcx + 0xc]
inc ecx
mov rdx, qword [rsp + 0x40]
mov dword [rdx + 0xc], ecx
cmp eax, 0x200
jne 0x7a2eff
mov rax, qword [rsp + 0x40]
mov eax, dword [rax + 0xc]
dec eax
mov rcx, qword [rsp + 0x40]
mov dword [rcx + 0xc], eax
jmp 0x7a2f39
mov rax, qword [rsp + 0x40]
mov eax, dword [rax + 0xc]
mov ecx, dword [rsp + 0x80]
mov rdx, qword [rsp + 0x40]
mov edx, dword [rdx + 0xc]
dec edx
mov r8, qword [rsp + 0x40]
mov dword [r8 + 0xc], edx
cmp eax, ecx
jne 0x7a2f39
mov rax, qword [rsp + 0x40]
mov eax, dword [rax + 0xc]
inc eax
mov rcx, qword [rsp + 0x40]
mov dword [rcx + 0xc], eax
mov eax, dword [rsp + 0xd8]
mov dword [rsp + 0xe8], eax
mov rax, qword [rsp + 0x40]
mov ecx, dword [rsp + 0xe8]
mov dword [rax + 0x10], ecx
jmp 0x7a3119
mov rax, qword [rsp + 0x40]
mov rcx, qword [rsp + 0x40]
mov eax, dword [rax + 8]
imul eax, dword [rcx + 0x10]
add eax, 0x100
sar eax, 9
mov ecx, dword [rsp + 0xe8]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0xd8], eax
mov rax, qword [rsp + 0x40]
cmp dword [rax + 0x10], 0
je 0x7a3025
cmp dword [rsp + 0xe8], 0
je 0x7a3025
mov rax, qword [rsp + 0x40]
mov ecx, dword [rsp + 0xe8]
mov eax, dword [rax + 0x10]
xor eax, ecx
test eax, eax
jl 0x7a2fed
mov rax, qword [rsp + 0x40]
mov eax, dword [rax + 8]
mov rcx, qword [rsp + 0x40]
mov ecx, dword [rcx + 8]
inc ecx
mov rdx, qword [rsp + 0x40]
mov dword [rdx + 8], ecx
cmp eax, 0x200
jne 0x7a2feb
mov rax, qword [rsp + 0x40]
mov eax, dword [rax + 8]
dec eax
mov rcx, qword [rsp + 0x40]
mov dword [rcx + 8], eax
jmp 0x7a3025
mov rax, qword [rsp + 0x40]
mov eax, dword [rax + 8]
mov ecx, dword [rsp + 0x80]
mov rdx, qword [rsp + 0x40]
mov edx, dword [rdx + 8]
dec edx
mov r8, qword [rsp + 0x40]
mov dword [r8 + 8], edx
cmp eax, ecx
jne 0x7a3025
mov rax, qword [rsp + 0x40]
mov eax, dword [rax + 8]
inc eax
mov rcx, qword [rsp + 0x40]
mov dword [rcx + 8], eax
mov eax, dword [rsp + 0xd8]
mov dword [rsp + 0xe8], eax
mov rax, qword [rsp + 0x40]
mov eax, dword [rax + 0xc]
imul eax, dword [rsp + 0xe8]
add eax, 0x100
sar eax, 9
mov ecx, dword [rsp + 0xe0]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0xdc], eax
cmp dword [rsp + 0xe8], 0
je 0x7a30fc
cmp dword [rsp + 0xe0], 0
je 0x7a30fc
mov eax, dword [rsp + 0xe0]
mov ecx, dword [rsp + 0xe8]
xor ecx, eax
mov eax, ecx
test eax, eax
jl 0x7a30c4
mov rax, qword [rsp + 0x40]
mov eax, dword [rax + 0xc]
mov rcx, qword [rsp + 0x40]
mov ecx, dword [rcx + 0xc]
inc ecx
mov rdx, qword [rsp + 0x40]
mov dword [rdx + 0xc], ecx
cmp eax, 0x200
jne 0x7a30c2
mov rax, qword [rsp + 0x40]
mov eax, dword [rax + 0xc]
dec eax
mov rcx, qword [rsp + 0x40]
mov dword [rcx + 0xc], eax
jmp 0x7a30fc
mov rax, qword [rsp + 0x40]
mov eax, dword [rax + 0xc]
mov ecx, dword [rsp + 0x80]
mov rdx, qword [rsp + 0x40]
mov edx, dword [rdx + 0xc]
dec edx
mov r8, qword [rsp + 0x40]
mov dword [r8 + 0xc], edx
cmp eax, ecx
jne 0x7a30fc
mov rax, qword [rsp + 0x40]
mov eax, dword [rax + 0xc]
inc eax
mov rcx, qword [rsp + 0x40]
mov dword [rcx + 0xc], eax
mov eax, dword [rsp + 0xdc]
mov dword [rsp + 0xe0], eax
mov rax, qword [rsp + 0x40]
mov ecx, dword [rsp + 0xe0]
mov dword [rax + 0x10], ecx
jmp 0x7a2b31
jmp 0x7a3731
mov rax, qword [rsp + 0x78]
mov eax, dword [rax + 0xbc]
mov dword [rsp + 0x64], eax
mov rax, qword [rsp + 0x78]
add rax, 0x90c
mov qword [rsp + 0x40], rax
jmp 0x7a3152
mov rax, qword [rsp + 0x40]
add rax, 0x60
mov qword [rsp + 0x40], rax
mov eax, dword [rsp + 0x64]
mov ecx, dword [rsp + 0x64]
dec ecx
mov dword [rsp + 0x64], ecx
test eax, eax
je 0x7a3731
mov rax, qword [rsp + 0x40]
cmp dword [rax], 0
jle 0x7a339d
movsxd rax, dword [rsp + 0x98]
mov rcx, qword [rsp + 0x40]
mov eax, dword [rcx + rax*4 + 0x10]
mov dword [rsp + 0x108], eax
movsxd rax, dword [rsp + 0x98]
mov rcx, qword [rsp + 0x40]
mov eax, dword [rcx + rax*4 + 0x30]
mov dword [rsp + 0x104], eax
mov rax, qword [rsp + 0x40]
mov eax, dword [rax]
mov ecx, dword [rsp + 0x98]
add ecx, eax
mov eax, ecx
and eax, 7
mov dword [rsp + 0x10c], eax
mov rax, qword [rsp + 0x40]
mov eax, dword [rax + 8]
imul eax, dword [rsp + 0x108]
add eax, 0x80
sar eax, 8
add eax, dword [rsp + 0xe0]
mov dword [rsp + 0xdc], eax
mov rax, qword [rsp + 0x40]
mov eax, dword [rax + 0xc]
imul eax, dword [rsp + 0x104]
add eax, 0x80
sar eax, 8
add eax, dword [rsp + 0xe8]
mov dword [rsp + 0xd8], eax
cmp dword [rsp + 0x108], 0
je 0x7a32ad
cmp dword [rsp + 0xe0], 0
je 0x7a32ad
mov eax, dword [rsp + 0xe0]
mov ecx, dword [rsp + 0x108]
xor ecx, eax
mov eax, ecx
test eax, eax
jl 0x7a3275
mov rax, qword [rsp + 0x40]
mov eax, dword [rax + 8]
mov rcx, qword [rsp + 0x40]
mov ecx, dword [rcx + 8]
inc ecx
mov rdx, qword [rsp + 0x40]
mov dword [rdx + 8], ecx
cmp eax, 0x100
jne 0x7a3273
mov rax, qword [rsp + 0x40]
mov eax, dword [rax + 8]
dec eax
mov rcx, qword [rsp + 0x40]
mov dword [rcx + 8], eax
jmp 0x7a32ad
mov rax, qword [rsp + 0x40]
mov eax, dword [rax + 8]
mov ecx, dword [rsp + 0x80]
mov rdx, qword [rsp + 0x40]
mov edx, dword [rdx + 8]
dec edx
mov r8, qword [rsp + 0x40]
mov dword [r8 + 8], edx
cmp eax, ecx
jne 0x7a32ad
mov rax, qword [rsp + 0x40]
mov eax, dword [rax + 8]
inc eax
mov rcx, qword [rsp + 0x40]
mov dword [rcx + 8], eax
cmp dword [rsp + 0x104], 0
je 0x7a334c
cmp dword [rsp + 0xe8], 0
je 0x7a334c
mov eax, dword [rsp + 0xe8]
mov ecx, dword [rsp + 0x104]
xor ecx, eax
mov eax, ecx
test eax, eax
jl 0x7a3314
mov rax, qword [rsp + 0x40]
mov eax, dword [rax + 0xc]
mov rcx, qword [rsp + 0x40]
mov ecx, dword [rcx + 0xc]
inc ecx
mov rdx, qword [rsp + 0x40]
mov dword [rdx + 0xc], ecx
cmp eax, 0x100
jne 0x7a3312
mov rax, qword [rsp + 0x40]
mov eax, dword [rax + 0xc]
dec eax
mov rcx, qword [rsp + 0x40]
mov dword [rcx + 0xc], eax
jmp 0x7a334c
mov rax, qword [rsp + 0x40]
mov eax, dword [rax + 0xc]
mov ecx, dword [rsp + 0x80]
mov rdx, qword [rsp + 0x40]
mov edx, dword [rdx + 0xc]
dec edx
mov r8, qword [rsp + 0x40]
mov dword [r8 + 0xc], edx
cmp eax, ecx
jne 0x7a334c
mov rax, qword [rsp + 0x40]
mov eax, dword [rax + 0xc]
inc eax
mov rcx, qword [rsp + 0x40]
mov dword [rcx + 0xc], eax
mov eax, dword [rsp + 0xdc]
mov dword [rsp + 0xe0], eax
movsxd rax, dword [rsp + 0x10c]
mov rcx, qword [rsp + 0x40]
mov edx, dword [rsp + 0xe0]
mov dword [rcx + rax*4 + 0x10], edx
mov eax, dword [rsp + 0xd8]
mov dword [rsp + 0xe8], eax
movsxd rax, dword [rsp + 0x10c]
mov rcx, qword [rsp + 0x40]
mov edx, dword [rsp + 0xe8]
mov dword [rcx + rax*4 + 0x30], edx
jmp 0x7a372c
mov rax, qword [rsp + 0x40]
cmp dword [rax], 0xffffffff
jne 0x7a356e
mov rax, qword [rsp + 0x40]
mov rcx, qword [rsp + 0x40]
mov eax, dword [rax + 8]
imul eax, dword [rcx + 0x10]
add eax, 0x80
sar eax, 8
mov ecx, dword [rsp + 0xe0]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0xdc], eax
mov rax, qword [rsp + 0x40]
cmp dword [rax + 0x10], 0
je 0x7a3475
cmp dword [rsp + 0xe0], 0
je 0x7a3475
mov rax, qword [rsp + 0x40]
mov ecx, dword [rsp + 0xe0]
mov eax, dword [rax + 0x10]
xor eax, ecx
test eax, eax
jl 0x7a343d
mov rax, qword [rsp + 0x40]
mov eax, dword [rax + 8]
mov rcx, qword [rsp + 0x40]
mov ecx, dword [rcx + 8]
inc ecx
mov rdx, qword [rsp + 0x40]
mov dword [rdx + 8], ecx
cmp eax, 0x100
jne 0x7a343b
mov rax, qword [rsp + 0x40]
mov eax, dword [rax + 8]
dec eax
mov rcx, qword [rsp + 0x40]
mov dword [rcx + 8], eax
jmp 0x7a3475
mov rax, qword [rsp + 0x40]
mov eax, dword [rax + 8]
mov ecx, dword [rsp + 0x80]
mov rdx, qword [rsp + 0x40]
mov edx, dword [rdx + 8]
dec edx
mov r8, qword [rsp + 0x40]
mov dword [r8 + 8], edx
cmp eax, ecx
jne 0x7a3475
mov rax, qword [rsp + 0x40]
mov eax, dword [rax + 8]
inc eax
mov rcx, qword [rsp + 0x40]
mov dword [rcx + 8], eax
mov eax, dword [rsp + 0xdc]
mov dword [rsp + 0xe0], eax
mov rax, qword [rsp + 0x40]
mov eax, dword [rax + 0xc]
imul eax, dword [rsp + 0xe0]
add eax, 0x80
sar eax, 8
mov ecx, dword [rsp + 0xe8]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0xd8], eax
cmp dword [rsp + 0xe0], 0
je 0x7a354c
cmp dword [rsp + 0xe8], 0
je 0x7a354c
mov eax, dword [rsp + 0xe8]
mov ecx, dword [rsp + 0xe0]
xor ecx, eax
mov eax, ecx
test eax, eax
jl 0x7a3514
mov rax, qword [rsp + 0x40]
mov eax, dword [rax + 0xc]
mov rcx, qword [rsp + 0x40]
mov ecx, dword [rcx + 0xc]
inc ecx
mov rdx, qword [rsp + 0x40]
mov dword [rdx + 0xc], ecx
cmp eax, 0x100
jne 0x7a3512
mov rax, qword [rsp + 0x40]
mov eax, dword [rax + 0xc]
dec eax
mov rcx, qword [rsp + 0x40]
mov dword [rcx + 0xc], eax
jmp 0x7a354c
mov rax, qword [rsp + 0x40]
mov eax, dword [rax + 0xc]
mov ecx, dword [rsp + 0x80]
mov rdx, qword [rsp + 0x40]
mov edx, dword [rdx + 0xc]
dec edx
mov r8, qword [rsp + 0x40]
mov dword [r8 + 0xc], edx
cmp eax, ecx
jne 0x7a354c
mov rax, qword [rsp + 0x40]
mov eax, dword [rax + 0xc]
inc eax
mov rcx, qword [rsp + 0x40]
mov dword [rcx + 0xc], eax
mov eax, dword [rsp + 0xd8]
mov dword [rsp + 0xe8], eax
mov rax, qword [rsp + 0x40]
mov ecx, dword [rsp + 0xe8]
mov dword [rax + 0x10], ecx
jmp 0x7a372c
mov rax, qword [rsp + 0x40]
mov rcx, qword [rsp + 0x40]
mov eax, dword [rax + 8]
imul eax, dword [rcx + 0x10]
add eax, 0x80
sar eax, 8
mov ecx, dword [rsp + 0xe8]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0xd8], eax
mov rax, qword [rsp + 0x40]
cmp dword [rax + 0x10], 0
je 0x7a3638
cmp dword [rsp + 0xe8], 0
je 0x7a3638
mov rax, qword [rsp + 0x40]
mov ecx, dword [rsp + 0xe8]
mov eax, dword [rax + 0x10]
xor eax, ecx
test eax, eax
jl 0x7a3600
mov rax, qword [rsp + 0x40]
mov eax, dword [rax + 8]
mov rcx, qword [rsp + 0x40]
mov ecx, dword [rcx + 8]
inc ecx
mov rdx, qword [rsp + 0x40]
mov dword [rdx + 8], ecx
cmp eax, 0x100
jne 0x7a35fe
mov rax, qword [rsp + 0x40]
mov eax, dword [rax + 8]
dec eax
mov rcx, qword [rsp + 0x40]
mov dword [rcx + 8], eax
jmp 0x7a3638
mov rax, qword [rsp + 0x40]
mov eax, dword [rax + 8]
mov ecx, dword [rsp + 0x80]
mov rdx, qword [rsp + 0x40]
mov edx, dword [rdx + 8]
dec edx
mov r8, qword [rsp + 0x40]
mov dword [r8 + 8], edx
cmp eax, ecx
jne 0x7a3638
mov rax, qword [rsp + 0x40]
mov eax, dword [rax + 8]
inc eax
mov rcx, qword [rsp + 0x40]
mov dword [rcx + 8], eax
mov eax, dword [rsp + 0xd8]
mov dword [rsp + 0xe8], eax
mov rax, qword [rsp + 0x40]
mov eax, dword [rax + 0xc]
imul eax, dword [rsp + 0xe8]
add eax, 0x80
sar eax, 8
mov ecx, dword [rsp + 0xe0]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0xdc], eax
cmp dword [rsp + 0xe8], 0
je 0x7a370f
cmp dword [rsp + 0xe0], 0
je 0x7a370f
mov eax, dword [rsp + 0xe0]
mov ecx, dword [rsp + 0xe8]
xor ecx, eax
mov eax, ecx
test eax, eax
jl 0x7a36d7
mov rax, qword [rsp + 0x40]
mov eax, dword [rax + 0xc]
mov rcx, qword [rsp + 0x40]
mov ecx, dword [rcx + 0xc]
inc ecx
mov rdx, qword [rsp + 0x40]
mov dword [rdx + 0xc], ecx
cmp eax, 0x100
jne 0x7a36d5
mov rax, qword [rsp + 0x40]
mov eax, dword [rax + 0xc]
dec eax
mov rcx, qword [rsp + 0x40]
mov dword [rcx + 0xc], eax
jmp 0x7a370f
mov rax, qword [rsp + 0x40]
mov eax, dword [rax + 0xc]
mov ecx, dword [rsp + 0x80]
mov rdx, qword [rsp + 0x40]
mov edx, dword [rdx + 0xc]
dec edx
mov r8, qword [rsp + 0x40]
mov dword [r8 + 0xc], edx
cmp eax, ecx
jne 0x7a370f
mov rax, qword [rsp + 0x40]
mov eax, dword [rax + 0xc]
inc eax
mov rcx, qword [rsp + 0x40]
mov dword [rcx + 0xc], eax
mov eax, dword [rsp + 0xdc]
mov dword [rsp + 0xe0], eax
mov rax, qword [rsp + 0x40]
mov ecx, dword [rsp + 0xe0]
mov dword [rax + 0x10], ecx
jmp 0x7a3144
mov eax, dword [rsp + 0x98]
inc eax
and eax, 7
mov dword [rsp + 0x98], eax
mov eax, dword [rsp + 0x38]
and eax, 0x4000
test eax, eax
je 0x7a37b3
mov eax, dword [rsp + 0xe0]
mov dword [rsp + 0xf4], eax
mov eax, dword [rsp + 0xf4]
and eax, 1
mov ecx, dword [rsp + 0xe8]
shl ecx, 1
or ecx, eax
mov eax, ecx
mov dword [rsp + 0xec], eax
mov eax, dword [rsp + 0xf4]
mov ecx, dword [rsp + 0xec]
sub ecx, eax
mov eax, ecx
sar eax, 1
mov dword [rsp + 0xe8], eax
mov eax, dword [rsp + 0xf4]
mov ecx, dword [rsp + 0xec]
add ecx, eax
mov eax, ecx
sar eax, 1
mov dword [rsp + 0xe0], eax
mov eax, dword [rsp + 0x38]
and eax, 0x40
test eax, eax
je 0x7a3b1e
mov rax, qword [rsp + 0x78]
cmp dword [rax + 0x8e0], 8
jl 0x7a38e9
mov rax, qword [rsp + 0x78]
cmp dword [rax + 0x64], 0
je 0x7a3808
mov rax, qword [rsp + 0x78]
mov eax, dword [rax + 0x64]
dec eax
mov rcx, qword [rsp + 0x78]
mov dword [rcx + 0x64], eax
mov rax, qword [rsp + 0x78]
mov eax, dword [rax + 0x50]
and eax, 1
mov dword [rsp + 0x210], eax
jmp 0x7a3895
mov rax, qword [rsp + 0x78]
mov rax, qword [rax + 0x40]
inc rax
mov qword [rsp + 0x218], rax
mov rax, qword [rsp + 0x78]
mov rcx, qword [rsp + 0x218]
mov qword [rax + 0x40], rcx
mov rax, qword [rsp + 0x78]
mov rax, qword [rax + 0x38]
cmp qword [rsp + 0x218], rax
je 0x7a3842
jmp 0x7a3856
mov rax, qword [rsp + 0x78]
add rax, 0x28
mov rcx, rax
mov rax, qword [rsp + 0x78]
call qword [rax + 0x28]
mov rax, qword [rsp + 0x78]
mov dword [rax + 0x64], 7
mov rax, qword [rsp + 0x78]
mov rax, qword [rax + 0x40]
movzx eax, byte [rax]
mov dword [rsp + 0x220], eax
mov rax, qword [rsp + 0x78]
mov ecx, dword [rsp + 0x220]
mov dword [rax + 0x50], ecx
mov eax, dword [rsp + 0x220]
and eax, 1
mov dword [rsp + 0x210], eax
cmp dword [rsp + 0x210], 0
je 0x7a38be
mov rax, qword [rsp + 0x78]
mov eax, dword [rax + 0x50]
shr eax, 1
mov rcx, qword [rsp + 0x78]
mov dword [rcx + 0x50], eax
mov dword [rsp + 0x224], 1
jmp 0x7a38db
mov rax, qword [rsp + 0x78]
mov eax, dword [rax + 0x50]
shr eax, 1
mov rcx, qword [rsp + 0x78]
mov dword [rcx + 0x50], eax
mov dword [rsp + 0x224], 0
cmp dword [rsp + 0x224], 0
jne 0x7a3a69
mov rax, qword [rsp + 0x78]
cmp dword [rax + 0x64], 8
jge 0x7a3988
mov rax, qword [rsp + 0x78]
mov rax, qword [rax + 0x40]
inc rax
mov qword [rsp + 0x228], rax
mov rax, qword [rsp + 0x78]
mov rcx, qword [rsp + 0x228]
mov qword [rax + 0x40], rcx
mov rax, qword [rsp + 0x78]
mov rax, qword [rax + 0x38]
cmp qword [rsp + 0x228], rax
jne 0x7a3944
mov rax, qword [rsp + 0x78]
add rax, 0x28
mov rcx, rax
mov rax, qword [rsp + 0x78]
call qword [rax + 0x28]
mov rax, qword [rsp + 0x78]
mov rax, qword [rax + 0x40]
movzx eax, byte [rax]
mov rcx, qword [rsp + 0x78]
mov ecx, dword [rcx + 0x64]
shl eax, cl
mov rcx, qword [rsp + 0x78]
mov ecx, dword [rcx + 0x50]
or ecx, eax
mov eax, ecx
mov rcx, qword [rsp + 0x78]
mov dword [rcx + 0x50], eax
mov rax, qword [rsp + 0x78]
movsxd rax, dword [rax + 0x64]
add rax, 8
mov rcx, qword [rsp + 0x78]
mov dword [rcx + 0x64], eax
jmp 0x7a38e9
mov rax, qword [rsp + 0x78]
mov eax, dword [rax + 0x50]
mov dword [rsp + 0xf0], eax
mov rax, qword [rsp + 0x78]
cmp dword [rax + 0x64], 0x20
jle 0x7a39e1
mov rax, qword [rsp + 0x78]
mov eax, dword [rax + 0x64]
sub eax, 8
mov rcx, qword [rsp + 0x78]
mov dword [rcx + 0x64], eax
mov rax, qword [rsp + 0x78]
mov rax, qword [rax + 0x40]
movzx eax, byte [rax]
mov rcx, qword [rsp + 0x78]
movsxd rcx, dword [rcx + 0x64]
mov edx, 8
sub rdx, rcx
mov rcx, rdx
sar eax, cl
mov rcx, qword [rsp + 0x78]
mov dword [rcx + 0x50], eax
jmp 0x7a3a07
mov rax, qword [rsp + 0x78]
mov eax, dword [rax + 0x64]
sub eax, 8
mov rcx, qword [rsp + 0x78]
mov dword [rcx + 0x64], eax
mov rax, qword [rsp + 0x78]
mov eax, dword [rax + 0x50]
shr eax, 8
mov rcx, qword [rsp + 0x78]
mov dword [rcx + 0x50], eax
mov eax, dword [rsp + 0xf0]
and eax, 0xff
mov dword [rsp + 0xf0], eax
mov rax, qword [rsp + 0x78]
mov eax, dword [rax + 0x8dc]
cmp dword [rsp + 0xf0], eax
je 0x7a3a51
mov rax, qword [rsp + 0x78]
mov ecx, dword [rsp + 0xf0]
mov dword [rax + 0x8dc], ecx
mov rax, qword [rsp + 0x78]
mov dword [rax + 0x8e0], 0
jmp 0x7a3a69
mov rax, qword [rsp + 0x78]
mov eax, dword [rax + 0x8e0]
inc eax
mov rcx, qword [rsp + 0x78]
mov dword [rcx + 0x8e0], eax
mov eax, dword [rsp + 0xe0]
shl eax, 4
mov rcx, qword [rsp + 0x78]
mov ecx, dword [rcx + 0x8dc]
sar ecx, 4
add eax, ecx
mov dword [rsp + 0xe0], eax
mov rax, qword [rsp + 0x88]
mov ecx, dword [rsp + 0xe0]
mov dword [rax], ecx
mov eax, dword [rsp + 0x30]
imul eax, eax, 3
add eax, dword [rsp + 0xe0]
mov dword [rsp + 0x30], eax
mov rax, qword [rsp + 0x88]
add rax, 4
mov qword [rsp + 0x88], rax
mov eax, dword [rsp + 0xe8]
shl eax, 4
mov rcx, qword [rsp + 0x78]
mov ecx, dword [rcx + 0x8dc]
and ecx, 0xf
add eax, ecx
mov dword [rsp + 0xe8], eax
mov rax, qword [rsp + 0x88]
mov ecx, dword [rsp + 0xe8]
mov dword [rax], ecx
mov eax, dword [rsp + 0x30]
imul eax, eax, 3
add eax, dword [rsp + 0xe8]
mov dword [rsp + 0x30], eax
mov rax, qword [rsp + 0x88]
add rax, 4
mov qword [rsp + 0x88], rax
jmp 0x7a3ba4
mov eax, dword [rsp + 0x30]
imul eax, eax, 9
mov ecx, dword [rsp + 0xe0]
imul ecx, ecx, 3
mov edx, dword [rsp + 0xe8]
add edx, eax
mov eax, edx
add ecx, eax
mov eax, ecx
mov dword [rsp + 0x30], eax
mov eax, dword [rsp + 0x9c]
movzx ecx, al
mov eax, dword [rsp + 0xe0]
shl eax, cl
mov rcx, qword [rsp + 0x88]
mov dword [rcx], eax
mov rax, qword [rsp + 0x88]
add rax, 4
mov qword [rsp + 0x88], rax
mov eax, dword [rsp + 0x9c]
movzx ecx, al
mov eax, dword [rsp + 0xe8]
shl eax, cl
mov rcx, qword [rsp + 0x88]
mov dword [rcx], eax
mov rax, qword [rsp + 0x88]
add rax, 4
mov qword [rsp + 0x88], rax
jmp 0x7a2568
jmp 0x7a4355
mov rax, qword [rsp + 0x2b8]
mov qword [rsp + 0x88], rax
mov dword [rsp + 0x3c], 0
jmp 0x7a3bd2
mov eax, dword [rsp + 0x3c]
inc eax
mov dword [rsp + 0x3c], eax
mov eax, dword [rsp + 0x2c0]
cmp dword [rsp + 0x3c], eax
jae 0x7a4355
xor edx, edx
mov rcx, qword [rsp + 0x78]
call fcn.007a8ca0
mov dword [rsp + 0x60], eax
cmp dword [rsp + 0x60], 0x80000000
jne 0x7a3c02
jmp 0x7a4355
mov eax, dword [rsp + 0xb8]
cmp dword [rsp + 0xb4], eax
jg 0x7a3c78
mov eax, dword [rsp + 0xbc]
cmp dword [rsp + 0xb4], eax
jg 0x7a3c78
mov edx, 1
mov rcx, qword [rsp + 0x78]
call fcn.007a8ca0
shl eax, 1
mov ecx, dword [rsp + 0x60]
and ecx, 1
or eax, ecx
mov dword [rsp + 0x120], eax
mov eax, dword [rsp + 0x60]
mov ecx, dword [rsp + 0x120]
add ecx, eax
mov eax, ecx
sar eax, 1
mov dword [rsp + 0x118], eax
mov eax, dword [rsp + 0x60]
mov ecx, dword [rsp + 0x120]
sub ecx, eax
mov eax, ecx
sar eax, 1
mov dword [rsp + 0x11c], eax
jmp 0x7a3d14
mov eax, dword [rsp + 0xb8]
cmp dword [rsp + 0xbc], eax
jg 0x7a3ccf
mov edx, 1
mov rcx, qword [rsp + 0x78]
call fcn.007a8ca0
mov dword [rsp + 0x118], eax
mov eax, dword [rsp + 0x60]
mov ecx, dword [rsp + 0x118]
sub ecx, eax
mov eax, ecx
mov dword [rsp + 0x11c], eax
mov eax, dword [rsp + 0x11c]
mov ecx, dword [rsp + 0x118]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0x120], eax
jmp 0x7a3d14
mov edx, 1
mov rcx, qword [rsp + 0x78]
call fcn.007a8ca0
mov dword [rsp + 0x11c], eax
mov eax, dword [rsp + 0x11c]
mov ecx, dword [rsp + 0x60]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0x118], eax
mov eax, dword [rsp + 0x118]
mov ecx, dword [rsp + 0x11c]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0x120], eax
mov eax, dword [rsp + 0xb4]
sar eax, 8
mov ecx, dword [rsp + 0xb4]
sub ecx, eax
mov eax, ecx
mov dword [rsp + 0x230], eax
mov ecx, dword [rsp + 0x120]
sar ecx, 1
call fcn.00781830
mov ecx, dword [rsp + 0x230]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0xb4], eax
mov eax, dword [rsp + 0xbc]
sar eax, 8
mov ecx, dword [rsp + 0xbc]
sub ecx, eax
mov eax, ecx
mov dword [rsp + 0x234], eax
mov ecx, dword [rsp + 0x118]
call fcn.00781830
mov ecx, dword [rsp + 0x234]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0xbc], eax
mov eax, dword [rsp + 0xb8]
sar eax, 8
mov ecx, dword [rsp + 0xb8]
sub ecx, eax
mov eax, ecx
mov dword [rsp + 0x238], eax
mov ecx, dword [rsp + 0x11c]
call fcn.00781830
mov ecx, dword [rsp + 0x238]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0xb8], eax
mov eax, dword [rsp + 0x24]
imul eax, dword [rsp + 0x50]
add eax, 0x80
sar eax, 8
mov ecx, dword [rsp + 0x20]
add ecx, eax
mov eax, ecx
add eax, dword [rsp + 0x118]
mov dword [rsp + 0x114], eax
mov eax, dword [rsp + 0x2c]
imul eax, dword [rsp + 0x54]
add eax, 0x80
sar eax, 8
mov ecx, dword [rsp + 0x28]
add ecx, eax
mov eax, ecx
add eax, dword [rsp + 0x11c]
mov dword [rsp + 0x110], eax
cmp dword [rsp + 0x24], 0
jl 0x7a3e26
mov dword [rsp + 0x23c], 1
jmp 0x7a3e31
mov dword [rsp + 0x23c], 0
cmp dword [rsp + 0x118], 0
jle 0x7a3e48
mov dword [rsp + 0x240], 1
jmp 0x7a3e53
mov dword [rsp + 0x240], 0
mov eax, dword [rsp + 0x240]
cmp dword [rsp + 0x23c], eax
jne 0x7a3e84
mov eax, dword [rsp + 0x50]
mov ecx, dword [rsp + 0x50]
inc ecx
mov dword [rsp + 0x50], ecx
cmp eax, 0x100
jne 0x7a3e82
mov eax, dword [rsp + 0x50]
dec eax
mov dword [rsp + 0x50], eax
jmp 0x7a3ea0
mov eax, dword [rsp + 0x50]
mov ecx, dword [rsp + 0x50]
dec ecx
mov dword [rsp + 0x50], ecx
test eax, eax
jne 0x7a3ea0
mov eax, dword [rsp + 0x50]
inc eax
mov dword [rsp + 0x50], eax
cmp dword [rsp + 0x2c], 0
jl 0x7a3eb4
mov dword [rsp + 0x244], 1
jmp 0x7a3ebf
mov dword [rsp + 0x244], 0
cmp dword [rsp + 0x11c], 0
jle 0x7a3ed6
mov dword [rsp + 0x248], 1
jmp 0x7a3ee1
mov dword [rsp + 0x248], 0
mov eax, dword [rsp + 0x248]
cmp dword [rsp + 0x244], eax
jne 0x7a3f12
mov eax, dword [rsp + 0x54]
mov ecx, dword [rsp + 0x54]
inc ecx
mov dword [rsp + 0x54], ecx
cmp eax, 0x100
jne 0x7a3f10
mov eax, dword [rsp + 0x54]
dec eax
mov dword [rsp + 0x54], eax
jmp 0x7a3f2e
mov eax, dword [rsp + 0x54]
mov ecx, dword [rsp + 0x54]
dec ecx
mov dword [rsp + 0x54], ecx
test eax, eax
jne 0x7a3f2e
mov eax, dword [rsp + 0x54]
inc eax
mov dword [rsp + 0x54], eax
mov eax, dword [rsp + 0x20]
mov ecx, dword [rsp + 0x114]
sub ecx, eax
mov eax, ecx
mov dword [rsp + 0x24], eax
mov eax, dword [rsp + 0x24]
mov ecx, dword [rsp + 0x20]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0x20], eax
mov eax, dword [rsp + 0x28]
mov ecx, dword [rsp + 0x110]
sub ecx, eax
mov eax, ecx
mov dword [rsp + 0x2c], eax
mov eax, dword [rsp + 0x2c]
mov ecx, dword [rsp + 0x28]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0x28], eax
mov eax, dword [rsp + 0x38]
and eax, 0x40
test eax, eax
je 0x7a42d6
mov rax, qword [rsp + 0x78]
cmp dword [rax + 0x8e0], 8
jl 0x7a40aa
mov rax, qword [rsp + 0x78]
cmp dword [rax + 0x64], 0
je 0x7a3fc9
mov rax, qword [rsp + 0x78]
mov eax, dword [rax + 0x64]
dec eax
mov rcx, qword [rsp + 0x78]
mov dword [rcx + 0x64], eax
mov rax, qword [rsp + 0x78]
mov eax, dword [rax + 0x50]
and eax, 1
mov dword [rsp + 0x24c], eax
jmp 0x7a4056
mov rax, qword [rsp + 0x78]
mov rax, qword [rax + 0x40]
inc rax
mov qword [rsp + 0x250], rax
mov rax, qword [rsp + 0x78]
mov rcx, qword [rsp + 0x250]
mov qword [rax + 0x40], rcx
mov rax, qword [rsp + 0x78]
mov rax, qword [rax + 0x38]
cmp qword [rsp + 0x250], rax
je 0x7a4003
jmp 0x7a4017
mov rax, qword [rsp + 0x78]
add rax, 0x28
mov rcx, rax
mov rax, qword [rsp + 0x78]
call qword [rax + 0x28]
mov rax, qword [rsp + 0x78]
mov dword [rax + 0x64], 7
mov rax, qword [rsp + 0x78]
mov rax, qword [rax + 0x40]
movzx eax, byte [rax]
mov dword [rsp + 0x258], eax
mov rax, qword [rsp + 0x78]
mov ecx, dword [rsp + 0x258]
mov dword [rax + 0x50], ecx
mov eax, dword [rsp + 0x258]
and eax, 1
mov dword [rsp + 0x24c], eax
cmp dword [rsp + 0x24c], 0
je 0x7a407f
mov rax, qword [rsp + 0x78]
mov eax, dword [rax + 0x50]
shr eax, 1
mov rcx, qword [rsp + 0x78]
mov dword [rcx + 0x50], eax
mov dword [rsp + 0x25c], 1
jmp 0x7a409c
mov rax, qword [rsp + 0x78]
mov eax, dword [rax + 0x50]
shr eax, 1
mov rcx, qword [rsp + 0x78]
mov dword [rcx + 0x50], eax
mov dword [rsp + 0x25c], 0
cmp dword [rsp + 0x25c], 0
jne 0x7a422a
mov rax, qword [rsp + 0x78]
cmp dword [rax + 0x64], 8
jge 0x7a4149
mov rax, qword [rsp + 0x78]
mov rax, qword [rax + 0x40]
inc rax
mov qword [rsp + 0x260], rax
mov rax, qword [rsp + 0x78]
mov rcx, qword [rsp + 0x260]
mov qword [rax + 0x40], rcx
mov rax, qword [rsp + 0x78]
mov rax, qword [rax + 0x38]
cmp qword [rsp + 0x260], rax
jne 0x7a4105
mov rax, qword [rsp + 0x78]
add rax, 0x28
mov rcx, rax
mov rax, qword [rsp + 0x78]
call qword [rax + 0x28]
mov rax, qword [rsp + 0x78]
mov rax, qword [rax + 0x40]
movzx eax, byte [rax]
mov rcx, qword [rsp + 0x78]
mov ecx, dword [rcx + 0x64]
shl eax, cl
mov rcx, qword [rsp + 0x78]
mov ecx, dword [rcx + 0x50]
or ecx, eax
mov eax, ecx
mov rcx, qword [rsp + 0x78]
mov dword [rcx + 0x50], eax
mov rax, qword [rsp + 0x78]
movsxd rax, dword [rax + 0x64]
add rax, 8
mov rcx, qword [rsp + 0x78]
mov dword [rcx + 0x64], eax
jmp 0x7a40aa
mov rax, qword [rsp + 0x78]
mov eax, dword [rax + 0x50]
mov dword [rsp + 0x124], eax
mov rax, qword [rsp + 0x78]
cmp dword [rax + 0x64], 0x20
jle 0x7a41a2
mov rax, qword [rsp + 0x78]
mov eax, dword [rax + 0x64]
sub eax, 8
mov rcx, qword [rsp + 0x78]
mov dword [rcx + 0x64], eax
mov rax, qword [rsp + 0x78]
mov rax, qword [rax + 0x40]
movzx eax, byte [rax]
mov rcx, qword [rsp + 0x78]
movsxd rcx, dword [rcx + 0x64]
mov edx, 8
sub rdx, rcx
mov rcx, rdx
sar eax, cl
mov rcx, qword [rsp + 0x78]
mov dword [rcx + 0x50], eax
jmp 0x7a41c8
mov rax, qword [rsp + 0x78]
mov eax, dword [rax + 0x64]
sub eax, 8
mov rcx, qword [rsp + 0x78]
mov dword [rcx + 0x64], eax
mov rax, qword [rsp + 0x78]
mov eax, dword [rax + 0x50]
shr eax, 8
mov rcx, qword [rsp + 0x78]
mov dword [rcx + 0x50], eax
mov eax, dword [rsp + 0x124]
and eax, 0xff
mov dword [rsp + 0x124], eax
mov rax, qword [rsp + 0x78]
mov eax, dword [rax + 0x8dc]
cmp dword [rsp + 0x124], eax
je 0x7a4212
mov rax, qword [rsp + 0x78]
mov ecx, dword [rsp + 0x124]
mov dword [rax + 0x8dc], ecx
mov rax, qword [rsp + 0x78]
mov dword [rax + 0x8e0], 0
jmp 0x7a422a
mov rax, qword [rsp + 0x78]
mov eax, dword [rax + 0x8e0]
inc eax
mov rcx, qword [rsp + 0x78]
mov dword [rcx + 0x8e0], eax
mov eax, dword [rsp + 0x20]
shl eax, 4
mov rcx, qword [rsp + 0x78]
mov ecx, dword [rcx + 0x8dc]
sar ecx, 4
add eax, ecx
mov dword [rsp + 0x114], eax
mov rax, qword [rsp + 0x88]
mov ecx, dword [rsp + 0x114]
mov dword [rax], ecx
mov eax, dword [rsp + 0x30]
imul eax, eax, 3
add eax, dword [rsp + 0x114]
mov dword [rsp + 0x30], eax
mov rax, qword [rsp + 0x88]
add rax, 4
mov qword [rsp + 0x88], rax
mov eax, dword [rsp + 0x28]
shl eax, 4
mov rcx, qword [rsp + 0x78]
mov ecx, dword [rcx + 0x8dc]
and ecx, 0xf
add eax, ecx
mov dword [rsp + 0x110], eax
mov rax, qword [rsp + 0x88]
mov ecx, dword [rsp + 0x110]
mov dword [rax], ecx
mov eax, dword [rsp + 0x30]
imul eax, eax, 3
add eax, dword [rsp + 0x110]
mov dword [rsp + 0x30], eax
mov rax, qword [rsp + 0x88]
add rax, 4
mov qword [rsp + 0x88], rax
jmp 0x7a4350
mov eax, dword [rsp + 0x30]
imul eax, eax, 9
mov ecx, dword [rsp + 0x20]
imul ecx, ecx, 3
mov edx, dword [rsp + 0x28]
add edx, eax
mov eax, edx
add ecx, eax
mov eax, ecx
mov dword [rsp + 0x30], eax
mov eax, dword [rsp + 0x9c]
movzx ecx, al
mov eax, dword [rsp + 0x20]
shl eax, cl
mov rcx, qword [rsp + 0x88]
mov dword [rcx], eax
mov rax, qword [rsp + 0x88]
add rax, 4
mov qword [rsp + 0x88], rax
mov eax, dword [rsp + 0x9c]
movzx ecx, al
mov eax, dword [rsp + 0x28]
shl eax, cl
mov rcx, qword [rsp + 0x88]
mov dword [rcx], eax
mov rax, qword [rsp + 0x88]
add rax, 4
mov qword [rsp + 0x88], rax
jmp 0x7a3bc8
mov rax, qword [rsp + 0x78]
mov ecx, dword [rsp + 0xbc]
mov dword [rax + 0x8d0], ecx
mov rax, qword [rsp + 0x78]
mov ecx, dword [rsp + 0xb8]
mov dword [rax + 0x8d4], ecx
mov rax, qword [rsp + 0x78]
mov ecx, dword [rsp + 0xb4]
mov dword [rax + 0x8cc], ecx
mov rax, qword [rsp + 0x78]
mov ecx, dword [rsp + 0xc0]
mov dword [rax + 0x8d8], ecx
jmp 0x7a5aba
mov rax, qword [rsp + 0x78]
movsx eax, word [rax + 8]
cmp eax, 3
jne 0x7a4aa9
mov rax, qword [rsp + 0x78]
movsx eax, word [rax + 0xa]
test eax, eax
je 0x7a4aa9
mov eax, dword [rsp + 0x38]
and eax, 1
test eax, eax
je 0x7a4aa9
mov eax, dword [rsp + 0x38]
and eax, 2
test eax, eax
je 0x7a4520
mov rax, qword [rsp + 0x2b8]
mov qword [rsp + 0x88], rax
mov dword [rsp + 0x3c], 0
jmp 0x7a4407
mov eax, dword [rsp + 0x3c]
inc eax
mov dword [rsp + 0x3c], eax
mov eax, dword [rsp + 0x2c0]
cmp dword [rsp + 0x3c], eax
jae 0x7a451b
xor edx, edx
mov rcx, qword [rsp + 0x78]
call fcn.007a8ca0
mov dword [rsp + 0x60], eax
cmp dword [rsp + 0x60], 0x80000000
jne 0x7a4437
jmp 0x7a451b
mov eax, dword [rsp + 0x60]
mov ecx, dword [rsp + 0x24]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0x24], eax
mov eax, dword [rsp + 0x24]
mov ecx, dword [rsp + 0x20]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0x20], eax
mov eax, dword [rsp + 0x30]
imul eax, eax, 3
add eax, dword [rsp + 0x20]
mov dword [rsp + 0x30], eax
mov eax, dword [rsp + 0x48]
cmp dword [rsp + 0x20], eax
jge 0x7a44a8
mov eax, dword [rsp + 0x34]
neg eax
cmp dword [rsp + 0x20], eax
jge 0x7a4484
mov dword [rsp + 0x70], 1
mov rax, qword [rsp + 0x88]
mov ecx, dword [rsp + 0x5c]
mov dword [rax], ecx
mov rax, qword [rsp + 0x88]
add rax, 4
mov qword [rsp + 0x88], rax
jmp 0x7a4516
mov eax, dword [rsp + 0x58]
cmp dword [rsp + 0x20], eax
jle 0x7a44e8
mov eax, dword [rsp + 0x34]
cmp dword [rsp + 0x20], eax
jle 0x7a44c4
mov dword [rsp + 0x70], 1
mov rax, qword [rsp + 0x88]
mov ecx, dword [rsp + 0x68]
mov dword [rax], ecx
mov rax, qword [rsp + 0x88]
add rax, 4
mov qword [rsp + 0x88], rax
jmp 0x7a4516
mov eax, dword [rsp + 0x9c]
movzx ecx, al
mov eax, dword [rsp + 0x20]
shl eax, cl
mov rcx, qword [rsp + 0x88]
mov dword [rcx], eax
mov rax, qword [rsp + 0x88]
add rax, 4
mov qword [rsp + 0x88], rax
jmp 0x7a43fd
jmp 0x7a4aa4
mov eax, dword [rsp + 0x38]
and eax, 0x410
test eax, eax
je 0x7a48bf
mov rax, qword [rsp + 0x2b8]
mov qword [rsp + 0x88], rax
mov dword [rsp + 0x3c], 0
jmp 0x7a4555
mov eax, dword [rsp + 0x3c]
inc eax
mov dword [rsp + 0x3c], eax
mov eax, dword [rsp + 0x2c0]
cmp dword [rsp + 0x3c], eax
jae 0x7a48ba
mov eax, dword [rsp + 0x38]
and eax, 0x400
test eax, eax
je 0x7a4590
lea r8, [rsp + 0x90]
xor edx, edx
mov rcx, qword [rsp + 0x78]
call fcn.007a9500
mov dword [rsp + 0x268], eax
jmp 0x7a45a3
xor edx, edx
mov rcx, qword [rsp + 0x78]
call fcn.007a8ca0
mov dword [rsp + 0x268], eax
mov eax, dword [rsp + 0x268]
mov dword [rsp + 0x60], eax
cmp dword [rsp + 0x60], 0x80000000
jne 0x7a45bd
jmp 0x7a48ba
mov rax, qword [rsp + 0x78]
mov eax, dword [rax + 0xbc]
mov dword [rsp + 0x64], eax
mov rax, qword [rsp + 0x78]
add rax, 0x90c
mov qword [rsp + 0x40], rax
jmp 0x7a45ec
mov rax, qword [rsp + 0x40]
add rax, 0x60
mov qword [rsp + 0x40], rax
mov eax, dword [rsp + 0x64]
mov ecx, dword [rsp + 0x64]
dec ecx
mov dword [rsp + 0x64], ecx
test eax, eax
je 0x7a4729
movsxd rax, dword [rsp + 0x98]
mov rcx, qword [rsp + 0x40]
mov eax, dword [rcx + rax*4 + 0x10]
mov dword [rsp + 0x12c], eax
mov eax, dword [rsp + 0x12c]
and eax, 0xffff
mov rcx, qword [rsp + 0x40]
imul eax, dword [rcx + 8]
sar eax, 7
mov ecx, dword [rsp + 0x12c]
and ecx, 0xffff0000
sar ecx, 7
mov rdx, qword [rsp + 0x40]
imul ecx, dword [rdx + 8]
lea eax, [rax + rcx + 1]
sar eax, 1
add eax, dword [rsp + 0x60]
mov dword [rsp + 0x128], eax
cmp dword [rsp + 0x12c], 0
je 0x7a46f5
cmp dword [rsp + 0x60], 0
je 0x7a46f5
mov eax, dword [rsp + 0x60]
mov ecx, dword [rsp + 0x12c]
xor ecx, eax
mov eax, ecx
test eax, eax
jl 0x7a46bd
mov rax, qword [rsp + 0x40]
mov eax, dword [rax + 8]
mov rcx, qword [rsp + 0x40]
mov ecx, dword [rcx + 8]
inc ecx
mov rdx, qword [rsp + 0x40]
mov dword [rdx + 8], ecx
cmp eax, 0x100
jne 0x7a46bb
mov rax, qword [rsp + 0x40]
mov eax, dword [rax + 8]
dec eax
mov rcx, qword [rsp + 0x40]
mov dword [rcx + 8], eax
jmp 0x7a46f5
mov rax, qword [rsp + 0x40]
mov eax, dword [rax + 8]
mov ecx, dword [rsp + 0x80]
mov rdx, qword [rsp + 0x40]
mov edx, dword [rdx + 8]
dec edx
mov r8, qword [rsp + 0x40]
mov dword [r8 + 8], edx
cmp eax, ecx
jne 0x7a46f5
mov rax, qword [rsp + 0x40]
mov eax, dword [rax + 8]
inc eax
mov rcx, qword [rsp + 0x40]
mov dword [rcx + 8], eax
mov eax, dword [rsp + 0x128]
mov dword [rsp + 0x60], eax
mov rax, qword [rsp + 0x40]
mov eax, dword [rax]
mov ecx, dword [rsp + 0x98]
add ecx, eax
mov eax, ecx
and eax, 7
cdqe
mov rcx, qword [rsp + 0x40]
mov edx, dword [rsp + 0x60]
mov dword [rcx + rax*4 + 0x10], edx
jmp 0x7a45de
mov eax, dword [rsp + 0x98]
inc eax
and eax, 7
mov dword [rsp + 0x98], eax
mov eax, dword [rsp + 0x38]
and eax, 0x80
test eax, eax
je 0x7a47f6
mov eax, dword [rsp + 0x38]
and eax, 0x100
test eax, eax
je 0x7a47a1
mov rax, qword [rsp + 0x78]
mov eax, dword [rax + 0x8e8]
mov ecx, dword [rsp + 0x90]
add ecx, eax
mov eax, ecx
mov ecx, dword [rsp + 0x60]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0x60], eax
mov eax, dword [rsp + 0x30]
imul eax, eax, 3
add eax, dword [rsp + 0x60]
mov dword [rsp + 0x30], eax
mov eax, dword [rsp + 0x90]
neg eax
mov rcx, qword [rsp + 0x78]
mov dword [rcx + 0x8e8], eax
jmp 0x7a47c3
mov eax, dword [rsp + 0x90]
mov ecx, dword [rsp + 0x60]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0x60], eax
mov eax, dword [rsp + 0x30]
imul eax, eax, 3
add eax, dword [rsp + 0x60]
mov dword [rsp + 0x30], eax
mov eax, dword [rsp + 0x9c]
movzx ecx, al
mov eax, dword [rsp + 0x60]
shl eax, cl
mov rcx, qword [rsp + 0x88]
mov dword [rcx], eax
mov rax, qword [rsp + 0x88]
add rax, 4
mov qword [rsp + 0x88], rax
jmp 0x7a48b5
mov eax, dword [rsp + 0x30]
imul eax, eax, 3
add eax, dword [rsp + 0x60]
mov dword [rsp + 0x30], eax
mov eax, dword [rsp + 0x48]
cmp dword [rsp + 0x60], eax
jge 0x7a4847
mov eax, dword [rsp + 0x34]
neg eax
cmp dword [rsp + 0x60], eax
jge 0x7a4823
mov dword [rsp + 0x70], 1
mov rax, qword [rsp + 0x88]
mov ecx, dword [rsp + 0x5c]
mov dword [rax], ecx
mov rax, qword [rsp + 0x88]
add rax, 4
mov qword [rsp + 0x88], rax
jmp 0x7a48b5
mov eax, dword [rsp + 0x58]
cmp dword [rsp + 0x60], eax
jle 0x7a4887
mov eax, dword [rsp + 0x34]
cmp dword [rsp + 0x60], eax
jle 0x7a4863
mov dword [rsp + 0x70], 1
mov rax, qword [rsp + 0x88]
mov ecx, dword [rsp + 0x68]
mov dword [rax], ecx
mov rax, qword [rsp + 0x88]
add rax, 4
mov qword [rsp + 0x88], rax
jmp 0x7a48b5
mov eax, dword [rsp + 0x9c]
movzx ecx, al
mov eax, dword [rsp + 0x60]
shl eax, cl
mov rcx, qword [rsp + 0x88]
mov dword [rcx], eax
mov rax, qword [rsp + 0x88]
add rax, 4
mov qword [rsp + 0x88], rax
jmp 0x7a454b
jmp 0x7a4aa4
mov rax, qword [rsp + 0x2b8]
mov qword [rsp + 0x88], rax
mov dword [rsp + 0x3c], 0
jmp 0x7a48e3
mov eax, dword [rsp + 0x3c]
inc eax
mov dword [rsp + 0x3c], eax
mov eax, dword [rsp + 0x2c0]
cmp dword [rsp + 0x3c], eax
jae 0x7a4aa4
xor edx, edx
mov rcx, qword [rsp + 0x78]
call fcn.007a8ca0
mov dword [rsp + 0x60], eax
cmp dword [rsp + 0x60], 0x80000000
jne 0x7a4913
jmp 0x7a4aa4
mov eax, dword [rsp + 0x24]
imul eax, dword [rsp + 0x50]
add eax, 0x80
sar eax, 8
mov ecx, dword [rsp + 0x20]
add ecx, eax
mov eax, ecx
add eax, dword [rsp + 0x60]
mov dword [rsp + 0x130], eax
cmp dword [rsp + 0x24], 0
jl 0x7a494b
mov dword [rsp + 0x26c], 1
jmp 0x7a4956
mov dword [rsp + 0x26c], 0
cmp dword [rsp + 0x60], 0
jle 0x7a496a
mov dword [rsp + 0x270], 1
jmp 0x7a4975
mov dword [rsp + 0x270], 0
mov eax, dword [rsp + 0x270]
cmp dword [rsp + 0x26c], eax
jne 0x7a49a6
mov eax, dword [rsp + 0x50]
mov ecx, dword [rsp + 0x50]
inc ecx
mov dword [rsp + 0x50], ecx
cmp eax, 0x100
jne 0x7a49a4
mov eax, dword [rsp + 0x50]
dec eax
mov dword [rsp + 0x50], eax
jmp 0x7a49c2
mov eax, dword [rsp + 0x50]
mov ecx, dword [rsp + 0x50]
dec ecx
mov dword [rsp + 0x50], ecx
test eax, eax
jne 0x7a49c2
mov eax, dword [rsp + 0x50]
inc eax
mov dword [rsp + 0x50], eax
mov eax, dword [rsp + 0x20]
mov ecx, dword [rsp + 0x130]
sub ecx, eax
mov eax, ecx
mov dword [rsp + 0x24], eax
mov eax, dword [rsp + 0x130]
mov dword [rsp + 0x20], eax
mov eax, dword [rsp + 0x30]
imul eax, eax, 3
add eax, dword [rsp + 0x20]
mov dword [rsp + 0x30], eax
mov eax, dword [rsp + 0x48]
cmp dword [rsp + 0x20], eax
jge 0x7a4a31
mov eax, dword [rsp + 0x34]
neg eax
cmp dword [rsp + 0x20], eax
jge 0x7a4a0d
mov dword [rsp + 0x70], 1
mov rax, qword [rsp + 0x88]
mov ecx, dword [rsp + 0x5c]
mov dword [rax], ecx
mov rax, qword [rsp + 0x88]
add rax, 4
mov qword [rsp + 0x88], rax
jmp 0x7a4a9f
mov eax, dword [rsp + 0x58]
cmp dword [rsp + 0x20], eax
jle 0x7a4a71
mov eax, dword [rsp + 0x34]
cmp dword [rsp + 0x20], eax
jle 0x7a4a4d
mov dword [rsp + 0x70], 1
mov rax, qword [rsp + 0x88]
mov ecx, dword [rsp + 0x68]
mov dword [rax], ecx
mov rax, qword [rsp + 0x88]
add rax, 4
mov qword [rsp + 0x88], rax
jmp 0x7a4a9f
mov eax, dword [rsp + 0x9c]
movzx ecx, al
mov eax, dword [rsp + 0x20]
shl eax, cl
mov rcx, qword [rsp + 0x88]
mov dword [rcx], eax
mov rax, qword [rsp + 0x88]
add rax, 4
mov qword [rsp + 0x88], rax
jmp 0x7a48d9
jmp 0x7a5aba
mov rax, qword [rsp + 0x78]
movsx eax, word [rax + 8]
cmp eax, 3
jne 0x7a577a
mov rax, qword [rsp + 0x78]
movsx eax, word [rax + 0xa]
test eax, eax
je 0x7a577a
mov eax, dword [rsp + 0x38]
and eax, 1
test eax, eax
jne 0x7a577a
mov eax, dword [rsp + 0x38]
and eax, 2
test eax, eax
je 0x7a4d11
mov rax, qword [rsp + 0x2b8]
mov qword [rsp + 0x88], rax
mov dword [rsp + 0x3c], 0
jmp 0x7a4b0e
mov eax, dword [rsp + 0x3c]
inc eax
mov dword [rsp + 0x3c], eax
mov eax, dword [rsp + 0x2c0]
cmp dword [rsp + 0x3c], eax
jae 0x7a4d0c
xor edx, edx
mov rcx, qword [rsp + 0x78]
call fcn.007a8ca0
mov dword [rsp + 0x60], eax
cmp dword [rsp + 0x60], 0x80000000
jne 0x7a4b3e
jmp 0x7a4d0c
mov eax, dword [rsp + 0x60]
mov ecx, dword [rsp + 0x24]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0x24], eax
mov eax, dword [rsp + 0x24]
mov ecx, dword [rsp + 0x20]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0x20], eax
mov eax, dword [rsp + 0x30]
imul eax, eax, 3
add eax, dword [rsp + 0x20]
mov dword [rsp + 0x30], eax
mov eax, dword [rsp + 0x48]
cmp dword [rsp + 0x20], eax
jge 0x7a4baf
mov eax, dword [rsp + 0x34]
neg eax
cmp dword [rsp + 0x20], eax
jge 0x7a4b8b
mov dword [rsp + 0x70], 1
mov rax, qword [rsp + 0x88]
mov ecx, dword [rsp + 0x5c]
mov dword [rax], ecx
mov rax, qword [rsp + 0x88]
add rax, 4
mov qword [rsp + 0x88], rax
jmp 0x7a4c1d
mov eax, dword [rsp + 0x58]
cmp dword [rsp + 0x20], eax
jle 0x7a4bef
mov eax, dword [rsp + 0x34]
cmp dword [rsp + 0x20], eax
jle 0x7a4bcb
mov dword [rsp + 0x70], 1
mov rax, qword [rsp + 0x88]
mov ecx, dword [rsp + 0x68]
mov dword [rax], ecx
mov rax, qword [rsp + 0x88]
add rax, 4
mov qword [rsp + 0x88], rax
jmp 0x7a4c1d
mov eax, dword [rsp + 0x9c]
movzx ecx, al
mov eax, dword [rsp + 0x20]
shl eax, cl
mov rcx, qword [rsp + 0x88]
mov dword [rcx], eax
mov rax, qword [rsp + 0x88]
add rax, 4
mov qword [rsp + 0x88], rax
mov edx, 1
mov rcx, qword [rsp + 0x78]
call fcn.007a8ca0
mov ecx, dword [rsp + 0x2c]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0x2c], eax
mov eax, dword [rsp + 0x2c]
mov ecx, dword [rsp + 0x28]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0x28], eax
mov eax, dword [rsp + 0x30]
imul eax, eax, 3
add eax, dword [rsp + 0x28]
mov dword [rsp + 0x30], eax
mov eax, dword [rsp + 0x48]
cmp dword [rsp + 0x28], eax
jge 0x7a4c99
mov eax, dword [rsp + 0x34]
neg eax
cmp dword [rsp + 0x28], eax
jge 0x7a4c75
mov dword [rsp + 0x70], 1
mov rax, qword [rsp + 0x88]
mov ecx, dword [rsp + 0x5c]
mov dword [rax], ecx
mov rax, qword [rsp + 0x88]
add rax, 4
mov qword [rsp + 0x88], rax
jmp 0x7a4d07
mov eax, dword [rsp + 0x58]
cmp dword [rsp + 0x28], eax
jle 0x7a4cd9
mov eax, dword [rsp + 0x34]
cmp dword [rsp + 0x28], eax
jle 0x7a4cb5
mov dword [rsp + 0x70], 1
mov rax, qword [rsp + 0x88]
mov ecx, dword [rsp + 0x68]
mov dword [rax], ecx
mov rax, qword [rsp + 0x88]
add rax, 4
mov qword [rsp + 0x88], rax
jmp 0x7a4d07
mov eax, dword [rsp + 0x9c]
movzx ecx, al
mov eax, dword [rsp + 0x28]
shl eax, cl
mov rcx, qword [rsp + 0x88]
mov dword [rcx], eax
mov rax, qword [rsp + 0x88]
add rax, 4
mov qword [rsp + 0x88], rax
jmp 0x7a4b04
jmp 0x7a5775
mov eax, dword [rsp + 0x38]
and eax, 0x410
test eax, eax
je 0x7a53f1
mov rax, qword [rsp + 0x2b8]
mov qword [rsp + 0x88], rax
mov dword [rsp + 0x3c], 0
jmp 0x7a4d46
mov eax, dword [rsp + 0x3c]
inc eax
mov dword [rsp + 0x3c], eax
mov eax, dword [rsp + 0x2c0]
cmp dword [rsp + 0x3c], eax
jae 0x7a53ec
mov eax, dword [rsp + 0x38]
and eax, 0x400
test eax, eax
je 0x7a4da2
lea r8, [rsp + 0x90]
xor edx, edx
mov rcx, qword [rsp + 0x78]
call fcn.007a9500
mov dword [rsp + 0x13c], eax
lea rax, [rsp + 0x94]
mov r8, rax
mov edx, 1
mov rcx, qword [rsp + 0x78]
call fcn.007a9500
mov dword [rsp + 0x140], eax
jmp 0x7a4dcb
xor edx, edx
mov rcx, qword [rsp + 0x78]
call fcn.007a8ca0
mov dword [rsp + 0x13c], eax
mov edx, 1
mov rcx, qword [rsp + 0x78]
call fcn.007a8ca0
mov dword [rsp + 0x140], eax
cmp dword [rsp + 0x13c], 0x80000000
jne 0x7a4ddd
jmp 0x7a53ec
mov rax, qword [rsp + 0x78]
mov eax, dword [rax + 0xbc]
mov dword [rsp + 0x64], eax
mov rax, qword [rsp + 0x78]
add rax, 0x90c
mov qword [rsp + 0x40], rax
jmp 0x7a4e0c
mov rax, qword [rsp + 0x40]
add rax, 0x60
mov qword [rsp + 0x40], rax
mov eax, dword [rsp + 0x64]
mov ecx, dword [rsp + 0x64]
dec ecx
mov dword [rsp + 0x64], ecx
test eax, eax
je 0x7a5087
movsxd rax, dword [rsp + 0x98]
mov rcx, qword [rsp + 0x40]
mov eax, dword [rcx + rax*4 + 0x10]
mov dword [rsp + 0x150], eax
movsxd rax, dword [rsp + 0x98]
mov rcx, qword [rsp + 0x40]
mov eax, dword [rcx + rax*4 + 0x30]
mov dword [rsp + 0x14c], eax
mov rax, qword [rsp + 0x40]
mov eax, dword [rax]
mov ecx, dword [rsp + 0x98]
add ecx, eax
mov eax, ecx
and eax, 7
mov dword [rsp + 0x154], eax
mov eax, dword [rsp + 0x150]
and eax, 0xffff
mov rcx, qword [rsp + 0x40]
imul eax, dword [rcx + 8]
sar eax, 7
mov ecx, dword [rsp + 0x150]
and ecx, 0xffff0000
sar ecx, 7
mov rdx, qword [rsp + 0x40]
imul ecx, dword [rdx + 8]
lea eax, [rax + rcx + 1]
sar eax, 1
add eax, dword [rsp + 0x13c]
mov dword [rsp + 0x138], eax
cmp dword [rsp + 0x150], 0
je 0x7a4f52
cmp dword [rsp + 0x13c], 0
je 0x7a4f52
mov eax, dword [rsp + 0x13c]
mov ecx, dword [rsp + 0x150]
xor ecx, eax
mov eax, ecx
test eax, eax
jl 0x7a4f1a
mov rax, qword [rsp + 0x40]
mov eax, dword [rax + 8]
mov rcx, qword [rsp + 0x40]
mov ecx, dword [rcx + 8]
inc ecx
mov rdx, qword [rsp + 0x40]
mov dword [rdx + 8], ecx
cmp eax, 0x100
jne 0x7a4f18
mov rax, qword [rsp + 0x40]
mov eax, dword [rax + 8]
dec eax
mov rcx, qword [rsp + 0x40]
mov dword [rcx + 8], eax
jmp 0x7a4f52
mov rax, qword [rsp + 0x40]
mov eax, dword [rax + 8]
mov ecx, dword [rsp + 0x80]
mov rdx, qword [rsp + 0x40]
mov edx, dword [rdx + 8]
dec edx
mov r8, qword [rsp + 0x40]
mov dword [r8 + 8], edx
cmp eax, ecx
jne 0x7a4f52
mov rax, qword [rsp + 0x40]
mov eax, dword [rax + 8]
inc eax
mov rcx, qword [rsp + 0x40]
mov dword [rcx + 8], eax
mov eax, dword [rsp + 0x138]
mov dword [rsp + 0x13c], eax
movsxd rax, dword [rsp + 0x154]
mov rcx, qword [rsp + 0x40]
mov edx, dword [rsp + 0x13c]
mov dword [rcx + rax*4 + 0x10], edx
mov eax, dword [rsp + 0x14c]
and eax, 0xffff
mov rcx, qword [rsp + 0x40]
imul eax, dword [rcx + 0xc]
sar eax, 7
mov ecx, dword [rsp + 0x14c]
and ecx, 0xffff0000
sar ecx, 7
mov rdx, qword [rsp + 0x40]
imul ecx, dword [rdx + 0xc]
lea eax, [rax + rcx + 1]
sar eax, 1
add eax, dword [rsp + 0x140]
mov dword [rsp + 0x134], eax
cmp dword [rsp + 0x14c], 0
je 0x7a505c
cmp dword [rsp + 0x140], 0
je 0x7a505c
mov eax, dword [rsp + 0x140]
mov ecx, dword [rsp + 0x14c]
xor ecx, eax
mov eax, ecx
test eax, eax
jl 0x7a5024
mov rax, qword [rsp + 0x40]
mov eax, dword [rax + 0xc]
mov rcx, qword [rsp + 0x40]
mov ecx, dword [rcx + 0xc]
inc ecx
mov rdx, qword [rsp + 0x40]
mov dword [rdx + 0xc], ecx
cmp eax, 0x100
jne 0x7a5022
mov rax, qword [rsp + 0x40]
mov eax, dword [rax + 0xc]
dec eax
mov rcx, qword [rsp + 0x40]
mov dword [rcx + 0xc], eax
jmp 0x7a505c
mov rax, qword [rsp + 0x40]
mov eax, dword [rax + 0xc]
mov ecx, dword [rsp + 0x80]
mov rdx, qword [rsp + 0x40]
mov edx, dword [rdx + 0xc]
dec edx
mov r8, qword [rsp + 0x40]
mov dword [r8 + 0xc], edx
cmp eax, ecx
jne 0x7a505c
mov rax, qword [rsp + 0x40]
mov eax, dword [rax + 0xc]
inc eax
mov rcx, qword [rsp + 0x40]
mov dword [rcx + 0xc], eax
mov eax, dword [rsp + 0x134]
mov dword [rsp + 0x140], eax
movsxd rax, dword [rsp + 0x154]
mov rcx, qword [rsp + 0x40]
mov edx, dword [rsp + 0x140]
mov dword [rcx + rax*4 + 0x30], edx
jmp 0x7a4dfe
mov eax, dword [rsp + 0x98]
inc eax
and eax, 7
mov dword [rsp + 0x98], eax
mov eax, dword [rsp + 0x38]
and eax, 0x80
test eax, eax
je 0x7a5164
mov eax, dword [rsp + 0x38]
and eax, 0x100
test eax, eax
je 0x7a5132
mov rax, qword [rsp + 0x78]
mov eax, dword [rax + 0x8e8]
mov ecx, dword [rsp + 0x90]
add ecx, eax
mov eax, ecx
mov ecx, dword [rsp + 0x13c]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0x13c], eax
mov rax, qword [rsp + 0x78]
mov eax, dword [rax + 0x8ec]
mov ecx, dword [rsp + 0x94]
add ecx, eax
mov eax, ecx
mov ecx, dword [rsp + 0x140]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0x140], eax
mov eax, dword [rsp + 0x90]
neg eax
mov rcx, qword [rsp + 0x78]
mov dword [rcx + 0x8e8], eax
mov eax, dword [rsp + 0x94]
neg eax
mov rcx, qword [rsp + 0x78]
mov dword [rcx + 0x8ec], eax
jmp 0x7a5164
mov eax, dword [rsp + 0x90]
mov ecx, dword [rsp + 0x13c]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0x13c], eax
mov eax, dword [rsp + 0x94]
mov ecx, dword [rsp + 0x140]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0x140], eax
mov eax, dword [rsp + 0x38]
and eax, 0x4000
test eax, eax
je 0x7a51d1
mov eax, dword [rsp + 0x140]
shl eax, 1
mov ecx, dword [rsp + 0x13c]
and ecx, 1
or eax, ecx
mov dword [rsp + 0x144], eax
mov eax, dword [rsp + 0x13c]
mov dword [rsp + 0x148], eax
mov eax, dword [rsp + 0x148]
mov ecx, dword [rsp + 0x144]
sub ecx, eax
mov eax, ecx
sar eax, 1
mov dword [rsp + 0x140], eax
mov eax, dword [rsp + 0x148]
mov ecx, dword [rsp + 0x144]
add ecx, eax
mov eax, ecx
sar eax, 1
mov dword [rsp + 0x13c], eax
mov eax, dword [rsp + 0x30]
imul eax, eax, 9
mov ecx, dword [rsp + 0x13c]
imul ecx, ecx, 3
mov edx, dword [rsp + 0x140]
add edx, eax
mov eax, edx
add ecx, eax
mov eax, ecx
mov dword [rsp + 0x30], eax
mov eax, dword [rsp + 0x38]
and eax, 0x80
test eax, eax
je 0x7a5269
mov eax, dword [rsp + 0x9c]
movzx ecx, al
mov eax, dword [rsp + 0x13c]
shl eax, cl
mov rcx, qword [rsp + 0x88]
mov dword [rcx], eax
mov rax, qword [rsp + 0x88]
add rax, 4
mov qword [rsp + 0x88], rax
mov eax, dword [rsp + 0x9c]
movzx ecx, al
mov eax, dword [rsp + 0x140]
shl eax, cl
mov rcx, qword [rsp + 0x88]
mov dword [rcx], eax
mov rax, qword [rsp + 0x88]
add rax, 4
mov qword [rsp + 0x88], rax
jmp 0x7a53e7
mov eax, dword [rsp + 0x48]
cmp dword [rsp + 0x13c], eax
jge 0x7a52b1
mov eax, dword [rsp + 0x34]
neg eax
cmp dword [rsp + 0x13c], eax
jge 0x7a528d
mov dword [rsp + 0x70], 1
mov rax, qword [rsp + 0x88]
mov ecx, dword [rsp + 0x5c]
mov dword [rax], ecx
mov rax, qword [rsp + 0x88]
add rax, 4
mov qword [rsp + 0x88], rax
jmp 0x7a5328
mov eax, dword [rsp + 0x58]
cmp dword [rsp + 0x13c], eax
jle 0x7a52f7
mov eax, dword [rsp + 0x34]
cmp dword [rsp + 0x13c], eax
jle 0x7a52d3
mov dword [rsp + 0x70], 1
mov rax, qword [rsp + 0x88]
mov ecx, dword [rsp + 0x68]
mov dword [rax], ecx
mov rax, qword [rsp + 0x88]
add rax, 4
mov qword [rsp + 0x88], rax
jmp 0x7a5328
mov eax, dword [rsp + 0x9c]
movzx ecx, al
mov eax, dword [rsp + 0x13c]
shl eax, cl
mov rcx, qword [rsp + 0x88]
mov dword [rcx], eax
mov rax, qword [rsp + 0x88]
add rax, 4
mov qword [rsp + 0x88], rax
mov eax, dword [rsp + 0x48]
cmp dword [rsp + 0x140], eax
jge 0x7a5370
mov eax, dword [rsp + 0x34]
neg eax
cmp dword [rsp + 0x140], eax
jge 0x7a534c
mov dword [rsp + 0x70], 1
mov rax, qword [rsp + 0x88]
mov ecx, dword [rsp + 0x5c]
mov dword [rax], ecx
mov rax, qword [rsp + 0x88]
add rax, 4
mov qword [rsp + 0x88], rax
jmp 0x7a53e7
mov eax, dword [rsp + 0x58]
cmp dword [rsp + 0x140], eax
jle 0x7a53b6
mov eax, dword [rsp + 0x34]
cmp dword [rsp + 0x140], eax
jle 0x7a5392
mov dword [rsp + 0x70], 1
mov rax, qword [rsp + 0x88]
mov ecx, dword [rsp + 0x68]
mov dword [rax], ecx
mov rax, qword [rsp + 0x88]
add rax, 4
mov qword [rsp + 0x88], rax
jmp 0x7a53e7
mov eax, dword [rsp + 0x9c]
movzx ecx, al
mov eax, dword [rsp + 0x140]
shl eax, cl
mov rcx, qword [rsp + 0x88]
mov dword [rcx], eax
mov rax, qword [rsp + 0x88]
add rax, 4
mov qword [rsp + 0x88], rax
jmp 0x7a4d3c
jmp 0x7a5775
mov rax, qword [rsp + 0x2b8]
mov qword [rsp + 0x88], rax
mov dword [rsp + 0x3c], 0
jmp 0x7a5415
mov eax, dword [rsp + 0x3c]
inc eax
mov dword [rsp + 0x3c], eax
mov eax, dword [rsp + 0x2c0]
cmp dword [rsp + 0x3c], eax
jae 0x7a5775
xor edx, edx
mov rcx, qword [rsp + 0x78]
call fcn.007a8ca0
mov dword [rsp + 0x60], eax
cmp dword [rsp + 0x60], 0x80000000
jne 0x7a5445
jmp 0x7a5775
mov eax, dword [rsp + 0x24]
imul eax, dword [rsp + 0x50]
add eax, 0x80
sar eax, 8
mov ecx, dword [rsp + 0x20]
add ecx, eax
mov eax, ecx
add eax, dword [rsp + 0x60]
mov dword [rsp + 0x158], eax
cmp dword [rsp + 0x24], 0
jl 0x7a547d
mov dword [rsp + 0x274], 1
jmp 0x7a5488
mov dword [rsp + 0x274], 0
cmp dword [rsp + 0x60], 0
jle 0x7a549c
mov dword [rsp + 0x278], 1
jmp 0x7a54a7
mov dword [rsp + 0x278], 0
mov eax, dword [rsp + 0x278]
cmp dword [rsp + 0x274], eax
jne 0x7a54d8
mov eax, dword [rsp + 0x50]
mov ecx, dword [rsp + 0x50]
inc ecx
mov dword [rsp + 0x50], ecx
cmp eax, 0x100
jne 0x7a54d6
mov eax, dword [rsp + 0x50]
dec eax
mov dword [rsp + 0x50], eax
jmp 0x7a54f4
mov eax, dword [rsp + 0x50]
mov ecx, dword [rsp + 0x50]
dec ecx
mov dword [rsp + 0x50], ecx
test eax, eax
jne 0x7a54f4
mov eax, dword [rsp + 0x50]
inc eax
mov dword [rsp + 0x50], eax
mov eax, dword [rsp + 0x20]
mov ecx, dword [rsp + 0x158]
sub ecx, eax
mov eax, ecx
mov dword [rsp + 0x24], eax
mov eax, dword [rsp + 0x158]
mov dword [rsp + 0x20], eax
mov eax, dword [rsp + 0x30]
imul eax, eax, 3
add eax, dword [rsp + 0x20]
mov dword [rsp + 0x30], eax
mov edx, 1
mov rcx, qword [rsp + 0x78]
call fcn.007a8ca0
mov dword [rsp + 0x60], eax
mov eax, dword [rsp + 0x2c]
imul eax, dword [rsp + 0x54]
add eax, 0x80
sar eax, 8
mov ecx, dword [rsp + 0x28]
add ecx, eax
mov eax, ecx
add eax, dword [rsp + 0x60]
mov dword [rsp + 0x158], eax
cmp dword [rsp + 0x2c], 0
jl 0x7a556c
mov dword [rsp + 0x27c], 1
jmp 0x7a5577
mov dword [rsp + 0x27c], 0
cmp dword [rsp + 0x60], 0
jle 0x7a558b
mov dword [rsp + 0x280], 1
jmp 0x7a5596
mov dword [rsp + 0x280], 0
mov eax, dword [rsp + 0x280]
cmp dword [rsp + 0x27c], eax
jne 0x7a55c7
mov eax, dword [rsp + 0x54]
mov ecx, dword [rsp + 0x54]
inc ecx
mov dword [rsp + 0x54], ecx
cmp eax, 0x100
jne 0x7a55c5
mov eax, dword [rsp + 0x54]
dec eax
mov dword [rsp + 0x54], eax
jmp 0x7a55e3
mov eax, dword [rsp + 0x54]
mov ecx, dword [rsp + 0x54]
dec ecx
mov dword [rsp + 0x54], ecx
test eax, eax
jne 0x7a55e3
mov eax, dword [rsp + 0x54]
inc eax
mov dword [rsp + 0x54], eax
mov eax, dword [rsp + 0x28]
mov ecx, dword [rsp + 0x158]
sub ecx, eax
mov eax, ecx
mov dword [rsp + 0x2c], eax
mov eax, dword [rsp + 0x158]
mov dword [rsp + 0x28], eax
mov eax, dword [rsp + 0x30]
imul eax, eax, 3
add eax, dword [rsp + 0x28]
mov dword [rsp + 0x30], eax
mov eax, dword [rsp + 0x48]
cmp dword [rsp + 0x20], eax
jge 0x7a5652
mov eax, dword [rsp + 0x34]
neg eax
cmp dword [rsp + 0x20], eax
jge 0x7a562e
mov dword [rsp + 0x70], 1
mov rax, qword [rsp + 0x88]
mov ecx, dword [rsp + 0x5c]
mov dword [rax], ecx
mov rax, qword [rsp + 0x88]
add rax, 4
mov qword [rsp + 0x88], rax
jmp 0x7a56c0
mov eax, dword [rsp + 0x58]
cmp dword [rsp + 0x20], eax
jle 0x7a5692
mov eax, dword [rsp + 0x34]
cmp dword [rsp + 0x20], eax
jle 0x7a566e
mov dword [rsp + 0x70], 1
mov rax, qword [rsp + 0x88]
mov ecx, dword [rsp + 0x68]
mov dword [rax], ecx
mov rax, qword [rsp + 0x88]
add rax, 4
mov qword [rsp + 0x88], rax
jmp 0x7a56c0
mov eax, dword [rsp + 0x9c]
movzx ecx, al
mov eax, dword [rsp + 0x20]
shl eax, cl
mov rcx, qword [rsp + 0x88]
mov dword [rcx], eax
mov rax, qword [rsp + 0x88]
add rax, 4
mov qword [rsp + 0x88], rax
mov eax, dword [rsp + 0x48]
cmp dword [rsp + 0x28], eax
jge 0x7a5702
mov eax, dword [rsp + 0x34]
neg eax
cmp dword [rsp + 0x28], eax
jge 0x7a56de
mov dword [rsp + 0x70], 1
mov rax, qword [rsp + 0x88]
mov ecx, dword [rsp + 0x5c]
mov dword [rax], ecx
mov rax, qword [rsp + 0x88]
add rax, 4
mov qword [rsp + 0x88], rax
jmp 0x7a5770
mov eax, dword [rsp + 0x58]
cmp dword [rsp + 0x28], eax
jle 0x7a5742
mov eax, dword [rsp + 0x34]
cmp dword [rsp + 0x28], eax
jle 0x7a571e
mov dword [rsp + 0x70], 1
mov rax, qword [rsp + 0x88]
mov ecx, dword [rsp + 0x68]
mov dword [rax], ecx
mov rax, qword [rsp + 0x88]
add rax, 4
mov qword [rsp + 0x88], rax
jmp 0x7a5770
mov eax, dword [rsp + 0x9c]
movzx ecx, al
mov eax, dword [rsp + 0x28]
shl eax, cl
mov rcx, qword [rsp + 0x88]
mov dword [rcx], eax
mov rax, qword [rsp + 0x88]
add rax, 4
mov qword [rsp + 0x88], rax
jmp 0x7a540b
jmp 0x7a5aba
mov rax, qword [rsp + 0x78]
movsx eax, word [rax + 8]
cmp eax, 2
jne 0x7a58a0
mov eax, dword [rsp + 0x38]
and eax, 1
test eax, eax
je 0x7a58a0
mov rax, qword [rsp + 0x2b8]
mov qword [rsp + 0x88], rax
mov dword [rsp + 0x3c], 0
jmp 0x7a57bf
mov eax, dword [rsp + 0x3c]
inc eax
mov dword [rsp + 0x3c], eax
mov eax, dword [rsp + 0x2c0]
cmp dword [rsp + 0x3c], eax
jae 0x7a589b
xor edx, edx
mov rcx, qword [rsp + 0x78]
call fcn.007a8460
mov dword [rsp + 0x60], eax
cmp dword [rsp + 0x60], 0x80000000
jne 0x7a57ef
jmp 0x7a589b
mov eax, dword [rsp + 0x60]
mov ecx, dword [rsp + 0x24]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0x24], eax
mov eax, dword [rsp + 0x24]
mov ecx, dword [rsp + 0x20]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0x20], eax
mov rax, qword [rsp + 0x78]
movsx eax, word [rax + 0xa]
test eax, eax
je 0x7a5868
mov eax, dword [rsp + 0x48]
cmp dword [rsp + 0x20], eax
jge 0x7a5844
mov eax, dword [rsp + 0x34]
neg eax
cmp dword [rsp + 0x20], eax
jge 0x7a583a
mov dword [rsp + 0x70], 1
mov eax, dword [rsp + 0x48]
mov dword [rsp + 0x20], eax
jmp 0x7a5868
mov eax, dword [rsp + 0x58]
cmp dword [rsp + 0x20], eax
jle 0x7a5868
mov eax, dword [rsp + 0x34]
cmp dword [rsp + 0x20], eax
jle 0x7a5860
mov dword [rsp + 0x70], 1
mov eax, dword [rsp + 0x58]
mov dword [rsp + 0x20], eax
mov eax, dword [rsp + 0x9c]
movzx ecx, al
mov eax, dword [rsp + 0x20]
shl eax, cl
mov rcx, qword [rsp + 0x88]
mov dword [rcx], eax
mov rax, qword [rsp + 0x88]
add rax, 4
mov qword [rsp + 0x88], rax
jmp 0x7a57b5
jmp 0x7a5aba
mov rax, qword [rsp + 0x78]
movsx eax, word [rax + 8]
cmp eax, 3
jge 0x7a5ab2
mov eax, dword [rsp + 0x38]
and eax, 1
test eax, eax
jne 0x7a5ab2
mov rax, qword [rsp + 0x2b8]
mov qword [rsp + 0x88], rax
mov dword [rsp + 0x3c], 0
jmp 0x7a58e5
mov eax, dword [rsp + 0x3c]
inc eax
mov dword [rsp + 0x3c], eax
mov eax, dword [rsp + 0x2c0]
cmp dword [rsp + 0x3c], eax
jae 0x7a5ab0
xor edx, edx
mov rcx, qword [rsp + 0x78]
call fcn.007a8460
mov dword [rsp + 0x60], eax
cmp dword [rsp + 0x60], 0x80000000
jne 0x7a5915
jmp 0x7a5ab0
mov edx, 1
mov rcx, qword [rsp + 0x78]
call fcn.007a8460
mov dword [rsp + 0x160], eax
mov eax, dword [rsp + 0x160]
and eax, 1
mov ecx, dword [rsp + 0x60]
shl ecx, 1
or ecx, eax
mov eax, ecx
mov dword [rsp + 0x15c], eax
mov eax, dword [rsp + 0x160]
mov ecx, dword [rsp + 0x15c]
add ecx, eax
mov eax, ecx
sar eax, 1
mov ecx, dword [rsp + 0x24]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0x24], eax
mov eax, dword [rsp + 0x24]
mov ecx, dword [rsp + 0x20]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0x20], eax
mov eax, dword [rsp + 0x160]
mov ecx, dword [rsp + 0x15c]
sub ecx, eax
mov eax, ecx
sar eax, 1
mov ecx, dword [rsp + 0x2c]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0x2c], eax
mov eax, dword [rsp + 0x2c]
mov ecx, dword [rsp + 0x28]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0x28], eax
mov rax, qword [rsp + 0x78]
movsx eax, word [rax + 0xa]
test eax, eax
je 0x7a5a4f
mov eax, dword [rsp + 0x48]
cmp dword [rsp + 0x20], eax
jge 0x7a59df
mov eax, dword [rsp + 0x34]
neg eax
cmp dword [rsp + 0x20], eax
jge 0x7a59d5
mov dword [rsp + 0x70], 1
mov eax, dword [rsp + 0x48]
mov dword [rsp + 0x20], eax
jmp 0x7a5a03
mov eax, dword [rsp + 0x58]
cmp dword [rsp + 0x20], eax
jle 0x7a5a03
mov eax, dword [rsp + 0x34]
cmp dword [rsp + 0x20], eax
jle 0x7a59fb
mov dword [rsp + 0x70], 1
mov eax, dword [rsp + 0x58]
mov dword [rsp + 0x20], eax
mov eax, dword [rsp + 0x48]
cmp dword [rsp + 0x28], eax
jge 0x7a5a2b
mov eax, dword [rsp + 0x34]
neg eax
cmp dword [rsp + 0x28], eax
jge 0x7a5a21
mov dword [rsp + 0x70], 1
mov eax, dword [rsp + 0x48]
mov dword [rsp + 0x28], eax
jmp 0x7a5a4f
mov eax, dword [rsp + 0x58]
cmp dword [rsp + 0x28], eax
jle 0x7a5a4f
mov eax, dword [rsp + 0x34]
cmp dword [rsp + 0x28], eax
jle 0x7a5a47
mov dword [rsp + 0x70], 1
mov eax, dword [rsp + 0x58]
mov dword [rsp + 0x28], eax
mov eax, dword [rsp + 0x9c]
movzx ecx, al
mov eax, dword [rsp + 0x20]
shl eax, cl
mov rcx, qword [rsp + 0x88]
mov dword [rcx], eax
mov rax, qword [rsp + 0x88]
add rax, 4
mov qword [rsp + 0x88], rax
mov eax, dword [rsp + 0x9c]
movzx ecx, al
mov eax, dword [rsp + 0x28]
shl eax, cl
mov rcx, qword [rsp + 0x88]
mov dword [rcx], eax
mov rax, qword [rsp + 0x88]
add rax, 4
mov qword [rsp + 0x88], rax
jmp 0x7a58db
jmp 0x7a5aba
mov dword [rsp + 0x3c], 0
mov rax, qword [rsp + 0x78]
movsx eax, word [rax + 0xa]
test eax, eax
je 0x7a5ad8
mov eax, dword [rsp + 0x38]
and eax, 0x80
test eax, eax
je 0x7a5b86
mov eax, dword [rsp + 0x38]
and eax, 1
test eax, eax
je 0x7a5af0
mov dword [rsp + 0x284], 1
jmp 0x7a5afb
mov dword [rsp + 0x284], 2
mov eax, dword [rsp + 0x2c0]
imul eax, dword [rsp + 0x284]
mov eax, eax
mov rcx, qword [rsp + 0x2b8]
lea rax, [rcx + rax*4]
mov qword [rsp + 0x168], rax
mov rax, qword [rsp + 0x2b8]
mov qword [rsp + 0x88], rax
jmp 0x7a5b46
mov rax, qword [rsp + 0x88]
add rax, 0xc
mov qword [rsp + 0x88], rax
mov rax, qword [rsp + 0x168]
cmp qword [rsp + 0x88], rax
jae 0x7a5b86
mov rax, qword [rsp + 0x88]
mov ecx, dword [rsp + 0x34]
cmp dword [rax], ecx
jg 0x7a5b7a
mov eax, dword [rsp + 0x34]
neg eax
mov rcx, qword [rsp + 0x88]
cmp dword [rcx], eax
jge 0x7a5b84
mov dword [rsp + 0x70], 1
jmp 0x7a5b86
jmp 0x7a5b32
cmp dword [rsp + 0x70], 0
je 0x7a5bd9
mov eax, dword [rsp + 0x38]
and eax, 1
test eax, eax
je 0x7a5ba5
mov dword [rsp + 0x288], 1
jmp 0x7a5bb0
mov dword [rsp + 0x288], 2
mov eax, dword [rsp + 0x2c0]
shl rax, 2
movsxd rcx, dword [rsp + 0x288]
imul rax, rcx
mov r8, rax
xor edx, edx
mov rcx, qword [rsp + 0x2b8]
call fcn.00778460
cmp dword [rsp + 0x3c], 0
je 0x7a5f57
mov rax, qword [rsp + 0x78]
mov ecx, dword [rsp + 0x3c]
mov eax, dword [rax + 0xb8]
add eax, ecx
mov dword [rsp + 0x28c], eax
mov rax, qword [rsp + 0x78]
mov ecx, dword [rsp + 0x28c]
mov dword [rax + 0xb8], ecx
mov rax, qword [rsp + 0x2b0]
mov eax, dword [rax + 0xb8]
cmp dword [rsp + 0x28c], eax
jne 0x7a5f57
mov rax, qword [rsp + 0x78]
movsx eax, word [rax + 8]
cmp eax, 3
jne 0x7a5c93
mov rax, qword [rsp + 0x2b0]
cmp dword [rax + 0xc4], 0
je 0x7a5c59
mov rax, qword [rsp + 0x78]
mov eax, dword [rax + 0x18]
mov dword [rsp + 0x290], eax
jmp 0x7a5c68
mov rax, qword [rsp + 0x78]
mov eax, dword [rax + 0x14]
mov dword [rsp + 0x290], eax
mov eax, dword [rsp + 0x290]
cmp dword [rsp + 0x30], eax
je 0x7a5c93
mov rax, qword [rsp + 0x2b0]
mov eax, dword [rax + 0xbc]
inc eax
mov rcx, qword [rsp + 0x2b0]
mov dword [rcx + 0xbc], eax
mov rax, qword [rsp + 0x2b0]
mov eax, dword [rax + 0xc8]
and eax, 4
test eax, eax
je 0x7a5f57
mov ecx, 0x400
call fcn.00778580
mov qword [rsp + 0x178], rax
mov rax, qword [rsp + 0x78]
add rax, 0x28
mov rcx, rax
call fcn.007a61a0
test eax, eax
je 0x7a5d92
mov rax, qword [rsp + 0x78]
add rax, 0x28
mov rcx, rax
call fcn.007a61a0
mov rcx, qword [rsp + 0x2b0]
mov ecx, dword [rcx + 0x70]
add ecx, eax
mov eax, ecx
mov eax, eax
mov edx, eax
mov rax, qword [rsp + 0x2b0]
mov rcx, qword [rax + 0x68]
call fcn.007785d0
mov rcx, qword [rsp + 0x2b0]
mov qword [rcx + 0x68], rax
mov rax, qword [rsp + 0x78]
add rax, 0x28
mov rcx, rax
call fcn.007a61a0
mov eax, eax
mov qword [rsp + 0x298], rax
mov rcx, qword [rsp + 0x78]
add rcx, 0x28
call fcn.007a6200
mov rcx, qword [rsp + 0x2b0]
mov ecx, dword [rcx + 0x70]
mov rdx, qword [rsp + 0x2b0]
add rcx, qword [rdx + 0x68]
mov rdx, qword [rsp + 0x298]
mov r8, rdx
mov rdx, rax
call fcn.007783e0
mov rax, qword [rsp + 0x78]
add rax, 0x28
mov rcx, rax
call fcn.007a61a0
mov rcx, qword [rsp + 0x2b0]
add eax, dword [rcx + 0x70]
mov rcx, qword [rsp + 0x2b0]
mov dword [rcx + 0x70], eax
xor eax, eax
cmp eax, 1
je 0x7a5e64
mov rax, qword [rsp + 0x2b0]
mov rax, qword [rax + 0x90]
mov r8d, 8
mov rdx, qword [rsp + 0x178]
mov rcx, qword [rsp + 0x2b0]
mov rcx, qword [rcx + 0x98]
call qword [rax]
mov dword [rsp + 0x170], eax
cmp dword [rsp + 0x170], 0
jne 0x7a5de1
jmp 0x7a5e64
mov rax, qword [rsp + 0x2b0]
mov eax, dword [rax + 0x70]
add eax, dword [rsp + 0x170]
mov eax, eax
mov edx, eax
mov rax, qword [rsp + 0x2b0]
mov rcx, qword [rax + 0x68]
call fcn.007785d0
mov rcx, qword [rsp + 0x2b0]
mov qword [rcx + 0x68], rax
mov eax, dword [rsp + 0x170]
mov rcx, qword [rsp + 0x2b0]
mov ecx, dword [rcx + 0x70]
mov rdx, qword [rsp + 0x2b0]
add rcx, qword [rdx + 0x68]
mov r8d, eax
mov rdx, qword [rsp + 0x178]
call fcn.007783e0
mov rax, qword [rsp + 0x2b0]
mov eax, dword [rax + 0x70]
add eax, dword [rsp + 0x170]
mov rcx, qword [rsp + 0x2b0]
mov dword [rcx + 0x70], eax
jmp 0x7a5d92
mov rcx, qword [rsp + 0x178]
call fcn.007785b0
mov rax, qword [rsp + 0x2b0]
cmp dword [rax + 0x70], 0x10
jbe 0x7a5f57
mov dword [rsp + 0x180], 0
jmp 0x7a5ea0
mov eax, dword [rsp + 0x180]
inc eax
mov dword [rsp + 0x180], eax
cmp dword [rsp + 0x180], 0x10
jge 0x7a5ecb
movsxd rax, dword [rsp + 0x180]
mov rcx, qword [rsp + 0x2b0]
mov rcx, qword [rcx + 0x68]
movzx eax, byte [rcx + rax]
cmp eax, 0xff
jne 0x7a5ecb
jmp 0x7a5e90
cmp dword [rsp + 0x180], 0x10
jne 0x7a5f27
mov rax, qword [rsp + 0x2b0]
mov eax, dword [rax + 0x70]
sub eax, 0x10
mov eax, eax
mov rcx, qword [rsp + 0x2b0]
mov rcx, qword [rcx + 0x68]
add rcx, 0x10
mov r8d, eax
mov rdx, rcx
mov rax, qword [rsp + 0x2b0]
mov rcx, qword [rax + 0x68]
call fcn.007783e0
mov rax, qword [rsp + 0x2b0]
mov eax, dword [rax + 0x70]
sub eax, 0x10
mov rcx, qword [rsp + 0x2b0]
mov dword [rcx + 0x70], eax
jmp 0x7a5f57
mov rax, qword [rsp + 0x2b0]
mov rcx, qword [rax + 0x68]
call fcn.007785b0
mov rax, qword [rsp + 0x2b0]
mov qword [rax + 0x68], 0
mov rax, qword [rsp + 0x2b0]
mov dword [rax + 0x70], 0
mov rax, qword [rsp + 0x78]
add rax, 0x8f4
mov r8d, 0x10
lea rdx, [rsp + 0x20]
mov rcx, rax
call fcn.007783e0
mov rax, qword [rsp + 0x78]
add rax, 0x904
mov r8d, 8
lea rdx, [rsp + 0x50]
mov rcx, rax
call fcn.007783e0
mov rax, qword [rsp + 0x78]
mov ecx, dword [rsp + 0x30]
mov dword [rax + 0x8f0], ecx
mov rax, qword [rsp + 0x78]
mov ecx, dword [rsp + 0x98]
mov dword [rax + 0x8e4], ecx
mov eax, dword [rsp + 0x3c]
add rsp, 0x2a8
ret