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

Disassembly:
push r15
push r14
push r13
push r12
push rbp
push rdi
push rsi
push rbx
sub rsp, 0xd58
xor eax, eax
movdqa xmm0, xmmword [0x007177f0]
mov r13, qword [0x0077f0c0]
lea rdi, [rsp + 0x120]
mov qword [rsp + 0xda0], rcx
mov ecx, 0x186
mov qword [rsp + 0x60], rdi
rep stosq qword [rdi], rax
mov eax, dword [0x0077f0c8]
mov qword [rsp + 0xda8], rdx
movaps xmmword [rsp + 0xa0], xmm0
mov dword [rsp + 0x3c], eax
mov eax, dword [0x0077f0cc]
movaps xmmword [rsp + 0xb0], xmm0
mov dword [rsp + 0x54], eax
mov eax, dword [0x0077f0d0]
movaps xmmword [rsp + 0xc0], xmm0
mov dword [rsp + 0x7c], eax
mov eax, dword [0x0077f0d4]
movaps xmmword [rsp + 0xd0], xmm0
mov dword [rsp + 0x78], eax
mov eax, dword [0x0077f0d8]
movaps xmmword [rsp + 0xe0], xmm0
mov dword [rsp + 0x30], eax
mov eax, dword [0x0077f0dc]
movaps xmmword [rsp + 0xf0], xmm0
mov dword [rsp + 0x58], eax
movzx eax, byte [0x0077f0e0]
movaps xmmword [rsp + 0x100], xmm0
mov byte [rsp + 0x76], al
movzx eax, byte [0x0077f0e1]
movaps xmmword [rsp + 0x110], xmm0
mov byte [rsp + 0x77], al
mov rax, qword [0x0072afd0]
mov r14d, dword [rax + 0x1c]
test r14d, r14d
jle 0x4a923f
mov dword [rsp + 0x28], 0
mov dword [rsp + 0x84], 0
mov dword [rsp + 0x80], 0
mov dword [rsp + 0x38], 0
mov dword [rsp + 0x9c], 0
mov dword [rsp + 0x5c], 0
mov dword [rsp + 0x98], 0
mov dword [rsp + 0x68], 0
mov dword [rsp + 0x2c], 0
mov dword [rsp + 0x6c], 0
nop dword [rax + rax]
lea eax, [r14 + r14*2 + 1]
cmp eax, dword [rsp + 0x68]
jl 0x4a8f68
mov eax, dword [r13 + 8]
lea rsi, [0x0077f120]
mov qword [rsp + 0x48], rsi
lea edx, [rax - 0xb]
cmp edx, 1
jbe 0x4a6fe9
lea rsi, [0x0077f140]
mov edi, dword [rsp + 0x6c]
mov qword [rsp + 0x48], rsi
cmp dword [rsp + 0x98], edi
jle 0x4a6fe9
mov rcx, qword [rsp + 0xda8]
cmp eax, 0xd
je 0x4a8c90
call fcn.004a2320
lea rdx, [0x007016a0]
and eax, 3
mov rax, qword [rdx + rax*8]
mov qword [rsp + 0x48], rax
mov rax, qword [rsp + 0x48]
mov ecx, dword [rax + 0x18]
test ecx, ecx
jle 0x4a8cbe
mov byte [rsp + 0x75], 0
mov dword [rsp + 0x50], 0
nop word cs:[rax + rax]
mov rdx, qword [r13 + 0x10]
mov rax, qword [r13 + 0x18]
sub rax, rdx
sar rax, 5
cmp dword [rsp + 0x28], eax
jl 0x4a7c40
mov rax, qword [0x0072afd0]
cmp byte [rsp + 0x75], 0
mov r14d, dword [rax + 0x1c]
jne 0x4a8f48
lea eax, [r14 + r14*2 + 1]
cmp eax, dword [rsp + 0x68]
jl case.default.0x4a7074
mov rsi, qword [rsp + 0x48]
movsxd rax, dword [rsp + 0x50]
mov rdx, qword [rsi + 0x10]
lea r8d, [rax + 1]
mov eax, dword [rdx + rax*4]
lea rdx, [0x0071742c]
sub eax, 3
movsxd rax, dword [rdx + rax*4]
add rax, rdx
jmp rax
mov rcx, qword [rsp + 0xda8]
call fcn.004a2320
lea rdx, [0x00701630]
and eax, 1
mov r13, qword [rdx + rax*8]
mov eax, dword [r13 + 8]
mov dword [rsp + 0x28], eax
cmp eax, 0xd
ja case.default.0x4a8c0c
lea rcx, [0x007174bc]
mov edx, eax
movsxd rax, dword [rcx + rdx*4]
add rax, rcx
jmp rax
mov rax, qword [rsp + 0x48]
cmp dword [rax + 8], 4
jne 0x4a8b98
cmp r8d, ecx
je 0x4a8b98
mov eax, dword [0x0077f4a8]
mov dword [rsp + 0x28], eax
cmp eax, 0xd
ja case.default.0x4a717b
lea rcx, [0x007174f4]
mov edx, eax
movsxd rax, dword [rcx + rdx*4]
add rax, rcx
jmp rax
cmp r8d, ecx
mov rcx, qword [rsp + 0xda8]
jne 0x4a8bd8
call fcn.004a2320
lea rdx, [0x00701660]
and eax, 3
mov r13, qword [rdx + rax*8]
mov eax, dword [r13 + 8]
mov dword [rsp + 0x28], eax
cmp eax, 0xd
ja case.default.0x4a8c0c
lea rcx, [0x0071752c]
mov edx, eax
movsxd rax, dword [rcx + rdx*4]
add rax, rcx
jmp rax
mov r13, qword [0x00701600]
mov eax, dword [r13 + 8]
mov dword [rsp + 0x28], eax
cmp eax, 0xd
ja case.default.0x4a8c0c
lea rcx, [0x00717564]
mov edx, eax
movsxd rax, dword [rcx + rdx*4]
add rax, rcx
jmp rax
mov rcx, qword [rsp + 0xda8]
call fcn.004a2390
mov rdx, qword [r13 + 0x10]
mov byte [rsp + 0x77], 0
mov byte [rsp + 0x76], 0
mov dword [rsp + 0x58], 0xffffffff
mov dword [rsp + 0x30], 6
mov dword [rsp + 0x7c], 0
mov dword [rsp + 0x54], 0xffffffff
mov dword [rsp + 0x3c], 0xffffffff
mov dword [rsp + 0x28], 0
mov dword [rsp + 0x78], eax
xor eax, eax
nop dword [rax]
add rax, rdx
mov rsi, rax
mov qword [rsp + 0x20], rax
mov eax, dword [rsp + 0x38]
cmp byte [rsi + 0x18], 0
mov ebx, eax
je 0x4a7278
mov edi, dword [rsp + 0x5c]
cmp edi, eax
cmovge ebx, edi
mov rax, qword [rsp + 0x20]
mov r9d, dword [rax + 0x10]
test r9d, r9d
je 0x4a7300
mov r11d, dword [rax + 0x14]
mov rax, qword [0x0072afd0]
mov r14d, dword [rax + 0x1c]
lea edx, [r14 + 3]
test r11d, r11d
jne 0x4a7c50
cmp edx, ebx
jl 0x4a7d29
mov eax, r9d
mov ecx, r9d
and eax, 1
and ecx, 2
and r9d, 4
jne 0x4a8280
test ecx, ecx
jne 0x4a8768
test eax, eax
je 0x4a7d29
mov r8, qword [rsp + 0x60]
movsxd rax, ebx
jmp 0x4a72ec
add rax, 1
cmp edx, eax
jl 0x4a7d29
lea rcx, [rax + rax*2]
mov ebx, eax
mov ebp, dword [r8 + rcx*4]
test ebp, ebp
jne 0x4a72e0
nop word [rax + rax]
mov eax, dword [rsp + 0x28]
cmp eax, dword [r13 + 0x34]
je 0x4a82d0
mov eax, dword [rsp + 0x38]
mov dword [rsp + 0x34], eax
mov eax, dword [rsp + 0x28]
cmp eax, dword [r13 + 0x30]
je 0x4a7f68
mov rax, qword [rsp + 0x20]
mov rsi, qword [0x0072afd0]
mov edi, dword [rax + 0x10]
mov r14d, dword [rsi + 0x1c]
test edi, edi
je 0x4a7980
mov eax, dword [rax + 0x14]
lea ecx, [r14 + 3]
mov dword [rsp + 0x2c], eax
test eax, eax
je 0x4a80f0
cmp ebx, ecx
jg 0x4a7449
mov eax, edi
mov rdx, qword [rsp + 0x60]
mov esi, edi
mov r12d, edi
and eax, 4
and esi, 1
and r12d, 2
mov dword [rsp + 0x40], eax
mov eax, dword [rsp + 0x2c]
mov r15d, eax
mov r11d, eax
and eax, 2
mov ebp, eax
movsxd rax, ebx
and r15d, 4
and r11d, 1
lea rax, [rax + rax*2]
lea r8, [rdx + rax*4]
nop word cs:[rax + rax]
mov eax, dword [rsp + 0x40]
test eax, eax
jne 0x4a78c8
test r12d, r12d
jne 0x4a7be0
test esi, esi
je 0x4a73e0
mov rax, r8
mov edx, ebx
nop
mov r10d, dword [rax]
test r10d, r10d
je 0x4a7858
add edx, 1
add rax, 0xc
cmp edx, ecx
jle 0x4a73c0
nop word [rax + rax]
xor r10d, r10d
mov edx, 0xffffffff
test r15d, r15d
jne 0x4a7867
test ebp, ebp
jne 0x4a7ab8
mov eax, 0xffffffff
test r11d, r11d
je 0x4a742d
mov r9, r8
mov eax, ebx
nop dword [rax + rax]
cmp dword [r9], 0
je 0x4a742d
add eax, 1
add r9, 0xc
cmp eax, ecx
jle 0x4a7410
nop dword [rax]
mov eax, 0xffffffff
cmp eax, edx
jne 0x4a743a
test r10b, r10b
jne 0x4a81b0
add ebx, 1
add r8, 0xc
cmp ecx, ebx
jge 0x4a73a0
mov eax, dword [rsp + 0x34]
add dword [rsp + 0x6c], 1
mov byte [rsp + 0x75], 1
mov dword [rsp + 0x38], eax
mov dword [rsp + 0x2c], 0
add dword [rsp + 0x38], 1
cmp byte [rsp + 0x75], 0
je 0x4a6f80
pxor xmm0, xmm0
pxor xmm1, xmm1
mov rax, qword [rsp + 0xda0]
cvtsi2sd xmm0, dword [rsp + 0x80]
cvtsi2sd xmm1, dword [rsp + 0x9c]
mov qword [rax + 0x1858], 0
mov qword [rax + 0x1860], 0
mov qword [rax + 0x1868], 0
mov qword [rax + 0x1870], 0
mov eax, dword [rsp + 0x68]
divsd xmm0, xmm1
mov r10d, eax
test eax, eax
je 0x4a7537
mov rax, qword [rsp + 0xda0]
mov rsi, qword [rsp + 0xda0]
xor r11d, r11d
lea rdx, [rax + 1]
mov eax, dword [rsp + 0x68]
sub eax, 1
lea r9, [rsi + rax*8 + 9]
nop dword [rax + rax]
movzx eax, byte [rdx]
movzx ecx, byte [rdx + 1]
lea r8, [rsi + rax*4]
mov rbx, rax
mov eax, dword [r8 + 0x1858]
add eax, 1
cmp bl, cl
je 0x4a8850
mov ecx, dword [rsi + rcx*4 + 0x1858]
add ecx, 1
cmp ecx, eax
cmovge eax, ecx
add rdx, 8
mov dword [r8 + 0x1858], eax
cmp r9, rdx
jne 0x4a74f8
mov rax, qword [rsp + 0xda0]
mov rsi, qword [rsp + 0xda0]
mov edx, 0
mov eax, dword [rax + 0x1858]
mov ecx, dword [rsi + 0x185c]
test eax, eax
cmovle eax, edx
mov edx, dword [rsp + 0xa0]
mov dword [rsi + 0x1838], edx
xor edx, edx
cmp ecx, eax
jle 0x4a7577
mov eax, ecx
mov edx, 1
mov ecx, dword [rsp + 0xb0]
mov rsi, qword [rsp + 0xda0]
mov dword [rsi + 0x183c], ecx
mov ecx, dword [rsi + 0x1860]
cmp eax, ecx
jge 0x4a759d
mov eax, ecx
mov edx, 2
mov ecx, dword [rsp + 0xc0]
mov rsi, qword [rsp + 0xda0]
mov dword [rsi + 0x1840], ecx
mov ecx, dword [rsi + 0x1864]
cmp ecx, eax
jle 0x4a75c3
mov eax, ecx
mov edx, 3
mov ecx, dword [rsp + 0xd0]
mov rsi, qword [rsp + 0xda0]
mov dword [rsi + 0x1844], ecx
mov ecx, dword [rsi + 0x1868]
cmp eax, ecx
jge 0x4a75e9
mov eax, ecx
mov edx, 4
mov ecx, dword [rsp + 0xe0]
mov rsi, qword [rsp + 0xda0]
mov dword [rsi + 0x1848], ecx
mov ecx, dword [rsi + 0x186c]
cmp eax, ecx
jge 0x4a760f
mov eax, ecx
mov edx, 5
mov ecx, dword [rsp + 0xf0]
mov rsi, qword [rsp + 0xda0]
mov dword [rsi + 0x184c], ecx
mov ecx, dword [rsi + 0x1870]
cmp ecx, eax
jle 0x4a7635
mov eax, ecx
mov edx, 6
mov ecx, dword [rsp + 0x100]
mov rsi, qword [rsp + 0xda0]
mov dword [rsi + 0x1850], ecx
mov ecx, dword [rsi + 0x1874]
cmp eax, ecx
jge 0x4a765b
mov eax, ecx
mov edx, 7
movd xmm2, dword [rsp + 0x6c]
mov ecx, dword [rsp + 0x110]
movd xmm3, dword [rsp + 0x9c]
mov rsi, qword [rsp + 0xda0]
movd xmm1, dword [rsp + 0x84]
movd xmm4, dword [rsp + 0x80]
punpckldq xmm2, xmm3
mov dword [rsi + 0x1830], eax
mov rax, rsi
punpckldq xmm1, xmm4
mov dword [rsi + 0x1854], ecx
punpcklqdq xmm1, xmm2
mov dword [rsi + 0x1810], r10d
mov dword [rsi + 0x1814], edx
movups xmmword [rsi + 0x1820], xmm1
movsd qword [rsi + 0x1818], xmm0
mov esi, dword [rsp + 0x98]
mov dword [rax + 0x1834], esi
add rsp, 0xd58
pop rbx
pop rsi
pop rdi
pop rbp
pop r12
pop r13
pop r14
pop r15
ret
mov rcx, qword [rsp + 0xda8]
call fcn.004a2390
mov rdx, qword [r13 + 0x10]
mov byte [rsp + 0x77], 0
mov dword [rsp + 0x78], eax
xor eax, eax
mov byte [rsp + 0x76], 0
mov dword [rsp + 0x58], 0xffffffff
mov dword [rsp + 0x30], 5
mov dword [rsp + 0x7c], 0
mov dword [rsp + 0x54], 0xffffffff
mov dword [rsp + 0x3c], 0xffffffff
mov dword [rsp + 0x28], 0
jmp 0x4a7258
mov rcx, qword [rsp + 0xda8]
call fcn.004a2390
mov rdx, qword [r13 + 0x10]
mov byte [rsp + 0x77], 0
mov dword [rsp + 0x58], eax
mov eax, dword [rsp + 0x28]
mov byte [rsp + 0x76], 1
mov dword [rsp + 0x30], eax
xor eax, eax
mov dword [rsp + 0x78], 0
mov dword [rsp + 0x7c], 0
mov dword [rsp + 0x54], 0xffffffff
mov dword [rsp + 0x3c], 0xffffffff
mov dword [rsp + 0x28], 0
jmp 0x4a7258
mov eax, dword [rsp + 0x28]
mov rdx, qword [r13 + 0x10]
mov byte [rsp + 0x77], 1
mov byte [rsp + 0x76], 0
mov dword [rsp + 0x30], eax
xor eax, eax
jmp 0x4a7769
mov rcx, qword [rsp + 0xda8]
call fcn.004a2320
mov rdx, qword [r13 + 0x10]
mov byte [rsp + 0x77], 1
movzx eax, al
mov byte [rsp + 0x76], 0
mov dword [rsp + 0x7c], eax
mov eax, dword [rsp + 0x28]
mov dword [rsp + 0x78], 0
mov dword [rsp + 0x30], eax
xor eax, eax
mov dword [rsp + 0x54], 0xffffffff
mov dword [rsp + 0x3c], 0xffffffff
mov dword [rsp + 0x28], 0
jmp 0x4a7258
mov eax, dword [rsp + 0x28]
mov rdx, qword [r13 + 0x10]
mov byte [rsp + 0x77], 1
mov byte [rsp + 0x76], 0
mov dword [rsp + 0x7c], eax
xor eax, eax
mov dword [rsp + 0x30], 2
mov dword [rsp + 0x78], 0
mov dword [rsp + 0x54], 0xffffffff
mov dword [rsp + 0x3c], 0xffffffff
jmp 0x4a7258
mov r10d, 1
test r15d, r15d
je 0x4a73f1
mov r9, r8
mov eax, ebx
test ebp, ebp
jne 0x4a7b80
test r11d, r11d
jne 0x4a78a0
nop dword [rax]
cmp dword [r9 + 8], 0
je 0x4a742d
add eax, 1
add r9, 0xc
cmp ecx, eax
jge 0x4a7880
jmp 0x4a7428
cmp dword [r9 + 8], 0
je 0x4a742d
cmp dword [r9], 0
je 0x4a742d
add eax, 1
add r9, 0xc
cmp ecx, eax
jge 0x4a78a0
jmp 0x4a7428
mov rax, r8
mov edx, ebx
test r12d, r12d
jne 0x4a7b10
test esi, esi
jne 0x4a7900
nop word [rax + rax]
mov r10d, dword [rax + 8]
test r10d, r10d
je 0x4a7858
add edx, 1
add rax, 0xc
cmp ecx, edx
jge 0x4a78e0
jmp 0x4a73e0
mov r9d, dword [rax + 8]
test r9d, r9d
je 0x4a7858
mov r10d, dword [rax]
test r10d, r10d
je 0x4a7858
add edx, 1
add rax, 0xc
cmp ecx, edx
jge 0x4a7900
jmp 0x4a73e0
test edx, edx
jne 0x4a88e0
test eax, eax
movsxd rax, ebx
jne 0x4a8d28
lea r8, [rsp + 0x128]
jmp 0x4a795c
add rax, 1
cmp ecx, eax
jl 0x4a8838
lea rdx, [rax + rax*2]
mov ebx, eax
mov r12d, dword [r8 + rdx*4]
test r12d, r12d
jne 0x4a7950
movsxd rax, ebx
lea rax, [rax + rax*2]
mov dword [rsp + rax*4 + 0x128], edi
nop dword [rax]
mov rdi, qword [rsp + 0x20]
mov eax, dword [rdi + 0xc]
add eax, ebx
mov dword [rsp + 0x5c], eax
mov eax, dword [rsp + 0x28]
cmp eax, dword [r13 + 0x2c]
jne 0x4a79c9
movsxd rax, dword [rsp + 0x54]
mov edi, dword [rsp + 0x30]
mov esi, dword [rsp + 0x5c]
shl rax, 4
mov dword [rsp + rax + 0xa4], edi
mov edi, dword [rsp + 0x58]
mov dword [rsp + rax + 0xa0], esi
mov dword [rsp + rax + 0xa8], edi
mov dword [rsp + 0x9c], esi
mov rdi, qword [rsp + 0x20]
movzx esi, byte [rsp + 0x75]
mov eax, 1
mov dword [rsp + 0x2c], 0
add dword [rsp + 0x28], 1
mov edi, dword [rdi + 8]
add dword [rsp + 0x50], 1
add dword [rsp + 0x84], edi
mov edi, dword [rsp + 0x28]
add dword [rsp + 0x80], 1
cmp r14d, ebx
cmovle esi, eax
mov rax, qword [r13 + 0x18]
sub rax, qword [r13 + 0x10]
sar rax, 5
mov byte [rsp + 0x75], sil
cmp edi, eax
jl 0x4a7a80
movsxd rax, dword [rsp + 0x68]
mov rdi, qword [rsp + 0xda0]
mov edx, dword [r13 + 8]
mov ebx, dword [rsp + 0x54]
mov rsi, rax
lea rax, [rdi + rax*8]
mov edi, dword [rsp + 0x3c]
mov byte [rax], dl
mov edx, ebx
test edi, edi
mov byte [rax + 1], bl
cmovns edx, edi
movzx edi, byte [rsp + 0x7c]
mov byte [rax + 3], dil
mov edi, dword [rsp + 0x78]
mov byte [rax + 2], dl
mov dword [rax + 4], edi
mov edx, dword [r13 + 8]
lea eax, [rdx - 0xb]
cmp eax, 2
setbe al
cmp edx, 3
sete dl
or eax, edx
movzx eax, al
add dword [rsp + 0x98], eax
lea eax, [rsi + 1]
mov dword [rsp + 0x68], eax
mov rax, qword [rsp + 0x48]
mov ecx, dword [rax + 0x18]
cmp dword [rsp + 0x50], ecx
jl 0x4a7010
mov rax, qword [0x0072afd0]
add dword [rsp + 0x6c], 1
mov r14d, dword [rax + 0x1c]
mov eax, dword [rsp + 0x6c]
cmp r14d, eax
setle al
or byte [rsp + 0x75], al
jmp 0x4a7463
mov r9, r8
mov eax, ebx
test r11d, r11d
jne 0x4a7ae8
nop word [rax + rax]
cmp dword [r9 + 4], 0
je 0x4a742d
add eax, 1
add r9, 0xc
cmp ecx, eax
jge 0x4a7ac8
jmp 0x4a7428
cmp dword [r9], 0
je 0x4a742d
cmp dword [r9 + 4], 0
je 0x4a742d
add eax, 1
add r9, 0xc
cmp eax, ecx
jle 0x4a7ae8
jmp 0x4a7428
test esi, esi
jne 0x4a7b48
nop dword [rax]
mov r9d, dword [rax + 8]
test r9d, r9d
je 0x4a7858
mov r10d, dword [rax + 4]
test r10d, r10d
je 0x4a7858
add edx, 1
add rax, 0xc
cmp ecx, edx
jge 0x4a7b18
jmp 0x4a73e0
mov r9d, dword [rax + 8]
test r9d, r9d
je 0x4a7858
mov r10d, dword [rax]
test r10d, r10d
je 0x4a7858
mov r9d, dword [rax + 4]
test r9d, r9d
je 0x4a7858
add edx, 1
add rax, 0xc
cmp ecx, edx
jge 0x4a7b48
jmp 0x4a73e0
test r11d, r11d
jne 0x4a7bb0
nop dword [rax]
cmp dword [r9 + 8], 0
je 0x4a742d
cmp dword [r9 + 4], 0
je 0x4a742d
add eax, 1
add r9, 0xc
cmp ecx, eax
jge 0x4a7b88
jmp 0x4a7428
cmp dword [r9 + 8], 0
je 0x4a742d
cmp dword [r9], 0
je 0x4a742d
cmp dword [r9 + 4], 0
je 0x4a742d
add eax, 1
add r9, 0xc
cmp ecx, eax
jge 0x4a7bb0
jmp 0x4a7428
mov rax, r8
mov edx, ebx
test esi, esi
jne 0x4a7c10
nop dword [rax]
mov r9d, dword [rax + 4]
test r9d, r9d
je 0x4a7858
add edx, 1
add rax, 0xc
cmp edx, ecx
jle 0x4a7bf0
jmp 0x4a73e0
mov r10d, dword [rax]
test r10d, r10d
je 0x4a7858
mov r9d, dword [rax + 4]
test r9d, r9d
je 0x4a7858
add edx, 1
add rax, 0xc
cmp ecx, edx
jge 0x4a7c10
jmp 0x4a73e0
movsxd rax, dword [rsp + 0x28]
shl rax, 5
jmp 0x4a7258
cmp edx, ebx
jl 0x4a7d29
mov rsi, qword [rsp + 0x60]
movsxd rax, ebx
mov r15d, r9d
mov ebp, r9d
mov r12d, r11d
mov edi, r11d
lea rax, [rax + rax*2]
and r15d, 4
and ebp, 1
and r9d, 2
and r12d, 4
and edi, 1
and r11d, 2
lea r8, [rsi + rax*4]
mov ecx, ebx
nop dword [rax]
test r15d, r15d
jne 0x4a7d90
test r9d, r9d
jne 0x4a7eb0
test ebp, ebp
je 0x4a7cc8
mov rax, r8
mov ebx, ecx
nop dword [rax + rax]
mov esi, dword [rax]
test esi, esi
je 0x4a7dc0
add ebx, 1
add rax, 0xc
cmp edx, ebx
jge 0x4a7cb0
nop dword [rax]
xor esi, esi
mov ebx, 0xffffffff
test r12d, r12d
jne 0x4a7d40
test r11d, r11d
jne 0x4a7f10
mov eax, 0xffffffff
test edi, edi
je 0x4a7d0d
mov r10, r8
mov eax, ecx
nop dword [rax + rax]
cmp dword [r10], 0
je 0x4a7d0d
add eax, 1
add r10, 0xc
cmp edx, eax
jge 0x4a7cf0
nop dword [rax]
mov eax, 0xffffffff
cmp eax, ebx
jne 0x4a7d1a
test sil, sil
jne 0x4a7300
add ecx, 1
add r8, 0xc
cmp edx, ecx
jge 0x4a7c90
add dword [rsp + 0x6c], 1
mov byte [rsp + 0x75], 1
jmp 0x4a7463
mov r10, r8
mov eax, ecx
test r11d, r11d
jne 0x4a7e50
test edi, edi
jne 0x4a7d70
nop word [rax + rax]
cmp dword [r10 + 8], 0
je 0x4a7d0d
add eax, 1
add r10, 0xc
cmp edx, eax
jge 0x4a7d58
jmp 0x4a7d08
cmp dword [r10 + 8], 0
je 0x4a7d0d
cmp dword [r10], 0
je 0x4a7d0d
add eax, 1
add r10, 0xc
cmp edx, eax
jge 0x4a7d70
jmp 0x4a7d08
mov rax, r8
mov ebx, ecx
test r9d, r9d
jne 0x4a7df0
test ebp, ebp
jne 0x4a7dd0
mov esi, dword [rax + 8]
test esi, esi
je 0x4a7dc0
nop dword [rax]
add ebx, 1
add rax, 0xc
cmp edx, ebx
jl 0x4a7cc8
mov esi, dword [rax + 8]
test esi, esi
jne 0x4a7da8
nop
mov esi, 1
jmp 0x4a7ccf
mov r10d, dword [rax + 8]
test r10d, r10d
je 0x4a7dc0
mov esi, dword [rax]
test esi, esi
je 0x4a7dc0
add ebx, 1
add rax, 0xc
cmp edx, ebx
jge 0x4a7dd0
jmp 0x4a7cc8
test ebp, ebp
jne 0x4a7e20
nop dword [rax]
mov r10d, dword [rax + 8]
test r10d, r10d
je 0x4a7dc0
mov esi, dword [rax + 4]
test esi, esi
je 0x4a7dc0
add ebx, 1
add rax, 0xc
cmp edx, ebx
jge 0x4a7df8
jmp 0x4a7cc8
mov r10d, dword [rax + 8]
test r10d, r10d
je 0x4a7dc0
mov esi, dword [rax]
test esi, esi
je 0x4a7dc0
mov r10d, dword [rax + 4]
test r10d, r10d
je 0x4a7dc0
add ebx, 1
add rax, 0xc
cmp edx, ebx
jge 0x4a7e20
jmp 0x4a7cc8
test edi, edi
jne 0x4a7e80
nop dword [rax]
cmp dword [r10 + 8], 0
je 0x4a7d0d
cmp dword [r10 + 4], 0
je 0x4a7d0d
add eax, 1
add r10, 0xc
cmp edx, eax
jge 0x4a7e58
jmp 0x4a7d08
cmp dword [r10 + 8], 0
je 0x4a7d0d
cmp dword [r10], 0
je 0x4a7d0d
cmp dword [r10 + 4], 0
je 0x4a7d0d
add eax, 1
add r10, 0xc
cmp edx, eax
jge 0x4a7e80
jmp 0x4a7d08
mov rax, r8
mov ebx, ecx
test ebp, ebp
jne 0x4a7ee0
nop dword [rax]
mov r10d, dword [rax + 4]
test r10d, r10d
je 0x4a7dc0
add ebx, 1
add rax, 0xc
cmp edx, ebx
jge 0x4a7ec0
jmp 0x4a7cc8
mov esi, dword [rax]
test esi, esi
je 0x4a7dc0
mov r10d, dword [rax + 4]
test r10d, r10d
je 0x4a7dc0
add ebx, 1
add rax, 0xc
cmp edx, ebx
jge 0x4a7ee0
jmp 0x4a7cc8
mov r10, r8
mov eax, ecx
test edi, edi
jne 0x4a7f40
nop dword [rax]
cmp dword [r10 + 4], 0
je 0x4a7d0d
add eax, 1
add r10, 0xc
cmp edx, eax
jge 0x4a7f20
jmp 0x4a7d08
cmp dword [r10], 0
je 0x4a7d0d
cmp dword [r10 + 4], 0
je 0x4a7d0d
add eax, 1
add r10, 0xc
cmp edx, eax
jge 0x4a7f40
jmp 0x4a7d08
lea eax, [rbx + 4]
mov dword [rsp + 0x70], eax
lea rax, [rsp + 0xa0]
mov qword [rsp + 0x40], rax
mov rdi, qword [rsp + 0x40]
xor esi, esi
xor r9d, r9d
xor ebp, ebp
xor r12d, r12d
jmp 0x4a7fbb
cmp dword [r13 + 8], 2
jne 0x4a7f9c
cmp esi, 5
je 0x4a7fb3
cmp rbp, r9
je 0x4a8050
mov dword [rbp], r15d
add rbp, 4
cmp r14d, 7
je 0x4a8000
add rsi, 1
add rdi, 0x10
mov r14d, esi
mov r15d, esi
cmp dword [rdi], ebx
jg 0x4a7fad
cmp byte [rsp + 0x76], 0
jne 0x4a7fd2
cmp dword [rsp + 0x3c], esi
je 0x4a7fad
mov r11d, dword [rsp + 0x2c]
mov eax, dword [rdi + 4]
test r11d, r11d
jne 0x4a7fe6
cmp dword [rsp + 0x30], 3
je 0x4a8040
cmp dword [rsp + 0x30], eax
jne 0x4a7f90
mov eax, dword [rsp + 0x58]
cmp eax, dword [rdi + 8]
jne 0x4a7f90
cmp r14d, 7
jne 0x4a7fb3
nop dword [rax + rax]
mov rsi, rbp
sub rsi, r12
sar rsi, 2
cmp r12, rbp
je 0x4a8438
mov rax, r12
cmp rsi, 1
ja 0x4a80d0
mov eax, dword [rax]
mov dword [rsp + 0x54], eax
test r12, r12
je 0x4a7324
mov rcx, r12
call fcn.006c5c20
jmp 0x4a7324
cmp eax, 3
jne 0x4a7f90
jmp 0x4a7fad
movabs rcx, 0x1fffffffffffffff
sub rbp, r12
mov rax, rbp
mov qword [rsp + 0x88], rbp
sar rax, 2
cmp rax, rcx
je 0x4a92b7
test rax, rax
je 0x4a8530
movabs rbp, 0x7ffffffffffffffc
lea rdx, [rax + rax]
cmp rax, rdx
jbe 0x4a84e8
mov rcx, rbp
call fcn.006c5c70
mov r10, rax
lea r9, [rax + rbp]
mov r8, qword [rsp + 0x88]
mov dword [r10 + r8], r15d
lea rbp, [r10 + r8 + 4]
test r8, r8
jg 0x4a8160
test r12, r12
jne 0x4a817e
mov r12, r10
jmp 0x4a7fad
mov rcx, qword [rsp + 0xda8]
call fcn.004a2390
mov eax, eax
xor edx, edx
div rsi
movsxd rax, edx
lea rax, [r12 + rax*4]
jmp 0x4a8020
cmp ebx, ecx
jg 0x4a8838
mov eax, edi
mov edx, edi
and eax, 1
and edx, 2
test dil, 4
jne 0x4a7930
test edx, edx
jne 0x4a8898
test eax, eax
je 0x4a8838
mov r8, qword [rsp + 0x60]
movsxd rax, ebx
jmp 0x4a813c
add rax, 1
cmp ecx, eax
jl 0x4a8838
lea rdx, [rax + rax*2]
mov ebx, eax
mov r10d, dword [r8 + rdx*4]
test r10d, r10d
jne 0x4a8130
movsxd rax, ebx
lea rax, [rax + rax*2]
mov dword [rsp + rax*4 + 0x120], edi
jmp 0x4a7980
mov rcx, r10
mov rdx, r12
mov qword [rsp + 0x88], r9
call sub.msvcrt.dll_memmove
mov r9, qword [rsp + 0x88]
mov r10, rax
mov rcx, r12
mov qword [rsp + 0x90], r9
mov qword [rsp + 0x88], r10
call fcn.006c5c20
mov r9, qword [rsp + 0x90]
mov r10, qword [rsp + 0x88]
jmp 0x4a80c7
cmp ecx, edx
jl 0x4a820c
mov ebx, dword [rsp + 0x40]
test ebx, ebx
jne 0x4a8600
test r12d, r12d
jne 0x4a8a10
test esi, esi
je 0x4a820c
mov rsi, qword [rsp + 0x60]
movsxd r8, edx
lea r8, [r8 + r8*2]
lea r9, [rsi + r8*4]
mov r8d, edx
jmp 0x4a81f5
add r8d, 1
add r9, 0xc
cmp ecx, r8d
jl 0x4a820c
mov r10d, dword [r9]
test r10d, r10d
jne 0x4a81e8
movsxd r8, r8d
lea r8, [r8 + r8*2]
mov dword [rsp + r8*4 + 0x120], edi
cmp ecx, eax
jl 0x4a8660
test r15d, r15d
jne 0x4a8590
test ebp, ebp
jne 0x4a8af8
mov ebx, edx
test r11d, r11d
je 0x4a7980
mov rsi, qword [rsp + 0x60]
movsxd r8, eax
lea r8, [r8 + r8*2]
lea r8, [rsi + r8*4]
jmp 0x4a8257
add eax, 1
add r8, 0xc
cmp eax, ecx
jg 0x4a8660
mov r11d, dword [r8]
test r11d, r11d
jne 0x4a8248
mov esi, dword [rsp + 0x2c]
cdqe
mov ebx, edx
lea rax, [rax + rax*2]
mov dword [rsp + rax*4 + 0x120], esi
jmp 0x4a7980
test ecx, ecx
jne 0x4a87b0
test eax, eax
movsxd rax, ebx
jne 0x4a8c50
lea r8, [rsp + 0x128]
jmp 0x4a82ac
add rax, 1
cmp edx, eax
jl 0x4a7d29
lea rcx, [rax + rax*2]
mov ebx, eax
mov r10d, dword [r8 + rcx*4]
test r10d, r10d
jne 0x4a82a0
mov eax, dword [rsp + 0x28]
cmp eax, dword [r13 + 0x34]
jne 0x4a730e
nop dword [rax]
lea eax, [rbx + 4]
mov dword [rsp + 0x70], eax
mov eax, dword [rsp + 0x38]
mov dword [rsp + 0x34], eax
lea rax, [rsp + 0xa0]
mov qword [rsp + 0x40], rax
xor esi, esi
xor edi, edi
xor r15d, r15d
xor r12d, r12d
jmp 0x4a830a
add rsi, 1
cmp rsi, 8
je 0x4a8337
mov rax, rsi
mov rcx, qword [rsp + 0x40]
shl rax, 4
cmp dword [rax + rcx], ebx
jg 0x4a8300
mov ebp, esi
cmp rdi, r15
je 0x4a83c0
mov dword [r15], esi
add rsi, 1
add r15, 4
cmp rsi, 8
jne 0x4a830a
mov rsi, r15
sub rsi, r12
cmp rsi, 8
jne 0x4a83a0
cmp dword [r13 + 8], 2
je 0x4a8558
cmp r15, r12
je 0x4a86b0
mov esi, 2
mov rcx, qword [rsp + 0xda8]
call fcn.004a2390
mov eax, eax
xor edx, edx
div rsi
movsxd rax, edx
lea rax, [r12 + rax*4]
mov eax, dword [rax]
cmp byte [rsp + 0x77], 0
mov dword [rsp + 0x3c], eax
je 0x4a8388
mov dword [rsp + 0x58], eax
test r12, r12
je 0x4a7316
mov rcx, r12
call fcn.006c5c20
jmp 0x4a7316
cmp r15, r12
je 0x4a86b0
sar rsi, 2
cmp rsi, 1
ja 0x4a835c
mov rax, r12
jmp 0x4a8377
sub rdi, r12
mov rax, rdi
mov r14, rdi
movabs rdi, 0x1fffffffffffffff
sar rax, 2
cmp rax, rdi
je 0x4a92c3
test rax, rax
je 0x4a87a0
movabs rdi, 0x7ffffffffffffffc
lea rdx, [rax + rax]
cmp rax, rdx
jbe 0x4a8540
mov rcx, rdi
call fcn.006c5c70
mov r9, rax
add rdi, rax
mov dword [r9 + r14], ebp
lea r15, [r9 + r14 + 4]
test r14, r14
jg 0x4a8500
test r12, r12
jne 0x4a8511
mov r12, r9
jmp 0x4a8300
test r12, r12
jne 0x4a930b
add dword [rsp + 0x34], 1
add ebx, 1
cmp ebx, dword [rsp + 0x70]
jne 0x4a7f7c
cmp dword [rsp + 0x2c], 0xff
jle 0x4a8870
mov eax, dword [0x0077f0c8]
add dword [rsp + 0x6c], 1
mov r13, qword [0x0077f0c0]
mov dword [rsp + 0x3c], eax
mov eax, dword [0x0077f0cc]
mov dword [rsp + 0x54], eax
mov eax, dword [0x0077f0d0]
mov dword [rsp + 0x7c], eax
mov eax, dword [0x0077f0d4]
mov dword [rsp + 0x78], eax
mov eax, dword [0x0077f0d8]
mov dword [rsp + 0x30], eax
mov eax, dword [0x0077f0dc]
mov dword [rsp + 0x58], eax
movzx eax, byte [0x0077f0e0]
mov byte [rsp + 0x76], al
movzx eax, byte [0x0077f0e1]
mov byte [rsp + 0x77], al
mov rax, qword [0x0072afd0]
mov r14d, dword [rax + 0x1c]
mov eax, dword [rsp + 0x6c]
cmp eax, r14d
setge al
or byte [rsp + 0x75], al
mov eax, dword [rsp + 0x34]
mov dword [rsp + 0x38], eax
jmp 0x4a7463
test rdx, rdx
jne 0x4a92ed
xor r9d, r9d
xor r10d, r10d
jmp 0x4a80a4
mov rcx, r9
mov r8, r14
mov rdx, r12
call sub.msvcrt.dll_memmove
mov r9, rax
mov rcx, r12
mov qword [rsp + 0x88], r9
call fcn.006c5c20
mov r9, qword [rsp + 0x88]
jmp 0x4a8429
mov ebp, 4
jmp 0x4a8095
test rdx, rdx
jne 0x4a92cf
xor edi, edi
xor r9d, r9d
jmp 0x4a840e
cmp dword [r12], 5
je 0x4a856b
cmp dword [r12 + 4], 5
jne 0x4a834e
mov rcx, r12
call fcn.006c5c20
mov dword [rsp + 0x58], 5
mov dword [rsp + 0x3c], 5
jmp 0x4a7316
mov rsi, qword [rsp + 0x60]
movsxd r8, eax
lea r8, [r8 + r8*2]
lea r8, [rsi + r8*4]
test ebp, ebp
jne 0x4a8a88
test r11d, r11d
jne 0x4a85f6
jmp 0x4a85bf
add eax, 1
add r8, 0xc
cmp eax, ecx
jg 0x4a8660
mov r12d, dword [r8 + 8]
test r12d, r12d
jne 0x4a85b0
mov esi, dword [rsp + 0x2c]
cdqe
mov ebx, edx
lea rax, [rax + rax*2]
mov dword [rsp + rax*4 + 0x128], esi
jmp 0x4a7980
mov edi, dword [r8]
test edi, edi
je 0x4a825f
add eax, 1
add r8, 0xc
cmp eax, ecx
jg 0x4a8660
mov ebp, dword [r8 + 8]
test ebp, ebp
jne 0x4a85e0
jmp 0x4a85c8
movsxd r8, edx
lea r8, [r8 + r8*2]
test r12d, r12d
jne 0x4a8980
test esi, esi
mov rsi, qword [rsp + 0x60]
lea r9, [rsi + r8*4]
mov r8d, edx
jne 0x4a868c
jmp 0x4a8639
add r8d, 1
add r9, 0xc
cmp ecx, r8d
jl 0x4a820c
mov r10d, dword [r9 + 8]
test r10d, r10d
jne 0x4a8628
movsxd r8, r8d
lea r8, [r8 + r8*2]
mov dword [rsp + r8*4 + 0x128], edi
cmp ecx, eax
jge 0x4a8214
nop dword [rax]
mov ebx, edx
jmp 0x4a7980
mov esi, dword [r9]
test esi, esi
je 0x4a81fd
add r8d, 1
add r9, 0xc
cmp ecx, r8d
jl 0x4a820c
mov r12d, dword [r9 + 8]
test r12d, r12d
jne 0x4a8670
movsxd r8, r8d
lea r8, [r8 + r8*2]
mov dword [rsp + r8*4 + 0x128], edi
jmp 0x4a8651
test r12, r12
je 0x4a86bd
mov rcx, r12
call fcn.006c5c20
add dword [rsp + 0x34], 1
add ebx, 1
cmp ebx, dword [rsp + 0x70]
jne 0x4a82ec
cmp dword [rsp + 0x2c], 0xff
jle 0x4a8870
mov eax, dword [0x0077f0c8]
add dword [rsp + 0x6c], 1
mov r13, qword [0x0077f0c0]
mov dword [rsp + 0x3c], eax
mov eax, dword [0x0077f0cc]
mov dword [rsp + 0x54], eax
mov eax, dword [0x0077f0d0]
mov dword [rsp + 0x7c], eax
mov eax, dword [0x0077f0d4]
mov dword [rsp + 0x78], eax
mov eax, dword [0x0077f0d8]
mov dword [rsp + 0x30], eax
mov eax, dword [0x0077f0dc]
mov dword [rsp + 0x58], eax
movzx eax, byte [0x0077f0e0]
mov byte [rsp + 0x76], al
movzx eax, byte [0x0077f0e1]
mov byte [rsp + 0x77], al
mov rax, qword [0x0072afd0]
mov r14d, dword [rax + 0x1c]
mov eax, dword [rsp + 0x6c]
cmp r14d, eax
setle al
or byte [rsp + 0x75], al
mov eax, dword [rsp + 0x34]
mov dword [rsp + 0x38], eax
jmp 0x4a7463
test eax, eax
movsxd rax, ebx
jne 0x4a8c10
lea r8, [rsp + 0x124]
jmp 0x4a878c
add rax, 1
cmp edx, eax
jl 0x4a7d29
lea rcx, [rax + rax*2]
mov ebx, eax
mov edi, dword [r8 + rcx*4]
test edi, edi
jne 0x4a8780
jmp 0x4a7300
mov edi, 4
jmp 0x4a8400
mov rsi, qword [rsp + 0x60]
test eax, eax
movsxd rax, ebx
lea rax, [rax + rax*2]
lea rax, [rsi + rax*4]
jne 0x4a8824
jmp 0x4a87ec
mov r15d, dword [rax + 4]
test r15d, r15d
je 0x4a7300
add ebx, 1
add rax, 0xc
cmp edx, ebx
jl 0x4a7d29
mov ecx, dword [rax + 8]
test ecx, ecx
jne 0x4a87d0
jmp 0x4a7300
mov ebp, dword [rax]
test ebp, ebp
je 0x4a7300
mov edi, dword [rax + 4]
test edi, edi
je 0x4a7300
add ebx, 1
add rax, 0xc
cmp edx, ebx
jl 0x4a7d29
mov r12d, dword [rax + 8]
test r12d, r12d
jne 0x4a8800
jmp 0x4a7300
mov eax, dword [rsp + 0x34]
add dword [rsp + 0x6c], 1
mov byte [rsp + 0x75], 1
mov dword [rsp + 0x38], eax
jmp 0x4a7463
test eax, eax
cmovs eax, r11d
add rdx, 8
mov dword [r8 + 0x1858], eax
cmp r9, rdx
jne 0x4a74f8
jmp 0x4a7537
mov rax, qword [r13 + 0x18]
sub rax, qword [r13 + 0x10]
sar rax, 5
add dword [rsp + 0x2c], 1
mov dword [rsp + 0x28], eax
mov eax, dword [rsp + 0x34]
mov dword [rsp + 0x38], eax
jmp 0x4a7a80
test eax, eax
movsxd rax, ebx
jne 0x4a8ce0
lea r8, [rsp + 0x124]
jmp 0x4a88b8
add rax, 1
cmp ecx, eax
jl 0x4a8838
lea rdx, [rax + rax*2]
mov ebx, eax
mov r9d, dword [r8 + rdx*4]
test r9d, r9d
jne 0x4a88b0
movsxd rax, ebx
lea rax, [rax + rax*2]
mov dword [rsp + rax*4 + 0x124], edi
jmp 0x4a7980
mov rsi, qword [rsp + 0x60]
test eax, eax
movsxd rax, ebx
lea rax, [rax + rax*2]
lea rax, [rsi + rax*4]
jne 0x4a895e
jmp 0x4a8918
mov r10d, dword [rax + 4]
test r10d, r10d
je 0x4a88c7
add ebx, 1
add rax, 0xc
cmp ebx, ecx
jg 0x4a8838
mov r11d, dword [rax + 8]
test r11d, r11d
jne 0x4a8900
movsxd rax, ebx
lea rax, [rax + rax*2]
mov dword [rsp + rax*4 + 0x128], edi
jmp 0x4a7980
mov r8d, dword [rax]
test r8d, r8d
je 0x4a814b
mov edx, dword [rax + 4]
test edx, edx
je 0x4a88c7
add ebx, 1
add rax, 0xc
cmp ecx, ebx
jl 0x4a8838
mov r9d, dword [rax + 8]
test r9d, r9d
jne 0x4a8938
movsxd rax, ebx
lea rax, [rax + rax*2]
mov dword [rsp + rax*4 + 0x128], edi
jmp 0x4a7980
test esi, esi
mov rsi, qword [rsp + 0x60]
lea r9, [rsi + r8*4]
mov r8d, edx
jne 0x4a89ec
jmp 0x4a89b6
mov r10d, dword [r9 + 4]
test r10d, r10d
je 0x4a8a4a
add r8d, 1
add r9, 0xc
cmp r8d, ecx
jg 0x4a820c
mov ebx, dword [r9 + 8]
test ebx, ebx
jne 0x4a8998
jmp 0x4a8642
mov esi, dword [r9]
test esi, esi
je 0x4a81fd
mov ebx, dword [r9 + 4]
test ebx, ebx
je 0x4a8a4a
add r8d, 1
add r9, 0xc
cmp ecx, r8d
jl 0x4a820c
mov r12d, dword [r9 + 8]
test r12d, r12d
jne 0x4a89c8
movsxd r8, r8d
lea r8, [r8 + r8*2]
mov dword [rsp + r8*4 + 0x128], edi
jmp 0x4a8651
movsxd r8, edx
test esi, esi
mov rsi, qword [rsp + 0x60]
lea r8, [r8 + r8*2]
lea r9, [rsi + r8*4]
mov r8d, edx
jne 0x4a8a79
jmp 0x4a8a41
add r8d, 1
add r9, 0xc
cmp ecx, r8d
jl 0x4a820c
mov r12d, dword [r9 + 4]
test r12d, r12d
jne 0x4a8a30
movsxd r8, r8d
lea r8, [r8 + r8*2]
mov dword [rsp + r8*4 + 0x124], edi
jmp 0x4a820c
mov ebx, dword [r9 + 4]
test ebx, ebx
je 0x4a8a4a
add r8d, 1
add r9, 0xc
cmp r8d, ecx
jg 0x4a820c
mov esi, dword [r9]
test esi, esi
jne 0x4a8a60
jmp 0x4a81fd
test r11d, r11d
jne 0x4a8ae4
jmp 0x4a8aab
mov ebx, dword [r8 + 4]
test ebx, ebx
je 0x4a8b28
add eax, 1
add r8, 0xc
cmp eax, ecx
jg 0x4a8660
mov esi, dword [r8 + 8]
test esi, esi
jne 0x4a8a90
jmp 0x4a85c8
mov r10d, dword [r8]
test r10d, r10d
je 0x4a825f
mov r9d, dword [r8 + 4]
test r9d, r9d
je 0x4a8b28
add eax, 1
add r8, 0xc
cmp ecx, eax
jl 0x4a8660
mov r11d, dword [r8 + 8]
test r11d, r11d
jne 0x4a8ac0
jmp 0x4a85c8
mov rsi, qword [rsp + 0x60]
movsxd r8, eax
lea r8, [r8 + r8*2]
lea r8, [rsi + r8*4]
test r11d, r11d
jne 0x4a8b58
jmp 0x4a8b1f
add eax, 1
add r8, 0xc
cmp eax, ecx
jg 0x4a8660
mov r10d, dword [r8 + 4]
test r10d, r10d
jne 0x4a8b10
mov esi, dword [rsp + 0x2c]
cdqe
mov ebx, edx
lea rax, [rax + rax*2]
mov dword [rsp + rax*4 + 0x124], esi
jmp 0x4a7980
mov r15d, dword [r8 + 4]
test r15d, r15d
je 0x4a8b28
add eax, 1
add r8, 0xc
cmp eax, ecx
jg 0x4a8660
mov r9d, dword [r8]
test r9d, r9d
jne 0x4a8b40
jmp 0x4a825f
mov rdx, qword [r13 + 0x10]
xor eax, eax
mov byte [rsp + 0x77], 0
mov byte [rsp + 0x76], 0
mov dword [rsp + 0x54], 0xffffffff
mov dword [rsp + 0x3c], 0xffffffff
mov dword [rsp + 0x28], 0
jmp 0x4a7258
mov rcx, qword [rsp + 0xda8]
call fcn.004a2320
lea rdx, [0x00701640]
and eax, 1
mov r13, qword [rdx + rax*8]
mov eax, dword [r13 + 8]
mov dword [rsp + 0x28], eax
cmp eax, 0xd
ja case.default.0x4a8c0c
lea rcx, [0x0071759c]
mov edx, eax
movsxd rax, dword [rcx + rdx*4]
add rax, rcx
jmp rax
call fcn.004a2320
lea rdx, [0x00701680]
and eax, 1
mov r13, qword [rdx + rax*8]
mov eax, dword [r13 + 8]
mov dword [rsp + 0x28], eax
cmp eax, 0xd
ja case.default.0x4a8c0c
lea rcx, [0x007175d4]
mov edx, eax
movsxd rax, dword [rcx + rdx*4]
add rax, rcx
jmp rax
mov rsi, qword [rsp + 0x60]
lea rax, [rax + rax*2]
lea rax, [rsi + rax*4]
jmp 0x4a8c3c
mov r11d, dword [rax + 4]
test r11d, r11d
je 0x4a7300
add ebx, 1
add rax, 0xc
cmp edx, ebx
jl 0x4a7d29
mov esi, dword [rax]
test esi, esi
jne 0x4a8c20
jmp 0x4a7300
mov rsi, qword [rsp + 0x60]
lea rax, [rax + rax*2]
lea rax, [rsi + rax*4]
jmp 0x4a8c7b
mov r8d, dword [rax]
test r8d, r8d
je 0x4a7300
add ebx, 1
add rax, 0xc
cmp edx, ebx
jl 0x4a7d29
mov r9d, dword [rax + 8]
test r9d, r9d
jne 0x4a8c60
jmp 0x4a7300
call fcn.004a2320
lea rdx, [0x0077f1c0]
test al, 1
lea rax, [0x0077f160]
cmovne rax, rdx
mov qword [rsp + 0x48], rax
mov rax, qword [rsp + 0x48]
mov ecx, dword [rax + 0x18]
test ecx, ecx
jg 0x4a6ff9
mov rax, qword [0x0072afd0]
add dword [rsp + 0x6c], 1
mov r14d, dword [rax + 0x1c]
mov eax, dword [rsp + 0x6c]
cmp eax, r14d
setge byte [rsp + 0x75]
jmp 0x4a7463
mov rsi, qword [rsp + 0x60]
lea rax, [rax + rax*2]
lea rax, [rsi + rax*4]
jmp 0x4a8d0c
mov r15d, dword [rax + 4]
test r15d, r15d
je 0x4a88c7
add ebx, 1
add rax, 0xc
cmp ebx, ecx
jg 0x4a8838
mov edx, dword [rax]
test edx, edx
jne 0x4a8cf0
movsxd rax, ebx
lea rax, [rax + rax*2]
mov dword [rsp + rax*4 + 0x120], edi
jmp 0x4a7980
mov rsi, qword [rsp + 0x60]
lea rax, [rax + rax*2]
lea rax, [rsi + rax*4]
jmp 0x4a8d59
mov esi, dword [rax]
test esi, esi
je 0x4a814b
add ebx, 1
add rax, 0xc
cmp ebx, ecx
jg 0x4a8838
mov ebp, dword [rax + 8]
test ebp, ebp
jne 0x4a8d40
movsxd rax, ebx
lea rax, [rax + rax*2]
mov dword [rsp + rax*4 + 0x128], edi
jmp 0x4a7980
mov eax, dword [rsp + 0x28]
mov byte [rsp + 0x77], 1
mov byte [rsp + 0x76], 0
mov rdx, qword [0x0077f4b0]
mov dword [rsp + 0x30], eax
xor eax, eax
mov dword [rsp + 0x78], 0
mov dword [rsp + 0x7c], 0
lea r13, [0x0077f4a0]
mov dword [rsp + 0x54], 0xffffffff
mov dword [rsp + 0x3c], 0xffffffff
mov dword [rsp + 0x28], 0
jmp 0x4a7258
mov rcx, qword [rsp + 0xda8]
call fcn.004a2390
mov byte [rsp + 0x77], 0
mov rdx, qword [0x0077f4b0]
mov dword [rsp + 0x58], eax
mov eax, dword [rsp + 0x28]
mov byte [rsp + 0x76], 1
mov dword [rsp + 0x30], eax
xor eax, eax
jmp 0x4a8d8e
mov rbx, qword [rsp + 0xda8]
nop dword [rax + rax]
mov rcx, rbx
call fcn.004a2390
mov edx, eax
lea rcx, [rdx - 1]
test rcx, rdx
je 0x4a8e00
nop dword [rax + rax]
mov dword [rsp + 0x78], eax
mov eax, dword [rsp + 0x28]
mov rdx, qword [r13 + 0x10]
mov byte [rsp + 0x77], 0
mov dword [rsp + 0x30], eax
xor eax, eax
mov byte [rsp + 0x76], 0
mov dword [rsp + 0x58], 0xffffffff
mov dword [rsp + 0x7c], 0
mov dword [rsp + 0x54], 0xffffffff
mov dword [rsp + 0x3c], 0xffffffff
mov dword [rsp + 0x28], 0
jmp 0x4a7258
mov rbx, qword [rsp + 0xda8]
nop dword [rax]
mov rcx, rbx
call fcn.004a2320
and eax, 0x3f
je 0x4a8e70
movzx eax, al
jmp 0x4a8e18
mov rbx, qword [rsp + 0xda8]
nop word [rax + rax]
mov rcx, rbx
call fcn.004a2320
and eax, 0x3f
je 0x4a8e90
movzx eax, al
jmp 0x4a8e18
mov rbx, qword [rsp + 0xda8]
nop dword [rax]
mov rcx, rbx
call fcn.004a2390
mov edx, eax
lea rcx, [rdx - 1]
test rcx, rdx
je 0x4a8eb0
jmp 0x4a8e18
add dword [rsp + 0x6c], 1
jmp 0x4a7463
add dword [rsp + 0x6c], 1
mov eax, dword [rsp + 0x6c]
cmp r14d, eax
setle byte [rsp + 0x75]
jmp 0x4a7463
pxor xmm0, xmm0
pxor xmm1, xmm1
mov r10d, dword [rsp + 0x68]
mov rax, qword [rsp + 0xda0]
cvtsi2sd xmm0, dword [rsp + 0x80]
cvtsi2sd xmm1, dword [rsp + 0x9c]
mov qword [rax + 0x1858], 0
mov qword [rax + 0x1860], 0
mov qword [rax + 0x1868], 0
mov qword [rax + 0x1870], 0
divsd xmm0, xmm1
jmp 0x4a74d0
mov rcx, qword [rsp + 0xda8]
call fcn.004a2390
mov byte [rsp + 0x77], 0
mov rdx, qword [0x0077f4b0]
mov dword [rsp + 0x78], eax
xor eax, eax
mov byte [rsp + 0x76], 0
mov dword [rsp + 0x58], 0xffffffff
mov dword [rsp + 0x30], 6
jmp 0x4a8d96
mov rcx, qword [rsp + 0xda8]
call fcn.004a2390
mov byte [rsp + 0x77], 0
mov rdx, qword [0x0077f4b0]
mov dword [rsp + 0x78], eax
xor eax, eax
mov byte [rsp + 0x76], 0
mov dword [rsp + 0x58], 0xffffffff
mov dword [rsp + 0x30], 5
jmp 0x4a8d96
mov rcx, qword [rsp + 0xda8]
lea r13, [0x0077f4a0]
call fcn.004a2320
mov byte [rsp + 0x77], 1
mov rdx, qword [0x0077f4b0]
movzx eax, al
mov byte [rsp + 0x76], 0
mov dword [rsp + 0x7c], eax
mov eax, dword [rsp + 0x28]
mov dword [rsp + 0x78], 0
mov dword [rsp + 0x30], eax
xor eax, eax
mov dword [rsp + 0x54], 0xffffffff
mov dword [rsp + 0x3c], 0xffffffff
mov dword [rsp + 0x28], 0
jmp 0x4a7258
mov eax, dword [rsp + 0x28]
mov byte [rsp + 0x77], 1
lea r13, [0x0077f4a0]
mov byte [rsp + 0x76], 0
mov rdx, qword [0x0077f4b0]
mov dword [rsp + 0x7c], eax
xor eax, eax
mov dword [rsp + 0x30], 2
mov dword [rsp + 0x78], 0
mov dword [rsp + 0x54], 0xffffffff
mov dword [rsp + 0x3c], 0xffffffff
jmp 0x4a7258
mov rbx, qword [rsp + 0xda8]
mov rcx, rbx
call fcn.004a2320
and eax, 0x3f
je 0x4a90e0
movzx eax, al
jmp 0x4a8e18
mov rbx, qword [rsp + 0xda8]
nop dword [rax]
mov rcx, rbx
call fcn.004a2320
and eax, 0x3f
je 0x4a9100
movzx eax, al
jmp 0x4a8e18
mov rbx, qword [rsp + 0xda8]
nop dword [rax]
mov rcx, rbx
call fcn.004a2320
and eax, 0x3f
je 0x4a9120
movzx eax, al
mov dword [rsp + 0x78], eax
mov eax, dword [rsp + 0x28]
mov byte [rsp + 0x77], 0
mov rdx, qword [0x0077f4b0]
mov dword [rsp + 0x30], eax
xor eax, eax
mov byte [rsp + 0x76], 0
mov dword [rsp + 0x58], 0xffffffff
jmp 0x4a8d96
mov rbx, qword [rsp + 0xda8]
nop dword [rax]
mov rcx, rbx
call fcn.004a2390
mov edx, eax
lea rcx, [rdx - 1]
test rcx, rdx
je 0x4a9168
jmp 0x4a8e18
mov rbx, qword [rsp + 0xda8]
nop dword [rax + rax]
mov rcx, rbx
call fcn.004a2390
mov edx, eax
lea rcx, [rdx - 1]
test rcx, rdx
je 0x4a9190
jmp 0x4a9130
mov rbx, qword [rsp + 0xda8]
nop dword [rax]
mov rcx, rbx
call fcn.004a2390
mov edx, eax
lea rcx, [rdx - 1]
test rcx, rdx
je 0x4a91b0
jmp 0x4a8e18
mov rbx, qword [rsp + 0xda8]
mov rcx, rbx
call fcn.004a2320
and eax, 0x3f
je 0x4a91d0
movzx eax, al
jmp 0x4a8e18
mov rbx, qword [rsp + 0xda8]
nop dword [rax]
mov rcx, rbx
call fcn.004a2390
mov edx, eax
lea rcx, [rdx - 1]
test rcx, rdx
je 0x4a91f0
jmp 0x4a8e18
mov byte [rsp + 0x77], 0
mov rdx, qword [0x0077f4b0]
xor eax, eax
lea r13, [0x0077f4a0]
mov byte [rsp + 0x76], 0
mov dword [rsp + 0x54], 0xffffffff
mov dword [rsp + 0x3c], 0xffffffff
mov dword [rsp + 0x28], 0
jmp 0x4a7258
mov rax, qword [rsp + 0xda0]
xor r10d, r10d
mov dword [rsp + 0x98], 0
mov dword [rsp + 0x6c], 0
movsd xmm0, qword [0x007177e0]
mov qword [rax + 0x1858], 0
mov qword [rax + 0x1860], 0
mov qword [rax + 0x1868], 0
mov qword [rax + 0x1870], 0
mov dword [rsp + 0x9c], 0
mov dword [rsp + 0x84], 0
mov dword [rsp + 0x80], 0
jmp 0x4a7537
lea rcx, [0x00717410]
call fcn.006c83d0
lea rcx, [0x00717410]
call fcn.006c83d0
movabs rax, 0x1fffffffffffffff
cmp rdx, rax
cmova rdx, rax
lea rdi, [rdx*4]
jmp 0x4a8400
movabs rax, 0x1fffffffffffffff
cmp rdx, rax
cmova rdx, rax
lea rbp, [rdx*4]
jmp 0x4a8095
mov rcx, r12
call fcn.006c5c20
jmp 0x4a8441