Function at 0x40c070
Capabilities:
Check os version

Disassembly:
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbp
push rbx
mov eax, 0x4beb8
call fcn.004275e0
sub rsp, rax
movdqa xmmword [rsp + 0x4bea0], xmm7
movaps xmmword [rsp + 0x4be90], xmm6
mov qword [rsp + 0xa8], rdx
test byte [r8 + 0x1d], 1
je 0x419063
mov rbx, r8
mov rdi, qword [r8 + 0x10]
mov r14, rdi
add r14, 0x14
jb 0x418230
mov qword [rsp + 0x220], rcx
mov rax, qword [rbx + 8]
lea rcx, [r14 + 0x18]
cmp rcx, rax
ja 0x418ff8
mov rsi, qword [rbx]
movzx ecx, word [rsi + r14]
cmp ecx, 0x10b
je 0x40c10a
cmp ecx, 0x20b
jne 0x419063
lea rcx, [r14 + 0x70]
cmp rcx, rax
ja 0x418ff8
mov r15, qword [rsi + r14 + 0x18]
jmp 0x40c11c
lea rcx, [r14 + 0x60]
cmp rcx, rax
ja 0x418ff8
mov r15d, dword [rsi + r14 + 0x1c]
lea rbp, [rsp + 0x31d0]
mov r8d, 0x408
mov rcx, rbp
xor edx, edx
call fcn.00440060
mov qword [rsp + 0x35d8], r15
movzx eax, word [rsi + rdi + 0x10]
add r14, rax
jb 0x418230
movzx edi, word [rsi + rdi + 2]
test rdi, rdi
je 0x4178e8
add r14, rsi
lea r13, [rsp + 0x3e40]
movabs r12, 0xaaaaaaaaaaaaaaaa
lea r15, str..debug_info
jmp 0x40c1a0
mov r9d, 0xb
mov r8, r15
call fcn.00421480
test al, 1
jne 0x40c1dd
add r14, 0x28
add rdi, 0xffffffffffffffff
je 0x4178e8
mov rcx, r13
mov rdx, rbx
mov r8, r14
call fcn.00421760
movzx eax, word [rsp + 0x3e50]
cmp eax, 0x42
je 0x40c192
test eax, eax
jne 0x418eaf
mov rdx, qword [rsp + 0x3e48]
mov rcx, r12
test rdx, rdx
je 0x40c180
mov rcx, qword [rsp + 0x3e40]
jmp 0x40c180
test rsi, rsi
je 0x4178e8
mov eax, dword [0x0044547c]
mov dword [rsp + 0x19b], eax
mov eax, dword [0x00445479]
mov dword [rsp + 0x198], eax
mov byte [rsp + 0x60], 0
mov dword [rsp + 0x190], 0
mov dword [rsp + 0x193], 0
mov dword [rsp + 0x188], 0
mov dword [rsp + 0x18b], 0
mov eax, dword [0x004454a9]
mov dword [rsp + 0x208], eax
mov eax, dword [0x004454ac]
mov dword [rsp + 0x20b], eax
mov byte [rsp + 0x70], 0
mov eax, dword [0x004454b1]
mov dword [rsp + 0x200], eax
mov eax, dword [0x004454b4]
mov dword [rsp + 0x203], eax
mov eax, dword [0x004454bc]
mov dword [rsp + 0x1fb], eax
mov eax, dword [0x004454b9]
mov dword [rsp + 0x1f8], eax
mov eax, dword [0x004454d9]
mov dword [rsp + 0x1f0], eax
mov eax, dword [0x004454dc]
mov dword [rsp + 0x1f3], eax
mov byte [rsp + 0x78], 0
mov eax, dword [0x004454e1]
mov dword [rsp + 0x1e8], eax
mov eax, dword [0x004454e4]
mov dword [rsp + 0x1eb], eax
mov eax, dword [0x004454e9]
mov dword [rsp + 0x1e0], eax
mov eax, dword [0x004454ec]
mov dword [rsp + 0x1e3], eax
mov eax, dword [0x00445509]
mov dword [rsp + 0x1d8], eax
mov eax, dword [0x0044550c]
mov dword [rsp + 0x1db], eax
mov byte [rsp + 0x88], 0
mov eax, dword [0x00445514]
mov dword [rsp + 0x1d3], eax
mov eax, dword [0x00445511]
mov dword [rsp + 0x1d0], eax
mov eax, dword [0x0044551c]
mov dword [rsp + 0x1cb], eax
mov eax, dword [0x00445519]
mov dword [rsp + 0x1c8], eax
mov eax, dword [0x0044553c]
mov dword [rsp + 0x1c3], eax
mov eax, dword [0x00445539]
mov dword [rsp + 0x1c0], eax
mov byte [rsp + 0x98], 0
mov eax, dword [0x00445544]
mov dword [rsp + 0x1bb], eax
mov eax, dword [0x00445541]
mov dword [rsp + 0x1b8], eax
mov eax, dword [0x0044554c]
mov dword [rsp + 0x1b3], eax
mov eax, dword [0x00445549]
mov dword [rsp + 0x1b0], eax
mov eax, dword [0x0044556c]
mov dword [rsp + 0x1ab], eax
mov eax, dword [0x00445569]
mov dword [rsp + 0x1a8], eax
mov byte [rsp + 0xa0], 0
mov eax, dword [0x00445574]
mov dword [rsp + 0x1a3], eax
mov eax, dword [0x00445571]
mov dword [rsp + 0x1a0], eax
mov eax, dword [0x0044557c]
mov dword [rsp + 0x183], eax
mov eax, dword [0x00445579]
mov dword [rsp + 0x180], eax
mov eax, dword [0x0044559c]
mov dword [rsp + 0x17b], eax
mov eax, dword [0x00445599]
mov dword [rsp + 0x178], eax
mov byte [rsp + 0x90], 0
mov eax, dword [0x004455a4]
mov dword [rsp + 0x173], eax
mov eax, dword [0x004455a1]
mov dword [rsp + 0x170], eax
mov eax, dword [0x004455ac]
mov dword [rsp + 0x16b], eax
mov eax, dword [0x004455a9]
mov dword [rsp + 0x168], eax
mov eax, dword [0x004455cc]
mov dword [rsp + 0x163], eax
mov eax, dword [0x004455c9]
mov dword [rsp + 0x160], eax
mov byte [rsp + 0x80], 0
mov eax, dword [0x004455d4]
mov dword [rsp + 0x15b], eax
mov eax, dword [0x004455d1]
mov dword [rsp + 0x158], eax
mov eax, dword [0x004455dc]
mov dword [rsp + 0x153], eax
mov eax, dword [0x004455d9]
mov dword [rsp + 0x150], eax
mov eax, dword [0x004455fc]
mov dword [rsp + 0x14b], eax
mov eax, dword [0x004455f9]
mov dword [rsp + 0x148], eax
mov byte [rsp + 0x68], 0
mov eax, dword [0x00445604]
mov dword [rsp + 0x143], eax
mov eax, dword [0x00445601]
mov dword [rsp + 0x140], eax
mov eax, dword [0x0044560c]
mov dword [rsp + 0x13b], eax
mov eax, dword [0x00445609]
mov dword [rsp + 0x138], eax
mov eax, dword [0x0044562c]
mov dword [rsp + 0x133], eax
mov eax, dword [0x00445629]
mov dword [rsp + 0x130], eax
mov byte [rsp + 0x58], 0
mov eax, dword [0x00445634]
mov dword [rsp + 0x12b], eax
mov eax, dword [0x00445631]
mov dword [rsp + 0x128], eax
mov eax, dword [0x0044563c]
mov dword [rsp + 0x123], eax
mov eax, dword [0x00445639]
mov dword [rsp + 0x120], eax
mov eax, dword [0x0044565c]
mov dword [rsp + 0x11b], eax
mov eax, dword [0x00445659]
mov dword [rsp + 0x118], eax
mov byte [rsp + 0x50], 0
mov eax, dword [0x00445664]
mov dword [rsp + 0x113], eax
mov eax, dword [0x00445661]
mov dword [rsp + 0x110], eax
mov eax, dword [0x0044566c]
mov dword [rsp + 0x10b], eax
mov eax, dword [0x00445669]
mov dword [rsp + 0x108], eax
mov eax, dword [0x0044568c]
mov dword [rsp + 0x103], eax
mov eax, dword [0x00445689]
mov dword [rsp + 0x100], eax
mov byte [rsp + 0x48], 0
mov eax, dword [0x00445694]
mov dword [rsp + 0xfb], eax
mov eax, dword [0x00445691]
mov dword [rsp + 0xf8], eax
mov eax, dword [0x0044569c]
mov dword [rsp + 0xf3], eax
mov eax, dword [0x00445699]
mov dword [rsp + 0xf0], eax
mov eax, dword [0x004456bc]
mov dword [rsp + 0xeb], eax
mov eax, dword [0x004456b9]
mov dword [rsp + 0xe8], eax
mov byte [rsp + 0x40], 0
mov eax, dword [0x004456c4]
mov dword [rsp + 0xe3], eax
mov eax, dword [0x004456c1]
mov dword [rsp + 0xe0], eax
mov eax, dword [0x004456cc]
mov dword [rsp + 0xdb], eax
mov eax, dword [0x004456c9]
mov dword [rsp + 0xd8], eax
mov eax, dword [0x004456ec]
mov dword [rsp + 0xd3], eax
mov eax, dword [0x004456e9]
mov dword [rsp + 0xd0], eax
mov byte [rsp + 0x38], 0
mov eax, dword [0x004456f4]
mov dword [rsp + 0xcb], eax
mov eax, dword [0x004456f1]
mov dword [rsp + 0xc8], eax
mov eax, dword [0x004456fc]
mov dword [rsp + 0xc3], eax
mov eax, dword [0x004456f9]
mov dword [rsp + 0xc0], eax
mov rax, qword [rbx + 0x10]
lea rcx, [rax + 0x14]
cmp rcx, qword [rbx + 8]
ja 0x418ff8
mov rbp, rax
add rbp, 0x14
jb 0x418230
mov r12, qword [rbx]
movzx ecx, word [r12 + rax + 0x10]
add rbp, rcx
jb 0x418230
movzx r13d, word [r12 + rax + 2]
test r13, r13
je 0x40cd6a
lea rdi, [rax + rcx + 0x20]
mov rsi, 0xffffffffffffffd8
sub rsi, rax
sub rsi, rcx
lea r14, [rsp + 0x3e40]
lea r15, str..debug_info
jmp 0x40c708
mov r9d, 0xb
mov r8, r15
call fcn.00421480
test al, 1
jne 0x40c74d
add rdi, 0x28
add rsi, 0xffffffffffffffd8
add rbp, 0x28
add r13, 0xffffffffffffffff
je 0x40cd6a
lea r8, [r12 + rbp]
mov rcx, r14
mov rdx, rbx
call fcn.00421760
movzx eax, word [rsp + 0x3e50]
cmp eax, 0x42
je 0x40c6f2
test eax, eax
jne 0x418eaf
mov rdx, qword [rsp + 0x3e48]
movabs rcx, 0xaaaaaaaaaaaaaaaa
test rdx, rdx
je 0x40c6e0
mov rcx, qword [rsp + 0x3e40]
jmp 0x40c6e0
test r12, r12
je 0x40cd6a
neg rsi
cmp byte [rbx + 0x1c], 0
cmovne rsi, rdi
mov r8d, dword [r12 + rsi]
mov r9d, dword [r12 + rdi - 4]
lea rax, [r9 + r8]
cmp rax, qword [rbx + 8]
ja 0x418ff8
add r8, qword [rbx]
mov rax, qword [rsp + 0xa8]
movups xmm0, xmmword [rax]
movaps xmmword [rsp + 0x2be50], xmm0
lea rcx, [rsp + 0x3e40]
lea rdx, [rsp + 0x2be50]
call fcn.00403560
movzx ebp, word [rsp + 0x3e50]
test bp, bp
je 0x4143ed
mov eax, dword [0x0044547c]
mov dword [rsp + 0x2e24], eax
mov eax, dword [0x00445479]
mov dword [rsp + 0x2e21], eax
mov byte [rsp + 0x2e28], 0
mov dword [rsp + 0x2e29], 0
mov dword [rsp + 0x2e2c], 0
mov byte [rsp + 0x2e30], 1
mov dword [rsp + 0x2e31], 0
mov dword [rsp + 0x2e34], 0
mov eax, dword [0x004454a9]
mov dword [rsp + 0x2e51], eax
mov eax, dword [0x004454ac]
mov dword [rsp + 0x2e54], eax
mov byte [rsp + 0x2e58], 0
mov eax, dword [0x004454b4]
mov dword [rsp + 0x2e5c], eax
mov eax, dword [0x004454b1]
mov dword [rsp + 0x2e59], eax
mov byte [rsp + 0x2e60], 0
mov eax, dword [0x004454bc]
mov dword [rsp + 0x2e64], eax
mov eax, dword [0x004454b9]
mov dword [rsp + 0x2e61], eax
mov eax, dword [0x004454dc]
mov dword [rsp + 0x2e84], eax
mov eax, dword [0x004454d9]
mov dword [rsp + 0x2e81], eax
mov byte [rsp + 0x2e88], 0
mov eax, dword [0x004454e4]
mov dword [rsp + 0x2e8c], eax
mov eax, dword [0x004454e1]
mov dword [rsp + 0x2e89], eax
mov byte [rsp + 0x2e90], 0
mov eax, dword [0x004454ec]
mov dword [rsp + 0x2e94], eax
mov eax, dword [0x004454e9]
mov dword [rsp + 0x2e91], eax
mov eax, dword [0x0044550c]
mov dword [rsp + 0x2eb4], eax
mov eax, dword [0x00445509]
mov dword [rsp + 0x2eb1], eax
mov byte [rsp + 0x2eb8], 0
mov eax, dword [0x00445514]
mov dword [rsp + 0x2ebc], eax
mov eax, dword [0x00445511]
mov dword [rsp + 0x2eb9], eax
mov byte [rsp + 0x2ec0], 0
mov eax, dword [0x0044551c]
mov dword [rsp + 0x2ec4], eax
mov eax, dword [0x00445519]
mov dword [rsp + 0x2ec1], eax
mov eax, dword [0x0044553c]
mov dword [rsp + 0x2ee4], eax
mov eax, dword [0x00445539]
mov dword [rsp + 0x2ee1], eax
mov byte [rsp + 0x2ee8], 0
mov eax, dword [0x00445544]
mov dword [rsp + 0x2eec], eax
mov eax, dword [0x00445541]
mov dword [rsp + 0x2ee9], eax
mov byte [rsp + 0x2ef0], 0
mov eax, dword [0x0044554c]
mov dword [rsp + 0x2ef4], eax
mov eax, dword [0x00445549]
mov dword [rsp + 0x2ef1], eax
mov eax, dword [0x0044556c]
mov dword [rsp + 0x2f14], eax
mov eax, dword [0x00445569]
mov dword [rsp + 0x2f11], eax
mov byte [rsp + 0x2f18], 0
mov eax, dword [0x00445574]
mov dword [rsp + 0x2f1c], eax
mov eax, dword [0x00445571]
mov dword [rsp + 0x2f19], eax
mov byte [rsp + 0x2f20], 0
mov eax, dword [0x0044557c]
mov dword [rsp + 0x2f24], eax
mov eax, dword [0x00445579]
mov dword [rsp + 0x2f21], eax
mov eax, dword [0x0044559c]
mov dword [rsp + 0x2f44], eax
mov eax, dword [0x00445599]
mov dword [rsp + 0x2f41], eax
mov byte [rsp + 0x2f48], 0
mov eax, dword [0x004455a4]
mov dword [rsp + 0x2f4c], eax
mov eax, dword [0x004455a1]
mov dword [rsp + 0x2f49], eax
mov byte [rsp + 0x2f50], 0
mov eax, dword [0x004455ac]
mov dword [rsp + 0x2f54], eax
mov eax, dword [0x004455a9]
mov dword [rsp + 0x2f51], eax
mov eax, dword [0x004455cc]
mov dword [rsp + 0x2f74], eax
mov eax, dword [0x004455c9]
mov dword [rsp + 0x2f71], eax
mov byte [rsp + 0x2f78], 0
mov eax, dword [0x004455d4]
mov dword [rsp + 0x2f7c], eax
mov eax, dword [0x004455d1]
mov dword [rsp + 0x2f79], eax
mov byte [rsp + 0x2f80], 0
mov eax, dword [0x004455dc]
mov dword [rsp + 0x2f84], eax
mov eax, dword [0x004455d9]
mov dword [rsp + 0x2f81], eax
mov eax, dword [0x004455fc]
mov dword [rsp + 0x2fa4], eax
mov eax, dword [0x004455f9]
mov dword [rsp + 0x2fa1], eax
mov byte [rsp + 0x2fa8], 0
mov eax, dword [0x00445604]
mov dword [rsp + 0x2fac], eax
mov eax, dword [0x00445601]
mov dword [rsp + 0x2fa9], eax
mov byte [rsp + 0x2fb0], 0
mov eax, dword [0x0044560c]
mov dword [rsp + 0x2fb4], eax
mov eax, dword [0x00445609]
mov dword [rsp + 0x2fb1], eax
mov eax, dword [0x0044562c]
mov dword [rsp + 0x2fd4], eax
mov eax, dword [0x00445629]
mov dword [rsp + 0x2fd1], eax
mov byte [rsp + 0x2fd8], 0
mov eax, dword [0x00445634]
mov dword [rsp + 0x2fdc], eax
mov eax, dword [0x00445631]
mov dword [rsp + 0x2fd9], eax
mov byte [rsp + 0x2fe0], 0
mov eax, dword [0x0044563c]
mov dword [rsp + 0x2fe4], eax
mov eax, dword [0x00445639]
mov dword [rsp + 0x2fe1], eax
mov eax, dword [0x0044565c]
mov dword [rsp + 0x3004], eax
mov eax, dword [0x00445659]
mov dword [rsp + 0x3001], eax
mov byte [rsp + 0x3008], 0
mov eax, dword [0x00445664]
mov dword [rsp + 0x300c], eax
mov eax, dword [0x00445661]
mov dword [rsp + 0x3009], eax
mov byte [rsp + 0x3010], 0
mov eax, dword [0x0044566c]
mov dword [rsp + 0x3014], eax
mov eax, dword [0x00445669]
mov dword [rsp + 0x3011], eax
mov eax, dword [0x0044568c]
mov dword [rsp + 0x3034], eax
mov eax, dword [0x00445689]
mov dword [rsp + 0x3031], eax
mov byte [rsp + 0x3038], 0
mov eax, dword [0x00445694]
mov dword [rsp + 0x303c], eax
mov eax, dword [0x00445691]
mov dword [rsp + 0x3039], eax
mov byte [rsp + 0x3040], 0
mov eax, dword [0x0044569c]
mov dword [rsp + 0x3044], eax
mov eax, dword [0x00445699]
mov dword [rsp + 0x3041], eax
mov eax, dword [0x004456bc]
mov dword [rsp + 0x3064], eax
mov eax, dword [0x004456b9]
mov dword [rsp + 0x3061], eax
mov byte [rsp + 0x3068], 0
mov eax, dword [0x004456c4]
mov dword [rsp + 0x306c], eax
mov eax, dword [0x004456c1]
mov dword [rsp + 0x3069], eax
mov byte [rsp + 0x3070], 0
mov eax, dword [0x004456cc]
mov dword [rsp + 0x3074], eax
mov eax, dword [0x004456c9]
mov dword [rsp + 0x3071], eax
mov eax, dword [0x004456ec]
mov dword [rsp + 0x3094], eax
mov eax, dword [0x004456e9]
mov dword [rsp + 0x3091], eax
mov byte [rsp + 0x3098], 0
mov eax, dword [0x004456f4]
mov dword [rsp + 0x309c], eax
mov eax, dword [0x004456f1]
mov dword [rsp + 0x3099], eax
mov byte [rsp + 0x30a0], 0
mov eax, dword [0x004456fc]
mov dword [rsp + 0x30a4], eax
mov eax, dword [0x004456f9]
mov dword [rsp + 0x30a1], eax
mov esi, 0x28
movabs rdi, 0xaaaaaaaaaaaaaaaa
jmp 0x40cd01
add rsi, 0x30
cmp rsi, 0x2c8
je 0x419380
cmp byte [rsp + rsi + 0x2e08], 0
je 0x40ccf0
test byte [rsp + rsi + 0x2e00], 1
je 0x40ccf0
mov rbx, qword [rsp + rsi + 0x2de8]
mov r14, qword [rsp + rsi + 0x2de0]
test rbx, rbx
cmove r14, rdi
je 0x40ccf0
mov rax, qword [rsp + 0xa8]
mov r15, qword [rax]
mov r12, qword [rax + 8]
mov rcx, r14
mov dl, 0xaa
mov r8, rbx
call fcn.00440060
mov rax, qword [rsp + 0x4bef8]
mov qword [rsp + 0x20], rax
mov rcx, r15
mov rdx, r14
mov r8, rbx
xor r9d, r9d
call qword [r12 + 0x10]
jmp 0x40ccf0
mov eax, dword [0x0044571c]
mov dword [rsp + 0x19b], eax
mov eax, dword [0x00445719]
mov dword [rsp + 0x198], eax
mov byte [rsp + 0x60], 0
mov dword [rsp + 0x190], 0
mov dword [rsp + 0x193], 0
mov dword [rsp + 0x188], 0
mov dword [rsp + 0x18b], 0
mov dword [rsp + 0x250], 0
mov rax, qword [rbx + 0x10]
lea rcx, [rax + 0x14]
cmp rcx, qword [rbx + 8]
ja 0x418ff8
mov rsi, rax
add rsi, 0x14
jb 0x418230
mov rdi, qword [rbx]
movzx ecx, word [rdi + rax + 0x10]
add rsi, rcx
jb 0x418230
movzx r13d, word [rdi + rax + 2]
test r13, r13
je 0x40d549
lea r12, [rax + rcx + 0x20]
mov rbp, 0xffffffffffffffd8
sub rbp, rax
sub rbp, rcx
lea r14, [rsp + 0x3e40]
lea r15, str..debug_abbrev
jmp 0x40ce58
mov r9d, 0xd
mov r8, r15
call fcn.00421480
test al, 1
jne 0x40ce9d
add r12, 0x28
add rbp, 0xffffffffffffffd8
add rsi, 0x28
add r13, 0xffffffffffffffff
je 0x40d549
lea r8, [rdi + rsi]
mov rcx, r14
mov rdx, rbx
call fcn.00421760
movzx eax, word [rsp + 0x3e50]
cmp eax, 0x42
je 0x40ce42
test eax, eax
jne 0x418eaf
mov rdx, qword [rsp + 0x3e48]
movabs rcx, 0xaaaaaaaaaaaaaaaa
test rdx, rdx
je 0x40ce30
mov rcx, qword [rsp + 0x3e40]
jmp 0x40ce30
test rdi, rdi
je 0x40d549
neg rbp
cmp byte [rbx + 0x1c], 0
cmovne rbp, r12
mov r8d, dword [rdi + rbp]
mov r9d, dword [rdi + r12 - 4]
lea rax, [r9 + r8]
cmp rax, qword [rbx + 8]
ja 0x418ff8
add r8, qword [rbx]
mov rax, qword [rsp + 0xa8]
movups xmm0, xmmword [rax]
movaps xmmword [rsp + 0x2be50], xmm0
lea rcx, [rsp + 0x3e40]
lea rdx, [rsp + 0x2be50]
call fcn.00403560
movzx esi, word [rsp + 0x3e50]
test si, si
je 0x414494
mov rax, qword [rsp + 0x278]
mov qword [rsp + 0x2b68], rax
mov rax, qword [rsp + 0x280]
mov qword [rsp + 0x2b70], rax
mov rax, qword [rsp + 0xb8]
mov qword [rsp + 0x2b78], rax
mov byte [rsp + 0x2b80], 1
mov eax, dword [rsp + 0x198]
mov dword [rsp + 0x2b81], eax
mov eax, dword [rsp + 0x19b]
mov dword [rsp + 0x2b84], eax
movzx eax, byte [rsp + 0x60]
mov byte [rsp + 0x2b88], al
mov eax, dword [rsp + 0x190]
mov dword [rsp + 0x2b89], eax
mov eax, dword [rsp + 0x193]
mov dword [rsp + 0x2b8c], eax
mov eax, dword [rsp + 0x250]
mov byte [rsp + 0x2b90], al
mov eax, dword [rsp + 0x188]
mov dword [rsp + 0x2b91], eax
mov eax, dword [rsp + 0x18b]
mov dword [rsp + 0x2b94], eax
mov eax, dword [0x004454ac]
mov dword [rsp + 0x2bb4], eax
mov eax, dword [0x004454a9]
mov dword [rsp + 0x2bb1], eax
mov byte [rsp + 0x2bb8], 0
mov eax, dword [0x004454b4]
mov dword [rsp + 0x2bbc], eax
mov eax, dword [0x004454b1]
mov dword [rsp + 0x2bb9], eax
mov byte [rsp + 0x2bc0], 1
mov eax, dword [0x004454bc]
mov dword [rsp + 0x2bc4], eax
mov eax, dword [0x004454b9]
mov dword [rsp + 0x2bc1], eax
mov eax, dword [0x004454dc]
mov dword [rsp + 0x2be4], eax
mov eax, dword [0x004454d9]
mov dword [rsp + 0x2be1], eax
mov byte [rsp + 0x2be8], 0
mov eax, dword [0x004454e4]
mov dword [rsp + 0x2bec], eax
mov eax, dword [0x004454e1]
mov dword [rsp + 0x2be9], eax
mov byte [rsp + 0x2bf0], 0
mov eax, dword [0x004454ec]
mov dword [rsp + 0x2bf4], eax
mov eax, dword [0x004454e9]
mov dword [rsp + 0x2bf1], eax
mov eax, dword [0x0044550c]
mov dword [rsp + 0x2c14], eax
mov eax, dword [0x00445509]
mov dword [rsp + 0x2c11], eax
mov byte [rsp + 0x2c18], 0
mov eax, dword [0x00445514]
mov dword [rsp + 0x2c1c], eax
mov eax, dword [0x00445511]
mov dword [rsp + 0x2c19], eax
mov byte [rsp + 0x2c20], 0
mov eax, dword [0x0044551c]
mov dword [rsp + 0x2c24], eax
mov eax, dword [0x00445519]
mov dword [rsp + 0x2c21], eax
mov eax, dword [0x0044553c]
mov dword [rsp + 0x2c44], eax
mov eax, dword [0x00445539]
mov dword [rsp + 0x2c41], eax
mov byte [rsp + 0x2c48], 0
mov eax, dword [0x00445544]
mov dword [rsp + 0x2c4c], eax
mov eax, dword [0x00445541]
mov dword [rsp + 0x2c49], eax
mov byte [rsp + 0x2c50], 0
mov eax, dword [0x0044554c]
mov dword [rsp + 0x2c54], eax
mov eax, dword [0x00445549]
mov dword [rsp + 0x2c51], eax
mov eax, dword [0x0044556c]
mov dword [rsp + 0x2c74], eax
mov eax, dword [0x00445569]
mov dword [rsp + 0x2c71], eax
mov byte [rsp + 0x2c78], 0
mov eax, dword [0x00445574]
mov dword [rsp + 0x2c7c], eax
mov eax, dword [0x00445571]
mov dword [rsp + 0x2c79], eax
mov byte [rsp + 0x2c80], 0
mov eax, dword [rsp + 0x180]
mov ecx, dword [rsp + 0x183]
mov dword [rsp + 0x2c84], ecx
mov dword [rsp + 0x2c81], eax
mov eax, dword [rsp + 0x178]
mov ecx, dword [rsp + 0x17b]
mov dword [rsp + 0x2ca4], ecx
mov dword [rsp + 0x2ca1], eax
mov byte [rsp + 0x2ca8], 0
mov eax, dword [rsp + 0x170]
mov ecx, dword [rsp + 0x173]
mov dword [rsp + 0x2cac], ecx
mov dword [rsp + 0x2ca9], eax
mov byte [rsp + 0x2cb0], 0
mov eax, dword [rsp + 0x168]
mov ecx, dword [rsp + 0x16b]
mov dword [rsp + 0x2cb4], ecx
mov dword [rsp + 0x2cb1], eax
mov eax, dword [rsp + 0x160]
mov ecx, dword [rsp + 0x163]
mov dword [rsp + 0x2cd4], ecx
mov dword [rsp + 0x2cd1], eax
mov byte [rsp + 0x2cd8], 0
mov eax, dword [rsp + 0x158]
mov ecx, dword [rsp + 0x15b]
mov dword [rsp + 0x2cdc], ecx
mov dword [rsp + 0x2cd9], eax
mov byte [rsp + 0x2ce0], 0
mov eax, dword [rsp + 0x150]
mov ecx, dword [rsp + 0x153]
mov dword [rsp + 0x2ce4], ecx
mov dword [rsp + 0x2ce1], eax
mov eax, dword [rsp + 0x148]
mov ecx, dword [rsp + 0x14b]
mov dword [rsp + 0x2d04], ecx
mov dword [rsp + 0x2d01], eax
mov byte [rsp + 0x2d08], 0
mov eax, dword [rsp + 0x140]
mov ecx, dword [rsp + 0x143]
mov dword [rsp + 0x2d0c], ecx
mov dword [rsp + 0x2d09], eax
mov byte [rsp + 0x2d10], 0
mov eax, dword [rsp + 0x138]
mov ecx, dword [rsp + 0x13b]
mov dword [rsp + 0x2d14], ecx
mov dword [rsp + 0x2d11], eax
mov eax, dword [rsp + 0x130]
mov ecx, dword [rsp + 0x133]
mov dword [rsp + 0x2d34], ecx
mov dword [rsp + 0x2d31], eax
movzx eax, byte [rsp + 0x58]
mov byte [rsp + 0x2d38], al
mov eax, dword [rsp + 0x128]
mov ecx, dword [rsp + 0x12b]
mov dword [rsp + 0x2d3c], ecx
mov dword [rsp + 0x2d39], eax
mov byte [rsp + 0x2d40], 0
mov eax, dword [rsp + 0x120]
mov ecx, dword [rsp + 0x123]
mov dword [rsp + 0x2d44], ecx
mov dword [rsp + 0x2d41], eax
mov eax, dword [rsp + 0x118]
mov ecx, dword [rsp + 0x11b]
mov dword [rsp + 0x2d64], ecx
mov dword [rsp + 0x2d61], eax
movzx eax, byte [rsp + 0x50]
mov byte [rsp + 0x2d68], al
mov eax, dword [rsp + 0x110]
mov ecx, dword [rsp + 0x113]
mov dword [rsp + 0x2d6c], ecx
mov dword [rsp + 0x2d69], eax
mov byte [rsp + 0x2d70], 0
mov eax, dword [rsp + 0x108]
mov ecx, dword [rsp + 0x10b]
mov dword [rsp + 0x2d74], ecx
mov dword [rsp + 0x2d71], eax
mov eax, dword [rsp + 0x100]
mov ecx, dword [rsp + 0x103]
mov dword [rsp + 0x2d94], ecx
mov dword [rsp + 0x2d91], eax
movzx eax, byte [rsp + 0x48]
mov byte [rsp + 0x2d98], al
mov eax, dword [rsp + 0xf8]
mov ecx, dword [rsp + 0xfb]
mov dword [rsp + 0x2d9c], ecx
mov dword [rsp + 0x2d99], eax
mov byte [rsp + 0x2da0], 0
mov eax, dword [rsp + 0xf0]
mov ecx, dword [rsp + 0xf3]
mov dword [rsp + 0x2da4], ecx
mov dword [rsp + 0x2da1], eax
mov eax, dword [rsp + 0xe8]
mov ecx, dword [rsp + 0xeb]
mov dword [rsp + 0x2dc4], ecx
mov dword [rsp + 0x2dc1], eax
movzx eax, byte [rsp + 0x40]
mov byte [rsp + 0x2dc8], al
mov eax, dword [rsp + 0xe0]
mov ecx, dword [rsp + 0xe3]
mov dword [rsp + 0x2dcc], ecx
mov dword [rsp + 0x2dc9], eax
mov byte [rsp + 0x2dd0], 0
mov eax, dword [rsp + 0xd8]
mov ecx, dword [rsp + 0xdb]
mov dword [rsp + 0x2dd4], ecx
mov dword [rsp + 0x2dd1], eax
mov eax, dword [rsp + 0xd0]
mov ecx, dword [rsp + 0xd3]
mov dword [rsp + 0x2df4], ecx
mov dword [rsp + 0x2df1], eax
movzx eax, byte [rsp + 0x38]
mov byte [rsp + 0x2df8], al
mov eax, dword [rsp + 0xc8]
mov ecx, dword [rsp + 0xcb]
mov dword [rsp + 0x2dfc], ecx
mov dword [rsp + 0x2df9], eax
mov byte [rsp + 0x2e00], 0
mov eax, dword [rsp + 0xc0]
mov ecx, dword [rsp + 0xc3]
mov dword [rsp + 0x2e04], ecx
mov dword [rsp + 0x2e01], eax
mov edi, 0x28
movabs r12, 0xaaaaaaaaaaaaaaaa
jmp 0x40d4e1
add rdi, 0x30
cmp rdi, 0x2c8
je 0x411cbf
cmp byte [rsp + rdi + 0x2b68], 0
je 0x40d4d0
test byte [rsp + rdi + 0x2b60], 1
je 0x40d4d0
mov rbx, qword [rsp + rdi + 0x2b48]
mov r14, qword [rsp + rdi + 0x2b40]
test rbx, rbx
cmove r14, r12
je 0x40d4d0
mov rax, qword [rsp + 0xa8]
mov r15, qword [rax]
mov r13, qword [rax + 8]
mov rcx, r14
mov dl, 0xaa
mov r8, rbx
call fcn.00440060
mov rax, qword [rsp + 0x4bef8]
mov qword [rsp + 0x20], rax
mov rcx, r15
mov rdx, r14
mov r8, rbx
xor r9d, r9d
call qword [r13 + 0x10]
jmp 0x40d4d0
mov eax, dword [0x0044571c]
mov dword [rsp + 0x20b], eax
mov eax, dword [0x00445719]
mov dword [rsp + 0x208], eax
mov byte [rsp + 0x70], 0
mov dword [rsp + 0x200], 0
mov dword [rsp + 0x203], 0
mov dword [rsp + 0x1f8], 0
mov dword [rsp + 0x1fb], 0
mov dword [rsp + 0x260], 0
mov rax, qword [rbx + 0x10]
lea rcx, [rax + 0x14]
cmp rcx, qword [rbx + 8]
ja 0x418ff8
mov rsi, rax
add rsi, 0x14
jb 0x418230
mov rdi, qword [rbx]
movzx ecx, word [rdi + rax + 0x10]
add rsi, rcx
jb 0x418230
movzx r13d, word [rdi + rax + 2]
test r13, r13
je 0x40dd89
lea r12, [rax + rcx + 0x20]
mov rbp, 0xffffffffffffffd8
sub rbp, rax
sub rbp, rcx
lea r14, [rsp + 0x3e40]
lea r15, str..debug_str
jmp 0x40d638
mov r9d, 0xa
mov r8, r15
call fcn.00421480
test al, 1
jne 0x40d67d
add r12, 0x28
add rbp, 0xffffffffffffffd8
add rsi, 0x28
add r13, 0xffffffffffffffff
je 0x40dd89
lea r8, [rdi + rsi]
mov rcx, r14
mov rdx, rbx
call fcn.00421760
movzx eax, word [rsp + 0x3e50]
cmp eax, 0x42
je 0x40d622
test eax, eax
jne 0x418eaf
mov rdx, qword [rsp + 0x3e48]
movabs rcx, 0xaaaaaaaaaaaaaaaa
test rdx, rdx
je 0x40d610
mov rcx, qword [rsp + 0x3e40]
jmp 0x40d610
test rdi, rdi
je 0x40dd89
neg rbp
cmp byte [rbx + 0x1c], 0
cmovne rbp, r12
mov r8d, dword [rdi + rbp]
mov r9d, dword [rdi + r12 - 4]
lea rax, [r9 + r8]
cmp rax, qword [rbx + 8]
ja 0x418ff8
add r8, qword [rbx]
mov rax, qword [rsp + 0xa8]
movups xmm0, xmmword [rax]
movaps xmmword [rsp + 0x2be50], xmm0
lea rcx, [rsp + 0x3e40]
lea rdx, [rsp + 0x2be50]
call fcn.00403560
movzx esi, word [rsp + 0x3e50]
test si, si
je 0x414cd8
mov rax, qword [rsp + 0x278]
mov qword [rsp + 0x28c8], rax
mov rax, qword [rsp + 0x280]
mov qword [rsp + 0x28d0], rax
mov rax, qword [rsp + 0xb8]
mov qword [rsp + 0x28d8], rax
mov byte [rsp + 0x28e0], 1
mov eax, dword [rsp + 0x198]
mov ecx, dword [rsp + 0x19b]
mov dword [rsp + 0x28e1], eax
mov dword [rsp + 0x28e4], ecx
movzx eax, byte [rsp + 0x60]
mov byte [rsp + 0x28e8], al
mov eax, dword [rsp + 0x190]
mov ecx, dword [rsp + 0x193]
mov dword [rsp + 0x28e9], eax
mov dword [rsp + 0x28ec], ecx
mov eax, dword [rsp + 0x250]
mov byte [rsp + 0x28f0], al
mov eax, dword [rsp + 0x188]
mov ecx, dword [rsp + 0x18b]
mov dword [rsp + 0x28f1], eax
mov dword [rsp + 0x28f4], ecx
mov rax, qword [rsp + 0x298]
mov qword [rsp + 0x28f8], rax
mov rax, qword [rsp + 0x2a0]
mov qword [rsp + 0x2900], rax
mov rax, qword [rsp + 0x2a8]
mov qword [rsp + 0x2908], rax
mov byte [rsp + 0x2910], 1
mov eax, dword [rsp + 0x208]
mov ecx, dword [rsp + 0x20b]
mov dword [rsp + 0x2911], eax
mov dword [rsp + 0x2914], ecx
movzx eax, byte [rsp + 0x70]
mov byte [rsp + 0x2918], al
mov eax, dword [rsp + 0x200]
mov ecx, dword [rsp + 0x203]
mov dword [rsp + 0x291c], ecx
mov dword [rsp + 0x2919], eax
mov eax, dword [rsp + 0x260]
mov byte [rsp + 0x2920], al
mov eax, dword [rsp + 0x1f8]
mov ecx, dword [rsp + 0x1fb]
mov dword [rsp + 0x2924], ecx
mov dword [rsp + 0x2921], eax
mov eax, dword [rsp + 0x1f0]
mov ecx, dword [rsp + 0x1f3]
mov dword [rsp + 0x2944], ecx
mov dword [rsp + 0x2941], eax
mov byte [rsp + 0x2948], 0
mov eax, dword [rsp + 0x1e8]
mov ecx, dword [rsp + 0x1eb]
mov dword [rsp + 0x294c], ecx
mov dword [rsp + 0x2949], eax
mov byte [rsp + 0x2950], 1
mov eax, dword [rsp + 0x1e0]
mov ecx, dword [rsp + 0x1e3]
mov dword [rsp + 0x2954], ecx
mov dword [rsp + 0x2951], eax
mov eax, dword [rsp + 0x1d8]
mov ecx, dword [rsp + 0x1db]
mov dword [rsp + 0x2974], ecx
mov dword [rsp + 0x2971], eax
mov byte [rsp + 0x2978], 0
mov eax, dword [rsp + 0x1d0]
mov ecx, dword [rsp + 0x1d3]
mov dword [rsp + 0x297c], ecx
mov dword [rsp + 0x2979], eax
mov byte [rsp + 0x2980], 0
mov eax, dword [rsp + 0x1c8]
mov ecx, dword [rsp + 0x1cb]
mov dword [rsp + 0x2984], ecx
mov dword [rsp + 0x2981], eax
mov eax, dword [rsp + 0x1c0]
mov ecx, dword [rsp + 0x1c3]
mov dword [rsp + 0x29a4], ecx
mov dword [rsp + 0x29a1], eax
mov byte [rsp + 0x29a8], 0
mov eax, dword [rsp + 0x1b8]
mov ecx, dword [rsp + 0x1bb]
mov dword [rsp + 0x29ac], ecx
mov dword [rsp + 0x29a9], eax
mov byte [rsp + 0x29b0], 0
mov eax, dword [rsp + 0x1b0]
mov ecx, dword [rsp + 0x1b3]
mov dword [rsp + 0x29b4], ecx
mov dword [rsp + 0x29b1], eax
mov eax, dword [rsp + 0x1a8]
mov ecx, dword [rsp + 0x1ab]
mov dword [rsp + 0x29d4], ecx
mov dword [rsp + 0x29d1], eax
mov byte [rsp + 0x29d8], 0
mov eax, dword [rsp + 0x1a0]
mov ecx, dword [rsp + 0x1a3]
mov dword [rsp + 0x29dc], ecx
mov dword [rsp + 0x29d9], eax
mov byte [rsp + 0x29e0], 0
mov eax, dword [rsp + 0x180]
mov ecx, dword [rsp + 0x183]
mov dword [rsp + 0x29e4], ecx
mov dword [rsp + 0x29e1], eax
mov eax, dword [rsp + 0x178]
mov ecx, dword [rsp + 0x17b]
mov dword [rsp + 0x2a04], ecx
mov dword [rsp + 0x2a01], eax
mov byte [rsp + 0x2a08], 0
mov eax, dword [rsp + 0x170]
mov ecx, dword [rsp + 0x173]
mov dword [rsp + 0x2a0c], ecx
mov dword [rsp + 0x2a09], eax
mov byte [rsp + 0x2a10], 0
mov eax, dword [rsp + 0x168]
mov ecx, dword [rsp + 0x16b]
mov dword [rsp + 0x2a14], ecx
mov dword [rsp + 0x2a11], eax
mov eax, dword [rsp + 0x160]
mov ecx, dword [rsp + 0x163]
mov dword [rsp + 0x2a34], ecx
mov dword [rsp + 0x2a31], eax
mov byte [rsp + 0x2a38], 0
mov eax, dword [rsp + 0x158]
mov ecx, dword [rsp + 0x15b]
mov dword [rsp + 0x2a3c], ecx
mov dword [rsp + 0x2a39], eax
mov byte [rsp + 0x2a40], 0
mov eax, dword [rsp + 0x150]
mov ecx, dword [rsp + 0x153]
mov dword [rsp + 0x2a44], ecx
mov dword [rsp + 0x2a41], eax
mov eax, dword [rsp + 0x148]
mov ecx, dword [rsp + 0x14b]
mov dword [rsp + 0x2a64], ecx
mov dword [rsp + 0x2a61], eax
movzx eax, byte [rsp + 0x68]
mov byte [rsp + 0x2a68], al
mov eax, dword [rsp + 0x140]
mov ecx, dword [rsp + 0x143]
mov dword [rsp + 0x2a6c], ecx
mov dword [rsp + 0x2a69], eax
mov byte [rsp + 0x2a70], 0
mov eax, dword [rsp + 0x138]
mov ecx, dword [rsp + 0x13b]
mov dword [rsp + 0x2a74], ecx
mov dword [rsp + 0x2a71], eax
mov eax, dword [rsp + 0x130]
mov ecx, dword [rsp + 0x133]
mov dword [rsp + 0x2a94], ecx
mov dword [rsp + 0x2a91], eax
movzx eax, byte [rsp + 0x58]
mov byte [rsp + 0x2a98], al
mov eax, dword [rsp + 0x128]
mov ecx, dword [rsp + 0x12b]
mov dword [rsp + 0x2a9c], ecx
mov dword [rsp + 0x2a99], eax
mov byte [rsp + 0x2aa0], 0
mov eax, dword [rsp + 0x120]
mov ecx, dword [rsp + 0x123]
mov dword [rsp + 0x2aa4], ecx
mov dword [rsp + 0x2aa1], eax
mov eax, dword [rsp + 0x118]
mov ecx, dword [rsp + 0x11b]
mov dword [rsp + 0x2ac4], ecx
mov dword [rsp + 0x2ac1], eax
movzx eax, byte [rsp + 0x50]
mov byte [rsp + 0x2ac8], al
mov eax, dword [rsp + 0x110]
mov ecx, dword [rsp + 0x113]
mov dword [rsp + 0x2acc], ecx
mov dword [rsp + 0x2ac9], eax
mov byte [rsp + 0x2ad0], 0
mov eax, dword [rsp + 0x108]
mov ecx, dword [rsp + 0x10b]
mov dword [rsp + 0x2ad4], ecx
mov dword [rsp + 0x2ad1], eax
mov eax, dword [rsp + 0x100]
mov ecx, dword [rsp + 0x103]
mov dword [rsp + 0x2af4], ecx
mov dword [rsp + 0x2af1], eax
movzx eax, byte [rsp + 0x48]
mov byte [rsp + 0x2af8], al
mov eax, dword [rsp + 0xf8]
mov ecx, dword [rsp + 0xfb]
mov dword [rsp + 0x2afc], ecx
mov dword [rsp + 0x2af9], eax
mov byte [rsp + 0x2b00], 0
mov eax, dword [rsp + 0xf0]
mov ecx, dword [rsp + 0xf3]
mov dword [rsp + 0x2b04], ecx
mov dword [rsp + 0x2b01], eax
mov eax, dword [rsp + 0xe8]
mov ecx, dword [rsp + 0xeb]
mov dword [rsp + 0x2b24], ecx
mov dword [rsp + 0x2b21], eax
movzx eax, byte [rsp + 0x40]
mov byte [rsp + 0x2b28], al
mov eax, dword [rsp + 0xe0]
mov ecx, dword [rsp + 0xe3]
mov dword [rsp + 0x2b2c], ecx
mov dword [rsp + 0x2b29], eax
mov byte [rsp + 0x2b30], 0
mov eax, dword [rsp + 0xd8]
mov ecx, dword [rsp + 0xdb]
mov dword [rsp + 0x2b34], ecx
mov dword [rsp + 0x2b31], eax
mov eax, dword [rsp + 0xd0]
mov ecx, dword [rsp + 0xd3]
mov dword [rsp + 0x2b54], ecx
mov dword [rsp + 0x2b51], eax
movzx eax, byte [rsp + 0x38]
mov byte [rsp + 0x2b58], al
mov eax, dword [rsp + 0xc8]
mov ecx, dword [rsp + 0xcb]
mov dword [rsp + 0x2b5c], ecx
mov dword [rsp + 0x2b59], eax
mov byte [rsp + 0x2b60], 0
mov eax, dword [rsp + 0xc0]
mov ecx, dword [rsp + 0xc3]
mov dword [rsp + 0x2b64], ecx
mov dword [rsp + 0x2b61], eax
mov edi, 0x28
movabs r12, 0xaaaaaaaaaaaaaaaa
jmp 0x40dd21
add rdi, 0x30
cmp rdi, 0x2c8
je 0x411cbf
cmp byte [rsp + rdi + 0x28c8], 0
je 0x40dd10
test byte [rsp + rdi + 0x28c0], 1
je 0x40dd10
mov rbx, qword [rsp + rdi + 0x28a8]
mov r14, qword [rsp + rdi + 0x28a0]
test rbx, rbx
cmove r14, r12
je 0x40dd10
mov rax, qword [rsp + 0xa8]
mov r15, qword [rax]
mov r13, qword [rax + 8]
mov rcx, r14
mov dl, 0xaa
mov r8, rbx
call fcn.00440060
mov rax, qword [rsp + 0x4bef8]
mov qword [rsp + 0x20], rax
mov rcx, r15
mov rdx, r14
mov r8, rbx
xor r9d, r9d
call qword [r13 + 0x10]
jmp 0x40dd10
mov eax, dword [0x0044571c]
mov dword [rsp + 0x1f3], eax
mov eax, dword [0x00445719]
mov dword [rsp + 0x1f0], eax
mov byte [rsp + 0x78], 0
mov dword [rsp + 0x1e8], 0
mov dword [rsp + 0x1eb], 0
mov dword [rsp + 0x1e0], 0
mov dword [rsp + 0x1e3], 0
mov dword [rsp + 0x21c], 0
mov rax, qword [rbx + 0x10]
lea rcx, [rax + 0x14]
cmp rcx, qword [rbx + 8]
ja 0x418ff8
mov rsi, rax
add rsi, 0x14
jb 0x418230
mov rdi, qword [rbx]
movzx ecx, word [rdi + rax + 0x10]
add rsi, rcx
jb 0x418230
movzx r13d, word [rdi + rax + 2]
test r13, r13
je 0x40e609
lea r12, [rax + rcx + 0x20]
mov rbp, 0xffffffffffffffd8
sub rbp, rax
sub rbp, rcx
lea r14, [rsp + 0x3e40]
lea r15, str..debug_str_offsets
jmp 0x40de78
mov r9d, 0x12
mov r8, r15
call fcn.00421480
test al, 1
jne 0x40debd
add r12, 0x28
add rbp, 0xffffffffffffffd8
add rsi, 0x28
add r13, 0xffffffffffffffff
je 0x40e609
lea r8, [rdi + rsi]
mov rcx, r14
mov rdx, rbx
call fcn.00421760
movzx eax, word [rsp + 0x3e50]
cmp eax, 0x42
je 0x40de62
test eax, eax
jne 0x418eaf
mov rdx, qword [rsp + 0x3e48]
movabs rcx, 0xaaaaaaaaaaaaaaaa
test rdx, rdx
je 0x40de50
mov rcx, qword [rsp + 0x3e40]
jmp 0x40de50
test rdi, rdi
je 0x40e609
neg rbp
cmp byte [rbx + 0x1c], 0
cmovne rbp, r12
mov r8d, dword [rdi + rbp]
mov r9d, dword [rdi + r12 - 4]
lea rax, [r9 + r8]
cmp rax, qword [rbx + 8]
ja 0x418ff8
add r8, qword [rbx]
mov rax, qword [rsp + 0xa8]
movups xmm0, xmmword [rax]
movaps xmmword [rsp + 0x2be50], xmm0
lea rcx, [rsp + 0x3e40]
lea rdx, [rsp + 0x2be50]
call fcn.00403560
movzx esi, word [rsp + 0x3e50]
test si, si
je 0x41555a
mov rax, qword [rsp + 0x278]
mov qword [rsp + 0x2608], rax
mov rax, qword [rsp + 0x280]
mov qword [rsp + 0x2610], rax
mov rax, qword [rsp + 0xb8]
mov qword [rsp + 0x2618], rax
mov byte [rsp + 0x2620], 1
mov eax, dword [rsp + 0x198]
mov ecx, dword [rsp + 0x19b]
mov dword [rsp + 0x2621], eax
mov dword [rsp + 0x2624], ecx
movzx eax, byte [rsp + 0x60]
mov byte [rsp + 0x2628], al
mov eax, dword [rsp + 0x190]
mov ecx, dword [rsp + 0x193]
mov dword [rsp + 0x2629], eax
mov dword [rsp + 0x262c], ecx
mov eax, dword [rsp + 0x250]
mov byte [rsp + 0x2630], al
mov eax, dword [rsp + 0x188]
mov ecx, dword [rsp + 0x18b]
mov dword [rsp + 0x2631], eax
mov dword [rsp + 0x2634], ecx
mov rax, qword [rsp + 0x298]
mov qword [rsp + 0x2638], rax
mov rax, qword [rsp + 0x2a0]
mov qword [rsp + 0x2640], rax
mov rax, qword [rsp + 0x2a8]
mov qword [rsp + 0x2648], rax
mov byte [rsp + 0x2650], 1
mov eax, dword [rsp + 0x208]
mov ecx, dword [rsp + 0x20b]
mov dword [rsp + 0x2651], eax
mov dword [rsp + 0x2654], ecx
movzx eax, byte [rsp + 0x70]
mov byte [rsp + 0x2658], al
mov eax, dword [rsp + 0x200]
mov ecx, dword [rsp + 0x203]
mov dword [rsp + 0x265c], ecx
mov dword [rsp + 0x2659], eax
mov eax, dword [rsp + 0x260]
mov byte [rsp + 0x2660], al
mov eax, dword [rsp + 0x1f8]
mov ecx, dword [rsp + 0x1fb]
mov dword [rsp + 0x2664], ecx
mov dword [rsp + 0x2661], eax
mov rax, qword [rsp + 0x2b0]
mov qword [rsp + 0x2668], rax
mov rax, qword [rsp + 0x2b8]
mov qword [rsp + 0x2670], rax
mov rax, qword [rsp + 0x2c0]
mov qword [rsp + 0x2678], rax
mov byte [rsp + 0x2680], 1
mov eax, dword [rsp + 0x1f0]
mov ecx, dword [rsp + 0x1f3]
mov dword [rsp + 0x2684], ecx
mov dword [rsp + 0x2681], eax
movzx eax, byte [rsp + 0x78]
mov byte [rsp + 0x2688], al
mov eax, dword [rsp + 0x1e8]
mov ecx, dword [rsp + 0x1eb]
mov dword [rsp + 0x268c], ecx
mov dword [rsp + 0x2689], eax
mov eax, dword [rsp + 0x21c]
mov byte [rsp + 0x2690], al
mov eax, dword [rsp + 0x1e0]
mov ecx, dword [rsp + 0x1e3]
mov dword [rsp + 0x2694], ecx
mov dword [rsp + 0x2691], eax
mov eax, dword [rsp + 0x1d8]
mov ecx, dword [rsp + 0x1db]
mov dword [rsp + 0x26b4], ecx
mov dword [rsp + 0x26b1], eax
mov byte [rsp + 0x26b8], 0
mov eax, dword [rsp + 0x1d0]
mov ecx, dword [rsp + 0x1d3]
mov dword [rsp + 0x26bc], ecx
mov dword [rsp + 0x26b9], eax
mov byte [rsp + 0x26c0], 1
mov eax, dword [rsp + 0x1c8]
mov ecx, dword [rsp + 0x1cb]
mov dword [rsp + 0x26c4], ecx
mov dword [rsp + 0x26c1], eax
mov eax, dword [rsp + 0x1c0]
mov ecx, dword [rsp + 0x1c3]
mov dword [rsp + 0x26e4], ecx
mov dword [rsp + 0x26e1], eax
mov byte [rsp + 0x26e8], 0
mov eax, dword [rsp + 0x1b8]
mov ecx, dword [rsp + 0x1bb]
mov dword [rsp + 0x26ec], ecx
mov dword [rsp + 0x26e9], eax
mov byte [rsp + 0x26f0], 0
mov eax, dword [rsp + 0x1b0]
mov ecx, dword [rsp + 0x1b3]
mov dword [rsp + 0x26f4], ecx
mov dword [rsp + 0x26f1], eax
mov eax, dword [rsp + 0x1a8]
mov ecx, dword [rsp + 0x1ab]
mov dword [rsp + 0x2714], ecx
mov dword [rsp + 0x2711], eax
mov byte [rsp + 0x2718], 0
mov eax, dword [rsp + 0x1a0]
mov ecx, dword [rsp + 0x1a3]
mov dword [rsp + 0x271c], ecx
mov dword [rsp + 0x2719], eax
mov byte [rsp + 0x2720], 0
mov eax, dword [rsp + 0x180]
mov ecx, dword [rsp + 0x183]
mov dword [rsp + 0x2724], ecx
mov dword [rsp + 0x2721], eax
mov eax, dword [rsp + 0x178]
mov ecx, dword [rsp + 0x17b]
mov dword [rsp + 0x2744], ecx
mov dword [rsp + 0x2741], eax
mov byte [rsp + 0x2748], 0
mov eax, dword [rsp + 0x170]
mov ecx, dword [rsp + 0x173]
mov dword [rsp + 0x274c], ecx
mov dword [rsp + 0x2749], eax
mov byte [rsp + 0x2750], 0
mov eax, dword [rsp + 0x168]
mov ecx, dword [rsp + 0x16b]
mov dword [rsp + 0x2754], ecx
mov dword [rsp + 0x2751], eax
mov eax, dword [rsp + 0x160]
mov ecx, dword [rsp + 0x163]
mov dword [rsp + 0x2774], ecx
mov dword [rsp + 0x2771], eax
mov byte [rsp + 0x2778], 0
mov eax, dword [rsp + 0x158]
mov ecx, dword [rsp + 0x15b]
mov dword [rsp + 0x277c], ecx
mov dword [rsp + 0x2779], eax
mov byte [rsp + 0x2780], 0
mov eax, dword [rsp + 0x150]
mov ecx, dword [rsp + 0x153]
mov dword [rsp + 0x2784], ecx
mov dword [rsp + 0x2781], eax
mov eax, dword [rsp + 0x148]
mov ecx, dword [rsp + 0x14b]
mov dword [rsp + 0x27a4], ecx
mov dword [rsp + 0x27a1], eax
movzx eax, byte [rsp + 0x68]
mov byte [rsp + 0x27a8], al
mov eax, dword [rsp + 0x140]
mov ecx, dword [rsp + 0x143]
mov dword [rsp + 0x27ac], ecx
mov dword [rsp + 0x27a9], eax
mov byte [rsp + 0x27b0], 0
mov eax, dword [rsp + 0x138]
mov ecx, dword [rsp + 0x13b]
mov dword [rsp + 0x27b4], ecx
mov dword [rsp + 0x27b1], eax
mov eax, dword [rsp + 0x130]
mov ecx, dword [rsp + 0x133]
mov dword [rsp + 0x27d4], ecx
mov dword [rsp + 0x27d1], eax
movzx eax, byte [rsp + 0x58]
mov byte [rsp + 0x27d8], al
mov eax, dword [rsp + 0x128]
mov ecx, dword [rsp + 0x12b]
mov dword [rsp + 0x27dc], ecx
mov dword [rsp + 0x27d9], eax
mov byte [rsp + 0x27e0], 0
mov eax, dword [rsp + 0x120]
mov ecx, dword [rsp + 0x123]
mov dword [rsp + 0x27e4], ecx
mov dword [rsp + 0x27e1], eax
mov eax, dword [rsp + 0x118]
mov ecx, dword [rsp + 0x11b]
mov dword [rsp + 0x2804], ecx
mov dword [rsp + 0x2801], eax
movzx eax, byte [rsp + 0x50]
mov byte [rsp + 0x2808], al
mov eax, dword [rsp + 0x110]
mov ecx, dword [rsp + 0x113]
mov dword [rsp + 0x280c], ecx
mov dword [rsp + 0x2809], eax
mov byte [rsp + 0x2810], 0
mov eax, dword [rsp + 0x108]
mov ecx, dword [rsp + 0x10b]
mov dword [rsp + 0x2814], ecx
mov dword [rsp + 0x2811], eax
mov eax, dword [rsp + 0x100]
mov ecx, dword [rsp + 0x103]
mov dword [rsp + 0x2834], ecx
mov dword [rsp + 0x2831], eax
movzx eax, byte [rsp + 0x48]
mov byte [rsp + 0x2838], al
mov eax, dword [rsp + 0xf8]
mov ecx, dword [rsp + 0xfb]
mov dword [rsp + 0x283c], ecx
mov dword [rsp + 0x2839], eax
mov byte [rsp + 0x2840], 0
mov eax, dword [rsp + 0xf0]
mov ecx, dword [rsp + 0xf3]
mov dword [rsp + 0x2844], ecx
mov dword [rsp + 0x2841], eax
mov eax, dword [rsp + 0xe8]
mov ecx, dword [rsp + 0xeb]
mov dword [rsp + 0x2864], ecx
mov dword [rsp + 0x2861], eax
movzx eax, byte [rsp + 0x40]
mov byte [rsp + 0x2868], al
mov eax, dword [rsp + 0xe0]
mov ecx, dword [rsp + 0xe3]
mov dword [rsp + 0x286c], ecx
mov dword [rsp + 0x2869], eax
mov byte [rsp + 0x2870], 0
mov eax, dword [rsp + 0xd8]
mov ecx, dword [rsp + 0xdb]
mov dword [rsp + 0x2874], ecx
mov dword [rsp + 0x2871], eax
mov eax, dword [rsp + 0xd0]
mov ecx, dword [rsp + 0xd3]
mov dword [rsp + 0x2894], ecx
mov dword [rsp + 0x2891], eax
movzx eax, byte [rsp + 0x38]
mov byte [rsp + 0x2898], al
mov eax, dword [rsp + 0xc8]
mov ecx, dword [rsp + 0xcb]
mov dword [rsp + 0x289c], ecx
mov dword [rsp + 0x2899], eax
mov byte [rsp + 0x28a0], 0
mov eax, dword [rsp + 0xc0]
mov ecx, dword [rsp + 0xc3]
mov dword [rsp + 0x28a4], ecx
mov dword [rsp + 0x28a1], eax
mov edi, 0x28
movabs r12, 0xaaaaaaaaaaaaaaaa
jmp 0x40e5a1
add rdi, 0x30
cmp rdi, 0x2c8
je 0x411cbf
cmp byte [rsp + rdi + 0x2608], 0
je 0x40e590
test byte [rsp + rdi + 0x2600], 1
je 0x40e590
mov rbx, qword [rsp + rdi + 0x25e8]
mov r14, qword [rsp + rdi + 0x25e0]
test rbx, rbx
cmove r14, r12
je 0x40e590
mov rax, qword [rsp + 0xa8]
mov r15, qword [rax]
mov r13, qword [rax + 8]
mov rcx, r14
mov dl, 0xaa
mov r8, rbx
call fcn.00440060
mov rax, qword [rsp + 0x4bef8]
mov qword [rsp + 0x20], rax
mov rcx, r15
mov rdx, r14
mov r8, rbx
xor r9d, r9d
call qword [r13 + 0x10]
jmp 0x40e590
mov eax, dword [0x0044571c]
mov dword [rsp + 0x1db], eax
mov eax, dword [0x00445719]
mov dword [rsp + 0x1d8], eax
mov byte [rsp + 0x88], 0
mov dword [rsp + 0x1d0], 0
mov dword [rsp + 0x1d3], 0
mov dword [rsp + 0x1c8], 0
mov dword [rsp + 0x1cb], 0
mov dword [rsp + 0x22c], 0
mov rax, qword [rbx + 0x10]
lea rcx, [rax + 0x14]
cmp rcx, qword [rbx + 8]
ja 0x418ff8
mov rsi, rax
add rsi, 0x14
jb 0x418230
mov rdi, qword [rbx]
movzx ecx, word [rdi + rax + 0x10]
add rsi, rcx
jb 0x418230
movzx r13d, word [rdi + rax + 2]
test r13, r13
je 0x40eed9
lea r12, [rax + rcx + 0x20]
mov rbp, 0xffffffffffffffd8
sub rbp, rax
sub rbp, rcx
lea r14, [rsp + 0x3e40]
lea r15, str..debug_line
jmp 0x40e6f8
mov r9d, 0xb
mov r8, r15
call fcn.00421480
test al, 1
jne 0x40e73d
add r12, 0x28
add rbp, 0xffffffffffffffd8
add rsi, 0x28
add r13, 0xffffffffffffffff
je 0x40eed9
lea r8, [rdi + rsi]
mov rcx, r14
mov rdx, rbx
call fcn.00421760
movzx eax, word [rsp + 0x3e50]
cmp eax, 0x42
je 0x40e6e2
test eax, eax
jne 0x418eaf
mov rdx, qword [rsp + 0x3e48]
movabs rcx, 0xaaaaaaaaaaaaaaaa
test rdx, rdx
je 0x40e6d0
mov rcx, qword [rsp + 0x3e40]
jmp 0x40e6d0
test rdi, rdi
je 0x40eed9
neg rbp
cmp byte [rbx + 0x1c], 0
cmovne rbp, r12
mov r8d, dword [rdi + rbp]
mov r9d, dword [rdi + r12 - 4]
lea rax, [r9 + r8]
cmp rax, qword [rbx + 8]
ja 0x418ff8
add r8, qword [rbx]
mov rax, qword [rsp + 0xa8]
movups xmm0, xmmword [rax]
movaps xmmword [rsp + 0x2be50], xmm0
lea rcx, [rsp + 0x3e40]
lea rdx, [rsp + 0x2be50]
call fcn.00403560
movzx esi, word [rsp + 0x3e50]
test si, si
je 0x4155ae
mov rax, qword [rsp + 0x278]
mov qword [rsp + 0x2368], rax
mov rax, qword [rsp + 0x280]
mov qword [rsp + 0x2370], rax
mov rax, qword [rsp + 0xb8]
mov qword [rsp + 0x2378], rax
mov byte [rsp + 0x2380], 1
mov eax, dword [rsp + 0x198]
mov dword [rsp + 0x2381], eax
mov eax, dword [rsp + 0x19b]
mov dword [rsp + 0x2384], eax
movzx eax, byte [rsp + 0x60]
mov byte [rsp + 0x2388], al
mov eax, dword [rsp + 0x190]
mov dword [rsp + 0x2389], eax
mov eax, dword [rsp + 0x193]
mov dword [rsp + 0x238c], eax
mov eax, dword [rsp + 0x250]
mov byte [rsp + 0x2390], al
mov eax, dword [rsp + 0x188]
mov dword [rsp + 0x2391], eax
mov eax, dword [rsp + 0x18b]
mov dword [rsp + 0x2394], eax
mov rax, qword [rsp + 0x298]
mov qword [rsp + 0x2398], rax
mov rax, qword [rsp + 0x2a0]
mov qword [rsp + 0x23a0], rax
mov rax, qword [rsp + 0x2a8]
mov qword [rsp + 0x23a8], rax
mov byte [rsp + 0x23b0], 1
mov eax, dword [rsp + 0x208]
mov dword [rsp + 0x23b1], eax
mov eax, dword [rsp + 0x20b]
mov dword [rsp + 0x23b4], eax
movzx eax, byte [rsp + 0x70]
mov byte [rsp + 0x23b8], al
mov eax, dword [rsp + 0x203]
mov dword [rsp + 0x23bc], eax
mov eax, dword [rsp + 0x200]
mov dword [rsp + 0x23b9], eax
mov eax, dword [rsp + 0x260]
mov byte [rsp + 0x23c0], al
mov eax, dword [rsp + 0x1fb]
mov dword [rsp + 0x23c4], eax
mov eax, dword [rsp + 0x1f8]
mov dword [rsp + 0x23c1], eax
mov rax, qword [rsp + 0x2b0]
mov qword [rsp + 0x23c8], rax
mov rax, qword [rsp + 0x2b8]
mov qword [rsp + 0x23d0], rax
mov rax, qword [rsp + 0x2c0]
mov qword [rsp + 0x23d8], rax
mov byte [rsp + 0x23e0], 1
mov eax, dword [rsp + 0x1f3]
mov dword [rsp + 0x23e4], eax
mov eax, dword [rsp + 0x1f0]
mov dword [rsp + 0x23e1], eax
movzx eax, byte [rsp + 0x78]
mov byte [rsp + 0x23e8], al
mov eax, dword [rsp + 0x1eb]
mov dword [rsp + 0x23ec], eax
mov eax, dword [rsp + 0x1e8]
mov dword [rsp + 0x23e9], eax
mov eax, dword [rsp + 0x21c]
mov byte [rsp + 0x23f0], al
mov eax, dword [rsp + 0x1e3]
mov dword [rsp + 0x23f4], eax
mov eax, dword [rsp + 0x1e0]
mov dword [rsp + 0x23f1], eax
mov rax, qword [rsp + 0x2d0]
mov qword [rsp + 0x23f8], rax
mov rax, qword [rsp + 0x2d8]
mov qword [rsp + 0x2400], rax
mov rax, qword [rsp + 0x2e0]
mov qword [rsp + 0x2408], rax
mov byte [rsp + 0x2410], 1
mov eax, dword [rsp + 0x1db]
mov dword [rsp + 0x2414], eax
mov eax, dword [rsp + 0x1d8]
mov dword [rsp + 0x2411], eax
movzx eax, byte [rsp + 0x88]
mov byte [rsp + 0x2418], al
mov eax, dword [rsp + 0x1d3]
mov dword [rsp + 0x241c], eax
mov eax, dword [rsp + 0x1d0]
mov dword [rsp + 0x2419], eax
mov eax, dword [rsp + 0x22c]
mov byte [rsp + 0x2420], al
mov eax, dword [rsp + 0x1c8]
mov ecx, dword [rsp + 0x1cb]
mov dword [rsp + 0x2424], ecx
mov dword [rsp + 0x2421], eax
mov eax, dword [rsp + 0x1c0]
mov ecx, dword [rsp + 0x1c3]
mov dword [rsp + 0x2444], ecx
mov dword [rsp + 0x2441], eax
mov byte [rsp + 0x2448], 0
mov eax, dword [rsp + 0x1b8]
mov ecx, dword [rsp + 0x1bb]
mov dword [rsp + 0x244c], ecx
mov dword [rsp + 0x2449], eax
mov byte [rsp + 0x2450], 1
mov eax, dword [rsp + 0x1b0]
mov ecx, dword [rsp + 0x1b3]
mov dword [rsp + 0x2454], ecx
mov dword [rsp + 0x2451], eax
mov eax, dword [rsp + 0x1a8]
mov ecx, dword [rsp + 0x1ab]
mov dword [rsp + 0x2474], ecx
mov dword [rsp + 0x2471], eax
mov byte [rsp + 0x2478], 0
mov eax, dword [rsp + 0x1a0]
mov ecx, dword [rsp + 0x1a3]
mov dword [rsp + 0x247c], ecx
mov dword [rsp + 0x2479], eax
mov byte [rsp + 0x2480], 0
mov eax, dword [rsp + 0x180]
mov ecx, dword [rsp + 0x183]
mov dword [rsp + 0x2484], ecx
mov dword [rsp + 0x2481], eax
mov eax, dword [rsp + 0x178]
mov ecx, dword [rsp + 0x17b]
mov dword [rsp + 0x24a4], ecx
mov dword [rsp + 0x24a1], eax
mov byte [rsp + 0x24a8], 0
mov eax, dword [rsp + 0x170]
mov ecx, dword [rsp + 0x173]
mov dword [rsp + 0x24ac], ecx
mov dword [rsp + 0x24a9], eax
mov byte [rsp + 0x24b0], 0
mov eax, dword [rsp + 0x168]
mov ecx, dword [rsp + 0x16b]
mov dword [rsp + 0x24b4], ecx
mov dword [rsp + 0x24b1], eax
mov eax, dword [rsp + 0x160]
mov ecx, dword [rsp + 0x163]
mov dword [rsp + 0x24d4], ecx
mov dword [rsp + 0x24d1], eax
movzx eax, byte [rsp + 0x80]
mov byte [rsp + 0x24d8], al
mov eax, dword [rsp + 0x158]
mov ecx, dword [rsp + 0x15b]
mov dword [rsp + 0x24dc], ecx
mov dword [rsp + 0x24d9], eax
mov byte [rsp + 0x24e0], 0
mov eax, dword [rsp + 0x150]
mov ecx, dword [rsp + 0x153]
mov dword [rsp + 0x24e4], ecx
mov dword [rsp + 0x24e1], eax
mov eax, dword [rsp + 0x148]
mov ecx, dword [rsp + 0x14b]
mov dword [rsp + 0x2504], ecx
mov dword [rsp + 0x2501], eax
movzx eax, byte [rsp + 0x68]
mov byte [rsp + 0x2508], al
mov eax, dword [rsp + 0x140]
mov ecx, dword [rsp + 0x143]
mov dword [rsp + 0x250c], ecx
mov dword [rsp + 0x2509], eax
mov byte [rsp + 0x2510], 0
mov eax, dword [rsp + 0x138]
mov ecx, dword [rsp + 0x13b]
mov dword [rsp + 0x2514], ecx
mov dword [rsp + 0x2511], eax
mov eax, dword [rsp + 0x130]
mov ecx, dword [rsp + 0x133]
mov dword [rsp + 0x2534], ecx
mov dword [rsp + 0x2531], eax
movzx eax, byte [rsp + 0x58]
mov byte [rsp + 0x2538], al
mov eax, dword [rsp + 0x128]
mov ecx, dword [rsp + 0x12b]
mov dword [rsp + 0x253c], ecx
mov dword [rsp + 0x2539], eax
mov byte [rsp + 0x2540], 0
mov eax, dword [rsp + 0x120]
mov ecx, dword [rsp + 0x123]
mov dword [rsp + 0x2544], ecx
mov dword [rsp + 0x2541], eax
mov eax, dword [rsp + 0x118]
mov ecx, dword [rsp + 0x11b]
mov dword [rsp + 0x2564], ecx
mov dword [rsp + 0x2561], eax
movzx eax, byte [rsp + 0x50]
mov byte [rsp + 0x2568], al
mov eax, dword [rsp + 0x110]
mov ecx, dword [rsp + 0x113]
mov dword [rsp + 0x256c], ecx
mov dword [rsp + 0x2569], eax
mov byte [rsp + 0x2570], 0
mov eax, dword [rsp + 0x108]
mov ecx, dword [rsp + 0x10b]
mov dword [rsp + 0x2574], ecx
mov dword [rsp + 0x2571], eax
mov eax, dword [rsp + 0x100]
mov ecx, dword [rsp + 0x103]
mov dword [rsp + 0x2594], ecx
mov dword [rsp + 0x2591], eax
movzx eax, byte [rsp + 0x48]
mov byte [rsp + 0x2598], al
mov eax, dword [rsp + 0xf8]
mov ecx, dword [rsp + 0xfb]
mov dword [rsp + 0x259c], ecx
mov dword [rsp + 0x2599], eax
mov byte [rsp + 0x25a0], 0
mov eax, dword [rsp + 0xf0]
mov ecx, dword [rsp + 0xf3]
mov dword [rsp + 0x25a4], ecx
mov dword [rsp + 0x25a1], eax
mov eax, dword [rsp + 0xe8]
mov ecx, dword [rsp + 0xeb]
mov dword [rsp + 0x25c4], ecx
mov dword [rsp + 0x25c1], eax
movzx eax, byte [rsp + 0x40]
mov byte [rsp + 0x25c8], al
mov eax, dword [rsp + 0xe0]
mov ecx, dword [rsp + 0xe3]
mov dword [rsp + 0x25cc], ecx
mov dword [rsp + 0x25c9], eax
mov byte [rsp + 0x25d0], 0
mov eax, dword [rsp + 0xd8]
mov ecx, dword [rsp + 0xdb]
mov dword [rsp + 0x25d4], ecx
mov dword [rsp + 0x25d1], eax
mov eax, dword [rsp + 0xd0]
mov ecx, dword [rsp + 0xd3]
mov dword [rsp + 0x25f4], ecx
mov dword [rsp + 0x25f1], eax
movzx eax, byte [rsp + 0x38]
mov byte [rsp + 0x25f8], al
mov eax, dword [rsp + 0xc8]
mov ecx, dword [rsp + 0xcb]
mov dword [rsp + 0x25fc], ecx
mov dword [rsp + 0x25f9], eax
mov byte [rsp + 0x2600], 0
mov eax, dword [rsp + 0xc0]
mov ecx, dword [rsp + 0xc3]
mov dword [rsp + 0x2604], ecx
mov dword [rsp + 0x2601], eax
mov edi, 0x28
movabs r12, 0xaaaaaaaaaaaaaaaa
jmp 0x40ee71
add rdi, 0x30
cmp rdi, 0x2c8
je 0x411cbf
cmp byte [rsp + rdi + 0x2368], 0
je 0x40ee60
test byte [rsp + rdi + 0x2360], 1
je 0x40ee60
mov rbx, qword [rsp + rdi + 0x2348]
mov r14, qword [rsp + rdi + 0x2340]
test rbx, rbx
cmove r14, r12
je 0x40ee60
mov rax, qword [rsp + 0xa8]
mov r15, qword [rax]
mov r13, qword [rax + 8]
mov rcx, r14
mov dl, 0xaa
mov r8, rbx
call fcn.00440060
mov rax, qword [rsp + 0x4bef8]
mov qword [rsp + 0x20], rax
mov rcx, r15
mov rdx, r14
mov r8, rbx
xor r9d, r9d
call qword [r13 + 0x10]
jmp 0x40ee60
mov eax, dword [0x0044571c]
mov dword [rsp + 0x1c3], eax
mov eax, dword [0x00445719]
mov dword [rsp + 0x1c0], eax
mov byte [rsp + 0x98], 0
mov dword [rsp + 0x1b8], 0
mov dword [rsp + 0x1bb], 0
mov dword [rsp + 0x1b0], 0
mov dword [rsp + 0x1b3], 0
mov dword [rsp + 0x244], 0
mov rax, qword [rbx + 0x10]
lea rcx, [rax + 0x14]
cmp rcx, qword [rbx + 8]
ja 0x418ff8
mov rsi, rax
add rsi, 0x14
jb 0x418230
mov rdi, qword [rbx]
movzx ecx, word [rdi + rax + 0x10]
add rsi, rcx
jb 0x418230
movzx r13d, word [rdi + rax + 2]
test r13, r13
je 0x40f7f9
lea r12, [rax + rcx + 0x20]
mov rbp, 0xffffffffffffffd8
sub rbp, rax
sub rbp, rcx
lea r14, [rsp + 0x3e40]
lea r15, str..debug_line_str
jmp 0x40efc8
mov r9d, 0xf
mov r8, r15
call fcn.00421480
test al, 1
jne 0x40f00d
add r12, 0x28
add rbp, 0xffffffffffffffd8
add rsi, 0x28
add r13, 0xffffffffffffffff
je 0x40f7f9
lea r8, [rdi + rsi]
mov rcx, r14
mov rdx, rbx
call fcn.00421760
movzx eax, word [rsp + 0x3e50]
cmp eax, 0x42
je 0x40efb2
test eax, eax
jne 0x418eaf
mov rdx, qword [rsp + 0x3e48]
movabs rcx, 0xaaaaaaaaaaaaaaaa
test rdx, rdx
je 0x40efa0
mov rcx, qword [rsp + 0x3e40]
jmp 0x40efa0
test rdi, rdi
je 0x40f7f9
neg rbp
cmp byte [rbx + 0x1c], 0
cmovne rbp, r12
mov r8d, dword [rdi + rbp]
mov r9d, dword [rdi + r12 - 4]
lea rax, [r9 + r8]
cmp rax, qword [rbx + 8]
ja 0x418ff8
add r8, qword [rbx]
mov rax, qword [rsp + 0xa8]
movups xmm0, xmmword [rax]
movaps xmmword [rsp + 0x2be50], xmm0
lea rcx, [rsp + 0x3e40]
lea rdx, [rsp + 0x2be50]
call fcn.00403560
movzx esi, word [rsp + 0x3e50]
test si, si
je 0x415eaf
mov rax, qword [rsp + 0x278]
mov qword [rsp + 0x20c8], rax
mov rax, qword [rsp + 0x280]
mov qword [rsp + 0x20d0], rax
mov rax, qword [rsp + 0xb8]
mov qword [rsp + 0x20d8], rax
mov byte [rsp + 0x20e0], 1
mov eax, dword [rsp + 0x198]
mov dword [rsp + 0x20e1], eax
mov eax, dword [rsp + 0x19b]
mov dword [rsp + 0x20e4], eax
movzx eax, byte [rsp + 0x60]
mov byte [rsp + 0x20e8], al
mov eax, dword [rsp + 0x190]
mov dword [rsp + 0x20e9], eax
mov eax, dword [rsp + 0x193]
mov dword [rsp + 0x20ec], eax
mov eax, dword [rsp + 0x250]
mov byte [rsp + 0x20f0], al
mov eax, dword [rsp + 0x188]
mov dword [rsp + 0x20f1], eax
mov eax, dword [rsp + 0x18b]
mov dword [rsp + 0x20f4], eax
mov rax, qword [rsp + 0x298]
mov qword [rsp + 0x20f8], rax
mov rax, qword [rsp + 0x2a0]
mov qword [rsp + 0x2100], rax
mov rax, qword [rsp + 0x2a8]
mov qword [rsp + 0x2108], rax
mov byte [rsp + 0x2110], 1
mov eax, dword [rsp + 0x208]
mov dword [rsp + 0x2111], eax
mov eax, dword [rsp + 0x20b]
mov dword [rsp + 0x2114], eax
movzx eax, byte [rsp + 0x70]
mov byte [rsp + 0x2118], al
mov eax, dword [rsp + 0x203]
mov dword [rsp + 0x211c], eax
mov eax, dword [rsp + 0x200]
mov dword [rsp + 0x2119], eax
mov eax, dword [rsp + 0x260]
mov byte [rsp + 0x2120], al
mov eax, dword [rsp + 0x1fb]
mov dword [rsp + 0x2124], eax
mov eax, dword [rsp + 0x1f8]
mov dword [rsp + 0x2121], eax
mov rax, qword [rsp + 0x2b0]
mov qword [rsp + 0x2128], rax
mov rax, qword [rsp + 0x2b8]
mov qword [rsp + 0x2130], rax
mov rax, qword [rsp + 0x2c0]
mov qword [rsp + 0x2138], rax
mov byte [rsp + 0x2140], 1
mov eax, dword [rsp + 0x1f3]
mov dword [rsp + 0x2144], eax
mov eax, dword [rsp + 0x1f0]
mov dword [rsp + 0x2141], eax
movzx eax, byte [rsp + 0x78]
mov byte [rsp + 0x2148], al
mov eax, dword [rsp + 0x1eb]
mov dword [rsp + 0x214c], eax
mov eax, dword [rsp + 0x1e8]
mov dword [rsp + 0x2149], eax
mov eax, dword [rsp + 0x21c]
mov byte [rsp + 0x2150], al
mov eax, dword [rsp + 0x1e3]
mov dword [rsp + 0x2154], eax
mov eax, dword [rsp + 0x1e0]
mov dword [rsp + 0x2151], eax
mov rax, qword [rsp + 0x2d0]
mov qword [rsp + 0x2158], rax
mov rax, qword [rsp + 0x2d8]
mov qword [rsp + 0x2160], rax
mov rax, qword [rsp + 0x2e0]
mov qword [rsp + 0x2168], rax
mov byte [rsp + 0x2170], 1
mov eax, dword [rsp + 0x1db]
mov dword [rsp + 0x2174], eax
mov eax, dword [rsp + 0x1d8]
mov dword [rsp + 0x2171], eax
movzx eax, byte [rsp + 0x88]
mov byte [rsp + 0x2178], al
mov eax, dword [rsp + 0x1d3]
mov dword [rsp + 0x217c], eax
mov eax, dword [rsp + 0x1d0]
mov dword [rsp + 0x2179], eax
mov eax, dword [rsp + 0x22c]
mov byte [rsp + 0x2180], al
mov eax, dword [rsp + 0x1cb]
mov dword [rsp + 0x2184], eax
mov eax, dword [rsp + 0x1c8]
mov dword [rsp + 0x2181], eax
mov rax, qword [rsp + 0x2e8]
mov qword [rsp + 0x2188], rax
mov rax, qword [rsp + 0x2f0]
mov qword [rsp + 0x2190], rax
mov rax, qword [rsp + 0x2f8]
mov qword [rsp + 0x2198], rax
mov byte [rsp + 0x21a0], 1
mov eax, dword [rsp + 0x1c3]
mov dword [rsp + 0x21a4], eax
mov eax, dword [rsp + 0x1c0]
mov dword [rsp + 0x21a1], eax
movzx eax, byte [rsp + 0x98]
mov byte [rsp + 0x21a8], al
mov eax, dword [rsp + 0x1bb]
mov dword [rsp + 0x21ac], eax
mov eax, dword [rsp + 0x1b8]
mov dword [rsp + 0x21a9], eax
mov eax, dword [rsp + 0x244]
mov byte [rsp + 0x21b0], al
mov eax, dword [rsp + 0x1b0]
mov ecx, dword [rsp + 0x1b3]
mov dword [rsp + 0x21b4], ecx
mov dword [rsp + 0x21b1], eax
mov eax, dword [rsp + 0x1a8]
mov ecx, dword [rsp + 0x1ab]
mov dword [rsp + 0x21d4], ecx
mov dword [rsp + 0x21d1], eax
mov byte [rsp + 0x21d8], 0
mov eax, dword [rsp + 0x1a0]
mov ecx, dword [rsp + 0x1a3]
mov dword [rsp + 0x21dc], ecx
mov dword [rsp + 0x21d9], eax
mov byte [rsp + 0x21e0], 1
mov eax, dword [rsp + 0x180]
mov ecx, dword [rsp + 0x183]
mov dword [rsp + 0x21e4], ecx
mov dword [rsp + 0x21e1], eax
mov eax, dword [rsp + 0x178]
mov ecx, dword [rsp + 0x17b]
mov dword [rsp + 0x2204], ecx
mov dword [rsp + 0x2201], eax
movzx eax, byte [rsp + 0x90]
mov byte [rsp + 0x2208], al
mov eax, dword [rsp + 0x170]
mov ecx, dword [rsp + 0x173]
mov dword [rsp + 0x220c], ecx
mov dword [rsp + 0x2209], eax
mov byte [rsp + 0x2210], 0
mov eax, dword [rsp + 0x168]
mov ecx, dword [rsp + 0x16b]
mov dword [rsp + 0x2214], ecx
mov dword [rsp + 0x2211], eax
mov eax, dword [rsp + 0x160]
mov ecx, dword [rsp + 0x163]
mov dword [rsp + 0x2234], ecx
mov dword [rsp + 0x2231], eax
movzx eax, byte [rsp + 0x80]
mov byte [rsp + 0x2238], al
mov eax, dword [rsp + 0x158]
mov ecx, dword [rsp + 0x15b]
mov dword [rsp + 0x223c], ecx
mov dword [rsp + 0x2239], eax
mov byte [rsp + 0x2240], 0
mov eax, dword [rsp + 0x150]
mov ecx, dword [rsp + 0x153]
mov dword [rsp + 0x2244], ecx
mov dword [rsp + 0x2241], eax
mov eax, dword [rsp + 0x148]
mov ecx, dword [rsp + 0x14b]
mov dword [rsp + 0x2264], ecx
mov dword [rsp + 0x2261], eax
movzx eax, byte [rsp + 0x68]
mov byte [rsp + 0x2268], al
mov eax, dword [rsp + 0x140]
mov ecx, dword [rsp + 0x143]
mov dword [rsp + 0x226c], ecx
mov dword [rsp + 0x2269], eax
mov byte [rsp + 0x2270], 0
mov eax, dword [rsp + 0x138]
mov ecx, dword [rsp + 0x13b]
mov dword [rsp + 0x2274], ecx
mov dword [rsp + 0x2271], eax
mov eax, dword [rsp + 0x130]
mov ecx, dword [rsp + 0x133]
mov dword [rsp + 0x2294], ecx
mov dword [rsp + 0x2291], eax
movzx eax, byte [rsp + 0x58]
mov byte [rsp + 0x2298], al
mov eax, dword [rsp + 0x128]
mov ecx, dword [rsp + 0x12b]
mov dword [rsp + 0x229c], ecx
mov dword [rsp + 0x2299], eax
mov byte [rsp + 0x22a0], 0
mov eax, dword [rsp + 0x120]
mov ecx, dword [rsp + 0x123]
mov dword [rsp + 0x22a4], ecx
mov dword [rsp + 0x22a1], eax
mov eax, dword [rsp + 0x118]
mov ecx, dword [rsp + 0x11b]
mov dword [rsp + 0x22c4], ecx
mov dword [rsp + 0x22c1], eax
movzx eax, byte [rsp + 0x50]
mov byte [rsp + 0x22c8], al
mov eax, dword [rsp + 0x110]
mov ecx, dword [rsp + 0x113]
mov dword [rsp + 0x22cc], ecx
mov dword [rsp + 0x22c9], eax
mov byte [rsp + 0x22d0], 0
mov eax, dword [rsp + 0x108]
mov ecx, dword [rsp + 0x10b]
mov dword [rsp + 0x22d4], ecx
mov dword [rsp + 0x22d1], eax
mov eax, dword [rsp + 0x100]
mov ecx, dword [rsp + 0x103]
mov dword [rsp + 0x22f4], ecx
mov dword [rsp + 0x22f1], eax
movzx eax, byte [rsp + 0x48]
mov byte [rsp + 0x22f8], al
mov eax, dword [rsp + 0xf8]
mov ecx, dword [rsp + 0xfb]
mov dword [rsp + 0x22fc], ecx
mov dword [rsp + 0x22f9], eax
mov byte [rsp + 0x2300], 0
mov eax, dword [rsp + 0xf0]
mov ecx, dword [rsp + 0xf3]
mov dword [rsp + 0x2304], ecx
mov dword [rsp + 0x2301], eax
mov eax, dword [rsp + 0xe8]
mov ecx, dword [rsp + 0xeb]
mov dword [rsp + 0x2324], ecx
mov dword [rsp + 0x2321], eax
movzx eax, byte [rsp + 0x40]
mov byte [rsp + 0x2328], al
mov eax, dword [rsp + 0xe0]
mov ecx, dword [rsp + 0xe3]
mov dword [rsp + 0x232c], ecx
mov dword [rsp + 0x2329], eax
mov byte [rsp + 0x2330], 0
mov eax, dword [rsp + 0xd8]
mov ecx, dword [rsp + 0xdb]
mov dword [rsp + 0x2334], ecx
mov dword [rsp + 0x2331], eax
mov eax, dword [rsp + 0xd0]
mov ecx, dword [rsp + 0xd3]
mov dword [rsp + 0x2354], ecx
mov dword [rsp + 0x2351], eax
movzx eax, byte [rsp + 0x38]
mov byte [rsp + 0x2358], al
mov eax, dword [rsp + 0xc8]
mov ecx, dword [rsp + 0xcb]
mov dword [rsp + 0x235c], ecx
mov dword [rsp + 0x2359], eax
mov byte [rsp + 0x2360], 0
mov eax, dword [rsp + 0xc0]
mov ecx, dword [rsp + 0xc3]
mov dword [rsp + 0x2364], ecx
mov dword [rsp + 0x2361], eax
mov edi, 0x28
movabs r12, 0xaaaaaaaaaaaaaaaa
jmp 0x40f791
add rdi, 0x30
cmp rdi, 0x2c8
je 0x411cbf
cmp byte [rsp + rdi + 0x20c8], 0
je 0x40f780
test byte [rsp + rdi + 0x20c0], 1
je 0x40f780
mov rbx, qword [rsp + rdi + 0x20a8]
mov r14, qword [rsp + rdi + 0x20a0]
test rbx, rbx
cmove r14, r12
je 0x40f780
mov rax, qword [rsp + 0xa8]
mov r15, qword [rax]
mov r13, qword [rax + 8]
mov rcx, r14
mov dl, 0xaa
mov r8, rbx
call fcn.00440060
mov rax, qword [rsp + 0x4bef8]
mov qword [rsp + 0x20], rax
mov rcx, r15
mov rdx, r14
mov r8, rbx
xor r9d, r9d
call qword [r13 + 0x10]
jmp 0x40f780
mov eax, dword [0x0044571c]
mov dword [rsp + 0x1ab], eax
mov eax, dword [0x00445719]
mov dword [rsp + 0x1a8], eax
mov byte [rsp + 0xa0], 0
mov dword [rsp + 0x1a0], 0
mov dword [rsp + 0x1a3], 0
mov dword [rsp + 0x180], 0
mov dword [rsp + 0x183], 0
mov dword [rsp + 0x248], 0
mov rax, qword [rbx + 0x10]
lea rcx, [rax + 0x14]
cmp rcx, qword [rbx + 8]
ja 0x418ff8
mov rsi, rax
add rsi, 0x14
jb 0x418230
mov rdi, qword [rbx]
movzx ecx, word [rdi + rax + 0x10]
add rsi, rcx
jb 0x418230
movzx r13d, word [rdi + rax + 2]
test r13, r13
je 0x410159
lea r12, [rax + rcx + 0x20]
mov rbp, 0xffffffffffffffd8
sub rbp, rax
sub rbp, rcx
lea r14, [rsp + 0x3e40]
lea r15, str..debug_ranges
jmp 0x40f8e8
mov r9d, 0xd
mov r8, r15
call fcn.00421480
test al, 1
jne 0x40f92d
add r12, 0x28
add rbp, 0xffffffffffffffd8
add rsi, 0x28
add r13, 0xffffffffffffffff
je 0x410159
lea r8, [rdi + rsi]
mov rcx, r14
mov rdx, rbx
call fcn.00421760
movzx eax, word [rsp + 0x3e50]
cmp eax, 0x42
je 0x40f8d2
test eax, eax
jne 0x418eaf
mov rdx, qword [rsp + 0x3e48]
movabs rcx, 0xaaaaaaaaaaaaaaaa
test rdx, rdx
je 0x40f8c0
mov rcx, qword [rsp + 0x3e40]
jmp 0x40f8c0
test rdi, rdi
je 0x410159
neg rbp
cmp byte [rbx + 0x1c], 0
cmovne rbp, r12
mov r8d, dword [rdi + rbp]
mov r9d, dword [rdi + r12 - 4]
lea rax, [r9 + r8]
cmp rax, qword [rbx + 8]
ja 0x418ff8
add r8, qword [rbx]
mov rax, qword [rsp + 0xa8]
movups xmm0, xmmword [rax]
movaps xmmword [rsp + 0x2be50], xmm0
lea rcx, [rsp + 0x3e40]
lea rdx, [rsp + 0x2be50]
call fcn.00403560
movzx esi, word [rsp + 0x3e50]
test si, si
je 0x4167ee
mov rax, qword [rsp + 0x278]
mov qword [rsp + 0x1e28], rax
mov rax, qword [rsp + 0x280]
mov qword [rsp + 0x1e30], rax
mov rax, qword [rsp + 0xb8]
mov qword [rsp + 0x1e38], rax
mov byte [rsp + 0x1e40], 1
mov eax, dword [rsp + 0x198]
mov dword [rsp + 0x1e41], eax
mov eax, dword [rsp + 0x19b]
mov dword [rsp + 0x1e44], eax
movzx eax, byte [rsp + 0x60]
mov byte [rsp + 0x1e48], al
mov eax, dword [rsp + 0x190]
mov dword [rsp + 0x1e49], eax
mov eax, dword [rsp + 0x193]
mov dword [rsp + 0x1e4c], eax
mov eax, dword [rsp + 0x250]
mov byte [rsp + 0x1e50], al
mov eax, dword [rsp + 0x188]
mov dword [rsp + 0x1e51], eax
mov eax, dword [rsp + 0x18b]
mov dword [rsp + 0x1e54], eax
mov rax, qword [rsp + 0x298]
mov qword [rsp + 0x1e58], rax
mov rax, qword [rsp + 0x2a0]
mov qword [rsp + 0x1e60], rax
mov rax, qword [rsp + 0x2a8]
mov qword [rsp + 0x1e68], rax
mov byte [rsp + 0x1e70], 1
mov eax, dword [rsp + 0x208]
mov dword [rsp + 0x1e71], eax
mov eax, dword [rsp + 0x20b]
mov dword [rsp + 0x1e74], eax
movzx eax, byte [rsp + 0x70]
mov byte [rsp + 0x1e78], al
mov eax, dword [rsp + 0x203]
mov dword [rsp + 0x1e7c], eax
mov eax, dword [rsp + 0x200]
mov dword [rsp + 0x1e79], eax
mov eax, dword [rsp + 0x260]
mov byte [rsp + 0x1e80], al
mov eax, dword [rsp + 0x1fb]
mov dword [rsp + 0x1e84], eax
mov eax, dword [rsp + 0x1f8]
mov dword [rsp + 0x1e81], eax
mov rax, qword [rsp + 0x2b0]
mov qword [rsp + 0x1e88], rax
mov rax, qword [rsp + 0x2b8]
mov qword [rsp + 0x1e90], rax
mov rax, qword [rsp + 0x2c0]
mov qword [rsp + 0x1e98], rax
mov byte [rsp + 0x1ea0], 1
mov eax, dword [rsp + 0x1f3]
mov dword [rsp + 0x1ea4], eax
mov eax, dword [rsp + 0x1f0]
mov dword [rsp + 0x1ea1], eax
movzx eax, byte [rsp + 0x78]
mov byte [rsp + 0x1ea8], al
mov eax, dword [rsp + 0x1eb]
mov dword [rsp + 0x1eac], eax
mov eax, dword [rsp + 0x1e8]
mov dword [rsp + 0x1ea9], eax
mov eax, dword [rsp + 0x21c]
mov byte [rsp + 0x1eb0], al
mov eax, dword [rsp + 0x1e3]
mov dword [rsp + 0x1eb4], eax
mov eax, dword [rsp + 0x1e0]
mov dword [rsp + 0x1eb1], eax
mov rax, qword [rsp + 0x2d0]
mov qword [rsp + 0x1eb8], rax
mov rax, qword [rsp + 0x2d8]
mov qword [rsp + 0x1ec0], rax
mov rax, qword [rsp + 0x2e0]
mov qword [rsp + 0x1ec8], rax
mov byte [rsp + 0x1ed0], 1
mov eax, dword [rsp + 0x1db]
mov dword [rsp + 0x1ed4], eax
mov eax, dword [rsp + 0x1d8]
mov dword [rsp + 0x1ed1], eax
movzx eax, byte [rsp + 0x88]
mov byte [rsp + 0x1ed8], al
mov eax, dword [rsp + 0x1d3]
mov dword [rsp + 0x1edc], eax
mov eax, dword [rsp + 0x1d0]
mov dword [rsp + 0x1ed9], eax
mov eax, dword [rsp + 0x22c]
mov byte [rsp + 0x1ee0], al
mov eax, dword [rsp + 0x1cb]
mov dword [rsp + 0x1ee4], eax
mov eax, dword [rsp + 0x1c8]
mov dword [rsp + 0x1ee1], eax
mov rax, qword [rsp + 0x2e8]
mov qword [rsp + 0x1ee8], rax
mov rax, qword [rsp + 0x2f0]
mov qword [rsp + 0x1ef0], rax
mov rax, qword [rsp + 0x2f8]
mov qword [rsp + 0x1ef8], rax
mov byte [rsp + 0x1f00], 1
mov eax, dword [rsp + 0x1c3]
mov dword [rsp + 0x1f04], eax
mov eax, dword [rsp + 0x1c0]
mov dword [rsp + 0x1f01], eax
movzx eax, byte [rsp + 0x98]
mov byte [rsp + 0x1f08], al
mov eax, dword [rsp + 0x1bb]
mov dword [rsp + 0x1f0c], eax
mov eax, dword [rsp + 0x1b8]
mov dword [rsp + 0x1f09], eax
mov eax, dword [rsp + 0x244]
mov byte [rsp + 0x1f10], al
mov eax, dword [rsp + 0x1b3]
mov dword [rsp + 0x1f14], eax
mov eax, dword [rsp + 0x1b0]
mov dword [rsp + 0x1f11], eax
mov rax, qword [rsp + 0x310]
mov qword [rsp + 0x1f18], rax
mov rax, qword [rsp + 0x318]
mov qword [rsp + 0x1f20], rax
mov rax, qword [rsp + 0x320]
mov qword [rsp + 0x1f28], rax
mov byte [rsp + 0x1f30], 1
mov eax, dword [rsp + 0x1ab]
mov dword [rsp + 0x1f34], eax
mov eax, dword [rsp + 0x1a8]
mov dword [rsp + 0x1f31], eax
movzx eax, byte [rsp + 0xa0]
mov byte [rsp + 0x1f38], al
mov eax, dword [rsp + 0x1a3]
mov dword [rsp + 0x1f3c], eax
mov eax, dword [rsp + 0x1a0]
mov dword [rsp + 0x1f39], eax
mov eax, dword [rsp + 0x248]
mov byte [rsp + 0x1f40], al
mov eax, dword [rsp + 0x180]
mov ecx, dword [rsp + 0x183]
mov dword [rsp + 0x1f44], ecx
mov dword [rsp + 0x1f41], eax
mov eax, dword [rsp + 0x178]
mov ecx, dword [rsp + 0x17b]
mov dword [rsp + 0x1f64], ecx
mov dword [rsp + 0x1f61], eax
movzx eax, byte [rsp + 0x90]
mov byte [rsp + 0x1f68], al
mov eax, dword [rsp + 0x170]
mov ecx, dword [rsp + 0x173]
mov dword [rsp + 0x1f6c], ecx
mov dword [rsp + 0x1f69], eax
mov byte [rsp + 0x1f70], 1
mov eax, dword [rsp + 0x168]
mov ecx, dword [rsp + 0x16b]
mov dword [rsp + 0x1f74], ecx
mov dword [rsp + 0x1f71], eax
mov eax, dword [rsp + 0x160]
mov ecx, dword [rsp + 0x163]
mov dword [rsp + 0x1f94], ecx
mov dword [rsp + 0x1f91], eax
movzx eax, byte [rsp + 0x80]
mov byte [rsp + 0x1f98], al
mov eax, dword [rsp + 0x158]
mov ecx, dword [rsp + 0x15b]
mov dword [rsp + 0x1f9c], ecx
mov dword [rsp + 0x1f99], eax
mov byte [rsp + 0x1fa0], 0
mov eax, dword [rsp + 0x150]
mov ecx, dword [rsp + 0x153]
mov dword [rsp + 0x1fa4], ecx
mov dword [rsp + 0x1fa1], eax
mov eax, dword [rsp + 0x148]
mov ecx, dword [rsp + 0x14b]
mov dword [rsp + 0x1fc4], ecx
mov dword [rsp + 0x1fc1], eax
movzx eax, byte [rsp + 0x68]
mov byte [rsp + 0x1fc8], al
mov eax, dword [rsp + 0x140]
mov ecx, dword [rsp + 0x143]
mov dword [rsp + 0x1fcc], ecx
mov dword [rsp + 0x1fc9], eax
mov byte [rsp + 0x1fd0], 0
mov eax, dword [rsp + 0x138]
mov ecx, dword [rsp + 0x13b]
mov dword [rsp + 0x1fd4], ecx
mov dword [rsp + 0x1fd1], eax
mov eax, dword [rsp + 0x130]
mov ecx, dword [rsp + 0x133]
mov dword [rsp + 0x1ff4], ecx
mov dword [rsp + 0x1ff1], eax
movzx eax, byte [rsp + 0x58]
mov byte [rsp + 0x1ff8], al
mov eax, dword [rsp + 0x128]
mov ecx, dword [rsp + 0x12b]
mov dword [rsp + 0x1ffc], ecx
mov dword [rsp + 0x1ff9], eax
mov byte [rsp + 0x2000], 0
mov eax, dword [rsp + 0x120]
mov ecx, dword [rsp + 0x123]
mov dword [rsp + 0x2004], ecx
mov dword [rsp + 0x2001], eax
mov eax, dword [rsp + 0x118]
mov ecx, dword [rsp + 0x11b]
mov dword [rsp + 0x2024], ecx
mov dword [rsp + 0x2021], eax
movzx eax, byte [rsp + 0x50]
mov byte [rsp + 0x2028], al
mov eax, dword [rsp + 0x110]
mov ecx, dword [rsp + 0x113]
mov dword [rsp + 0x202c], ecx
mov dword [rsp + 0x2029], eax
mov byte [rsp + 0x2030], 0
mov eax, dword [rsp + 0x108]
mov ecx, dword [rsp + 0x10b]
mov dword [rsp + 0x2034], ecx
mov dword [rsp + 0x2031], eax
mov eax, dword [rsp + 0x100]
mov ecx, dword [rsp + 0x103]
mov dword [rsp + 0x2054], ecx
mov dword [rsp + 0x2051], eax
movzx eax, byte [rsp + 0x48]
mov byte [rsp + 0x2058], al
mov eax, dword [rsp + 0xf8]
mov ecx, dword [rsp + 0xfb]
mov dword [rsp + 0x205c], ecx
mov dword [rsp + 0x2059], eax
mov byte [rsp + 0x2060], 0
mov eax, dword [rsp + 0xf0]
mov ecx, dword [rsp + 0xf3]
mov dword [rsp + 0x2064], ecx
mov dword [rsp + 0x2061], eax
mov eax, dword [rsp + 0xe8]
mov ecx, dword [rsp + 0xeb]
mov dword [rsp + 0x2084], ecx
mov dword [rsp + 0x2081], eax
movzx eax, byte [rsp + 0x40]
mov byte [rsp + 0x2088], al
mov eax, dword [rsp + 0xe0]
mov ecx, dword [rsp + 0xe3]
mov dword [rsp + 0x208c], ecx
mov dword [rsp + 0x2089], eax
mov byte [rsp + 0x2090], 0
mov eax, dword [rsp + 0xd8]
mov ecx, dword [rsp + 0xdb]
mov dword [rsp + 0x2094], ecx
mov dword [rsp + 0x2091], eax
mov eax, dword [rsp + 0xd0]
mov ecx, dword [rsp + 0xd3]
mov dword [rsp + 0x20b4], ecx
mov dword [rsp + 0x20b1], eax
movzx eax, byte [rsp + 0x38]
mov byte [rsp + 0x20b8], al
mov eax, dword [rsp + 0xc8]
mov ecx, dword [rsp + 0xcb]
mov dword [rsp + 0x20bc], ecx
mov dword [rsp + 0x20b9], eax
mov byte [rsp + 0x20c0], 0
mov eax, dword [rsp + 0xc0]
mov ecx, dword [rsp + 0xc3]
mov dword [rsp + 0x20c4], ecx
mov dword [rsp + 0x20c1], eax
mov edi, 0x28
movabs r12, 0xaaaaaaaaaaaaaaaa
jmp 0x4100f1
add rdi, 0x30
cmp rdi, 0x2c8
je 0x411cbf
cmp byte [rsp + rdi + 0x1e28], 0
je 0x4100e0
test byte [rsp + rdi + 0x1e20], 1
je 0x4100e0
mov rbx, qword [rsp + rdi + 0x1e08]
mov r14, qword [rsp + rdi + 0x1e00]
test rbx, rbx
cmove r14, r12
je 0x4100e0
mov rax, qword [rsp + 0xa8]
mov r15, qword [rax]
mov r13, qword [rax + 8]
mov rcx, r14
mov dl, 0xaa
mov r8, rbx
call fcn.00440060
mov rax, qword [rsp + 0x4bef8]
mov qword [rsp + 0x20], rax
mov rcx, r15
mov rdx, r14
mov r8, rbx
xor r9d, r9d
call qword [r13 + 0x10]
jmp 0x4100e0
mov eax, dword [0x0044571c]
mov dword [rsp + 0x17b], eax
mov eax, dword [0x00445719]
mov dword [rsp + 0x178], eax
mov byte [rsp + 0x90], 0
mov dword [rsp + 0x170], 0
mov dword [rsp + 0x173], 0
mov dword [rsp + 0x168], 0
mov dword [rsp + 0x16b], 0
mov dword [rsp + 0x24c], 0
mov rax, qword [rbx + 0x10]
lea rcx, [rax + 0x14]
cmp rcx, qword [rbx + 8]
ja 0x418ff8
mov r12, rax
add r12, 0x14
jb 0x418230
mov rsi, qword [rbx]
movzx ecx, word [rsi + rax + 0x10]
add r12, rcx
jb 0x418230
movzx r13d, word [rsi + rax + 2]
test r13, r13
je 0x410327
lea rdi, [rax + rcx + 0x20]
mov rbp, 0xffffffffffffffd8
sub rbp, rax
sub rbp, rcx
lea r14, [rsp + 0x3e40]
lea r15, str..debug_loclists
jmp 0x410248
mov r9d, 0xf
mov r8, r15
call fcn.00421480
test al, 1
jne 0x41028d
add rdi, 0x28
add rbp, 0xffffffffffffffd8
add r12, 0x28
add r13, 0xffffffffffffffff
je 0x410327
lea r8, [rsi + r12]
mov rcx, r14
mov rdx, rbx
call fcn.00421760
movzx eax, word [rsp + 0x3e50]
cmp eax, 0x42
je 0x410232
test eax, eax
jne 0x418eaf
mov rdx, qword [rsp + 0x3e48]
movabs rcx, 0xaaaaaaaaaaaaaaaa
test rdx, rdx
je 0x410220
mov rcx, qword [rsp + 0x3e40]
jmp 0x410220
test rsi, rsi
je 0x410327
neg rbp
cmp byte [rbx + 0x1c], 0
cmovne rbp, rdi
mov r15d, dword [rsi + rbp]
mov eax, dword [rsi + rdi - 4]
mov qword [rsp + 0x308], rax
add rax, r15
cmp rax, qword [rbx + 8]
ja 0x418ff8
mov r14, qword [rsp + 0x4bef8]
xor eax, eax
test al, al
jne 0x4144e5
add r15, qword [rbx]
mov r8, qword [rsp + 0x308]
test r8, r8
je 0x4172de
mov rdx, r8
mov rax, qword [rsp + 0xa8]
mov rcx, qword [rax]
mov rax, qword [rax + 8]
xor r8d, r8d
mov r9, r14
call qword [rax]
test rax, rax
je 0x4144e5
mov rcx, rax
mov dl, 0xaa
mov r14, qword [rsp + 0x308]
mov r8, r14
mov r12, rax
call fcn.00440060
mov r8, r14
jmp 0x4172e5
mov eax, dword [0x0044571c]
mov dword [rsp + 0x163], eax
mov eax, dword [0x00445719]
mov dword [rsp + 0x160], eax
mov byte [rsp + 0x80], 0
mov dword [rsp + 0x158], 0
mov dword [rsp + 0x15b], 0
mov dword [rsp + 0x150], 0
mov dword [rsp + 0x153], 0
mov dword [rsp + 0x25c], 0
mov rax, qword [rbx + 0x10]
lea rcx, [rax + 0x14]
cmp rcx, qword [rbx + 8]
ja 0x418ff8
mov r12, rax
add r12, 0x14
jb 0x418230
mov rsi, qword [rbx]
movzx ecx, word [rsi + rax + 0x10]
add r12, rcx
jb 0x418230
movzx r13d, word [rsi + rax + 2]
test r13, r13
je 0x4104f7
lea rdi, [rax + rcx + 0x20]
mov rbp, 0xffffffffffffffd8
sub rbp, rax
sub rbp, rcx
lea r14, [rsp + 0x3e40]
lea r15, str..debug_rnglists
jmp 0x410418
mov r9d, 0xf
mov r8, r15
call fcn.00421480
test al, 1
jne 0x41045d
add rdi, 0x28
add rbp, 0xffffffffffffffd8
add r12, 0x28
add r13, 0xffffffffffffffff
je 0x4104f7
lea r8, [rsi + r12]
mov rcx, r14
mov rdx, rbx
call fcn.00421760
movzx eax, word [rsp + 0x3e50]
cmp eax, 0x42
je 0x410402
test eax, eax
jne 0x418eaf
mov rdx, qword [rsp + 0x3e48]
movabs rcx, 0xaaaaaaaaaaaaaaaa
test rdx, rdx
je 0x4103f0
mov rcx, qword [rsp + 0x3e40]
jmp 0x4103f0
test rsi, rsi
je 0x4104f7
neg rbp
cmp byte [rbx + 0x1c], 0
cmovne rbp, rdi
mov r15d, dword [rsi + rbp]
mov eax, dword [rsi + rdi - 4]
mov qword [rsp + 0x328], rax
add rax, r15
cmp rax, qword [rbx + 8]
ja 0x418ff8
mov r14, qword [rsp + 0x4bef8]
xor eax, eax
test al, al
jne 0x414d29
add r15, qword [rbx]
mov r8, qword [rsp + 0x328]
test r8, r8
je 0x417341
mov rdx, r8
mov rax, qword [rsp + 0xa8]
mov rcx, qword [rax]
mov rax, qword [rax + 8]
xor r8d, r8d
mov r9, r14
call qword [rax]
test rax, rax
je 0x414d29
mov rcx, rax
mov dl, 0xaa
mov r14, qword [rsp + 0x328]
mov r8, r14
mov r12, rax
call fcn.00440060
mov r8, r14
jmp 0x417348
mov eax, dword [0x0044571c]
mov dword [rsp + 0x14b], eax
mov eax, dword [0x00445719]
mov dword [rsp + 0x148], eax
mov byte [rsp + 0x68], 0
mov dword [rsp + 0x140], 0
mov dword [rsp + 0x143], 0
mov dword [rsp + 0x138], 0
mov dword [rsp + 0x13b], 0
mov dword [rsp + 0x26c], 0
mov rax, qword [rbx + 0x10]
lea rcx, [rax + 0x14]
cmp rcx, qword [rbx + 8]
ja 0x418ff8
mov r14, rax
add r14, 0x14
jb 0x418230
mov rsi, qword [rbx]
movzx ecx, word [rsi + rax + 0x10]
add r14, rcx
jb 0x418230
movzx edi, word [rsi + rax + 2]
test rdi, rdi
je 0x410eb9
add r14, rsi
lea r15, [rsp + 0x3e40]
movabs r13, 0xaaaaaaaaaaaaaaaa
lea r12, str..debug_addr
jmp 0x4105d0
mov r9d, 0xb
mov r8, r12
call fcn.00421480
test al, 1
jne 0x41060d
add r14, 0x28
add rdi, 0xffffffffffffffff
je 0x410eb9
mov rcx, r15
mov rdx, rbx
mov r8, r14
call fcn.00421760
movzx eax, word [rsp + 0x3e50]
cmp eax, 0x42
je 0x4105c2
test eax, eax
jne 0x418eaf
mov rdx, qword [rsp + 0x3e48]
mov rcx, r13
test rdx, rdx
je 0x4105b0
mov rcx, qword [rsp + 0x3e40]
jmp 0x4105b0
test rsi, rsi
je 0x410eb9
lea rcx, [rsp + 0x30a8]
mov rdx, rbx
mov r8, r14
mov r9, qword [rsp + 0xa8]
call fcn.00403a30
movzx esi, word [rsp + 0x30b8]
test si, si
je 0x417226
mov rax, qword [rsp + 0x278]
mov qword [rsp + 0x1648], rax
mov rax, qword [rsp + 0x280]
mov qword [rsp + 0x1650], rax
mov rax, qword [rsp + 0xb8]
mov qword [rsp + 0x1658], rax
mov byte [rsp + 0x1660], 1
mov eax, dword [rsp + 0x198]
mov dword [rsp + 0x1661], eax
mov eax, dword [rsp + 0x19b]
mov dword [rsp + 0x1664], eax
movzx eax, byte [rsp + 0x60]
mov byte [rsp + 0x1668], al
mov eax, dword [rsp + 0x190]
mov dword [rsp + 0x1669], eax
mov eax, dword [rsp + 0x193]
mov dword [rsp + 0x166c], eax
mov eax, dword [rsp + 0x250]
mov byte [rsp + 0x1670], al
mov eax, dword [rsp + 0x188]
mov dword [rsp + 0x1671], eax
mov eax, dword [rsp + 0x18b]
mov dword [rsp + 0x1674], eax
mov rax, qword [rsp + 0x298]
mov qword [rsp + 0x1678], rax
mov rax, qword [rsp + 0x2a0]
mov qword [rsp + 0x1680], rax
mov rax, qword [rsp + 0x2a8]
mov qword [rsp + 0x1688], rax
mov byte [rsp + 0x1690], 1
mov eax, dword [rsp + 0x208]
mov dword [rsp + 0x1691], eax
mov eax, dword [rsp + 0x20b]
mov dword [rsp + 0x1694], eax
movzx eax, byte [rsp + 0x70]
mov byte [rsp + 0x1698], al
mov eax, dword [rsp + 0x203]
mov dword [rsp + 0x169c], eax
mov eax, dword [rsp + 0x200]
mov dword [rsp + 0x1699], eax
mov eax, dword [rsp + 0x260]
mov byte [rsp + 0x16a0], al
mov eax, dword [rsp + 0x1fb]
mov dword [rsp + 0x16a4], eax
mov eax, dword [rsp + 0x1f8]
mov dword [rsp + 0x16a1], eax
mov rax, qword [rsp + 0x2b0]
mov qword [rsp + 0x16a8], rax
mov rax, qword [rsp + 0x2b8]
mov qword [rsp + 0x16b0], rax
mov rax, qword [rsp + 0x2c0]
mov qword [rsp + 0x16b8], rax
mov byte [rsp + 0x16c0], 1
mov eax, dword [rsp + 0x1f3]
mov dword [rsp + 0x16c4], eax
mov eax, dword [rsp + 0x1f0]
mov dword [rsp + 0x16c1], eax
movzx eax, byte [rsp + 0x78]
mov byte [rsp + 0x16c8], al
mov eax, dword [rsp + 0x1eb]
mov dword [rsp + 0x16cc], eax
mov eax, dword [rsp + 0x1e8]
mov dword [rsp + 0x16c9], eax
mov eax, dword [rsp + 0x21c]
mov byte [rsp + 0x16d0], al
mov eax, dword [rsp + 0x1e3]
mov dword [rsp + 0x16d4], eax
mov eax, dword [rsp + 0x1e0]
mov dword [rsp + 0x16d1], eax
mov rax, qword [rsp + 0x2d0]
mov qword [rsp + 0x16d8], rax
mov rax, qword [rsp + 0x2d8]
mov qword [rsp + 0x16e0], rax
mov rax, qword [rsp + 0x2e0]
mov qword [rsp + 0x16e8], rax
mov byte [rsp + 0x16f0], 1
mov eax, dword [rsp + 0x1db]
mov dword [rsp + 0x16f4], eax
mov eax, dword [rsp + 0x1d8]
mov dword [rsp + 0x16f1], eax
movzx eax, byte [rsp + 0x88]
mov byte [rsp + 0x16f8], al
mov eax, dword [rsp + 0x1d3]
mov dword [rsp + 0x16fc], eax
mov eax, dword [rsp + 0x1d0]
mov dword [rsp + 0x16f9], eax
mov eax, dword [rsp + 0x22c]
mov byte [rsp + 0x1700], al
mov eax, dword [rsp + 0x1cb]
mov dword [rsp + 0x1704], eax
mov eax, dword [rsp + 0x1c8]
mov dword [rsp + 0x1701], eax
mov rax, qword [rsp + 0x2e8]
mov qword [rsp + 0x1708], rax
mov rax, qword [rsp + 0x2f0]
mov qword [rsp + 0x1710], rax
mov rax, qword [rsp + 0x2f8]
mov qword [rsp + 0x1718], rax
mov byte [rsp + 0x1720], 1
mov eax, dword [rsp + 0x1c3]
mov dword [rsp + 0x1724], eax
mov eax, dword [rsp + 0x1c0]
mov dword [rsp + 0x1721], eax
movzx eax, byte [rsp + 0x98]
mov byte [rsp + 0x1728], al
mov eax, dword [rsp + 0x1bb]
mov dword [rsp + 0x172c], eax
mov eax, dword [rsp + 0x1b8]
mov dword [rsp + 0x1729], eax
mov eax, dword [rsp + 0x244]
mov byte [rsp + 0x1730], al
mov eax, dword [rsp + 0x1b3]
mov dword [rsp + 0x1734], eax
mov eax, dword [rsp + 0x1b0]
mov dword [rsp + 0x1731], eax
mov rax, qword [rsp + 0x310]
mov qword [rsp + 0x1738], rax
mov rax, qword [rsp + 0x318]
mov qword [rsp + 0x1740], rax
mov rax, qword [rsp + 0x320]
mov qword [rsp + 0x1748], rax
mov byte [rsp + 0x1750], 1
mov eax, dword [rsp + 0x1ab]
mov dword [rsp + 0x1754], eax
mov eax, dword [rsp + 0x1a8]
mov dword [rsp + 0x1751], eax
movzx eax, byte [rsp + 0xa0]
mov byte [rsp + 0x1758], al
mov eax, dword [rsp + 0x1a3]
mov dword [rsp + 0x175c], eax
mov eax, dword [rsp + 0x1a0]
mov dword [rsp + 0x1759], eax
mov eax, dword [rsp + 0x248]
mov byte [rsp + 0x1760], al
mov eax, dword [rsp + 0x183]
mov dword [rsp + 0x1764], eax
mov eax, dword [rsp + 0x180]
mov dword [rsp + 0x1761], eax
mov rax, qword [rsp + 0x330]
mov qword [rsp + 0x1768], rax
mov rax, qword [rsp + 0x338]
mov qword [rsp + 0x1770], rax
mov rax, qword [rsp + 0x340]
mov qword [rsp + 0x1778], rax
mov byte [rsp + 0x1780], 1
mov eax, dword [rsp + 0x17b]
mov dword [rsp + 0x1784], eax
mov eax, dword [rsp + 0x178]
mov dword [rsp + 0x1781], eax
movzx eax, byte [rsp + 0x90]
mov byte [rsp + 0x1788], al
mov eax, dword [rsp + 0x173]
mov dword [rsp + 0x178c], eax
mov eax, dword [rsp + 0x170]
mov dword [rsp + 0x1789], eax
mov eax, dword [rsp + 0x24c]
mov byte [rsp + 0x1790], al
mov eax, dword [rsp + 0x16b]
mov dword [rsp + 0x1794], eax
mov eax, dword [rsp + 0x168]
mov dword [rsp + 0x1791], eax
mov rax, qword [rsp + 0x380]
mov qword [rsp + 0x1798], rax
mov rax, qword [rsp + 0x308]
mov qword [rsp + 0x17a0], rax
mov rax, qword [rsp + 0x378]
mov qword [rsp + 0x17a8], rax
mov byte [rsp + 0x17b0], 1
mov eax, dword [rsp + 0x163]
mov dword [rsp + 0x17b4], eax
mov eax, dword [rsp + 0x160]
mov dword [rsp + 0x17b1], eax
movzx eax, byte [rsp + 0x80]
mov byte [rsp + 0x17b8], al
mov eax, dword [rsp + 0x15b]
mov dword [rsp + 0x17bc], eax
mov eax, dword [rsp + 0x158]
mov dword [rsp + 0x17b9], eax
mov eax, dword [rsp + 0x25c]
mov byte [rsp + 0x17c0], al
mov eax, dword [rsp + 0x153]
mov dword [rsp + 0x17c4], eax
mov eax, dword [rsp + 0x150]
mov dword [rsp + 0x17c1], eax
mov rax, qword [rsp + 0x3a0]
mov qword [rsp + 0x17c8], rax
mov rax, qword [rsp + 0x328]
mov qword [rsp + 0x17d0], rax
mov rax, qword [rsp + 0x398]
mov qword [rsp + 0x17d8], rax
mov byte [rsp + 0x17e0], 1
mov eax, dword [rsp + 0x14b]
mov dword [rsp + 0x17e4], eax
mov eax, dword [rsp + 0x148]
mov dword [rsp + 0x17e1], eax
movzx eax, byte [rsp + 0x68]
mov byte [rsp + 0x17e8], al
mov eax, dword [rsp + 0x143]
mov dword [rsp + 0x17ec], eax
mov eax, dword [rsp + 0x140]
mov dword [rsp + 0x17e9], eax
mov eax, dword [rsp + 0x26c]
mov byte [rsp + 0x17f0], al
mov eax, dword [rsp + 0x138]
mov ecx, dword [rsp + 0x13b]
mov dword [rsp + 0x17f4], ecx
mov dword [rsp + 0x17f1], eax
mov eax, dword [rsp + 0x130]
mov ecx, dword [rsp + 0x133]
mov dword [rsp + 0x1814], ecx
mov dword [rsp + 0x1811], eax
movzx eax, byte [rsp + 0x58]
mov byte [rsp + 0x1818], al
mov eax, dword [rsp + 0x128]
mov ecx, dword [rsp + 0x12b]
mov dword [rsp + 0x181c], ecx
mov dword [rsp + 0x1819], eax
mov byte [rsp + 0x1820], 1
mov eax, dword [rsp + 0x120]
mov ecx, dword [rsp + 0x123]
mov dword [rsp + 0x1824], ecx
mov dword [rsp + 0x1821], eax
mov eax, dword [rsp + 0x118]
mov ecx, dword [rsp + 0x11b]
mov dword [rsp + 0x1844], ecx
mov dword [rsp + 0x1841], eax
movzx eax, byte [rsp + 0x50]
mov byte [rsp + 0x1848], al
mov eax, dword [rsp + 0x110]
mov ecx, dword [rsp + 0x113]
mov dword [rsp + 0x184c], ecx
mov dword [rsp + 0x1849], eax
mov byte [rsp + 0x1850], 0
mov eax, dword [rsp + 0x108]
mov ecx, dword [rsp + 0x10b]
mov dword [rsp + 0x1854], ecx
mov dword [rsp + 0x1851], eax
mov eax, dword [rsp + 0x100]
mov ecx, dword [rsp + 0x103]
mov dword [rsp + 0x1874], ecx
mov dword [rsp + 0x1871], eax
movzx eax, byte [rsp + 0x48]
mov byte [rsp + 0x1878], al
mov eax, dword [rsp + 0xf8]
mov ecx, dword [rsp + 0xfb]
mov dword [rsp + 0x187c], ecx
mov dword [rsp + 0x1879], eax
mov byte [rsp + 0x1880], 0
mov eax, dword [rsp + 0xf0]
mov ecx, dword [rsp + 0xf3]
mov dword [rsp + 0x1884], ecx
mov dword [rsp + 0x1881], eax
mov eax, dword [rsp + 0xe8]
mov ecx, dword [rsp + 0xeb]
mov dword [rsp + 0x18a4], ecx
mov dword [rsp + 0x18a1], eax
movzx eax, byte [rsp + 0x40]
mov byte [rsp + 0x18a8], al
mov eax, dword [rsp + 0xe0]
mov ecx, dword [rsp + 0xe3]
mov dword [rsp + 0x18ac], ecx
mov dword [rsp + 0x18a9], eax
mov byte [rsp + 0x18b0], 0
mov eax, dword [rsp + 0xd8]
mov ecx, dword [rsp + 0xdb]
mov dword [rsp + 0x18b4], ecx
mov dword [rsp + 0x18b1], eax
mov eax, dword [rsp + 0xd0]
mov ecx, dword [rsp + 0xd3]
mov dword [rsp + 0x18d4], ecx
mov dword [rsp + 0x18d1], eax
movzx eax, byte [rsp + 0x38]
mov byte [rsp + 0x18d8], al
mov eax, dword [rsp + 0xc8]
mov ecx, dword [rsp + 0xcb]
mov dword [rsp + 0x18dc], ecx
mov dword [rsp + 0x18d9], eax
mov byte [rsp + 0x18e0], 0
mov eax, dword [rsp + 0xc0]
mov ecx, dword [rsp + 0xc3]
mov dword [rsp + 0x18e4], ecx
mov dword [rsp + 0x18e1], eax
mov edi, 0x28
movabs r12, 0xaaaaaaaaaaaaaaaa
jmp 0x410e51
add rdi, 0x30
cmp rdi, 0x2c8
je 0x411cbf
cmp byte [rsp + rdi + 0x1648], 0
je 0x410e40
test byte [rsp + rdi + 0x1640], 1
je 0x410e40
mov rbx, qword [rsp + rdi + 0x1628]
mov r14, qword [rsp + rdi + 0x1620]
test rbx, rbx
cmove r14, r12
je 0x410e40
mov rax, qword [rsp + 0xa8]
mov r15, qword [rax]
mov r13, qword [rax + 8]
mov rcx, r14
mov dl, 0xaa
mov r8, rbx
call fcn.00440060
mov rax, qword [rsp + 0x4bef8]
mov qword [rsp + 0x20], rax
mov rcx, r15
mov rdx, r14
mov r8, rbx
xor r9d, r9d
call qword [r13 + 0x10]
jmp 0x410e40
mov eax, dword [0x0044571c]
mov dword [rsp + 0x133], eax
mov eax, dword [0x00445719]
mov dword [rsp + 0x130], eax
mov byte [rsp + 0x58], 0
mov dword [rsp + 0x128], 0
mov dword [rsp + 0x12b], 0
mov dword [rsp + 0x120], 0
mov dword [rsp + 0x123], 0
mov dword [rsp + 0x290], 0
mov rax, qword [rbx + 0x10]
lea rcx, [rax + 0x14]
cmp rcx, qword [rbx + 8]
ja 0x418ff8
mov r12, rax
add r12, 0x14
jb 0x418230
mov rsi, qword [rbx]
movzx ecx, word [rsi + rax + 0x10]
add r12, rcx
jb 0x418230
movzx r13d, word [rsi + rax + 2]
test r13, r13
je 0x411087
lea rdi, [rax + rcx + 0x20]
mov rbp, 0xffffffffffffffd8
sub rbp, rax
sub rbp, rcx
lea r14, [rsp + 0x3e40]
lea r15, str..debug_names
jmp 0x410fa8
mov r9d, 0xc
mov r8, r15
call fcn.00421480
test al, 1
jne 0x410fed
add rdi, 0x28
add rbp, 0xffffffffffffffd8
add r12, 0x28
add r13, 0xffffffffffffffff
je 0x411087
lea r8, [rsi + r12]
mov rcx, r14
mov rdx, rbx
call fcn.00421760
movzx eax, word [rsp + 0x3e50]
cmp eax, 0x42
je 0x410f92
test eax, eax
jne 0x418eaf
mov rdx, qword [rsp + 0x3e48]
movabs rcx, 0xaaaaaaaaaaaaaaaa
test rdx, rdx
je 0x410f80
mov rcx, qword [rsp + 0x3e40]
jmp 0x410f80
test rsi, rsi
je 0x411087
neg rbp
cmp byte [rbx + 0x1c], 0
cmovne rbp, rdi
mov r15d, dword [rsi + rbp]
mov eax, dword [rsi + rdi - 4]
mov qword [rsp + 0x390], rax
add rax, r15
cmp rax, qword [rbx + 8]
ja 0x418ff8
mov r14, qword [rsp + 0x4bef8]
xor eax, eax
test al, al
jne 0x415602
add r15, qword [rbx]
mov r8, qword [rsp + 0x390]
test r8, r8
je 0x417437
mov rdx, r8
mov rax, qword [rsp + 0xa8]
mov rcx, qword [rax]
mov rax, qword [rax + 8]
xor r8d, r8d
mov r9, r14
call qword [rax]
test rax, rax
je 0x415602
mov rcx, rax
mov dl, 0xaa
mov r14, qword [rsp + 0x390]
mov r8, r14
mov r12, rax
call fcn.00440060
mov r8, r14
jmp 0x41743e
mov eax, dword [0x0044571c]
mov dword [rsp + 0x11b], eax
mov eax, dword [0x00445719]
mov dword [rsp + 0x118], eax
mov byte [rsp + 0x50], 0
mov dword [rsp + 0x110], 0
mov dword [rsp + 0x113], 0
mov dword [rsp + 0x108], 0
mov dword [rsp + 0x10b], 0
mov dword [rsp + 0x2cc], 0
mov rax, qword [rbx + 0x10]
lea rcx, [rax + 0x14]
cmp rcx, qword [rbx + 8]
ja 0x418ff8
mov r12, rax
add r12, 0x14
jb 0x418230
mov rsi, qword [rbx]
movzx ecx, word [rsi + rax + 0x10]
add r12, rcx
jb 0x418230
movzx r13d, word [rsi + rax + 2]
test r13, r13
je 0x41124b
lea rdi, [rax + rcx + 0x20]
mov rbp, 0xffffffffffffffd8
sub rbp, rax
sub rbp, rcx
lea r14, [rsp + 0x3e40]
lea r15, str..debug_frame
jmp 0x411168
mov r9d, 0xc
mov r8, r15
call fcn.00421480
test al, 1
jne 0x4111ad
add rdi, 0x28
add rbp, 0xffffffffffffffd8
add r12, 0x28
add r13, 0xffffffffffffffff
je 0x41124b
lea r8, [rsi + r12]
mov rcx, r14
mov rdx, rbx
call fcn.00421760
movzx eax, word [rsp + 0x3e50]
cmp eax, 0x42
je 0x411152
test eax, eax
jne 0x418eaf
mov rdx, qword [rsp + 0x3e48]
movabs rcx, 0xaaaaaaaaaaaaaaaa
test rdx, rdx
je 0x411140
mov rcx, qword [rsp + 0x3e40]
jmp 0x411140
test rsi, rsi
je 0x41124b
neg rbp
cmp byte [rbx + 0x1c], 0
cmovne rbp, rdi
mov r15d, dword [rsi + rbp]
mov r8d, dword [rsi + rdi - 4]
lea rax, [r8 + r15]
cmp rax, qword [rbx + 8]
ja 0x418ff8
mov r14, qword [rsp + 0x4bef8]
xor eax, eax
test al, al
jne 0x415f03
add r15, qword [rbx]
test r8, r8
mov qword [rsp + 0x370], r8
je 0x417497
mov rax, qword [rsp + 0xa8]
mov rcx, qword [rax]
mov rax, qword [rax + 8]
mov rdx, qword [rsp + 0x370]
xor r8d, r8d
mov r9, r14
call qword [rax]
test rax, rax
je 0x415f03
mov r14, rax
mov rcx, rax
mov dl, 0xaa
mov r8, qword [rsp + 0x370]
call fcn.00440060
mov rcx, r14
mov r8, qword [rsp + 0x370]
jmp 0x41749e
mov eax, dword [0x0044571c]
mov dword [rsp + 0x103], eax
mov eax, dword [0x00445719]
mov dword [rsp + 0x100], eax
mov byte [rsp + 0x48], 0
mov dword [rsp + 0xf8], 0
mov dword [rsp + 0xfb], 0
mov dword [rsp + 0xf0], 0
mov dword [rsp + 0xf3], 0
mov dword [rsp + 0x304], 0
mov rax, qword [rbx + 0x10]
lea rcx, [rax + 0x14]
cmp rcx, qword [rbx + 8]
ja 0x418ff8
mov r14, rax
add r14, 0x14
jb 0x418230
mov rsi, qword [rbx]
movzx ecx, word [rsi + rax + 0x10]
add r14, rcx
jb 0x418230
movzx edi, word [rsi + rax + 2]
test rdi, rdi
je 0x411cd3
add r14, rsi
lea r15, [rsp + 0x3e40]
movabs r13, 0xaaaaaaaaaaaaaaaa
lea r12, str..eh_frame
jmp 0x411320
mov r9d, 9
mov r8, r12
call fcn.00421480
test al, 1
jne 0x41135d
add r14, 0x28
add rdi, 0xffffffffffffffff
je 0x411cd3
mov rcx, r15
mov rdx, rbx
mov r8, r14
call fcn.00421760
movzx eax, word [rsp + 0x3e50]
cmp eax, 0x42
je 0x411312
test eax, eax
jne 0x418eaf
mov rdx, qword [rsp + 0x3e48]
mov rcx, r13
test rdx, rdx
je 0x411300
mov rcx, qword [rsp + 0x3e40]
jmp 0x411300
test rsi, rsi
je 0x411cd3
lea rcx, [rsp + 0x30c0]
mov rdx, rbx
mov r8, r14
mov r9, qword [rsp + 0xa8]
call fcn.00403a30
movzx esi, word [rsp + 0x30d0]
test si, si
je 0x417277
mov rax, qword [rsp + 0x278]
mov qword [rsp + 0xe68], rax
mov rax, qword [rsp + 0x280]
mov qword [rsp + 0xe70], rax
mov rax, qword [rsp + 0xb8]
mov qword [rsp + 0xe78], rax
mov byte [rsp + 0xe80], 1
mov eax, dword [rsp + 0x198]
mov dword [rsp + 0xe81], eax
mov eax, dword [rsp + 0x19b]
mov dword [rsp + 0xe84], eax
movzx eax, byte [rsp + 0x60]
mov byte [rsp + 0xe88], al
mov eax, dword [rsp + 0x190]
mov dword [rsp + 0xe89], eax
mov eax, dword [rsp + 0x193]
mov dword [rsp + 0xe8c], eax
mov eax, dword [rsp + 0x250]
mov byte [rsp + 0xe90], al
mov eax, dword [rsp + 0x188]
mov dword [rsp + 0xe91], eax
mov eax, dword [rsp + 0x18b]
mov dword [rsp + 0xe94], eax
mov rax, qword [rsp + 0x298]
mov qword [rsp + 0xe98], rax
mov rax, qword [rsp + 0x2a0]
mov qword [rsp + 0xea0], rax
mov rax, qword [rsp + 0x2a8]
mov qword [rsp + 0xea8], rax
mov byte [rsp + 0xeb0], 1
mov eax, dword [rsp + 0x208]
mov dword [rsp + 0xeb1], eax
mov eax, dword [rsp + 0x20b]
mov dword [rsp + 0xeb4], eax
movzx eax, byte [rsp + 0x70]
mov byte [rsp + 0xeb8], al
mov eax, dword [rsp + 0x203]
mov dword [rsp + 0xebc], eax
mov eax, dword [rsp + 0x200]
mov dword [rsp + 0xeb9], eax
mov eax, dword [rsp + 0x260]
mov byte [rsp + 0xec0], al
mov eax, dword [rsp + 0x1fb]
mov dword [rsp + 0xec4], eax
mov eax, dword [rsp + 0x1f8]
mov dword [rsp + 0xec1], eax
mov rax, qword [rsp + 0x2b0]
mov qword [rsp + 0xec8], rax
mov rax, qword [rsp + 0x2b8]
mov qword [rsp + 0xed0], rax
mov rax, qword [rsp + 0x2c0]
mov qword [rsp + 0xed8], rax
mov byte [rsp + 0xee0], 1
mov eax, dword [rsp + 0x1f3]
mov dword [rsp + 0xee4], eax
mov eax, dword [rsp + 0x1f0]
mov dword [rsp + 0xee1], eax
movzx eax, byte [rsp + 0x78]
mov byte [rsp + 0xee8], al
mov eax, dword [rsp + 0x1eb]
mov dword [rsp + 0xeec], eax
mov eax, dword [rsp + 0x1e8]
mov dword [rsp + 0xee9], eax
mov eax, dword [rsp + 0x21c]
mov byte [rsp + 0xef0], al
mov eax, dword [rsp + 0x1e3]
mov dword [rsp + 0xef4], eax
mov eax, dword [rsp + 0x1e0]
mov dword [rsp + 0xef1], eax
mov rax, qword [rsp + 0x2d0]
mov qword [rsp + 0xef8], rax
mov rax, qword [rsp + 0x2d8]
mov qword [rsp + 0xf00], rax
mov rax, qword [rsp + 0x2e0]
mov qword [rsp + 0xf08], rax
mov byte [rsp + 0xf10], 1
mov eax, dword [rsp + 0x1db]
mov dword [rsp + 0xf14], eax
mov eax, dword [rsp + 0x1d8]
mov dword [rsp + 0xf11], eax
movzx eax, byte [rsp + 0x88]
mov byte [rsp + 0xf18], al
mov eax, dword [rsp + 0x1d3]
mov dword [rsp + 0xf1c], eax
mov eax, dword [rsp + 0x1d0]
mov dword [rsp + 0xf19], eax
mov eax, dword [rsp + 0x22c]
mov byte [rsp + 0xf20], al
mov eax, dword [rsp + 0x1cb]
mov dword [rsp + 0xf24], eax
mov eax, dword [rsp + 0x1c8]
mov dword [rsp + 0xf21], eax
mov rax, qword [rsp + 0x2e8]
mov qword [rsp + 0xf28], rax
mov rax, qword [rsp + 0x2f0]
mov qword [rsp + 0xf30], rax
mov rax, qword [rsp + 0x2f8]
mov qword [rsp + 0xf38], rax
mov byte [rsp + 0xf40], 1
mov eax, dword [rsp + 0x1c3]
mov dword [rsp + 0xf44], eax
mov eax, dword [rsp + 0x1c0]
mov dword [rsp + 0xf41], eax
movzx eax, byte [rsp + 0x98]
mov byte [rsp + 0xf48], al
mov eax, dword [rsp + 0x1bb]
mov dword [rsp + 0xf4c], eax
mov eax, dword [rsp + 0x1b8]
mov dword [rsp + 0xf49], eax
mov eax, dword [rsp + 0x244]
mov byte [rsp + 0xf50], al
mov eax, dword [rsp + 0x1b3]
mov dword [rsp + 0xf54], eax
mov eax, dword [rsp + 0x1b0]
mov dword [rsp + 0xf51], eax
mov rax, qword [rsp + 0x310]
mov qword [rsp + 0xf58], rax
mov rax, qword [rsp + 0x318]
mov qword [rsp + 0xf60], rax
mov rax, qword [rsp + 0x320]
mov qword [rsp + 0xf68], rax
mov byte [rsp + 0xf70], 1
mov eax, dword [rsp + 0x1ab]
mov dword [rsp + 0xf74], eax
mov eax, dword [rsp + 0x1a8]
mov dword [rsp + 0xf71], eax
movzx eax, byte [rsp + 0xa0]
mov byte [rsp + 0xf78], al
mov eax, dword [rsp + 0x1a3]
mov dword [rsp + 0xf7c], eax
mov eax, dword [rsp + 0x1a0]
mov dword [rsp + 0xf79], eax
mov eax, dword [rsp + 0x248]
mov byte [rsp + 0xf80], al
mov eax, dword [rsp + 0x183]
mov dword [rsp + 0xf84], eax
mov eax, dword [rsp + 0x180]
mov dword [rsp + 0xf81], eax
mov rax, qword [rsp + 0x330]
mov qword [rsp + 0xf88], rax
mov rax, qword [rsp + 0x338]
mov qword [rsp + 0xf90], rax
mov rax, qword [rsp + 0x340]
mov qword [rsp + 0xf98], rax
mov byte [rsp + 0xfa0], 1
mov eax, dword [rsp + 0x17b]
mov dword [rsp + 0xfa4], eax
mov eax, dword [rsp + 0x178]
mov dword [rsp + 0xfa1], eax
movzx eax, byte [rsp + 0x90]
mov byte [rsp + 0xfa8], al
mov eax, dword [rsp + 0x173]
mov dword [rsp + 0xfac], eax
mov eax, dword [rsp + 0x170]
mov dword [rsp + 0xfa9], eax
mov eax, dword [rsp + 0x24c]
mov byte [rsp + 0xfb0], al
mov eax, dword [rsp + 0x16b]
mov dword [rsp + 0xfb4], eax
mov eax, dword [rsp + 0x168]
mov dword [rsp + 0xfb1], eax
mov rax, qword [rsp + 0x380]
mov qword [rsp + 0xfb8], rax
mov rax, qword [rsp + 0x308]
mov qword [rsp + 0xfc0], rax
mov rax, qword [rsp + 0x378]
mov qword [rsp + 0xfc8], rax
mov byte [rsp + 0xfd0], 1
mov eax, dword [rsp + 0x163]
mov dword [rsp + 0xfd4], eax
mov eax, dword [rsp + 0x160]
mov dword [rsp + 0xfd1], eax
movzx eax, byte [rsp + 0x80]
mov byte [rsp + 0xfd8], al
mov eax, dword [rsp + 0x15b]
mov dword [rsp + 0xfdc], eax
mov eax, dword [rsp + 0x158]
mov dword [rsp + 0xfd9], eax
mov eax, dword [rsp + 0x25c]
mov byte [rsp + 0xfe0], al
mov eax, dword [rsp + 0x153]
mov dword [rsp + 0xfe4], eax
mov eax, dword [rsp + 0x150]
mov dword [rsp + 0xfe1], eax
mov rax, qword [rsp + 0x3a0]
mov qword [rsp + 0xfe8], rax
mov rax, qword [rsp + 0x328]
mov qword [rsp + 0xff0], rax
mov rax, qword [rsp + 0x398]
mov qword [rsp + 0xff8], rax
mov byte [rsp + 0x1000], 1
mov eax, dword [rsp + 0x14b]
mov dword [rsp + 0x1004], eax
mov eax, dword [rsp + 0x148]
mov dword [rsp + 0x1001], eax
movzx eax, byte [rsp + 0x68]
mov byte [rsp + 0x1008], al
mov eax, dword [rsp + 0x143]
mov dword [rsp + 0x100c], eax
mov eax, dword [rsp + 0x140]
mov dword [rsp + 0x1009], eax
mov eax, dword [rsp + 0x26c]
mov byte [rsp + 0x1010], al
mov eax, dword [rsp + 0x13b]
mov dword [rsp + 0x1014], eax
mov eax, dword [rsp + 0x138]
mov dword [rsp + 0x1011], eax
mov rax, qword [rsp + 0x3a8]
mov qword [rsp + 0x1018], rax
mov rax, qword [rsp + 0x3b0]
mov qword [rsp + 0x1020], rax
mov rax, qword [rsp + 0x3b8]
mov qword [rsp + 0x1028], rax
mov byte [rsp + 0x1030], 1
mov eax, dword [rsp + 0x133]
mov dword [rsp + 0x1034], eax
mov eax, dword [rsp + 0x130]
mov dword [rsp + 0x1031], eax
movzx eax, byte [rsp + 0x58]
mov byte [rsp + 0x1038], al
mov eax, dword [rsp + 0x12b]
mov dword [rsp + 0x103c], eax
mov eax, dword [rsp + 0x128]
mov dword [rsp + 0x1039], eax
mov eax, dword [rsp + 0x290]
mov byte [rsp + 0x1040], al
mov eax, dword [rsp + 0x123]
mov dword [rsp + 0x1044], eax
mov eax, dword [rsp + 0x120]
mov dword [rsp + 0x1041], eax
mov rax, qword [rsp + 0x3d0]
mov qword [rsp + 0x1048], rax
mov rax, qword [rsp + 0x390]
mov qword [rsp + 0x1050], rax
mov rax, qword [rsp + 0x3c8]
mov qword [rsp + 0x1058], rax
mov byte [rsp + 0x1060], 1
mov eax, dword [rsp + 0x11b]
mov dword [rsp + 0x1064], eax
mov eax, dword [rsp + 0x118]
mov dword [rsp + 0x1061], eax
movzx eax, byte [rsp + 0x50]
mov byte [rsp + 0x1068], al
mov eax, dword [rsp + 0x113]
mov dword [rsp + 0x106c], eax
mov eax, dword [rsp + 0x110]
mov dword [rsp + 0x1069], eax
mov eax, dword [rsp + 0x2cc]
mov byte [rsp + 0x1070], al
mov eax, dword [rsp + 0x10b]
mov dword [rsp + 0x1074], eax
mov eax, dword [rsp + 0x108]
mov dword [rsp + 0x1071], eax
mov rax, qword [rsp + 0x3e8]
mov qword [rsp + 0x1078], rax
mov rax, qword [rsp + 0x370]
mov qword [rsp + 0x1080], rax
mov rax, qword [rsp + 0x3e0]
mov qword [rsp + 0x1088], rax
mov byte [rsp + 0x1090], 1
mov eax, dword [rsp + 0x103]
mov dword [rsp + 0x1094], eax
mov eax, dword [rsp + 0x100]
mov dword [rsp + 0x1091], eax
movzx eax, byte [rsp + 0x48]
mov byte [rsp + 0x1098], al
mov eax, dword [rsp + 0xfb]
mov dword [rsp + 0x109c], eax
mov eax, dword [rsp + 0xf8]
mov dword [rsp + 0x1099], eax
mov eax, dword [rsp + 0x304]
mov byte [rsp + 0x10a0], al
mov eax, dword [rsp + 0xf0]
mov ecx, dword [rsp + 0xf3]
mov dword [rsp + 0x10a4], ecx
mov dword [rsp + 0x10a1], eax
mov eax, dword [rsp + 0xe8]
mov ecx, dword [rsp + 0xeb]
mov dword [rsp + 0x10c4], ecx
mov dword [rsp + 0x10c1], eax
movzx eax, byte [rsp + 0x40]
mov byte [rsp + 0x10c8], al
mov eax, dword [rsp + 0xe0]
mov ecx, dword [rsp + 0xe3]
mov dword [rsp + 0x10cc], ecx
mov dword [rsp + 0x10c9], eax
mov byte [rsp + 0x10d0], 1
mov eax, dword [rsp + 0xd8]
mov ecx, dword [rsp + 0xdb]
mov dword [rsp + 0x10d4], ecx
mov dword [rsp + 0x10d1], eax
mov eax, dword [rsp + 0xd0]
mov ecx, dword [rsp + 0xd3]
mov dword [rsp + 0x10f4], ecx
mov dword [rsp + 0x10f1], eax
movzx eax, byte [rsp + 0x38]
mov byte [rsp + 0x10f8], al
mov eax, dword [rsp + 0xc8]
mov ecx, dword [rsp + 0xcb]
mov dword [rsp + 0x10fc], ecx
mov dword [rsp + 0x10f9], eax
mov byte [rsp + 0x1100], 0
mov eax, dword [rsp + 0xc0]
mov ecx, dword [rsp + 0xc3]
mov dword [rsp + 0x1104], ecx
mov dword [rsp + 0x1101], eax
mov edi, 0x28
movabs r12, 0xaaaaaaaaaaaaaaaa
jmp 0x411c57
add rdi, 0x30
cmp rdi, 0x2c8
je 0x411cbf
cmp byte [rsp + rdi + 0xe68], 0
je 0x411c4a
test byte [rsp + rdi + 0xe60], 1
je 0x411c4a
mov rbx, qword [rsp + rdi + 0xe48]
mov r14, qword [rsp + rdi + 0xe40]
test rbx, rbx
cmove r14, r12
je 0x411c4a
mov rax, qword [rsp + 0xa8]
mov r15, qword [rax]
mov r13, qword [rax + 8]
mov rcx, r14
mov dl, 0xaa
mov r8, rbx
call fcn.00440060
mov rax, qword [rsp + 0x4bef8]
mov qword [rsp + 0x20], rax
mov rcx, r15
mov rdx, r14
mov r8, rbx
xor r9d, r9d
call qword [r13 + 0x10]
jmp 0x411c4a
mov rax, qword [rsp + 0x220]
mov word [rax + 0x428], si
jmp 0x417ca4
mov eax, dword [0x0044571c]
mov dword [rsp + 0xeb], eax
mov eax, dword [0x00445719]
mov dword [rsp + 0xe8], eax
mov byte [rsp + 0x40], 0
mov dword [rsp + 0xe0], 0
mov dword [rsp + 0xe3], 0
mov dword [rsp + 0xd8], 0
mov dword [rsp + 0xdb], 0
mov dword [rsp + 0x34c], 0
mov rax, qword [rbx + 0x10]
lea r12, [rax + 0x14]
cmp r12, qword [rbx + 8]
ja 0x418ff8
cmp rax, 0xffffffffffffffec
jae 0x418230
mov rsi, qword [rbx]
movzx ecx, word [rsi + rax + 0x10]
add r12, rcx
jb 0x418230
movzx r13d, word [rsi + rax + 2]
test r13, r13
je 0x411e96
lea rdi, [rax + rcx + 0x20]
mov rbp, 0xffffffffffffffd8
sub rbp, rax
sub rbp, rcx
lea r14, [rsp + 0x3e40]
lea r15, str..eh_frame_hdr
jmp 0x411db8
mov r9d, 0xd
mov r8, r15
call fcn.00421480
test al, 1
jne 0x411dfd
add rdi, 0x28
add rbp, 0xffffffffffffffd8
add r12, 0x28
add r13, 0xffffffffffffffff
je 0x411e96
lea r8, [rsi + r12]
mov rcx, r14
mov rdx, rbx
call fcn.00421760
movzx eax, word [rsp + 0x3e50]
cmp eax, 0x42
je 0x411da2
test eax, eax
jne 0x418eaf
mov rdx, qword [rsp + 0x3e48]
movabs rcx, 0xaaaaaaaaaaaaaaaa
test rdx, rdx
je 0x411d90
mov rcx, qword [rsp + 0x3e40]
jmp 0x411d90
test rsi, rsi
je 0x411e96
neg rbp
cmp byte [rbx + 0x1c], 0
cmovne rbp, rdi
mov r15d, dword [rsi + rbp]
mov r12d, dword [rsi + rdi - 4]
lea rax, [r12 + r15]
cmp rax, qword [rbx + 8]
lea r13, [rsp + 0x3270]
ja 0x418ff8
mov r14, qword [rsp + 0x4bef8]
xor eax, eax
test al, al
mov rcx, qword [rsp + 0x370]
jne 0x4168b5
add r15, qword [rbx]
test r12, r12
je 0x41750c
mov rax, qword [rsp + 0xa8]
mov rcx, qword [rax]
mov rax, qword [rax + 8]
mov rdx, r12
xor r8d, r8d
mov r9, r14
call qword [rax]
mov rcx, qword [rsp + 0x370]
test rax, rax
je 0x4168b5
mov rbp, rax
mov rcx, rax
mov dl, 0xaa
mov r8, r12
call fcn.00440060
jmp 0x417513
mov eax, dword [0x0044571c]
mov dword [rsp + 0xd3], eax
mov eax, dword [0x00445719]
mov dword [rsp + 0xd0], eax
mov byte [rsp + 0x38], 0
mov dword [rsp + 0xc8], 0
mov dword [rsp + 0xcb], 0
mov dword [rsp + 0xc0], 0
mov dword [rsp + 0xc3], 0
xor eax, eax
xor r8d, r8d
lea r13, [rsp + 0x3270]
mov ecx, dword [rsp + 0x198]
mov dword [rsp + 0xb21], ecx
mov ecx, dword [rsp + 0x19b]
mov dword [rsp + 0xb24], ecx
mov ecx, dword [rsp + 0x190]
mov dword [rsp + 0xb29], ecx
mov ecx, dword [rsp + 0x193]
mov dword [rsp + 0xb2c], ecx
mov ecx, dword [rsp + 0x188]
mov dword [rsp + 0xb31], ecx
mov ecx, dword [rsp + 0x18b]
mov dword [rsp + 0xb34], ecx
mov ecx, dword [rsp + 0x208]
mov dword [rsp + 0xb51], ecx
mov ecx, dword [rsp + 0x20b]
mov dword [rsp + 0xb54], ecx
mov ecx, dword [rsp + 0x200]
mov dword [rsp + 0xb59], ecx
mov ecx, dword [rsp + 0x203]
mov dword [rsp + 0xb5c], ecx
mov ecx, dword [rsp + 0x1f8]
mov dword [rsp + 0xb61], ecx
mov ecx, dword [rsp + 0x1fb]
mov dword [rsp + 0xb64], ecx
mov ecx, dword [rsp + 0x1f0]
mov dword [rsp + 0xb81], ecx
mov ecx, dword [rsp + 0x1f3]
mov dword [rsp + 0xb84], ecx
mov ecx, dword [rsp + 0x1e8]
mov dword [rsp + 0xb89], ecx
mov ecx, dword [rsp + 0x1eb]
mov dword [rsp + 0xb8c], ecx
mov ecx, dword [rsp + 0x1e3]
mov dword [rsp + 0xb94], ecx
mov ecx, dword [rsp + 0x1e0]
mov dword [rsp + 0xb91], ecx
mov ecx, dword [rsp + 0x1db]
mov dword [rsp + 0xbb4], ecx
mov ecx, dword [rsp + 0x1d8]
mov dword [rsp + 0xbb1], ecx
mov ecx, dword [rsp + 0x1d3]
mov dword [rsp + 0xbbc], ecx
mov ecx, dword [rsp + 0x1d0]
mov dword [rsp + 0xbb9], ecx
mov ecx, dword [rsp + 0x1cb]
mov dword [rsp + 0xbc4], ecx
mov ecx, dword [rsp + 0x1c8]
mov dword [rsp + 0xbc1], ecx
mov ecx, dword [rsp + 0x1c0]
mov dword [rsp + 0xbe1], ecx
mov ecx, dword [rsp + 0x1c3]
mov dword [rsp + 0xbe4], ecx
mov ecx, dword [rsp + 0x1bb]
mov dword [rsp + 0xbec], ecx
mov ecx, dword [rsp + 0x1b8]
mov dword [rsp + 0xbe9], ecx
mov ecx, dword [rsp + 0x1b3]
mov dword [rsp + 0xbf4], ecx
mov ecx, dword [rsp + 0x1b0]
mov dword [rsp + 0xbf1], ecx
mov ecx, dword [rsp + 0x1ab]
mov dword [rsp + 0xc14], ecx
mov ecx, dword [rsp + 0x1a8]
mov dword [rsp + 0xc11], ecx
mov ecx, dword [rsp + 0x1a3]
mov dword [rsp + 0xc1c], ecx
mov ecx, dword [rsp + 0x1a0]
mov dword [rsp + 0xc19], ecx
mov ecx, dword [rsp + 0x183]
mov dword [rsp + 0xc24], ecx
mov ecx, dword [rsp + 0x180]
mov dword [rsp + 0xc21], ecx
mov ecx, dword [rsp + 0x17b]
mov dword [rsp + 0xc44], ecx
mov ecx, dword [rsp + 0x178]
mov dword [rsp + 0xc41], ecx
mov ecx, dword [rsp + 0x173]
mov dword [rsp + 0xc4c], ecx
mov ecx, dword [rsp + 0x170]
mov dword [rsp + 0xc49], ecx
mov ecx, dword [rsp + 0x16b]
mov dword [rsp + 0xc54], ecx
mov ecx, dword [rsp + 0x168]
mov dword [rsp + 0xc51], ecx
mov ecx, dword [rsp + 0x163]
mov dword [rsp + 0xc74], ecx
mov ecx, dword [rsp + 0x160]
mov dword [rsp + 0xc71], ecx
mov ecx, dword [rsp + 0x15b]
mov dword [rsp + 0xc7c], ecx
mov ecx, dword [rsp + 0x158]
mov dword [rsp + 0xc79], ecx
mov ecx, dword [rsp + 0x153]
mov dword [rsp + 0xc84], ecx
mov ecx, dword [rsp + 0x150]
mov dword [rsp + 0xc81], ecx
mov ecx, dword [rsp + 0x14b]
mov dword [rsp + 0xca4], ecx
mov ecx, dword [rsp + 0x148]
mov dword [rsp + 0xca1], ecx
mov ecx, dword [rsp + 0x143]
mov dword [rsp + 0xcac], ecx
mov ecx, dword [rsp + 0x140]
mov dword [rsp + 0xca9], ecx
mov ecx, dword [rsp + 0x13b]
mov dword [rsp + 0xcb4], ecx
mov ecx, dword [rsp + 0x138]
mov dword [rsp + 0xcb1], ecx
mov ecx, dword [rsp + 0x133]
mov dword [rsp + 0xcd4], ecx
mov ecx, dword [rsp + 0x130]
mov dword [rsp + 0xcd1], ecx
mov ecx, dword [rsp + 0x12b]
mov dword [rsp + 0xcdc], ecx
mov ecx, dword [rsp + 0x128]
mov dword [rsp + 0xcd9], ecx
mov ecx, dword [rsp + 0x123]
mov dword [rsp + 0xce4], ecx
mov ecx, dword [rsp + 0x120]
mov dword [rsp + 0xce1], ecx
mov ecx, dword [rsp + 0x11b]
mov dword [rsp + 0xd04], ecx
mov ecx, dword [rsp + 0x118]
mov dword [rsp + 0xd01], ecx
mov ecx, dword [rsp + 0x113]
mov dword [rsp + 0xd0c], ecx
mov ecx, dword [rsp + 0x110]
mov dword [rsp + 0xd09], ecx
mov ecx, dword [rsp + 0x10b]
mov dword [rsp + 0xd14], ecx
mov ecx, dword [rsp + 0x108]
mov dword [rsp + 0xd11], ecx
mov ecx, dword [rsp + 0x103]
mov dword [rsp + 0xd34], ecx
mov ecx, dword [rsp + 0x100]
mov dword [rsp + 0xd31], ecx
mov ecx, dword [rsp + 0xfb]
mov dword [rsp + 0xd3c], ecx
mov ecx, dword [rsp + 0xf8]
mov dword [rsp + 0xd39], ecx
mov ecx, dword [rsp + 0xf3]
mov dword [rsp + 0xd44], ecx
mov ecx, dword [rsp + 0xf0]
mov dword [rsp + 0xd41], ecx
mov ecx, dword [rsp + 0xeb]
mov dword [rsp + 0xd64], ecx
mov ecx, dword [rsp + 0xe8]
mov dword [rsp + 0xd61], ecx
mov ecx, dword [rsp + 0xe3]
mov dword [rsp + 0xd6c], ecx
mov ecx, dword [rsp + 0xe0]
mov dword [rsp + 0xd69], ecx
mov ecx, dword [rsp + 0xdb]
mov dword [rsp + 0xd74], ecx
mov ecx, dword [rsp + 0xd8]
mov dword [rsp + 0xd71], ecx
mov ecx, dword [rsp + 0xd3]
mov dword [rsp + 0xd94], ecx
mov ecx, dword [rsp + 0xd0]
mov dword [rsp + 0xd91], ecx
mov ecx, dword [rsp + 0xcb]
mov dword [rsp + 0xd9c], ecx
mov ecx, dword [rsp + 0xc8]
mov dword [rsp + 0xd99], ecx
mov ecx, dword [rsp + 0xc3]
mov dword [rsp + 0xda4], ecx
mov ecx, dword [rsp + 0xc0]
mov dword [rsp + 0xda1], ecx
movzx ecx, byte [rsp + 0x60]
mov rdx, qword [rsp + 0x278]
mov qword [rsp + 0xb08], rdx
mov rdx, qword [rsp + 0x280]
mov qword [rsp + 0xb10], rdx
mov rdx, qword [rsp + 0xb8]
mov qword [rsp + 0xb18], rdx
mov byte [rsp + 0xb20], 1
mov byte [rsp + 0xb28], cl
movzx ecx, byte [rsp + 0x70]
mov edx, dword [rsp + 0x250]
mov byte [rsp + 0xb30], dl
mov rdx, qword [rsp + 0x298]
mov qword [rsp + 0xb38], rdx
mov rdx, qword [rsp + 0x2a0]
mov qword [rsp + 0xb40], rdx
mov rdx, qword [rsp + 0x2a8]
mov qword [rsp + 0xb48], rdx
mov byte [rsp + 0xb50], 1
mov byte [rsp + 0xb58], cl
movzx ecx, byte [rsp + 0x78]
mov edx, dword [rsp + 0x260]
mov byte [rsp + 0xb60], dl
mov rdx, qword [rsp + 0x2b0]
mov qword [rsp + 0xb68], rdx
mov rdx, qword [rsp + 0x2b8]
mov qword [rsp + 0xb70], rdx
mov rdx, qword [rsp + 0x2c0]
mov qword [rsp + 0xb78], rdx
mov byte [rsp + 0xb80], 1
mov byte [rsp + 0xb88], cl
movzx ecx, byte [rsp + 0x88]
mov edx, dword [rsp + 0x21c]
mov byte [rsp + 0xb90], dl
mov rdx, qword [rsp + 0x2d0]
mov qword [rsp + 0xb98], rdx
mov rdx, qword [rsp + 0x2d8]
mov qword [rsp + 0xba0], rdx
mov rdx, qword [rsp + 0x2e0]
mov qword [rsp + 0xba8], rdx
mov byte [rsp + 0xbb0], 1
mov byte [rsp + 0xbb8], cl
movzx ecx, byte [rsp + 0x98]
mov edx, dword [rsp + 0x22c]
mov byte [rsp + 0xbc0], dl
mov rdx, qword [rsp + 0x2e8]
mov qword [rsp + 0xbc8], rdx
mov rdx, qword [rsp + 0x2f0]
mov qword [rsp + 0xbd0], rdx
mov rdx, qword [rsp + 0x2f8]
mov qword [rsp + 0xbd8], rdx
mov byte [rsp + 0xbe0], 1
mov byte [rsp + 0xbe8], cl
movzx ecx, byte [rsp + 0xa0]
mov edx, dword [rsp + 0x244]
mov byte [rsp + 0xbf0], dl
mov rdx, qword [rsp + 0x310]
mov qword [rsp + 0xbf8], rdx
mov rdx, qword [rsp + 0x318]
mov qword [rsp + 0xc00], rdx
mov rdx, qword [rsp + 0x320]
mov qword [rsp + 0xc08], rdx
mov byte [rsp + 0xc10], 1
mov byte [rsp + 0xc18], cl
movzx ecx, byte [rsp + 0x90]
mov edx, dword [rsp + 0x248]
mov byte [rsp + 0xc20], dl
mov rdx, qword [rsp + 0x330]
mov qword [rsp + 0xc28], rdx
mov rdx, qword [rsp + 0x338]
mov qword [rsp + 0xc30], rdx
mov rdx, qword [rsp + 0x340]
mov qword [rsp + 0xc38], rdx
mov byte [rsp + 0xc40], 1
mov byte [rsp + 0xc48], cl
movzx ecx, byte [rsp + 0x80]
mov edx, dword [rsp + 0x24c]
mov byte [rsp + 0xc50], dl
mov rdx, qword [rsp + 0x380]
mov qword [rsp + 0xc58], rdx
mov rdx, qword [rsp + 0x308]
mov qword [rsp + 0xc60], rdx
mov rdx, qword [rsp + 0x378]
mov qword [rsp + 0xc68], rdx
mov byte [rsp + 0xc70], 1
mov byte [rsp + 0xc78], cl
movzx ecx, byte [rsp + 0x68]
mov edx, dword [rsp + 0x25c]
mov byte [rsp + 0xc80], dl
mov rdx, qword [rsp + 0x3a0]
mov qword [rsp + 0xc88], rdx
mov rdx, qword [rsp + 0x328]
mov qword [rsp + 0xc90], rdx
mov rdx, qword [rsp + 0x398]
mov qword [rsp + 0xc98], rdx
mov byte [rsp + 0xca0], 1
mov byte [rsp + 0xca8], cl
movzx ecx, byte [rsp + 0x58]
mov edx, dword [rsp + 0x26c]
mov byte [rsp + 0xcb0], dl
mov rdx, qword [rsp + 0x3a8]
mov qword [rsp + 0xcb8], rdx
mov rdx, qword [rsp + 0x3b0]
mov qword [rsp + 0xcc0], rdx
mov rdx, qword [rsp + 0x3b8]
mov qword [rsp + 0xcc8], rdx
mov byte [rsp + 0xcd0], 1
mov byte [rsp + 0xcd8], cl
movzx ecx, byte [rsp + 0x50]
mov edx, dword [rsp + 0x290]
mov byte [rsp + 0xce0], dl
mov rdx, qword [rsp + 0x3d0]
mov qword [rsp + 0xce8], rdx
mov rdx, qword [rsp + 0x390]
mov qword [rsp + 0xcf0], rdx
mov rdx, qword [rsp + 0x3c8]
mov qword [rsp + 0xcf8], rdx
mov byte [rsp + 0xd00], 1
mov byte [rsp + 0xd08], cl
movzx ecx, byte [rsp + 0x48]
mov edx, dword [rsp + 0x2cc]
mov byte [rsp + 0xd10], dl
mov rdx, qword [rsp + 0x3e8]
mov qword [rsp + 0xd18], rdx
mov rdx, qword [rsp + 0x370]
mov qword [rsp + 0xd20], rdx
mov rdx, qword [rsp + 0x3e0]
mov qword [rsp + 0xd28], rdx
mov byte [rsp + 0xd30], 1
mov byte [rsp + 0xd38], cl
movzx ecx, byte [rsp + 0x40]
mov edx, dword [rsp + 0x304]
mov byte [rsp + 0xd40], dl
mov rdx, qword [rsp + 0x3f8]
mov qword [rsp + 0xd48], rdx
mov rdx, qword [rsp + 0x408]
mov qword [rsp + 0xd50], rdx
mov rdx, qword [rsp + 0x400]
mov qword [rsp + 0xd58], rdx
mov byte [rsp + 0xd60], 1
mov byte [rsp + 0xd68], cl
mov byte [rsp + 0x288], 1
mov byte [rsp + 0x296], 0
mov ecx, dword [rsp + 0x34c]
mov byte [rsp + 0xd70], cl
mov qword [rsp + 0xd78], rbp
mov qword [rsp + 0xd80], r12
mov qword [rsp + 0xd88], r9
mov byte [rsp + 0xd90], 1
mov byte [rsp + 0xd98], al
mov byte [rsp + 0xda0], r8b
movups xmm0, xmmword [0x00445730]
movups xmmword [rsp + 0xda8], xmm0
mov qword [rsp + 0xdb8], 0
movups xmm0, xmmword [0x00445748]
movups xmmword [rsp + 0xdc0], xmm0
mov qword [rsp + 0xdd0], 0
movups xmm0, xmmword [0x00445760]
movups xmmword [rsp + 0xdd8], xmm0
mov qword [rsp + 0xde8], 0
xorps xmm0, xmm0
movups xmmword [rsp + 0xdf0], xmm0
movups xmmword [rsp + 0xe00], xmm0
movups xmmword [rsp + 0xe10], xmm0
movups xmmword [rsp + 0xe20], xmm0
movups xmmword [rsp + 0xe30], xmm0
mov qword [rsp + 0xe40], 0
movups xmm0, xmmword [0x00445778]
movups xmmword [rsp + 0xe48], xmm0
mov qword [rsp + 0xe58], 0
movzx eax, byte [rsp + 0x288]
mov byte [rsp + 0xe60], al
movzx ecx, byte [rsp + 0x296]
mov byte [rsp + 0xe61], cl
cmp byte [rsp + 0xb30], 0
je 0x4128db
mov rcx, qword [rsp + 0xb10]
mov rdx, qword [rsp + 0xb08]
jmp 0x4128df
xor ecx, ecx
xor edx, edx
mov qword [rsp + 0x818], r9
mov dword [rsp + 0xb4], r8d
mov qword [rsp + 0x820], rbp
mov qword [rsp + 0x828], r12
test rdx, rdx
je 0x41949d
mov qword [rsp + 0x350], rdx
mov qword [rsp + 0x358], rcx
and al, 1
mov byte [rsp + 0x368], al
test rcx, rcx
je 0x41374f
xor eax, eax
mov qword [rsp + 0x388], rax
lea rcx, [rsp + 0xad0]
lea r14, [rsp + 0xae8]
lea r15, [rsp + 0xaf8]
movaps xmm6, xmmword [0x004441b0]
pxor xmm7, xmm7
mov rax, qword [rsp + 0x388]
mov qword [rsp + 0x360], rax
lea rdx, [rsp + 0x350]
call fcn.00403b10
movzx ebp, word [rsp + 0xae0]
test bp, bp
jne 0x41846c
mov rax, qword [rsp + 0xad0]
test rax, rax
je 0x41374f
movzx r13d, byte [rsp + 0xad9]
and r13d, 0xf
add r13, rax
jb 0x418230
mov rcx, qword [rsp + 0x358]
mov rax, qword [rsp + 0x360]
mov rdx, rcx
sub rdx, rax
jb 0x418230
cmp rdx, 2
jb 0x418468
lea r8, [rax + 2]
cmp r8, rcx
ja 0x418ff8
cmp rax, 0xfffffffffffffffd
ja 0x418230
mov rdx, qword [rsp + 0x350]
movzx r9d, word [rdx + rax]
mov esi, r9d
rol si, 8
test byte [rsp + 0x368], 1
cmovne esi, r9d
movzx r12d, byte [rsp + 0xad8]
mov qword [rsp + 0x360], r8
lea r9d, [rsi - 6]
cmp r9w, 0xfffc
jb 0x4182e3
cmp si, 4
jbe 0x412aa6
cmp rcx, r8
je 0x418468
jbe 0x418ff8
lea r8, [rax + 3]
movzx r9d, byte [rdx + rax + 2]
mov qword [rsp + 0x360], r8
cmp r9b, 1
jne 0x4182e3
cmp r8, rcx
jae 0x418468
movzx edi, byte [rdx + rax + 3]
add rax, 4
mov qword [rsp + 0x360], rax
mov r8d, r12d
and r8b, 1
mov rcx, r14
lea rdx, [rsp + 0x350]
call fcn.00407840
movzx ebp, word [rsp + 0xaf0]
test bp, bp
jne 0x41846c
mov r9, qword [rsp + 0xae8]
jmp 0x412b09
mov r8d, r12d
and r8b, 1
lea rcx, [rsp + 0x28a8]
lea rdx, [rsp + 0x350]
call fcn.00407840
movzx ebp, word [rsp + 0x28b0]
test bp, bp
jne 0x41846c
mov rax, qword [rsp + 0x360]
cmp rax, qword [rsp + 0x358]
jae 0x418468
mov rcx, qword [rsp + 0x350]
mov r9, qword [rsp + 0x28a8]
movzx edi, byte [rcx + rax]
add rax, 1
mov qword [rsp + 0x360], rax
cmp dil, 8
jne 0x4182e3
mov rcx, r15
lea rdx, [rsp + 0xb08]
mov r8, qword [rsp + 0xa8]
call fcn.00403e50
movzx ebp, word [rsp + 0xb00]
test bp, bp
jne 0x41846c
mov r11, qword [rsp + 0xaf8]
mov rax, qword [r11 + 0x10]
test rax, rax
je 0x412ba4
mov rcx, qword [r11 + 8]
add rcx, 0x20
xor r14d, r14d
xor edx, edx
jmp 0x412b6a
add rcx, 0x28
add rax, 0xffffffffffffffff
je 0x412ba9
mov r8, qword [rcx - 0x20]
mov r9, qword [rcx - 8]
cmp r14, r9
cmovbe r14, r9
cmp r8, 0x80
jae 0x412b60
cmp qword [rcx - 0x18], 0xfdb1
jne 0x412b60
movzx r10d, byte [rcx]
and r10b, 1
jne 0x412b60
test r9, r9
jne 0x412b60
and r8b, 0x7f
mov edx, r8d
jmp 0x412b60
xor edx, edx
xor r14d, r14d
and dl, 0x7f
mov byte [rsp + 0x297], dl
mov rax, r14
mov ecx, 3
mul rcx
jo 0x418230
mov rdx, qword [rsp + 0xa8]
mov rcx, qword [rdx]
mov r10, qword [rdx + 8]
mov r9, qword [rsp + 0x4bef8]
mov rdx, rax
shr rdx, 0x3b
setne dl
setne byte [rsp + 0x4f8]
test dl, dl
jne 0x417503
mov qword [rsp + 0x3d8], r11
mov rdi, rax
shl rdi, 5
mov qword [rsp + 0x210], rax
mov qword [rsp + 0x270], r9
je 0x412c4b
mov rdx, rdi
mov r8b, 3
call qword [r10]
test rax, rax
je 0x417503
mov r15, rax
mov rcx, rax
mov dl, 0xaa
mov r8, rdi
call fcn.00440060
test r15b, 7
mov rax, qword [rsp + 0x210]
je 0x412c52
jmp 0x419503
mov r15, 0xfffffffffffffff8
cmp r14, rax
ja 0x418ff8
lea rdx, [r14 + r14]
cmp rdx, rax
ja 0x418ff8
lea rcx, [r14 + r14*2]
cmp rcx, rax
ja 0x418ff8
mov qword [rsp + 0x230], rdi
mov rax, qword [rsp + 0x388]
mov qword [rsp + 0x4f0], r13
add rax, r13
mov qword [rsp + 0x3f0], rax
jb 0x418230
mov rax, r14
shl rax, 5
add rax, r15
mov qword [rsp + 0x810], rax
shl rdx, 5
add rdx, r15
mov qword [rsp + 0x4e8], rdx
mov word [rsp + 0x3ea0], si
and r12b, 1
mov byte [rsp + 0x3c0], r12b
mov byte [rsp + 0x3ea2], r12b
movaps xmmword [rsp + 0x3e40], xmm6
movaps xmmword [rsp + 0x3e50], xmm6
lea rax, [rsp + 0x3e60]
movdqu xmmword [rax + 0x30], xmm7
movdqu xmmword [rax + 0x20], xmm7
movdqu xmmword [rax + 0x10], xmm7
movdqu xmmword [rax], xmm7
mov qword [rsp + 0x238], r15
mov rax, qword [rsp + 0x358]
mov rcx, qword [rsp + 0x360]
mov rdx, rax
mov r10, rax
sub rdx, rcx
jbe 0x412d79
movzx r8d, byte [rsp + 0x297]
and r8b, 0x7f
mov r9, qword [rsp + 0x350]
add r9, rcx
xor r11d, r11d
jmp 0x412d59
add r11, 1
cmp rdx, r11
je 0x412d76
mov r10, rcx
add r10, r11
jb 0x418230
movzx esi, byte [r9 + r11]
cmp sil, r8b
je 0x412d50
test sil, sil
je 0x412d50
jmp 0x412d79
mov r10, rax
mov qword [rsp + 0x360], r10
cmp r10, qword [rsp + 0x3f0]
jae 0x413690
movzx eax, byte [rsp + 0x3c0]
mov byte [rsp + 0x28], al
mov rax, qword [rsp + 0x3d8]
mov qword [rsp + 0x20], rax
lea rcx, [rsp + 0x4b0]
lea rdx, [rsp + 0x350]
mov r8, r15
mov r9, r14
call fcn.00405ef0
movzx ebp, word [rsp + 0x4d8]
test bp, bp
jne 0x416842
cmp byte [rsp + 0x4d0], 0
je 0x412d0e
mov rcx, qword [rsp + 0x4b0]
cmp rcx, 0x2e
ja 0x412d0e
mov r12, qword [rsp + 0x4b8]
mov rdi, qword [rsp + 0x4c0]
mov rax, qword [rsp + 0x4c8]
movabs rdx, 0x400020100008
bt rdx, rcx
jae 0x4130f4
mov qword [rsp + 0x410], rcx
mov qword [rsp + 0x418], r12
mov qword [rsp + 0x420], rdi
mov qword [rsp + 0x428], rax
test rdi, rdi
je 0x4130ea
mov rax, r12
xor esi, esi
mov rcx, rdi
mov r8, qword [rsp + 0x210]
mov rdx, rax
mov r9, rcx
nop
cmp qword [rdx], 3
je 0x413192
add rdx, 0x20
add r9, 0xffffffffffffffff
jne 0x412e60
mov rdx, rax
mov r9, rcx
nop word [rax + rax]
cmp qword [rdx], 0x31
je 0x412eab
add rdx, 0x20
add r9, 0xffffffffffffffff
jne 0x412e80
mov rdx, rax
mov r9, rcx
cmp qword [rdx], 0x47
je 0x412eea
add rdx, 0x20
add r9, 0xffffffffffffffff
jne 0x412e96
jmp 0x4130e0
mov r13, qword [rsp + 0x360]
cmp qword [rax], 0x31
je 0x412ec8
add rax, 0x20
add rcx, 0xffffffffffffffff
jne 0x412eb3
jmp 0x4143b9
mov rcx, qword [rax + 8]
movzx eax, byte [rax + 0x18]
and al, 0x1f
cmp al, 9
jne 0x412f0b
mov word [rsp + 0x500], 0
lea rdx, [rsp + 0x4f8]
jmp 0x412f1a
mov r13, qword [rsp + 0x360]
cmp qword [rax], 0x47
je 0x412fc6
add rax, 0x20
add rcx, 0xffffffffffffffff
jne 0x412ef2
jmp 0x4143b9
lea rdx, [0x004462f8]
cmp al, 0x11
jae 0x418eaf
movzx ebp, word [rdx + 8]
test bp, bp
jne 0x4143bd
cmp rcx, qword [rsp + 0x4f0]
ja 0x417e2e
add rcx, qword [rsp + 0x388]
jb 0x418230
cmp qword [rsp + 0x358], rcx
jb 0x417db6
mov qword [rsp + 0x360], rcx
movzx eax, byte [rsp + 0x3c0]
mov byte [rsp + 0x28], al
mov rax, qword [rsp + 0x3d8]
mov qword [rsp + 0x20], rax
lea rcx, [rsp + 0x508]
lea rdx, [rsp + 0x350]
mov r8, qword [rsp + 0x4e8]
mov r9, r14
call fcn.00405ef0
movzx ebp, word [rsp + 0x530]
test bp, bp
jne 0x417de6
cmp byte [rsp + 0x528], 0
mov r8, qword [rsp + 0x210]
je 0x417e26
lea rax, [rsp + 0x508]
jmp 0x41309e
mov rcx, qword [rax + 8]
movzx eax, byte [rax + 0x18]
and al, 0x1f
cmp al, 9
jne 0x412fe8
mov word [rsp + 0x500], 0
lea rdx, [rsp + 0x4f8]
jmp 0x412ff7
lea rdx, [0x004462f8]
cmp al, 0x11
jae 0x418eaf
movzx ebp, word [rdx + 8]
test bp, bp
jne 0x4143bd
cmp rcx, qword [rsp + 0x4f0]
ja 0x418208
add rcx, qword [rsp + 0x388]
jb 0x418230
cmp qword [rsp + 0x358], rcx
jb 0x41818e
mov qword [rsp + 0x360], rcx
movzx eax, byte [rsp + 0x3c0]
mov byte [rsp + 0x28], al
mov rax, qword [rsp + 0x3d8]
mov qword [rsp + 0x20], rax
lea rcx, [rsp + 0x3be60]
lea rdx, [rsp + 0x350]
mov r8, qword [rsp + 0x4e8]
mov r9, r14
call fcn.00405ef0
movzx ebp, word [rsp + 0x3be88]
test bp, bp
jne 0x4181c0
cmp byte [rsp + 0x3be80], 0
mov r8, qword [rsp + 0x210]
je 0x418200
lea rax, [rsp + 0x3be60]
movups xmm0, xmmword [rax]
movups xmm1, xmmword [rax + 0x10]
movaps xmmword [rsp + 0x420], xmm1
movaps xmmword [rsp + 0x410], xmm0
mov qword [rsp + 0x360], r13
add rsi, 1
cmp rsi, 3
je 0x4130e0
mov rax, qword [rsp + 0x418]
mov rcx, qword [rsp + 0x420]
test rcx, rcx
jne 0x412e59
xor esi, esi
xor r13d, r13d
jmp 0x413215
xor esi, esi
xor r13d, r13d
jmp 0x41331a
cmp rcx, 0x11
jne 0x412d0e
mov qword [rsp + 0x3e40], 0x11
mov qword [rsp + 0x3e48], r12
mov qword [rsp + 0x3e50], rdi
mov qword [rsp + 0x3e58], rax
cmp rdi, r14
ja 0x418ff8
mov rcx, qword [rsp + 0x810]
mov qword [rsp + 0x3e48], rcx
mov qword [rsp + 0x3e50], rdi
mov r8, rdi
shl r8, 5
lea rax, [r12 + r8]
cmp rcx, rax
jae 0x413160
lea rax, [rcx + r8]
cmp r12, rax
jb 0x419394
mov rdx, r12
call fcn.0043fd00
mov rcx, rdi
mov rax, r12
test rdi, rdi
je 0x41327d
cmp qword [rax], 0x72
je 0x413294
add rax, 0x20
add rcx, 0xffffffffffffffff
jne 0x413177
xor eax, eax
jmp 0x41357b
cmp byte [rsp + 0xb90], 0
je 0x4131ae
mov rax, qword [rsp + 0xb68]
mov rcx, qword [rsp + 0xb70]
jmp 0x4131b2
xor eax, eax
xor ecx, ecx
lea rdx, [rsp + 0x3e40]
mov qword [rsp + 0x30], rdx
mov qword [rsp + 0x28], rcx
mov qword [rsp + 0x20], rax
mov r9d, 3
lea rcx, [rsp + 0x30d8]
lea rdx, [rsp + 0x410]
lea r8, [rsp + 0xb08]
call fcn.004079c0
movzx ebp, word [rsp + 0x30e8]
test bp, bp
jne 0x4176ea
mov rsi, qword [rsp + 0x30d8]
mov r13, qword [rsp + 0x30e0]
mov r8, qword [rsp + 0x210]
mov rcx, rdi
mov rax, r12
nop dword [rax + rax]
cmp qword [rax], 0x11
je 0x413235
add rax, 0x20
add rcx, 0xffffffffffffffff
jne 0x413220
jmp 0x41331a
mov r9, qword [rax + 8]
movzx ecx, byte [rax + 0x18]
test cl, 0x1f
je 0x4132b8
mov eax, ecx
and eax, 0x1f
cmp eax, 1
jne 0x4132d4
lea rbp, [rsp + 0x4f8]
mov rcx, rbp
lea rdx, [rsp + 0xb08]
lea r8, [rsp + 0x3e40]
call fcn.00406fc0
mov r8, qword [rsp + 0x210]
mov rax, rbp
jmp 0x4132e7
lea rax, [rsp + 0x3e60]
movdqu xmmword [rax + 0x28], xmm7
movdqu xmmword [rax + 0x18], xmm7
jmp 0x413680
movzx ecx, byte [rax + 0x18]
cmp ecx, 3
je 0x4132af
cmp ecx, 5
je 0x41356e
cmp ecx, 8
jne 0x41835c
mov rax, qword [rax + 8]
jmp 0x41357b
mov word [rsp + 0x28c0], 0
mov qword [rsp + 0x28b8], r9
lea rax, [rsp + 0x28b8]
jmp 0x4132e7
and cl, 0x1f
lea rax, [0x004462f8]
cmp cl, 0x11
jae 0x418eaf
movzx ebp, word [rax + 8]
cmp ebp, 0x13
je 0x41331a
test ebp, ebp
jne 0x417d11
mov rax, qword [rax]
mov rcx, rdi
mov rdx, r12
cmp qword [rdx], 0x12
je 0x4134f0
add rdx, 0x20
add rcx, 0xffffffffffffffff
jne 0x413301
xor r15d, r15d
jmp 0x413326
xor r15d, r15d
test rdi, rdi
je 0x413486
add r12, 8
nop word [rax + rax]
cmp qword [r12 - 8], 0x55
je 0x413347
add r12, 0x20
add rdi, 0xffffffffffffffff
jne 0x413330
jmp 0x413486
lea rcx, [rsp + 0x2be50]
mov rdx, r12
lea r8, [rsp + 0xb08]
lea r9, [rsp + 0x3e40]
call fcn.00406cd0
movzx ebp, word [rsp + 0x2be90]
cmp ebp, 0x13
je 0x413486
test ebp, ebp
jne 0x417cc8
movups xmm0, xmmword [rsp + 0x2be50]
movups xmm1, xmmword [rsp + 0x2be60]
movups xmm2, xmmword [rsp + 0x2be70]
movups xmm3, xmmword [rsp + 0x2be80]
movaps xmmword [rsp + 0x1be70], xmm3
movaps xmmword [rsp + 0x1be60], xmm2
movaps xmmword [rsp + 0x1be50], xmm1
movaps xmmword [rsp + 0x1be40], xmm0
lea rcx, [rsp + 0x460]
lea rdx, [rsp + 0x1be40]
call fcn.004071a0
movzx ebp, word [rsp + 0x478]
test bp, bp
jne 0x4173a1
cmp byte [rsp + 0x470], 0
je 0x413486
mov rdi, r13
movaps xmm0, xmmword [rsp + 0x460]
movaps xmmword [rsp + 0x480], xmm0
mov byte [rsp + 0x490], 1
mov qword [rsp + 0x498], rsi
mov qword [rsp + 0x4a0], rdi
lea rcx, [rsp + 0xdd8]
mov rdx, qword [rsp + 0xa8]
lea r8, [rsp + 0x480]
call fcn.00407c50
test ax, ax
jne 0x4173e5
lea rcx, [rsp + 0x460]
lea rdx, [rsp + 0x1be40]
call fcn.004071a0
movzx ebp, word [rsp + 0x478]
test bp, bp
jne 0x4173a1
cmp byte [rsp + 0x470], 0
mov r15, qword [rsp + 0x238]
jne 0x4133f7
jmp 0x412d0e
test r15b, r15b
mov r15, qword [rsp + 0x238]
jne 0x412d0e
test rsi, rsi
je 0x412d0e
movdqa xmmword [rsp + 0x430], xmm7
mov qword [rsp + 0x440], 0
mov qword [rsp + 0x448], rsi
mov qword [rsp + 0x450], r13
lea rcx, [rsp + 0xdd8]
mov rdx, qword [rsp + 0xa8]
lea r8, [rsp + 0x430]
call fcn.00407c50
test ax, ax
je 0x412d0e
jmp 0x417707
mov rcx, qword [rdx + 8]
movzx r8d, byte [rdx + 0x18]
mov edx, r8d
and dl, 0x1f
cmp dl, 3
je 0x41350f
and r8d, 0x1f
je 0x413518
jmp 0x41832b
add rcx, rax
jb 0x418230
mov qword [rsp + 0x548], rax
mov qword [rsp + 0x550], rcx
mov byte [rsp + 0x558], 1
mov qword [rsp + 0x560], rsi
mov qword [rsp + 0x568], r13
lea rcx, [rsp + 0xdd8]
mov rdx, qword [rsp + 0xa8]
lea r8, [rsp + 0x548]
call fcn.00407c50
mov r15b, 1
test ax, ax
je 0x41331d
jmp 0x417e95
mov rax, qword [rax + 8]
test rax, rax
js 0x418365
mov qword [rsp + 0x3e78], rax
mov rcx, rdi
mov rax, r12
cmp qword [rax], 0x73
je 0x41359d
add rax, 0x20
add rcx, 0xffffffffffffffff
jne 0x413589
xor eax, eax
jmp 0x4135c7
movzx ecx, byte [rax + 0x18]
cmp ecx, 3
je 0x4135b4
cmp ecx, 5
je 0x4135ba
cmp ecx, 8
jne 0x418382
mov rax, qword [rax + 8]
jmp 0x4135c7
mov rax, qword [rax + 8]
test rax, rax
js 0x41838b
mov qword [rsp + 0x3e80], rax
mov rcx, rdi
mov rax, r12
cmp qword [rax], 0x74
je 0x4135e9
add rax, 0x20
add rcx, 0xffffffffffffffff
jne 0x4135d5
xor eax, eax
jmp 0x413613
movzx ecx, byte [rax + 0x18]
cmp ecx, 3
je 0x413600
cmp ecx, 5
je 0x413606
cmp ecx, 8
jne 0x4183a8
mov rax, qword [rax + 8]
jmp 0x413613
mov rax, qword [rax + 8]
test rax, rax
js 0x4183b1
mov qword [rsp + 0x3e88], rax
mov rcx, rdi
mov rax, r12
cmp qword [rax], 0x8c
je 0x413638
add rax, 0x20
add rcx, 0xffffffffffffffff
jne 0x413621
xor eax, eax
jmp 0x413662
movzx ecx, byte [rax + 0x18]
cmp ecx, 3
je 0x41364f
cmp ecx, 5
je 0x413655
cmp ecx, 8
jne 0x4183ce
mov rax, qword [rax + 8]
jmp 0x413662
mov rax, qword [rax + 8]
test rax, rax
js 0x4183d7
mov qword [rsp + 0x3e90], rax
add r12, 8
cmp qword [r12 - 8], 0x40
je 0x413683
add r12, 0x20
add rdi, 0xffffffffffffffff
jne 0x41366e
xor r12d, r12d
mov qword [rsp + 0x3e98], r12
jmp 0x412d0e
mov rcx, qword [rsp + 0xa8]
mov r14, qword [rcx]
mov rsi, qword [rcx + 8]
mov rdx, qword [rsp + 0x210]
test rdx, rdx
je 0x4136d1
movabs rcx, 0x7ffffffffffffff
cmp rdx, rcx
lea r13, [rsp + 0x3270]
ja 0x418230
mov rdi, qword [rsp + 0x230]
jmp 0x4136e5
movabs r15, 0xaaaaaaaaaaaaaaaa
xor edi, edi
lea r13, [rsp + 0x3270]
test rdi, rdi
je 0x41371b
mov rcx, r15
mov dl, 0xaa
mov r8, rdi
call fcn.00440060
mov rax, qword [rsp + 0x270]
mov qword [rsp + 0x20], rax
mov rcx, r14
mov rdx, r15
mov r8, rdi
mov r9b, 3
call qword [rsi + 0x10]
mov rax, qword [rsp + 0x358]
mov rdx, qword [rsp + 0x3f0]
mov rcx, rdx
mov qword [rsp + 0x388], rdx
cmp rdx, rax
lea rcx, [rsp + 0xad0]
lea r14, [rsp + 0xae8]
lea r15, [rsp + 0xaf8]
jb 0x412957
mov edi, dword [rsp + 0xb4]
cmp byte [rsp + 0xb30], 0
je 0x413772
mov rax, qword [rsp + 0xb10]
mov rcx, qword [rsp + 0xb08]
jmp 0x413776
xor eax, eax
xor ecx, ecx
test rcx, rcx
je 0x41949d
mov qword [rsp + 0x3be60], rcx
mov qword [rsp + 0x3be68], rax
movzx ecx, byte [rsp + 0xe60]
and cl, 1
mov byte [rsp + 0x3be78], cl
mov qword [rsp + 0x3be70], 0
xorps xmm6, xmm6
movups xmmword [rsp + 0x1be48], xmm6
mov rcx, qword [rsp + 0xa8]
movups xmm0, xmmword [rcx]
movups xmmword [rsp + 0x1be58], xmm0
movabs rcx, 0xaaaaaaaaaaaaaaaa
mov qword [rsp + 0x3c0], rcx
mov qword [rsp + 0x1be40], rcx
test rax, rax
je 0x41443e
xor eax, eax
lea rcx, [rsp + 0x4b0]
lea r15, [rsp + 0x3be60]
mov qword [rsp + 0x3f0], rax
mov qword [rsp + 0x3be70], rax
mov rdx, r15
call fcn.00403b10
movzx ebp, word [rsp + 0x4c0]
test bp, bp
jne 0x4175c7
mov rax, qword [rsp + 0x4b0]
test rax, rax
je 0x417614
movzx r10d, byte [rsp + 0x4b9]
and r10d, 0xf
add r10, rax
jb 0x418230
mov rax, qword [rsp + 0x3be68]
mov r8, qword [rsp + 0x3be70]
mov rcx, rax
sub rcx, r8
jb 0x418230
cmp rcx, 2
jb 0x417631
lea rcx, [r8 + 2]
cmp rcx, rax
ja 0x418ff8
mov rcx, r8
add rcx, 2
jb 0x418230
mov rdx, qword [rsp + 0x3be60]
movzx r8d, word [rdx + r8]
mov edi, r8d
rol di, 8
test byte [rsp + 0x3be78], 1
cmovne edi, r8d
movzx esi, byte [rsp + 0x4b8]
mov qword [rsp + 0x3be70], rcx
lea r8d, [rdi - 6]
cmp r8w, 0xfffb
jbe 0x417676
cmp di, 4
mov qword [rsp + 0x3d8], r10
jbe 0x413961
cmp rax, rcx
jb 0x418230
je 0x41754d
jbe 0x418ff8
lea r8, [rcx + 1]
movzx r9d, byte [rdx + rcx]
mov qword [rsp + 0x3be70], r8
cmp r9b, 1
jne 0x4172c8
cmp r8, rax
jae 0x41754d
mov rax, rcx
add rax, 2
movzx r14d, byte [rdx + rcx + 1]
mov qword [rsp + 0x3be70], rax
mov r8d, esi
and r8b, 1
lea rcx, [rsp + 0x410]
mov rdx, r15
call fcn.00407840
movzx ebp, word [rsp + 0x418]
test bp, bp
jne 0x4174f4
mov r9, qword [rsp + 0x410]
jmp 0x4139c0
mov r8d, esi
and r8b, 1
lea rcx, [rsp + 0x460]
mov rdx, r15
call fcn.00407840
movzx ebp, word [rsp + 0x468]
test bp, bp
jne 0x4174f4
mov rax, qword [rsp + 0x3be70]
cmp rax, qword [rsp + 0x3be68]
jae 0x41754d
mov rcx, qword [rsp + 0x3be60]
mov r9, qword [rsp + 0x460]
movzx r14d, byte [rcx + rax]
add rax, 1
mov qword [rsp + 0x3be70], rax
cmp r14b, 8
jne 0x4172c8
lea rcx, [rsp + 0x548]
lea rdx, [rsp + 0xb08]
mov r8, qword [rsp + 0xa8]
call fcn.00403e50
movzx ebp, word [rsp + 0x550]
test bp, bp
jne 0x4174f4
mov rbp, qword [rsp + 0x548]
mov rax, qword [rbp + 0x10]
test rax, rax
je 0x413b2d
mov rcx, qword [rbp + 8]
cmp rax, 4
jae 0x413b3d
xor edx, edx
xor r14d, r14d
mov r11, 0xffffffffffffffff
and eax, 3
je 0x413a64
lea rdx, [rdx + rdx*4]
lea rcx, [rcx + rdx*8]
add rcx, 0x18
shl eax, 3
lea rax, [rax + rax*4]
xor edx, edx
nop word cs:[rax + rax]
nop dword [rax + rax]
mov r8, qword [rcx + rdx]
cmp r14, r8
cmovbe r14, r8
add rdx, 0x28
cmp rax, rdx
jne 0x413a50
mov r12, qword [rsp + 0x1be50]
mov r15, r12
cmp r12, r14
jae 0x413bba
mov rax, r15
shr rax, 1
add rax, 8
add r15, rax
cmovb r15, r11
cmp r15, r14
jb 0x413a78
mov r11, qword [rsp + 0x1be40]
test r12, r12
mov qword [rsp + 0x210], r11
je 0x413bcf
movabs rax, 0x7ffffffffffffff
cmp r12, rax
ja 0x418230
cmp r15, rax
seta byte [rsp + 0x430]
ja 0x413bcf
mov r8, r12
shl r8, 5
mov rax, r15
shl rax, 5
mov rcx, qword [rsp + 0x1be58]
mov r10, qword [rsp + 0x1be60]
mov rdx, qword [rsp + 0x4bef8]
mov qword [rsp + 0x28], rdx
mov qword [rsp + 0x20], rax
mov rdx, r11
mov r9b, 3
call qword [r10 + 8]
mov r11, qword [rsp + 0x210]
test al, 1
je 0x413bcf
mov qword [rsp + 0x1be50], r15
mov r13, r11
lea r15, [rsp + 0x3be60]
jmp 0x413d10
xor r14d, r14d
mov r13, qword [rsp + 0x1be40]
jmp 0x413d10
mov r8, rax
and r8, 0xfffffffffffffffc
lea r9, [rcx + 0x90]
xor edx, edx
xor r14d, r14d
mov r11, 0xffffffffffffffff
jmp 0x413b6d
add rdx, 4
add r9, 0xa0
cmp r8, rdx
je 0x413a27
mov r10, qword [r9 - 0x78]
cmp r14, r10
ja 0x413b98
mov r14, r10
mov r10, qword [r9 - 0x50]
cmp r14, r10
jbe 0x413ba1
mov r10, qword [r9 - 0x28]
cmp r14, r10
ja 0x413bad
mov r14, r10
mov r10, qword [r9]
cmp r14, r10
ja 0x413b59
jmp 0x413bb5
mov r10, qword [r9 - 0x50]
cmp r14, r10
ja 0x413b82
mov r14, r10
mov r10, qword [r9 - 0x28]
cmp r14, r10
jbe 0x413b8b
mov r10, qword [r9]
cmp r14, r10
ja 0x413b59
mov r14, r10
jmp 0x413b59
lea r15, [rsp + 0x3be60]
mov r13, qword [rsp + 0x1be40]
jmp 0x413d10
mov rcx, qword [rsp + 0x1be58]
mov rax, qword [rsp + 0x1be60]
movabs rdx, 0x7ffffffffffffff
cmp r15, rdx
seta byte [rsp + 0x430]
mov r9, qword [rsp + 0x4bef8]
seta dl
test dl, dl
jne 0x417739
mov qword [rsp + 0x238], rbp
mov rbp, r15
shl rbp, 5
mov qword [rsp + 0x388], r9
je 0x413c54
mov rdx, rbp
mov r8b, 3
call qword [rax]
test rax, rax
je 0x417739
mov r13, rax
mov rcx, rax
mov dl, 0xaa
mov r8, rbp
call fcn.00440060
test r13b, 7
mov r11, qword [rsp + 0x210]
je 0x413c5b
jmp 0x419503
mov r13, 0xfffffffffffffff8
mov r8, qword [rsp + 0x1be48]
cmp r8, r15
ja 0x418ff8
shl r8, 5
lea rax, [r11 + r8]
cmp r13, rax
jae 0x413c86
lea rax, [r8 + r13]
cmp r11, rax
jb 0x419394
mov rcx, r13
mov rdx, r11
call fcn.0043fd00
mov rcx, qword [rsp + 0x210]
mov rbp, r12
shl rbp, 5
test r12, r12
movabs rax, 0xaaaaaaaaaaaaaaaa
cmove rcx, rax
cmove rbp, r12
test rbp, rbp
je 0x413cf0
mov dl, 0xaa
mov r8, rbp
mov r12, rcx
call fcn.00440060
mov rcx, qword [rsp + 0x1be58]
mov rax, qword [rsp + 0x1be60]
mov rdx, qword [rsp + 0x388]
mov qword [rsp + 0x20], rdx
mov rdx, r12
mov r8, rbp
mov r9b, 3
call qword [rax + 0x10]
mov qword [rsp + 0x1be40], r13
mov qword [rsp + 0x1be50], r15
lea r15, [rsp + 0x3be60]
mov rbp, qword [rsp + 0x238]
mov qword [rsp + 0x1be48], r14
and sil, 1
mov byte [rsp + 0x28], sil
mov qword [rsp + 0x20], rbp
lea rcx, [rsp + 0x2be50]
mov rdx, r15
mov r8, r13
mov r9, r14
call fcn.00405ef0
movzx ebp, word [rsp + 0x2be78]
test bp, bp
jne 0x4176c2
cmp byte [rsp + 0x2be70], 0
lea r13, [rsp + 0x3270]
je 0x4172c8
cmp qword [rsp + 0x2be50], 0x11
jne 0x4172c8
mov r14, qword [rsp + 0x2be58]
movdqu xmm7, xmmword [rsp + 0x2be60]
mov rax, qword [rsp + 0xa8]
mov rcx, qword [rax]
mov rax, qword [rax + 8]
movq r13, xmm7
movabs rdx, 0x7ffffffffffffff
cmp r13, rdx
seta byte [rsp + 0x430]
mov rbp, qword [rsp + 0x4bef8]
seta dl
test dl, dl
jne 0x41756b
mov r15, r13
shl r15, 5
je 0x413df7
mov rdx, r15
mov r8b, 3
mov r9, rbp
call qword [rax]
test rax, rax
je 0x41756b
mov r12, rax
mov rcx, rax
mov dl, 0xaa
mov r8, r15
call fcn.00440060
test r12b, 7
je 0x413dfe
jmp 0x419503
mov r12, 0xfffffffffffffff8
lea rax, [r14 + r15]
cmp r12, rax
jae 0x413e14
lea rax, [r12 + r15]
cmp rax, r14
ja 0x419394
mov rcx, r12
mov rdx, r14
mov r8, r15
call fcn.0043fd00
mov word [rsp + 0x3ea0], di
mov byte [rsp + 0x3ea2], sil
lea rax, [rsp + 0x3e60]
movups xmmword [rax], xmm6
mov qword [rax + 0x10], 0
mov qword [rsp + 0x3e40], 0x11
mov qword [rsp + 0x3e48], r12
movdqu xmmword [rsp + 0x3e50], xmm7
mov rcx, r13
mov rax, r12
test r13, r13
mov edi, dword [rsp + 0xb4]
mov esi, 0x68
je 0x413e8d
cmp qword [rax], 0x72
je 0x413eaa
add rax, 0x20
add rcx, 0xffffffffffffffff
jne 0x413e79
xor eax, eax
jmp 0x413ed4
lea rax, [rsp + 0x3e60]
movups xmmword [rax + 0x28], xmm6
movups xmmword [rax + 0x18], xmm6
mov qword [rax + 0x38], 0
jmp 0x414000
movzx ecx, byte [rax + 0x18]
cmp ecx, 3
je 0x413ec1
cmp ecx, 5
je 0x413ec7
cmp ecx, 8
jne 0x417ce2
mov rax, qword [rax + 8]
jmp 0x413ed4
mov rax, qword [rax + 8]
test rax, rax
js 0x417ceb
mov qword [rsp + 0x3e78], rax
mov rcx, r13
mov rax, r12
cmp qword [rax], 0x73
je 0x413ef6
add rax, 0x20
add rcx, 0xffffffffffffffff
jne 0x413ee2
xor eax, eax
jmp 0x413f20
movzx ecx, byte [rax + 0x18]
cmp ecx, 3
je 0x413f0d
cmp ecx, 5
je 0x413f13
cmp ecx, 8
jne 0x417ce2
mov rax, qword [rax + 8]
jmp 0x413f20
mov rax, qword [rax + 8]
test rax, rax
js 0x417ceb
mov qword [rsp + 0x3e80], rax
mov rcx, r13
mov rax, r12
cmp qword [rax], 0x74
je 0x413f42
add rax, 0x20
add rcx, 0xffffffffffffffff
jne 0x413f2e
xor eax, eax
jmp 0x413f6c
movzx ecx, byte [rax + 0x18]
cmp ecx, 3
je 0x413f59
cmp ecx, 5
je 0x413f5f
cmp ecx, 8
jne 0x417ce2
mov rax, qword [rax + 8]
jmp 0x413f6c
mov rax, qword [rax + 8]
test rax, rax
js 0x417ceb
mov qword [rsp + 0x3e88], rax
mov rcx, r13
mov rax, r12
cmp qword [rax], 0x8c
je 0x413f91
add rax, 0x20
add rcx, 0xffffffffffffffff
jne 0x413f7a
xor eax, eax
jmp 0x413fbb
movzx ecx, byte [rax + 0x18]
cmp ecx, 3
je 0x413fa8
cmp ecx, 5
je 0x413fae
cmp ecx, 8
jne 0x417ce2
mov rax, qword [rax + 8]
jmp 0x413fbb
mov rax, qword [rax + 8]
test rax, rax
js 0x417ceb
mov qword [rsp + 0x3e90], rax
lea rax, [r12 + 8]
mov rcx, r13
cmp qword [rax - 8], 0x40
je 0x413fde
add rax, 0x20
add rcx, 0xffffffffffffffff
jne 0x413fcb
xor eax, eax
mov qword [rsp + 0x3e98], rax
mov rcx, r13
mov rax, r12
cmp qword [rax], 0x11
je 0x4140f8
add rax, 0x20
add rcx, 0xffffffffffffffff
jne 0x413fec
mov rdi, rbp
lea rcx, [0x004452b0]
mov rax, qword [rcx + 0x10]
lea rdx, [rsp + 0x3e60]
mov qword [rdx + 0x10], rax
movups xmm0, xmmword [rcx]
movups xmmword [rdx], xmm0
mov rax, qword [rsp + 0xdc8]
mov rcx, rax
inc rcx
je 0x418230
mov rbp, qword [rsp + 0xdd0]
cmp rbp, rcx
lea r13, [rsp + 0x3270]
jae 0x4140f0
mov r12, rbp
mov rdx, 0xffffffffffffffff
nop word [rax + rax]
mov rax, r12
shr rax, 1
add rax, 8
add r12, rax
cmovb r12, rdx
cmp r12, rcx
jb 0x414060
mov r13, qword [rsp + 0xdc0]
mov rax, qword [rsp + 0xa8]
mov rcx, qword [rax]
mov r10, qword [rax + 8]
test rbp, rbp
je 0x414142
mov rax, rbp
mul rsi
jo 0x418230
mov r8, rax
mov rax, r12
mul rsi
mov r15, rax
seto byte [rsp + 0x430]
seto sil
test sil, sil
jne 0x41414f
mov qword [rsp + 0x28], rdi
mov qword [rsp + 0x20], r15
mov rdx, r13
mov r9b, 3
call qword [r10 + 8]
test al, 1
jne 0x41422d
mov rax, qword [rsp + 0xa8]
mov rcx, qword [rax]
mov r10, qword [rax + 8]
jmp 0x41414f
mov r12, rbp
jmp 0x414245
mov r9, qword [rax + 8]
movzx ecx, byte [rax + 0x18]
test cl, 0x1f
je 0x414303
mov eax, ecx
and eax, 0x1f
mov rdi, rbp
cmp eax, 1
jne 0x414322
lea r14, [rsp + 0x430]
mov rcx, r14
lea rdx, [rsp + 0xb08]
lea r8, [rsp + 0x3e40]
call fcn.00406fc0
mov rax, r14
jmp 0x414335
mov rax, r12
mul rsi
mov r15, rax
seto sil
mov byte [rsp + 0x430], sil
test sil, sil
jne 0x417739
test r15, r15
je 0x414195
mov rdx, r15
mov r8b, 3
mov r9, rdi
call qword [r10]
test rax, rax
je 0x417739
mov r14, rax
mov rcx, rax
mov dl, 0xaa
mov r8, r15
call fcn.00440060
test r14b, 7
je 0x41419c
jmp 0x419503
mov r14, 0xfffffffffffffff8
mov rax, qword [rsp + 0xdc8]
cmp rax, r12
ja 0x418ff8
mov rdx, qword [rsp + 0xdc0]
imul r8, rax, 0x68
lea rax, [rdx + r8]
cmp r14, rax
jae 0x4141cf
lea rax, [r14 + r8]
cmp rdx, rax
jb 0x419394
mov rcx, r14
call fcn.0043fd00
imul r15, rbp, 0x68
test rbp, rbp
movabs rax, 0xaaaaaaaaaaaaaaaa
cmove r13, rax
cmove r15, rbp
test r15, r15
je 0x414225
mov rax, qword [rsp + 0xa8]
mov rbp, qword [rax]
mov rsi, qword [rax + 8]
mov rcx, r13
mov dl, 0xaa
mov r8, r15
call fcn.00440060
mov qword [rsp + 0x20], rdi
mov rcx, rbp
mov rdx, r13
mov r8, r15
mov r9b, 3
call qword [rsi + 0x10]
mov qword [rsp + 0xdc0], r14
mov qword [rsp + 0xdd0], r12
mov rax, qword [rsp + 0xdc8]
lea r13, [rsp + 0x3270]
cmp rax, r12
mov r8, qword [rsp + 0x3d8]
mov edi, dword [rsp + 0xb4]
jae 0x419063
lea rcx, [rax + 1]
mov qword [rsp + 0xdc8], rcx
mov rcx, qword [rsp + 0xdc0]
imul rax, rax, 0x68
mov rdx, qword [rsp + 0x3ea0]
mov qword [rcx + rax + 0x60], rdx
movups xmm0, xmmword [rsp + 0x3e90]
movups xmmword [rcx + rax + 0x50], xmm0
movups xmm0, xmmword [rsp + 0x3e80]
movups xmmword [rcx + rax + 0x40], xmm0
movups xmm0, xmmword [rsp + 0x3e40]
movups xmm1, xmmword [rsp + 0x3e50]
movups xmm2, xmmword [rsp + 0x3e60]
movups xmm3, xmmword [rsp + 0x3e70]
movups xmmword [rcx + rax + 0x30], xmm3
movups xmmword [rcx + rax + 0x20], xmm2
movups xmmword [rcx + rax + 0x10], xmm1
movups xmmword [rcx + rax], xmm0
mov rax, qword [rsp + 0x3f0]
add rax, r8
lea r15, [rsp + 0x3be60]
jb 0x418230
cmp rax, qword [rsp + 0x3be68]
lea rcx, [rsp + 0x4b0]
jb 0x413800
jmp 0x4177a1
mov rdi, rbp
mov word [rsp + 0x488], 0
mov qword [rsp + 0x480], r9
lea rax, [rsp + 0x480]
jmp 0x414335
and cl, 0x1f
lea rax, [0x004462f8]
cmp cl, 0x11
jae 0x418eaf
movzx ebp, word [rax + 8]
lea rcx, [0x004452b0]
cmp ebp, 0x13
je 0x41400a
test ebp, ebp
jne 0x4176c2
mov rax, qword [rax]
cmp qword [r12], 0x12
je 0x41436a
add r12, 0x20
add r13, 0xffffffffffffffff
jne 0x414354
jmp 0x414003
mov rcx, qword [r12 + 8]
movzx r8d, byte [r12 + 0x18]
mov edx, r8d
and dl, 0x1f
cmp dl, 3
je 0x41438b
and r8d, 0x1f
je 0x414394
jmp 0x418e94
add rcx, rax
jb 0x418230
mov qword [rsp + 0x508], rax
mov qword [rsp + 0x510], rcx
mov byte [rsp + 0x518], 1
lea rcx, [rsp + 0x508]
jmp 0x41400a
mov bp, 0x13
mov rax, qword [rsp + 0xa8]
mov rbx, qword [rax]
mov rsi, qword [rax + 8]
test r8, r8
je 0x41687b
movabs rax, 0x7ffffffffffffff
cmp r8, rax
jbe 0x416871
jmp 0x418230
mov rax, qword [rsp + 0x3e40]
mov qword [rsp + 0x278], rax
mov rax, qword [rsp + 0x3e48]
mov qword [rsp + 0x280], rax
mov eax, dword [r12 + rdi]
mov qword [rsp + 0xb8], rax
mov byte [rsp + 0x60], 1
mov al, 1
mov dword [rsp + 0x250], eax
mov rax, qword [rbx + 0x10]
lea rcx, [rax + 0x14]
cmp rcx, qword [rbx + 8]
jbe 0x40cdd2
jmp 0x418ff8
mov r14, qword [rsp + 0x1be58]
mov rsi, qword [rsp + 0x1be60]
movabs r12, 0xaaaaaaaaaaaaaaaa
xor r15d, r15d
test r15, r15
je 0x4177ea
mov rcx, r12
mov dl, 0xaa
mov r8, r15
call fcn.00440060
mov rax, qword [rsp + 0x4bef8]
mov qword [rsp + 0x20], rax
mov rcx, r14
mov rdx, r12
mov r8, r15
mov r9b, 3
call qword [rsi + 0x10]
xor ebp, ebp
jmp 0x4178b1
mov rax, qword [rsp + 0x3e40]
mov qword [rsp + 0x298], rax
mov rax, qword [rsp + 0x3e48]
mov qword [rsp + 0x2a0], rax
mov eax, dword [rdi + r12]
mov qword [rsp + 0x2a8], rax
mov byte [rsp + 0x70], 1
mov al, 1
mov dword [rsp + 0x260], eax
mov rax, qword [rbx + 0x10]
lea rcx, [rax + 0x14]
cmp rcx, qword [rbx + 8]
jbe 0x40d5b1
jmp 0x418ff8
mov rax, qword [rsp + 0x278]
mov qword [rsp + 0x1b88], rax
mov rax, qword [rsp + 0x280]
mov qword [rsp + 0x1b90], rax
mov rax, qword [rsp + 0xb8]
mov qword [rsp + 0x1b98], rax
mov byte [rsp + 0x1ba0], 1
mov eax, dword [rsp + 0x198]
mov dword [rsp + 0x1ba1], eax
mov eax, dword [rsp + 0x19b]
mov dword [rsp + 0x1ba4], eax
movzx eax, byte [rsp + 0x60]
mov byte [rsp + 0x1ba8], al
mov eax, dword [rsp + 0x190]
mov dword [rsp + 0x1ba9], eax
mov eax, dword [rsp + 0x193]
mov dword [rsp + 0x1bac], eax
mov eax, dword [rsp + 0x250]
mov byte [rsp + 0x1bb0], al
mov eax, dword [rsp + 0x188]
mov dword [rsp + 0x1bb1], eax
mov eax, dword [rsp + 0x18b]
mov dword [rsp + 0x1bb4], eax
mov rax, qword [rsp + 0x298]
mov qword [rsp + 0x1bb8], rax
mov rax, qword [rsp + 0x2a0]
mov qword [rsp + 0x1bc0], rax
mov rax, qword [rsp + 0x2a8]
mov qword [rsp + 0x1bc8], rax
mov byte [rsp + 0x1bd0], 1
mov eax, dword [rsp + 0x208]
mov dword [rsp + 0x1bd1], eax
mov eax, dword [rsp + 0x20b]
mov dword [rsp + 0x1bd4], eax
movzx eax, byte [rsp + 0x70]
mov byte [rsp + 0x1bd8], al
mov eax, dword [rsp + 0x203]
mov dword [rsp + 0x1bdc], eax
mov eax, dword [rsp + 0x200]
mov dword [rsp + 0x1bd9], eax
mov eax, dword [rsp + 0x260]
mov byte [rsp + 0x1be0], al
mov eax, dword [rsp + 0x1fb]
mov dword [rsp + 0x1be4], eax
mov eax, dword [rsp + 0x1f8]
mov dword [rsp + 0x1be1], eax
mov rax, qword [rsp + 0x2b0]
mov qword [rsp + 0x1be8], rax
mov rax, qword [rsp + 0x2b8]
mov qword [rsp + 0x1bf0], rax
mov rax, qword [rsp + 0x2c0]
mov qword [rsp + 0x1bf8], rax
mov byte [rsp + 0x1c00], 1
mov eax, dword [rsp + 0x1f3]
mov dword [rsp + 0x1c04], eax
mov eax, dword [rsp + 0x1f0]
mov dword [rsp + 0x1c01], eax
movzx eax, byte [rsp + 0x78]
mov byte [rsp + 0x1c08], al
mov eax, dword [rsp + 0x1eb]
mov dword [rsp + 0x1c0c], eax
mov eax, dword [rsp + 0x1e8]
mov dword [rsp + 0x1c09], eax
mov eax, dword [rsp + 0x21c]
mov byte [rsp + 0x1c10], al
mov eax, dword [rsp + 0x1e3]
mov dword [rsp + 0x1c14], eax
mov eax, dword [rsp + 0x1e0]
mov dword [rsp + 0x1c11], eax
mov rax, qword [rsp + 0x2d0]
mov qword [rsp + 0x1c18], rax
mov rax, qword [rsp + 0x2d8]
mov qword [rsp + 0x1c20], rax
mov rax, qword [rsp + 0x2e0]
mov qword [rsp + 0x1c28], rax
mov byte [rsp + 0x1c30], 1
mov eax, dword [rsp + 0x1db]
mov dword [rsp + 0x1c34], eax
mov eax, dword [rsp + 0x1d8]
mov dword [rsp + 0x1c31], eax
movzx eax, byte [rsp + 0x88]
mov byte [rsp + 0x1c38], al
mov eax, dword [rsp + 0x1d3]
mov dword [rsp + 0x1c3c], eax
mov eax, dword [rsp + 0x1d0]
mov dword [rsp + 0x1c39], eax
mov eax, dword [rsp + 0x22c]
mov byte [rsp + 0x1c40], al
mov eax, dword [rsp + 0x1cb]
mov dword [rsp + 0x1c44], eax
mov eax, dword [rsp + 0x1c8]
mov dword [rsp + 0x1c41], eax
mov rax, qword [rsp + 0x2e8]
mov qword [rsp + 0x1c48], rax
mov rax, qword [rsp + 0x2f0]
mov qword [rsp + 0x1c50], rax
mov rax, qword [rsp + 0x2f8]
mov qword [rsp + 0x1c58], rax
mov byte [rsp + 0x1c60], 1
mov eax, dword [rsp + 0x1c3]
mov dword [rsp + 0x1c64], eax
mov eax, dword [rsp + 0x1c0]
mov dword [rsp + 0x1c61], eax
movzx eax, byte [rsp + 0x98]
mov byte [rsp + 0x1c68], al
mov eax, dword [rsp + 0x1bb]
mov dword [rsp + 0x1c6c], eax
mov eax, dword [rsp + 0x1b8]
mov dword [rsp + 0x1c69], eax
mov eax, dword [rsp + 0x244]
mov byte [rsp + 0x1c70], al
mov eax, dword [rsp + 0x1b3]
mov dword [rsp + 0x1c74], eax
mov eax, dword [rsp + 0x1b0]
mov dword [rsp + 0x1c71], eax
mov rax, qword [rsp + 0x310]
mov qword [rsp + 0x1c78], rax
mov rax, qword [rsp + 0x318]
mov qword [rsp + 0x1c80], rax
mov rax, qword [rsp + 0x320]
mov qword [rsp + 0x1c88], rax
mov byte [rsp + 0x1c90], 1
mov eax, dword [rsp + 0x1ab]
mov dword [rsp + 0x1c94], eax
mov eax, dword [rsp + 0x1a8]
mov dword [rsp + 0x1c91], eax
movzx eax, byte [rsp + 0xa0]
mov byte [rsp + 0x1c98], al
mov eax, dword [rsp + 0x1a3]
mov dword [rsp + 0x1c9c], eax
mov eax, dword [rsp + 0x1a0]
mov dword [rsp + 0x1c99], eax
mov eax, dword [rsp + 0x248]
mov byte [rsp + 0x1ca0], al
mov eax, dword [rsp + 0x183]
mov dword [rsp + 0x1ca4], eax
mov eax, dword [rsp + 0x180]
mov dword [rsp + 0x1ca1], eax
mov rax, qword [rsp + 0x330]
mov qword [rsp + 0x1ca8], rax
mov rax, qword [rsp + 0x338]
mov qword [rsp + 0x1cb0], rax
mov rax, qword [rsp + 0x340]
mov qword [rsp + 0x1cb8], rax
mov byte [rsp + 0x1cc0], 1
mov eax, dword [rsp + 0x17b]
mov dword [rsp + 0x1cc4], eax
mov eax, dword [rsp + 0x178]
mov dword [rsp + 0x1cc1], eax
movzx eax, byte [rsp + 0x90]
mov byte [rsp + 0x1cc8], al
mov eax, dword [rsp + 0x173]
mov dword [rsp + 0x1ccc], eax
mov eax, dword [rsp + 0x170]
mov dword [rsp + 0x1cc9], eax
mov eax, dword [rsp + 0x24c]
mov byte [rsp + 0x1cd0], al
mov eax, dword [rsp + 0x168]
mov ecx, dword [rsp + 0x16b]
mov dword [rsp + 0x1cd4], ecx
mov dword [rsp + 0x1cd1], eax
mov eax, dword [rsp + 0x160]
mov ecx, dword [rsp + 0x163]
mov dword [rsp + 0x1cf4], ecx
mov dword [rsp + 0x1cf1], eax
movzx eax, byte [rsp + 0x80]
mov byte [rsp + 0x1cf8], al
mov eax, dword [rsp + 0x158]
mov ecx, dword [rsp + 0x15b]
mov dword [rsp + 0x1cfc], ecx
mov dword [rsp + 0x1cf9], eax
mov byte [rsp + 0x1d00], 1
mov eax, dword [rsp + 0x150]
mov ecx, dword [rsp + 0x153]
mov dword [rsp + 0x1d04], ecx
mov dword [rsp + 0x1d01], eax
mov eax, dword [rsp + 0x148]
mov ecx, dword [rsp + 0x14b]
mov dword [rsp + 0x1d24], ecx
mov dword [rsp + 0x1d21], eax
movzx eax, byte [rsp + 0x68]
mov byte [rsp + 0x1d28], al
mov eax, dword [rsp + 0x140]
mov ecx, dword [rsp + 0x143]
mov dword [rsp + 0x1d2c], ecx
mov dword [rsp + 0x1d29], eax
mov byte [rsp + 0x1d30], 0
mov eax, dword [rsp + 0x138]
mov ecx, dword [rsp + 0x13b]
mov dword [rsp + 0x1d34], ecx
mov dword [rsp + 0x1d31], eax
mov eax, dword [rsp + 0x130]
mov ecx, dword [rsp + 0x133]
mov dword [rsp + 0x1d54], ecx
mov dword [rsp + 0x1d51], eax
movzx eax, byte [rsp + 0x58]
mov byte [rsp + 0x1d58], al
mov eax, dword [rsp + 0x128]
mov ecx, dword [rsp + 0x12b]
mov dword [rsp + 0x1d5c], ecx
mov dword [rsp + 0x1d59], eax
mov byte [rsp + 0x1d60], 0
mov eax, dword [rsp + 0x120]
mov ecx, dword [rsp + 0x123]
mov dword [rsp + 0x1d64], ecx
mov dword [rsp + 0x1d61], eax
mov eax, dword [rsp + 0x118]
mov ecx, dword [rsp + 0x11b]
mov dword [rsp + 0x1d84], ecx
mov dword [rsp + 0x1d81], eax
movzx eax, byte [rsp + 0x50]
mov byte [rsp + 0x1d88], al
mov eax, dword [rsp + 0x110]
mov ecx, dword [rsp + 0x113]
mov dword [rsp + 0x1d8c], ecx
mov dword [rsp + 0x1d89], eax
mov byte [rsp + 0x1d90], 0
mov eax, dword [rsp + 0x108]
mov ecx, dword [rsp + 0x10b]
mov dword [rsp + 0x1d94], ecx
mov dword [rsp + 0x1d91], eax
mov eax, dword [rsp + 0x100]
mov ecx, dword [rsp + 0x103]
mov dword [rsp + 0x1db4], ecx
mov dword [rsp + 0x1db1], eax
movzx eax, byte [rsp + 0x48]
mov byte [rsp + 0x1db8], al
mov eax, dword [rsp + 0xf8]
mov ecx, dword [rsp + 0xfb]
mov dword [rsp + 0x1dbc], ecx
mov dword [rsp + 0x1db9], eax
mov byte [rsp + 0x1dc0], 0
mov eax, dword [rsp + 0xf0]
mov ecx, dword [rsp + 0xf3]
mov dword [rsp + 0x1dc4], ecx
mov dword [rsp + 0x1dc1], eax
mov eax, dword [rsp + 0xe8]
mov ecx, dword [rsp + 0xeb]
mov dword [rsp + 0x1de4], ecx
mov dword [rsp + 0x1de1], eax
movzx eax, byte [rsp + 0x40]
mov byte [rsp + 0x1de8], al
mov eax, dword [rsp + 0xe0]
mov ecx, dword [rsp + 0xe3]
mov dword [rsp + 0x1dec], ecx
mov dword [rsp + 0x1de9], eax
mov byte [rsp + 0x1df0], 0
mov eax, dword [rsp + 0xd8]
mov ecx, dword [rsp + 0xdb]
mov dword [rsp + 0x1df4], ecx
mov dword [rsp + 0x1df1], eax
mov eax, dword [rsp + 0xd0]
mov ecx, dword [rsp + 0xd3]
mov dword [rsp + 0x1e14], ecx
mov dword [rsp + 0x1e11], eax
movzx eax, byte [rsp + 0x38]
mov byte [rsp + 0x1e18], al
mov eax, dword [rsp + 0xc8]
mov ecx, dword [rsp + 0xcb]
mov dword [rsp + 0x1e1c], ecx
mov dword [rsp + 0x1e19], eax
mov byte [rsp + 0x1e20], 0
mov eax, dword [rsp + 0xc0]
mov ecx, dword [rsp + 0xc3]
mov dword [rsp + 0x1e24], ecx
mov dword [rsp + 0x1e21], eax
mov esi, 0x28
movabs rdi, 0xaaaaaaaaaaaaaaaa
jmp 0x414c78
add rsi, 0x30
cmp rsi, 0x2c8
je 0x417210
cmp byte [rsp + rsi + 0x1b88], 0
je 0x414c67
test byte [rsp + rsi + 0x1b80], 1
je 0x414c67
mov rbx, qword [rsp + rsi + 0x1b68]
mov r15, qword [rsp + rsi + 0x1b60]
test rbx, rbx
cmove r15, rdi
je 0x414c67
mov rax, qword [rsp + 0xa8]
mov r12, qword [rax]
mov r13, qword [rax + 8]
mov rcx, r15
mov dl, 0xaa
mov r8, rbx
call fcn.00440060
mov qword [rsp + 0x20], r14
mov rcx, r12
mov rdx, r15
mov r8, rbx
xor r9d, r9d
call qword [r13 + 0x10]
jmp 0x414c67
mov rax, qword [rsp + 0x3e40]
mov qword [rsp + 0x2b0], rax
mov rax, qword [rsp + 0x3e48]
mov qword [rsp + 0x2b8], rax
mov eax, dword [rdi + r12]
mov qword [rsp + 0x2c0], rax
mov byte [rsp + 0x78], 1
mov al, 1
mov dword [rsp + 0x21c], eax
mov rax, qword [rbx + 0x10]
lea rcx, [rax + 0x14]
cmp rcx, qword [rbx + 8]
jbe 0x40ddf1
jmp 0x418ff8
mov rax, qword [rsp + 0x278]
mov qword [rsp + 0x18e8], rax
mov rax, qword [rsp + 0x280]
mov qword [rsp + 0x18f0], rax
mov rax, qword [rsp + 0xb8]
mov qword [rsp + 0x18f8], rax
mov byte [rsp + 0x1900], 1
mov eax, dword [rsp + 0x198]
mov dword [rsp + 0x1901], eax
mov eax, dword [rsp + 0x19b]
mov dword [rsp + 0x1904], eax
movzx eax, byte [rsp + 0x60]
mov byte [rsp + 0x1908], al
mov eax, dword [rsp + 0x190]
mov dword [rsp + 0x1909], eax
mov eax, dword [rsp + 0x193]
mov dword [rsp + 0x190c], eax
mov eax, dword [rsp + 0x250]
mov byte [rsp + 0x1910], al
mov eax, dword [rsp + 0x188]
mov dword [rsp + 0x1911], eax
mov eax, dword [rsp + 0x18b]
mov dword [rsp + 0x1914], eax
mov rax, qword [rsp + 0x298]
mov qword [rsp + 0x1918], rax
mov rax, qword [rsp + 0x2a0]
mov qword [rsp + 0x1920], rax
mov rax, qword [rsp + 0x2a8]
mov qword [rsp + 0x1928], rax
mov byte [rsp + 0x1930], 1
mov eax, dword [rsp + 0x208]
mov dword [rsp + 0x1931], eax
mov eax, dword [rsp + 0x20b]
mov dword [rsp + 0x1934], eax
movzx eax, byte [rsp + 0x70]
mov byte [rsp + 0x1938], al
mov eax, dword [rsp + 0x203]
mov dword [rsp + 0x193c], eax
mov eax, dword [rsp + 0x200]
mov dword [rsp + 0x1939], eax
mov eax, dword [rsp + 0x260]
mov byte [rsp + 0x1940], al
mov eax, dword [rsp + 0x1fb]
mov dword [rsp + 0x1944], eax
mov eax, dword [rsp + 0x1f8]
mov dword [rsp + 0x1941], eax
mov rax, qword [rsp + 0x2b0]
mov qword [rsp + 0x1948], rax
mov rax, qword [rsp + 0x2b8]
mov qword [rsp + 0x1950], rax
mov rax, qword [rsp + 0x2c0]
mov qword [rsp + 0x1958], rax
mov byte [rsp + 0x1960], 1
mov eax, dword [rsp + 0x1f3]
mov dword [rsp + 0x1964], eax
mov eax, dword [rsp + 0x1f0]
mov dword [rsp + 0x1961], eax
movzx eax, byte [rsp + 0x78]
mov byte [rsp + 0x1968], al
mov eax, dword [rsp + 0x1eb]
mov dword [rsp + 0x196c], eax
mov eax, dword [rsp + 0x1e8]
mov dword [rsp + 0x1969], eax
mov eax, dword [rsp + 0x21c]
mov byte [rsp + 0x1970], al
mov eax, dword [rsp + 0x1e3]
mov dword [rsp + 0x1974], eax
mov eax, dword [rsp + 0x1e0]
mov dword [rsp + 0x1971], eax
mov rax, qword [rsp + 0x2d0]
mov qword [rsp + 0x1978], rax
mov rax, qword [rsp + 0x2d8]
mov qword [rsp + 0x1980], rax
mov rax, qword [rsp + 0x2e0]
mov qword [rsp + 0x1988], rax
mov byte [rsp + 0x1990], 1
mov eax, dword [rsp + 0x1db]
mov dword [rsp + 0x1994], eax
mov eax, dword [rsp + 0x1d8]
mov dword [rsp + 0x1991], eax
movzx eax, byte [rsp + 0x88]
mov byte [rsp + 0x1998], al
mov eax, dword [rsp + 0x1d3]
mov dword [rsp + 0x199c], eax
mov eax, dword [rsp + 0x1d0]
mov dword [rsp + 0x1999], eax
mov eax, dword [rsp + 0x22c]
mov byte [rsp + 0x19a0], al
mov eax, dword [rsp + 0x1cb]
mov dword [rsp + 0x19a4], eax
mov eax, dword [rsp + 0x1c8]
mov dword [rsp + 0x19a1], eax
mov rax, qword [rsp + 0x2e8]
mov qword [rsp + 0x19a8], rax
mov rax, qword [rsp + 0x2f0]
mov qword [rsp + 0x19b0], rax
mov rax, qword [rsp + 0x2f8]
mov qword [rsp + 0x19b8], rax
mov byte [rsp + 0x19c0], 1
mov eax, dword [rsp + 0x1c3]
mov dword [rsp + 0x19c4], eax
mov eax, dword [rsp + 0x1c0]
mov dword [rsp + 0x19c1], eax
movzx eax, byte [rsp + 0x98]
mov byte [rsp + 0x19c8], al
mov eax, dword [rsp + 0x1bb]
mov dword [rsp + 0x19cc], eax
mov eax, dword [rsp + 0x1b8]
mov dword [rsp + 0x19c9], eax
mov eax, dword [rsp + 0x244]
mov byte [rsp + 0x19d0], al
mov eax, dword [rsp + 0x1b3]
mov dword [rsp + 0x19d4], eax
mov eax, dword [rsp + 0x1b0]
mov dword [rsp + 0x19d1], eax
mov rax, qword [rsp + 0x310]
mov qword [rsp + 0x19d8], rax
mov rax, qword [rsp + 0x318]
mov qword [rsp + 0x19e0], rax
mov rax, qword [rsp + 0x320]
mov qword [rsp + 0x19e8], rax
mov byte [rsp + 0x19f0], 1
mov eax, dword [rsp + 0x1ab]
mov dword [rsp + 0x19f4], eax
mov eax, dword [rsp + 0x1a8]
mov dword [rsp + 0x19f1], eax
movzx eax, byte [rsp + 0xa0]
mov byte [rsp + 0x19f8], al
mov eax, dword [rsp + 0x1a3]
mov dword [rsp + 0x19fc], eax
mov eax, dword [rsp + 0x1a0]
mov dword [rsp + 0x19f9], eax
mov eax, dword [rsp + 0x248]
mov byte [rsp + 0x1a00], al
mov eax, dword [rsp + 0x183]
mov dword [rsp + 0x1a04], eax
mov eax, dword [rsp + 0x180]
mov dword [rsp + 0x1a01], eax
mov rax, qword [rsp + 0x330]
mov qword [rsp + 0x1a08], rax
mov rax, qword [rsp + 0x338]
mov qword [rsp + 0x1a10], rax
mov rax, qword [rsp + 0x340]
mov qword [rsp + 0x1a18], rax
mov byte [rsp + 0x1a20], 1
mov eax, dword [rsp + 0x17b]
mov dword [rsp + 0x1a24], eax
mov eax, dword [rsp + 0x178]
mov dword [rsp + 0x1a21], eax
movzx eax, byte [rsp + 0x90]
mov byte [rsp + 0x1a28], al
mov eax, dword [rsp + 0x173]
mov dword [rsp + 0x1a2c], eax
mov eax, dword [rsp + 0x170]
mov dword [rsp + 0x1a29], eax
mov eax, dword [rsp + 0x24c]
mov byte [rsp + 0x1a30], al
mov eax, dword [rsp + 0x16b]
mov dword [rsp + 0x1a34], eax
mov eax, dword [rsp + 0x168]
mov dword [rsp + 0x1a31], eax
mov rax, qword [rsp + 0x380]
mov qword [rsp + 0x1a38], rax
mov rax, qword [rsp + 0x308]
mov qword [rsp + 0x1a40], rax
mov rax, qword [rsp + 0x378]
mov qword [rsp + 0x1a48], rax
mov byte [rsp + 0x1a50], 1
mov eax, dword [rsp + 0x163]
mov dword [rsp + 0x1a54], eax
mov eax, dword [rsp + 0x160]
mov dword [rsp + 0x1a51], eax
movzx eax, byte [rsp + 0x80]
mov byte [rsp + 0x1a58], al
mov eax, dword [rsp + 0x15b]
mov dword [rsp + 0x1a5c], eax
mov eax, dword [rsp + 0x158]
mov dword [rsp + 0x1a59], eax
mov eax, dword [rsp + 0x25c]
mov byte [rsp + 0x1a60], al
mov eax, dword [rsp + 0x150]
mov ecx, dword [rsp + 0x153]
mov dword [rsp + 0x1a64], ecx
mov dword [rsp + 0x1a61], eax
mov eax, dword [rsp + 0x148]
mov ecx, dword [rsp + 0x14b]
mov dword [rsp + 0x1a84], ecx
mov dword [rsp + 0x1a81], eax
movzx eax, byte [rsp + 0x68]
mov byte [rsp + 0x1a88], al
mov eax, dword [rsp + 0x140]
mov ecx, dword [rsp + 0x143]
mov dword [rsp + 0x1a8c], ecx
mov dword [rsp + 0x1a89], eax
mov byte [rsp + 0x1a90], 1
mov eax, dword [rsp + 0x138]
mov ecx, dword [rsp + 0x13b]
mov dword [rsp + 0x1a94], ecx
mov dword [rsp + 0x1a91], eax
mov eax, dword [rsp + 0x130]
mov ecx, dword [rsp + 0x133]
mov dword [rsp + 0x1ab4], ecx
mov dword [rsp + 0x1ab1], eax
movzx eax, byte [rsp + 0x58]
mov byte [rsp + 0x1ab8], al
mov eax, dword [rsp + 0x128]
mov ecx, dword [rsp + 0x12b]
mov dword [rsp + 0x1abc], ecx
mov dword [rsp + 0x1ab9], eax
mov byte [rsp + 0x1ac0], 0
mov eax, dword [rsp + 0x120]
mov ecx, dword [rsp + 0x123]
mov dword [rsp + 0x1ac4], ecx
mov dword [rsp + 0x1ac1], eax
mov eax, dword [rsp + 0x118]
mov ecx, dword [rsp + 0x11b]
mov dword [rsp + 0x1ae4], ecx
mov dword [rsp + 0x1ae1], eax
movzx eax, byte [rsp + 0x50]
mov byte [rsp + 0x1ae8], al
mov eax, dword [rsp + 0x110]
mov ecx, dword [rsp + 0x113]
mov dword [rsp + 0x1aec], ecx
mov dword [rsp + 0x1ae9], eax
mov byte [rsp + 0x1af0], 0
mov eax, dword [rsp + 0x108]
mov ecx, dword [rsp + 0x10b]
mov dword [rsp + 0x1af4], ecx
mov dword [rsp + 0x1af1], eax
mov eax, dword [rsp + 0x100]
mov ecx, dword [rsp + 0x103]
mov dword [rsp + 0x1b14], ecx
mov dword [rsp + 0x1b11], eax
movzx eax, byte [rsp + 0x48]
mov byte [rsp + 0x1b18], al
mov eax, dword [rsp + 0xf8]
mov ecx, dword [rsp + 0xfb]
mov dword [rsp + 0x1b1c], ecx
mov dword [rsp + 0x1b19], eax
mov byte [rsp + 0x1b20], 0
mov eax, dword [rsp + 0xf0]
mov ecx, dword [rsp + 0xf3]
mov dword [rsp + 0x1b24], ecx
mov dword [rsp + 0x1b21], eax
mov eax, dword [rsp + 0xe8]
mov ecx, dword [rsp + 0xeb]
mov dword [rsp + 0x1b44], ecx
mov dword [rsp + 0x1b41], eax
movzx eax, byte [rsp + 0x40]
mov byte [rsp + 0x1b48], al
mov eax, dword [rsp + 0xe0]
mov ecx, dword [rsp + 0xe3]
mov dword [rsp + 0x1b4c], ecx
mov dword [rsp + 0x1b49], eax
mov byte [rsp + 0x1b50], 0
mov eax, dword [rsp + 0xd8]
mov ecx, dword [rsp + 0xdb]
mov dword [rsp + 0x1b54], ecx
mov dword [rsp + 0x1b51], eax
mov eax, dword [rsp + 0xd0]
mov ecx, dword [rsp + 0xd3]
mov dword [rsp + 0x1b74], ecx
mov dword [rsp + 0x1b71], eax
movzx eax, byte [rsp + 0x38]
mov byte [rsp + 0x1b78], al
mov eax, dword [rsp + 0xc8]
mov ecx, dword [rsp + 0xcb]
mov dword [rsp + 0x1b7c], ecx
mov dword [rsp + 0x1b79], eax
mov byte [rsp + 0x1b80], 0
mov eax, dword [rsp + 0xc0]
mov ecx, dword [rsp + 0xc3]
mov dword [rsp + 0x1b84], ecx
mov dword [rsp + 0x1b81], eax
mov esi, 0x28
movabs rdi, 0xaaaaaaaaaaaaaaaa
jmp 0x4154fa
add rsi, 0x30
cmp rsi, 0x2c8
je 0x417210
cmp byte [rsp + rsi + 0x18e8], 0
je 0x4154e9
test byte [rsp + rsi + 0x18e0], 1
je 0x4154e9
mov rbx, qword [rsp + rsi + 0x18c8]
mov r15, qword [rsp + rsi + 0x18c0]
test rbx, rbx
cmove r15, rdi
je 0x4154e9
mov rax, qword [rsp + 0xa8]
mov r12, qword [rax]
mov r13, qword [rax + 8]
mov rcx, r15
mov dl, 0xaa
mov r8, rbx
call fcn.00440060
mov qword [rsp + 0x20], r14
mov rcx, r12
mov rdx, r15
mov r8, rbx
xor r9d, r9d
call qword [r13 + 0x10]
jmp 0x4154e9
mov rax, qword [rsp + 0x3e40]
mov qword [rsp + 0x2d0], rax
mov rax, qword [rsp + 0x3e48]
mov qword [rsp + 0x2d8], rax
mov eax, dword [rdi + r12]
mov qword [rsp + 0x2e0], rax
mov byte [rsp + 0x88], 1
mov al, 1
mov dword [rsp + 0x22c], eax
mov rax, qword [rbx + 0x10]
lea rcx, [rax + 0x14]
cmp rcx, qword [rbx + 8]
jbe 0x40e674
jmp 0x418ff8
mov rax, qword [rsp + 0x3e40]
mov qword [rsp + 0x2e8], rax
mov rax, qword [rsp + 0x3e48]
mov qword [rsp + 0x2f0], rax
mov eax, dword [rdi + r12]
mov qword [rsp + 0x2f8], rax
mov byte [rsp + 0x98], 1
mov al, 1
mov dword [rsp + 0x244], eax
mov rax, qword [rbx + 0x10]
lea rcx, [rax + 0x14]
cmp rcx, qword [rbx + 8]
jbe 0x40ef44
jmp 0x418ff8
mov rax, qword [rsp + 0x278]
mov qword [rsp + 0x13a8], rax
mov rax, qword [rsp + 0x280]
mov qword [rsp + 0x13b0], rax
mov rax, qword [rsp + 0xb8]
mov qword [rsp + 0x13b8], rax
mov byte [rsp + 0x13c0], 1
mov eax, dword [rsp + 0x198]
mov dword [rsp + 0x13c1], eax
mov eax, dword [rsp + 0x19b]
mov dword [rsp + 0x13c4], eax
movzx eax, byte [rsp + 0x60]
mov byte [rsp + 0x13c8], al
mov eax, dword [rsp + 0x190]
mov dword [rsp + 0x13c9], eax
mov eax, dword [rsp + 0x193]
mov dword [rsp + 0x13cc], eax
mov eax, dword [rsp + 0x250]
mov byte [rsp + 0x13d0], al
mov eax, dword [rsp + 0x188]
mov dword [rsp + 0x13d1], eax
mov eax, dword [rsp + 0x18b]
mov dword [rsp + 0x13d4], eax
mov rax, qword [rsp + 0x298]
mov qword [rsp + 0x13d8], rax
mov rax, qword [rsp + 0x2a0]
mov qword [rsp + 0x13e0], rax
mov rax, qword [rsp + 0x2a8]
mov qword [rsp + 0x13e8], rax
mov byte [rsp + 0x13f0], 1
mov eax, dword [rsp + 0x208]
mov dword [rsp + 0x13f1], eax
mov eax, dword [rsp + 0x20b]
mov dword [rsp + 0x13f4], eax
movzx eax, byte [rsp + 0x70]
mov byte [rsp + 0x13f8], al
mov eax, dword [rsp + 0x203]
mov dword [rsp + 0x13fc], eax
mov eax, dword [rsp + 0x200]
mov dword [rsp + 0x13f9], eax
mov eax, dword [rsp + 0x260]
mov byte [rsp + 0x1400], al
mov eax, dword [rsp + 0x1fb]
mov dword [rsp + 0x1404], eax
mov eax, dword [rsp + 0x1f8]
mov dword [rsp + 0x1401], eax
mov rax, qword [rsp + 0x2b0]
mov qword [rsp + 0x1408], rax
mov rax, qword [rsp + 0x2b8]
mov qword [rsp + 0x1410], rax
mov rax, qword [rsp + 0x2c0]
mov qword [rsp + 0x1418], rax
mov byte [rsp + 0x1420], 1
mov eax, dword [rsp + 0x1f3]
mov dword [rsp + 0x1424], eax
mov eax, dword [rsp + 0x1f0]
mov dword [rsp + 0x1421], eax
movzx eax, byte [rsp + 0x78]
mov byte [rsp + 0x1428], al
mov eax, dword [rsp + 0x1eb]
mov dword [rsp + 0x142c], eax
mov eax, dword [rsp + 0x1e8]
mov dword [rsp + 0x1429], eax
mov eax, dword [rsp + 0x21c]
mov byte [rsp + 0x1430], al
mov eax, dword [rsp + 0x1e3]
mov dword [rsp + 0x1434], eax
mov eax, dword [rsp + 0x1e0]
mov dword [rsp + 0x1431], eax
mov rax, qword [rsp + 0x2d0]
mov qword [rsp + 0x1438], rax
mov rax, qword [rsp + 0x2d8]
mov qword [rsp + 0x1440], rax
mov rax, qword [rsp + 0x2e0]
mov qword [rsp + 0x1448], rax
mov byte [rsp + 0x1450], 1
mov eax, dword [rsp + 0x1db]
mov dword [rsp + 0x1454], eax
mov eax, dword [rsp + 0x1d8]
mov dword [rsp + 0x1451], eax
movzx eax, byte [rsp + 0x88]
mov byte [rsp + 0x1458], al
mov eax, dword [rsp + 0x1d3]
mov dword [rsp + 0x145c], eax
mov eax, dword [rsp + 0x1d0]
mov dword [rsp + 0x1459], eax
mov eax, dword [rsp + 0x22c]
mov byte [rsp + 0x1460], al
mov eax, dword [rsp + 0x1cb]
mov dword [rsp + 0x1464], eax
mov eax, dword [rsp + 0x1c8]
mov dword [rsp + 0x1461], eax
mov rax, qword [rsp + 0x2e8]
mov qword [rsp + 0x1468], rax
mov rax, qword [rsp + 0x2f0]
mov qword [rsp + 0x1470], rax
mov rax, qword [rsp + 0x2f8]
mov qword [rsp + 0x1478], rax
mov byte [rsp + 0x1480], 1
mov eax, dword [rsp + 0x1c3]
mov dword [rsp + 0x1484], eax
mov eax, dword [rsp + 0x1c0]
mov dword [rsp + 0x1481], eax
movzx eax, byte [rsp + 0x98]
mov byte [rsp + 0x1488], al
mov eax, dword [rsp + 0x1bb]
mov dword [rsp + 0x148c], eax
mov eax, dword [rsp + 0x1b8]
mov dword [rsp + 0x1489], eax
mov eax, dword [rsp + 0x244]
mov byte [rsp + 0x1490], al
mov eax, dword [rsp + 0x1b3]
mov dword [rsp + 0x1494], eax
mov eax, dword [rsp + 0x1b0]
mov dword [rsp + 0x1491], eax
mov rax, qword [rsp + 0x310]
mov qword [rsp + 0x1498], rax
mov rax, qword [rsp + 0x318]
mov qword [rsp + 0x14a0], rax
mov rax, qword [rsp + 0x320]
mov qword [rsp + 0x14a8], rax
mov byte [rsp + 0x14b0], 1
mov eax, dword [rsp + 0x1ab]
mov dword [rsp + 0x14b4], eax
mov eax, dword [rsp + 0x1a8]
mov dword [rsp + 0x14b1], eax
movzx eax, byte [rsp + 0xa0]
mov byte [rsp + 0x14b8], al
mov eax, dword [rsp + 0x1a3]
mov dword [rsp + 0x14bc], eax
mov eax, dword [rsp + 0x1a0]
mov dword [rsp + 0x14b9], eax
mov eax, dword [rsp + 0x248]
mov byte [rsp + 0x14c0], al
mov eax, dword [rsp + 0x183]
mov dword [rsp + 0x14c4], eax
mov eax, dword [rsp + 0x180]
mov dword [rsp + 0x14c1], eax
mov rax, qword [rsp + 0x330]
mov qword [rsp + 0x14c8], rax
mov rax, qword [rsp + 0x338]
mov qword [rsp + 0x14d0], rax
mov rax, qword [rsp + 0x340]
mov qword [rsp + 0x14d8], rax
mov byte [rsp + 0x14e0], 1
mov eax, dword [rsp + 0x17b]
mov dword [rsp + 0x14e4], eax
mov eax, dword [rsp + 0x178]
mov dword [rsp + 0x14e1], eax
movzx eax, byte [rsp + 0x90]
mov byte [rsp + 0x14e8], al
mov eax, dword [rsp + 0x173]
mov dword [rsp + 0x14ec], eax
mov eax, dword [rsp + 0x170]
mov dword [rsp + 0x14e9], eax
mov eax, dword [rsp + 0x24c]
mov byte [rsp + 0x14f0], al
mov eax, dword [rsp + 0x16b]
mov dword [rsp + 0x14f4], eax
mov eax, dword [rsp + 0x168]
mov dword [rsp + 0x14f1], eax
mov rax, qword [rsp + 0x380]
mov qword [rsp + 0x14f8], rax
mov rax, qword [rsp + 0x308]
mov qword [rsp + 0x1500], rax
mov rax, qword [rsp + 0x378]
mov qword [rsp + 0x1508], rax
mov byte [rsp + 0x1510], 1
mov eax, dword [rsp + 0x163]
mov dword [rsp + 0x1514], eax
mov eax, dword [rsp + 0x160]
mov dword [rsp + 0x1511], eax
movzx eax, byte [rsp + 0x80]
mov byte [rsp + 0x1518], al
mov eax, dword [rsp + 0x15b]
mov dword [rsp + 0x151c], eax
mov eax, dword [rsp + 0x158]
mov dword [rsp + 0x1519], eax
mov eax, dword [rsp + 0x25c]
mov byte [rsp + 0x1520], al
mov eax, dword [rsp + 0x153]
mov dword [rsp + 0x1524], eax
mov eax, dword [rsp + 0x150]
mov dword [rsp + 0x1521], eax
mov rax, qword [rsp + 0x3a0]
mov qword [rsp + 0x1528], rax
mov rax, qword [rsp + 0x328]
mov qword [rsp + 0x1530], rax
mov rax, qword [rsp + 0x398]
mov qword [rsp + 0x1538], rax
mov byte [rsp + 0x1540], 1
mov eax, dword [rsp + 0x14b]
mov dword [rsp + 0x1544], eax
mov eax, dword [rsp + 0x148]
mov dword [rsp + 0x1541], eax
movzx eax, byte [rsp + 0x68]
mov byte [rsp + 0x1548], al
mov eax, dword [rsp + 0x143]
mov dword [rsp + 0x154c], eax
mov eax, dword [rsp + 0x140]
mov dword [rsp + 0x1549], eax
mov eax, dword [rsp + 0x26c]
mov byte [rsp + 0x1550], al
mov eax, dword [rsp + 0x13b]
mov dword [rsp + 0x1554], eax
mov eax, dword [rsp + 0x138]
mov dword [rsp + 0x1551], eax
mov rax, qword [rsp + 0x3a8]
mov qword [rsp + 0x1558], rax
mov rax, qword [rsp + 0x3b0]
mov qword [rsp + 0x1560], rax
mov rax, qword [rsp + 0x3b8]
mov qword [rsp + 0x1568], rax
mov byte [rsp + 0x1570], 1
mov eax, dword [rsp + 0x133]
mov dword [rsp + 0x1574], eax
mov eax, dword [rsp + 0x130]
mov dword [rsp + 0x1571], eax
movzx eax, byte [rsp + 0x58]
mov byte [rsp + 0x1578], al
mov eax, dword [rsp + 0x12b]
mov dword [rsp + 0x157c], eax
mov eax, dword [rsp + 0x128]
mov dword [rsp + 0x1579], eax
mov eax, dword [rsp + 0x290]
mov byte [rsp + 0x1580], al
mov eax, dword [rsp + 0x120]
mov ecx, dword [rsp + 0x123]
mov dword [rsp + 0x1584], ecx
mov dword [rsp + 0x1581], eax
mov eax, dword [rsp + 0x118]
mov ecx, dword [rsp + 0x11b]
mov dword [rsp + 0x15a4], ecx
mov dword [rsp + 0x15a1], eax
movzx eax, byte [rsp + 0x50]
mov byte [rsp + 0x15a8], al
mov eax, dword [rsp + 0x110]
mov ecx, dword [rsp + 0x113]
mov dword [rsp + 0x15ac], ecx
mov dword [rsp + 0x15a9], eax
mov byte [rsp + 0x15b0], 1
mov eax, dword [rsp + 0x108]
mov ecx, dword [rsp + 0x10b]
mov dword [rsp + 0x15b4], ecx
mov dword [rsp + 0x15b1], eax
mov eax, dword [rsp + 0x100]
mov ecx, dword [rsp + 0x103]
mov dword [rsp + 0x15d4], ecx
mov dword [rsp + 0x15d1], eax
movzx eax, byte [rsp + 0x48]
mov byte [rsp + 0x15d8], al
mov eax, dword [rsp + 0xf8]
mov ecx, dword [rsp + 0xfb]
mov dword [rsp + 0x15dc], ecx
mov dword [rsp + 0x15d9], eax
mov byte [rsp + 0x15e0], 0
mov eax, dword [rsp + 0xf0]
mov ecx, dword [rsp + 0xf3]
mov dword [rsp + 0x15e4], ecx
mov dword [rsp + 0x15e1], eax
mov eax, dword [rsp + 0xe8]
mov ecx, dword [rsp + 0xeb]
mov dword [rsp + 0x1604], ecx
mov dword [rsp + 0x1601], eax
movzx eax, byte [rsp + 0x40]
mov byte [rsp + 0x1608], al
mov eax, dword [rsp + 0xe0]
mov ecx, dword [rsp + 0xe3]
mov dword [rsp + 0x160c], ecx
mov dword [rsp + 0x1609], eax
mov byte [rsp + 0x1610], 0
mov eax, dword [rsp + 0xd8]
mov ecx, dword [rsp + 0xdb]
mov dword [rsp + 0x1614], ecx
mov dword [rsp + 0x1611], eax
mov eax, dword [rsp + 0xd0]
mov ecx, dword [rsp + 0xd3]
mov dword [rsp + 0x1634], ecx
mov dword [rsp + 0x1631], eax
movzx eax, byte [rsp + 0x38]
mov byte [rsp + 0x1638], al
mov eax, dword [rsp + 0xc8]
mov ecx, dword [rsp + 0xcb]
mov dword [rsp + 0x163c], ecx
mov dword [rsp + 0x1639], eax
mov byte [rsp + 0x1640], 0
mov eax, dword [rsp + 0xc0]
mov ecx, dword [rsp + 0xc3]
mov dword [rsp + 0x1644], ecx
mov dword [rsp + 0x1641], eax
mov esi, 0x28
movabs rdi, 0xaaaaaaaaaaaaaaaa
jmp 0x415e4f
add rsi, 0x30
cmp rsi, 0x2c8
je 0x417210
cmp byte [rsp + rsi + 0x13a8], 0
je 0x415e3e
test byte [rsp + rsi + 0x13a0], 1
je 0x415e3e
mov rbx, qword [rsp + rsi + 0x1388]
mov r15, qword [rsp + rsi + 0x1380]
test rbx, rbx
cmove r15, rdi
je 0x415e3e
mov rax, qword [rsp + 0xa8]
mov r12, qword [rax]
mov r13, qword [rax + 8]
mov rcx, r15
mov dl, 0xaa
mov r8, rbx
call fcn.00440060
mov qword [rsp + 0x20], r14
mov rcx, r12
mov rdx, r15
mov r8, rbx
xor r9d, r9d
call qword [r13 + 0x10]
jmp 0x415e3e
mov rax, qword [rsp + 0x3e40]
mov qword [rsp + 0x310], rax
mov rax, qword [rsp + 0x3e48]
mov qword [rsp + 0x318], rax
mov eax, dword [rdi + r12]
mov qword [rsp + 0x320], rax
mov byte [rsp + 0xa0], 1
mov al, 1
mov dword [rsp + 0x248], eax
mov rax, qword [rbx + 0x10]
lea rcx, [rax + 0x14]
cmp rcx, qword [rbx + 8]
jbe 0x40f864
jmp 0x418ff8
mov rax, qword [rsp + 0x278]
mov qword [rsp + 0x1108], rax
mov rax, qword [rsp + 0x280]
mov qword [rsp + 0x1110], rax
mov rax, qword [rsp + 0xb8]
mov qword [rsp + 0x1118], rax
mov byte [rsp + 0x1120], 1
mov eax, dword [rsp + 0x198]
mov dword [rsp + 0x1121], eax
mov eax, dword [rsp + 0x19b]
mov dword [rsp + 0x1124], eax
movzx eax, byte [rsp + 0x60]
mov byte [rsp + 0x1128], al
mov eax, dword [rsp + 0x190]
mov dword [rsp + 0x1129], eax
mov eax, dword [rsp + 0x193]
mov dword [rsp + 0x112c], eax
mov eax, dword [rsp + 0x250]
mov byte [rsp + 0x1130], al
mov eax, dword [rsp + 0x188]
mov dword [rsp + 0x1131], eax
mov eax, dword [rsp + 0x18b]
mov dword [rsp + 0x1134], eax
mov rax, qword [rsp + 0x298]
mov qword [rsp + 0x1138], rax
mov rax, qword [rsp + 0x2a0]
mov qword [rsp + 0x1140], rax
mov rax, qword [rsp + 0x2a8]
mov qword [rsp + 0x1148], rax
mov byte [rsp + 0x1150], 1
mov eax, dword [rsp + 0x208]
mov dword [rsp + 0x1151], eax
mov eax, dword [rsp + 0x20b]
mov dword [rsp + 0x1154], eax
movzx eax, byte [rsp + 0x70]
mov byte [rsp + 0x1158], al
mov eax, dword [rsp + 0x203]
mov dword [rsp + 0x115c], eax
mov eax, dword [rsp + 0x200]
mov dword [rsp + 0x1159], eax
mov eax, dword [rsp + 0x260]
mov byte [rsp + 0x1160], al
mov eax, dword [rsp + 0x1fb]
mov dword [rsp + 0x1164], eax
mov eax, dword [rsp + 0x1f8]
mov dword [rsp + 0x1161], eax
mov rax, qword [rsp + 0x2b0]
mov qword [rsp + 0x1168], rax
mov rax, qword [rsp + 0x2b8]
mov qword [rsp + 0x1170], rax
mov rax, qword [rsp + 0x2c0]
mov qword [rsp + 0x1178], rax
mov byte [rsp + 0x1180], 1
mov eax, dword [rsp + 0x1f3]
mov dword [rsp + 0x1184], eax
mov eax, dword [rsp + 0x1f0]
mov dword [rsp + 0x1181], eax
movzx eax, byte [rsp + 0x78]
mov byte [rsp + 0x1188], al
mov eax, dword [rsp + 0x1eb]
mov dword [rsp + 0x118c], eax
mov eax, dword [rsp + 0x1e8]
mov dword [rsp + 0x1189], eax
mov eax, dword [rsp + 0x21c]
mov byte [rsp + 0x1190], al
mov eax, dword [rsp + 0x1e3]
mov dword [rsp + 0x1194], eax
mov eax, dword [rsp + 0x1e0]
mov dword [rsp + 0x1191], eax
mov rax, qword [rsp + 0x2d0]
mov qword [rsp + 0x1198], rax
mov rax, qword [rsp + 0x2d8]
mov qword [rsp + 0x11a0], rax
mov rax, qword [rsp + 0x2e0]
mov qword [rsp + 0x11a8], rax
mov byte [rsp + 0x11b0], 1
mov eax, dword [rsp + 0x1db]
mov dword [rsp + 0x11b4], eax
mov eax, dword [rsp + 0x1d8]
mov dword [rsp + 0x11b1], eax
movzx eax, byte [rsp + 0x88]
mov byte [rsp + 0x11b8], al
mov eax, dword [rsp + 0x1d3]
mov dword [rsp + 0x11bc], eax
mov eax, dword [rsp + 0x1d0]
mov dword [rsp + 0x11b9], eax
mov eax, dword [rsp + 0x22c]
mov byte [rsp + 0x11c0], al
mov eax, dword [rsp + 0x1cb]
mov dword [rsp + 0x11c4], eax
mov eax, dword [rsp + 0x1c8]
mov dword [rsp + 0x11c1], eax
mov rax, qword [rsp + 0x2e8]
mov qword [rsp + 0x11c8], rax
mov rax, qword [rsp + 0x2f0]
mov qword [rsp + 0x11d0], rax
mov rax, qword [rsp + 0x2f8]
mov qword [rsp + 0x11d8], rax
mov byte [rsp + 0x11e0], 1
mov eax, dword [rsp + 0x1c3]
mov dword [rsp + 0x11e4], eax
mov eax, dword [rsp + 0x1c0]
mov dword [rsp + 0x11e1], eax
movzx eax, byte [rsp + 0x98]
mov byte [rsp + 0x11e8], al
mov eax, dword [rsp + 0x1bb]
mov dword [rsp + 0x11ec], eax
mov eax, dword [rsp + 0x1b8]
mov dword [rsp + 0x11e9], eax
mov eax, dword [rsp + 0x244]
mov byte [rsp + 0x11f0], al
mov eax, dword [rsp + 0x1b3]
mov dword [rsp + 0x11f4], eax
mov eax, dword [rsp + 0x1b0]
mov dword [rsp + 0x11f1], eax
mov rax, qword [rsp + 0x310]
mov qword [rsp + 0x11f8], rax
mov rax, qword [rsp + 0x318]
mov qword [rsp + 0x1200], rax
mov rax, qword [rsp + 0x320]
mov qword [rsp + 0x1208], rax
mov byte [rsp + 0x1210], 1
mov eax, dword [rsp + 0x1ab]
mov dword [rsp + 0x1214], eax
mov eax, dword [rsp + 0x1a8]
mov dword [rsp + 0x1211], eax
movzx eax, byte [rsp + 0xa0]
mov byte [rsp + 0x1218], al
mov eax, dword [rsp + 0x1a3]
mov dword [rsp + 0x121c], eax
mov eax, dword [rsp + 0x1a0]
mov dword [rsp + 0x1219], eax
mov eax, dword [rsp + 0x248]
mov byte [rsp + 0x1220], al
mov eax, dword [rsp + 0x183]
mov dword [rsp + 0x1224], eax
mov eax, dword [rsp + 0x180]
mov dword [rsp + 0x1221], eax
mov rax, qword [rsp + 0x330]
mov qword [rsp + 0x1228], rax
mov rax, qword [rsp + 0x338]
mov qword [rsp + 0x1230], rax
mov rax, qword [rsp + 0x340]
mov qword [rsp + 0x1238], rax
mov byte [rsp + 0x1240], 1
mov eax, dword [rsp + 0x17b]
mov dword [rsp + 0x1244], eax
mov eax, dword [rsp + 0x178]
mov dword [rsp + 0x1241], eax
movzx eax, byte [rsp + 0x90]
mov byte [rsp + 0x1248], al
mov eax, dword [rsp + 0x173]
mov dword [rsp + 0x124c], eax
mov eax, dword [rsp + 0x170]
mov dword [rsp + 0x1249], eax
mov eax, dword [rsp + 0x24c]
mov byte [rsp + 0x1250], al
mov eax, dword [rsp + 0x16b]
mov dword [rsp + 0x1254], eax
mov eax, dword [rsp + 0x168]
mov dword [rsp + 0x1251], eax
mov rax, qword [rsp + 0x380]
mov qword [rsp + 0x1258], rax
mov rax, qword [rsp + 0x308]
mov qword [rsp + 0x1260], rax
mov rax, qword [rsp + 0x378]
mov qword [rsp + 0x1268], rax
mov byte [rsp + 0x1270], 1
mov eax, dword [rsp + 0x163]
mov dword [rsp + 0x1274], eax
mov eax, dword [rsp + 0x160]
mov dword [rsp + 0x1271], eax
movzx eax, byte [rsp + 0x80]
mov byte [rsp + 0x1278], al
mov eax, dword [rsp + 0x15b]
mov dword [rsp + 0x127c], eax
mov eax, dword [rsp + 0x158]
mov dword [rsp + 0x1279], eax
mov eax, dword [rsp + 0x25c]
mov byte [rsp + 0x1280], al
mov eax, dword [rsp + 0x153]
mov dword [rsp + 0x1284], eax
mov eax, dword [rsp + 0x150]
mov dword [rsp + 0x1281], eax
mov rax, qword [rsp + 0x3a0]
mov qword [rsp + 0x1288], rax
mov rax, qword [rsp + 0x328]
mov qword [rsp + 0x1290], rax
mov rax, qword [rsp + 0x398]
mov qword [rsp + 0x1298], rax
mov byte [rsp + 0x12a0], 1
mov eax, dword [rsp + 0x14b]
mov dword [rsp + 0x12a4], eax
mov eax, dword [rsp + 0x148]
mov dword [rsp + 0x12a1], eax
movzx eax, byte [rsp + 0x68]
mov byte [rsp + 0x12a8], al
mov eax, dword [rsp + 0x143]
mov dword [rsp + 0x12ac], eax
mov eax, dword [rsp + 0x140]
mov dword [rsp + 0x12a9], eax
mov eax, dword [rsp + 0x26c]
mov byte [rsp + 0x12b0], al
mov eax, dword [rsp + 0x13b]
mov dword [rsp + 0x12b4], eax
mov eax, dword [rsp + 0x138]
mov dword [rsp + 0x12b1], eax
mov rax, qword [rsp + 0x3a8]
mov qword [rsp + 0x12b8], rax
mov rax, qword [rsp + 0x3b0]
mov qword [rsp + 0x12c0], rax
mov rax, qword [rsp + 0x3b8]
mov qword [rsp + 0x12c8], rax
mov byte [rsp + 0x12d0], 1
mov eax, dword [rsp + 0x133]
mov dword [rsp + 0x12d4], eax
mov eax, dword [rsp + 0x130]
mov dword [rsp + 0x12d1], eax
movzx eax, byte [rsp + 0x58]
mov byte [rsp + 0x12d8], al
mov eax, dword [rsp + 0x12b]
mov dword [rsp + 0x12dc], eax
mov eax, dword [rsp + 0x128]
mov dword [rsp + 0x12d9], eax
mov eax, dword [rsp + 0x290]
mov byte [rsp + 0x12e0], al
mov eax, dword [rsp + 0x123]
mov dword [rsp + 0x12e4], eax
mov eax, dword [rsp + 0x120]
mov dword [rsp + 0x12e1], eax
mov rax, qword [rsp + 0x3d0]
mov qword [rsp + 0x12e8], rax
mov rax, qword [rsp + 0x390]
mov qword [rsp + 0x12f0], rax
mov rax, qword [rsp + 0x3c8]
mov qword [rsp + 0x12f8], rax
mov byte [rsp + 0x1300], 1
mov eax, dword [rsp + 0x11b]
mov dword [rsp + 0x1304], eax
mov eax, dword [rsp + 0x118]
mov dword [rsp + 0x1301], eax
movzx eax, byte [rsp + 0x50]
mov byte [rsp + 0x1308], al
mov eax, dword [rsp + 0x113]
mov dword [rsp + 0x130c], eax
mov eax, dword [rsp + 0x110]
mov dword [rsp + 0x1309], eax
mov eax, dword [rsp + 0x2cc]
mov byte [rsp + 0x1310], al
mov eax, dword [rsp + 0x108]
mov ecx, dword [rsp + 0x10b]
mov dword [rsp + 0x1314], ecx
mov dword [rsp + 0x1311], eax
mov eax, dword [rsp + 0x100]
mov ecx, dword [rsp + 0x103]
mov dword [rsp + 0x1334], ecx
mov dword [rsp + 0x1331], eax
movzx eax, byte [rsp + 0x48]
mov byte [rsp + 0x1338], al
mov eax, dword [rsp + 0xf8]
mov ecx, dword [rsp + 0xfb]
mov dword [rsp + 0x133c], ecx
mov dword [rsp + 0x1339], eax
mov byte [rsp + 0x1340], 1
mov eax, dword [rsp + 0xf0]
mov ecx, dword [rsp + 0xf3]
mov dword [rsp + 0x1344], ecx
mov dword [rsp + 0x1341], eax
mov eax, dword [rsp + 0xe8]
mov ecx, dword [rsp + 0xeb]
mov dword [rsp + 0x1364], ecx
mov dword [rsp + 0x1361], eax
movzx eax, byte [rsp + 0x40]
mov byte [rsp + 0x1368], al
mov eax, dword [rsp + 0xe0]
mov ecx, dword [rsp + 0xe3]
mov dword [rsp + 0x136c], ecx
mov dword [rsp + 0x1369], eax
mov byte [rsp + 0x1370], 0
mov eax, dword [rsp + 0xd8]
mov ecx, dword [rsp + 0xdb]
mov dword [rsp + 0x1374], ecx
mov dword [rsp + 0x1371], eax
mov eax, dword [rsp + 0xd0]
mov ecx, dword [rsp + 0xd3]
mov dword [rsp + 0x1394], ecx
mov dword [rsp + 0x1391], eax
movzx eax, byte [rsp + 0x38]
mov byte [rsp + 0x1398], al
mov eax, dword [rsp + 0xc8]
mov ecx, dword [rsp + 0xcb]
mov dword [rsp + 0x139c], ecx
mov dword [rsp + 0x1399], eax
mov byte [rsp + 0x13a0], 0
mov eax, dword [rsp + 0xc0]
mov ecx, dword [rsp + 0xc3]
mov dword [rsp + 0x13a4], ecx
mov dword [rsp + 0x13a1], eax
mov esi, 0x28
movabs rdi, 0xaaaaaaaaaaaaaaaa
jmp 0x41678e
add rsi, 0x30
cmp rsi, 0x2c8
je 0x417210
cmp byte [rsp + rsi + 0x1108], 0
je 0x41677d
test byte [rsp + rsi + 0x1100], 1
je 0x41677d
mov rbx, qword [rsp + rsi + 0x10e8]
mov r15, qword [rsp + rsi + 0x10e0]
test rbx, rbx
cmove r15, rdi
je 0x41677d
mov rax, qword [rsp + 0xa8]
mov r12, qword [rax]
mov r13, qword [rax + 8]
mov rcx, r15
mov dl, 0xaa
mov r8, rbx
call fcn.00440060
mov qword [rsp + 0x20], r14
mov rcx, r12
mov rdx, r15
mov r8, rbx
xor r9d, r9d
call qword [r13 + 0x10]
jmp 0x41677d
mov rax, qword [rsp + 0x3e40]
mov qword [rsp + 0x330], rax
mov rax, qword [rsp + 0x3e48]
mov qword [rsp + 0x338], rax
mov eax, dword [rdi + r12]
mov qword [rsp + 0x340], rax
mov byte [rsp + 0x90], 1
mov al, 1
mov dword [rsp + 0x24c], eax
mov rax, qword [rbx + 0x10]
lea rcx, [rax + 0x14]
cmp rcx, qword [rbx + 8]
jbe 0x4101c4
jmp 0x418ff8
mov rax, qword [rsp + 0xa8]
mov rbx, qword [rax]
mov rsi, qword [rax + 8]
mov rcx, qword [rsp + 0x210]
test rcx, rcx
je 0x41687b
movabs rax, 0x7ffffffffffffff
cmp rcx, rax
ja 0x418230
mov rdi, qword [rsp + 0x230]
jmp 0x416887
movabs r15, 0xaaaaaaaaaaaaaaaa
xor edi, edi
test rdi, rdi
je 0x41846c
mov rcx, r15
mov dl, 0xaa
mov r8, rdi
call fcn.00440060
mov rax, qword [rsp + 0x270]
mov qword [rsp + 0x20], rax
mov rcx, rbx
mov rdx, r15
jmp 0x417793
mov rax, qword [rsp + 0x278]
mov qword [rsp + 0x830], rax
mov rax, qword [rsp + 0x280]
mov qword [rsp + 0x838], rax
mov rax, qword [rsp + 0xb8]
mov qword [rsp + 0x840], rax
mov byte [rsp + 0x848], 1
mov eax, dword [rsp + 0x198]
mov dword [rsp + 0x849], eax
mov eax, dword [rsp + 0x19b]
mov dword [rsp + 0x84c], eax
movzx eax, byte [rsp + 0x60]
mov byte [rsp + 0x850], al
mov eax, dword [rsp + 0x190]
mov dword [rsp + 0x851], eax
mov eax, dword [rsp + 0x193]
mov dword [rsp + 0x854], eax
mov eax, dword [rsp + 0x250]
mov byte [rsp + 0x858], al
mov eax, dword [rsp + 0x188]
mov dword [rsp + 0x859], eax
mov eax, dword [rsp + 0x18b]
mov dword [rsp + 0x85c], eax
mov rax, qword [rsp + 0x298]
mov qword [rsp + 0x860], rax
mov rax, qword [rsp + 0x2a0]
mov qword [rsp + 0x868], rax
mov rax, qword [rsp + 0x2a8]
mov qword [rsp + 0x870], rax
mov byte [rsp + 0x878], 1
mov eax, dword [rsp + 0x208]
mov dword [rsp + 0x879], eax
mov eax, dword [rsp + 0x20b]
mov dword [rsp + 0x87c], eax
movzx eax, byte [rsp + 0x70]
mov byte [rsp + 0x880], al
mov eax, dword [rsp + 0x203]
mov dword [rsp + 0x884], eax
mov eax, dword [rsp + 0x200]
mov dword [rsp + 0x881], eax
mov eax, dword [rsp + 0x260]
mov byte [rsp + 0x888], al
mov eax, dword [rsp + 0x1fb]
mov dword [rsp + 0x88c], eax
mov eax, dword [rsp + 0x1f8]
mov dword [rsp + 0x889], eax
mov rax, qword [rsp + 0x2b0]
mov qword [rsp + 0x890], rax
mov rax, qword [rsp + 0x2b8]
mov qword [rsp + 0x898], rax
mov rax, qword [rsp + 0x2c0]
mov qword [rsp + 0x8a0], rax
mov byte [rsp + 0x8a8], 1
mov eax, dword [rsp + 0x1f3]
mov dword [rsp + 0x8ac], eax
mov eax, dword [rsp + 0x1f0]
mov dword [rsp + 0x8a9], eax
movzx eax, byte [rsp + 0x78]
mov byte [rsp + 0x8b0], al
mov eax, dword [rsp + 0x1eb]
mov dword [rsp + 0x8b4], eax
mov eax, dword [rsp + 0x1e8]
mov dword [rsp + 0x8b1], eax
mov eax, dword [rsp + 0x21c]
mov byte [rsp + 0x8b8], al
mov eax, dword [rsp + 0x1e3]
mov dword [rsp + 0x8bc], eax
mov eax, dword [rsp + 0x1e0]
mov dword [rsp + 0x8b9], eax
mov rax, qword [rsp + 0x2d0]
mov qword [rsp + 0x8c0], rax
mov rax, qword [rsp + 0x2d8]
mov qword [rsp + 0x8c8], rax
mov rax, qword [rsp + 0x2e0]
mov qword [rsp + 0x8d0], rax
mov byte [rsp + 0x8d8], 1
mov eax, dword [rsp + 0x1db]
mov dword [rsp + 0x8dc], eax
mov eax, dword [rsp + 0x1d8]
mov dword [rsp + 0x8d9], eax
movzx eax, byte [rsp + 0x88]
mov byte [rsp + 0x8e0], al
mov eax, dword [rsp + 0x1d3]
mov dword [rsp + 0x8e4], eax
mov eax, dword [rsp + 0x1d0]
mov dword [rsp + 0x8e1], eax
mov eax, dword [rsp + 0x22c]
mov byte [rsp + 0x8e8], al
mov eax, dword [rsp + 0x1cb]
mov dword [rsp + 0x8ec], eax
mov eax, dword [rsp + 0x1c8]
mov dword [rsp + 0x8e9], eax
mov rax, qword [rsp + 0x2e8]
mov qword [rsp + 0x8f0], rax
mov rax, qword [rsp + 0x2f0]
mov qword [rsp + 0x8f8], rax
mov rax, qword [rsp + 0x2f8]
mov qword [rsp + 0x900], rax
mov byte [rsp + 0x908], 1
mov eax, dword [rsp + 0x1c3]
mov dword [rsp + 0x90c], eax
mov eax, dword [rsp + 0x1c0]
mov dword [rsp + 0x909], eax
movzx eax, byte [rsp + 0x98]
mov byte [rsp + 0x910], al
mov eax, dword [rsp + 0x1bb]
mov dword [rsp + 0x914], eax
mov eax, dword [rsp + 0x1b8]
mov dword [rsp + 0x911], eax
mov eax, dword [rsp + 0x244]
mov byte [rsp + 0x918], al
mov eax, dword [rsp + 0x1b3]
mov dword [rsp + 0x91c], eax
mov eax, dword [rsp + 0x1b0]
mov dword [rsp + 0x919], eax
mov rax, qword [rsp + 0x310]
mov qword [rsp + 0x920], rax
mov rax, qword [rsp + 0x318]
mov qword [rsp + 0x928], rax
mov rax, qword [rsp + 0x320]
mov qword [rsp + 0x930], rax
mov byte [rsp + 0x938], 1
mov eax, dword [rsp + 0x1ab]
mov dword [rsp + 0x93c], eax
mov eax, dword [rsp + 0x1a8]
mov dword [rsp + 0x939], eax
movzx eax, byte [rsp + 0xa0]
mov byte [rsp + 0x940], al
mov eax, dword [rsp + 0x1a3]
mov dword [rsp + 0x944], eax
mov eax, dword [rsp + 0x1a0]
mov dword [rsp + 0x941], eax
mov eax, dword [rsp + 0x248]
mov byte [rsp + 0x948], al
mov eax, dword [rsp + 0x183]
mov dword [rsp + 0x94c], eax
mov eax, dword [rsp + 0x180]
mov dword [rsp + 0x949], eax
mov rax, qword [rsp + 0x330]
mov qword [rsp + 0x950], rax
mov rax, qword [rsp + 0x338]
mov qword [rsp + 0x958], rax
mov rax, qword [rsp + 0x340]
mov qword [rsp + 0x960], rax
mov byte [rsp + 0x968], 1
mov eax, dword [rsp + 0x17b]
mov dword [rsp + 0x96c], eax
mov eax, dword [rsp + 0x178]
mov dword [rsp + 0x969], eax
movzx eax, byte [rsp + 0x90]
mov byte [rsp + 0x970], al
mov eax, dword [rsp + 0x173]
mov dword [rsp + 0x974], eax
mov eax, dword [rsp + 0x170]
mov dword [rsp + 0x971], eax
mov eax, dword [rsp + 0x24c]
mov byte [rsp + 0x978], al
mov eax, dword [rsp + 0x16b]
mov dword [rsp + 0x97c], eax
mov eax, dword [rsp + 0x168]
mov dword [rsp + 0x979], eax
mov rax, qword [rsp + 0x380]
mov qword [rsp + 0x980], rax
mov rax, qword [rsp + 0x308]
mov qword [rsp + 0x988], rax
mov rax, qword [rsp + 0x378]
mov qword [rsp + 0x990], rax
mov byte [rsp + 0x998], 1
mov eax, dword [rsp + 0x163]
mov dword [rsp + 0x99c], eax
mov eax, dword [rsp + 0x160]
mov dword [rsp + 0x999], eax
movzx eax, byte [rsp + 0x80]
mov byte [rsp + 0x9a0], al
mov eax, dword [rsp + 0x15b]
mov dword [rsp + 0x9a4], eax
mov eax, dword [rsp + 0x158]
mov dword [rsp + 0x9a1], eax
mov eax, dword [rsp + 0x25c]
mov byte [rsp + 0x9a8], al
mov eax, dword [rsp + 0x153]
mov dword [rsp + 0x9ac], eax
mov eax, dword [rsp + 0x150]
mov dword [rsp + 0x9a9], eax
mov rax, qword [rsp + 0x3a0]
mov qword [rsp + 0x9b0], rax
mov rax, qword [rsp + 0x328]
mov qword [rsp + 0x9b8], rax
mov rax, qword [rsp + 0x398]
mov qword [rsp + 0x9c0], rax
mov byte [rsp + 0x9c8], 1
mov eax, dword [rsp + 0x14b]
mov dword [rsp + 0x9cc], eax
mov eax, dword [rsp + 0x148]
mov dword [rsp + 0x9c9], eax
movzx eax, byte [rsp + 0x68]
mov byte [rsp + 0x9d0], al
mov eax, dword [rsp + 0x143]
mov dword [rsp + 0x9d4], eax
mov eax, dword [rsp + 0x140]
mov dword [rsp + 0x9d1], eax
mov eax, dword [rsp + 0x26c]
mov byte [rsp + 0x9d8], al
mov eax, dword [rsp + 0x13b]
mov dword [rsp + 0x9dc], eax
mov eax, dword [rsp + 0x138]
mov dword [rsp + 0x9d9], eax
mov rax, qword [rsp + 0x3a8]
mov qword [rsp + 0x9e0], rax
mov rax, qword [rsp + 0x3b0]
mov qword [rsp + 0x9e8], rax
mov rax, qword [rsp + 0x3b8]
mov qword [rsp + 0x9f0], rax
mov byte [rsp + 0x9f8], 1
mov eax, dword [rsp + 0x133]
mov dword [rsp + 0x9fc], eax
mov eax, dword [rsp + 0x130]
mov dword [rsp + 0x9f9], eax
movzx eax, byte [rsp + 0x58]
mov byte [rsp + 0xa00], al
mov eax, dword [rsp + 0x12b]
mov dword [rsp + 0xa04], eax
mov eax, dword [rsp + 0x128]
mov dword [rsp + 0xa01], eax
mov eax, dword [rsp + 0x290]
mov byte [rsp + 0xa08], al
mov eax, dword [rsp + 0x123]
mov dword [rsp + 0xa0c], eax
mov eax, dword [rsp + 0x120]
mov dword [rsp + 0xa09], eax
mov rax, qword [rsp + 0x3d0]
mov qword [rsp + 0xa10], rax
mov rax, qword [rsp + 0x390]
mov qword [rsp + 0xa18], rax
mov rax, qword [rsp + 0x3c8]
mov qword [rsp + 0xa20], rax
mov byte [rsp + 0xa28], 1
mov eax, dword [rsp + 0x11b]
mov dword [rsp + 0xa2c], eax
mov eax, dword [rsp + 0x118]
mov dword [rsp + 0xa29], eax
movzx eax, byte [rsp + 0x50]
mov byte [rsp + 0xa30], al
mov eax, dword [rsp + 0x113]
mov dword [rsp + 0xa34], eax
mov eax, dword [rsp + 0x110]
mov dword [rsp + 0xa31], eax
mov eax, dword [rsp + 0x2cc]
mov byte [rsp + 0xa38], al
mov eax, dword [rsp + 0x10b]
mov dword [rsp + 0xa3c], eax
mov eax, dword [rsp + 0x108]
mov dword [rsp + 0xa39], eax
mov rax, qword [rsp + 0x3e8]
mov qword [rsp + 0xa40], rax
mov qword [rsp + 0xa48], rcx
mov rax, qword [rsp + 0x3e0]
mov qword [rsp + 0xa50], rax
mov byte [rsp + 0xa58], 1
mov eax, dword [rsp + 0x103]
mov dword [rsp + 0xa5c], eax
mov eax, dword [rsp + 0x100]
mov dword [rsp + 0xa59], eax
movzx eax, byte [rsp + 0x48]
mov byte [rsp + 0xa60], al
mov eax, dword [rsp + 0xfb]
mov dword [rsp + 0xa64], eax
mov eax, dword [rsp + 0xf8]
mov dword [rsp + 0xa61], eax
mov eax, dword [rsp + 0x304]
mov byte [rsp + 0xa68], al
mov eax, dword [rsp + 0xf3]
mov dword [rsp + 0xa6c], eax
mov eax, dword [rsp + 0xf0]
mov dword [rsp + 0xa69], eax
mov rax, qword [rsp + 0x3f8]
mov qword [rsp + 0xa70], rax
mov rax, qword [rsp + 0x408]
mov qword [rsp + 0xa78], rax
mov rax, qword [rsp + 0x400]
mov qword [rsp + 0xa80], rax
mov byte [rsp + 0xa88], 1
mov eax, dword [rsp + 0xeb]
mov dword [rsp + 0xa8c], eax
mov eax, dword [rsp + 0xe8]
mov dword [rsp + 0xa89], eax
movzx eax, byte [rsp + 0x40]
mov byte [rsp + 0xa90], al
mov eax, dword [rsp + 0xe3]
mov dword [rsp + 0xa94], eax
mov eax, dword [rsp + 0xe0]
mov dword [rsp + 0xa91], eax
mov eax, dword [rsp + 0x34c]
mov byte [rsp + 0xa98], al
mov eax, dword [rsp + 0xd8]
mov ecx, dword [rsp + 0xdb]
mov dword [rsp + 0xa9c], ecx
mov dword [rsp + 0xa99], eax
mov eax, dword [rsp + 0xd0]
mov ecx, dword [rsp + 0xd3]
mov dword [rsp + 0xabc], ecx
mov dword [rsp + 0xab9], eax
movzx eax, byte [rsp + 0x38]
mov byte [rsp + 0xac0], al
mov eax, dword [rsp + 0xc8]
mov ecx, dword [rsp + 0xcb]
mov dword [rsp + 0xac4], ecx
mov dword [rsp + 0xac1], eax
mov byte [rsp + 0xac8], 1
mov eax, dword [rsp + 0xc0]
mov ecx, dword [rsp + 0xc3]
mov dword [rsp + 0xacc], ecx
mov dword [rsp + 0xac9], eax
mov esi, 0x28
movabs rdi, 0xaaaaaaaaaaaaaaaa
jmp 0x4171b0
add rsi, 0x30
cmp rsi, 0x2c8
je 0x417210
cmp byte [rsp + rsi + 0x830], 0
je 0x4171a3
test byte [rsp + rsi + 0x828], 1
je 0x4171a3
mov rbx, qword [rsp + rsi + 0x810]
mov r15, qword [rsp + rsi + 0x808]
test rbx, rbx
cmove r15, rdi
je 0x4171a3
mov rax, qword [rsp + 0xa8]
mov r12, qword [rax]
mov r13, qword [rax + 8]
mov rcx, r15
mov dl, 0xaa
mov r8, rbx
call fcn.00440060
mov qword [rsp + 0x20], r14
mov rcx, r12
mov rdx, r15
mov r8, rbx
xor r9d, r9d
call qword [r13 + 0x10]
jmp 0x4171a3
mov rax, qword [rsp + 0x220]
mov word [rax + 0x428], 0x11
jmp 0x417ca4
mov rax, qword [rsp + 0x30a8]
mov qword [rsp + 0x3a8], rax
mov rax, qword [rsp + 0x30b0]
mov qword [rsp + 0x3b0], rax
mov eax, dword [r14 + 0xc]
mov qword [rsp + 0x3b8], rax
mov byte [rsp + 0x58], 1
mov al, 1
mov dword [rsp + 0x290], eax
mov rax, qword [rbx + 0x10]
lea rcx, [rax + 0x14]
cmp rcx, qword [rbx + 8]
jbe 0x410f21
jmp 0x418ff8
mov rax, qword [rsp + 0x30c0]
mov qword [rsp + 0x3f8], rax
mov rax, qword [rsp + 0x30c8]
mov qword [rsp + 0x408], rax
mov eax, dword [r14 + 0xc]
mov qword [rsp + 0x400], rax
mov byte [rsp + 0x40], 1
mov al, 1
mov dword [rsp + 0x34c], eax
mov rax, qword [rbx + 0x10]
lea r12, [rax + 0x14]
cmp r12, qword [rbx + 8]
jbe 0x411d3b
jmp 0x418ff8
lea rcx, [rsp + 0x1be40]
call fcn.00407ee0
mov bp, 0x15
jmp 0x41755e
mov r12, 0xffffffffffffffff
lea rax, [r15 + r8]
cmp r12, rax
mov rcx, r12
jae 0x4172fe
lea rax, [rcx + r8]
cmp rax, r15
ja 0x419394
mov qword [rsp + 0x380], rcx
mov rdx, r15
call fcn.0043fd00
mov eax, dword [rsi + rdi]
mov qword [rsp + 0x378], rax
mov byte [rsp + 0x80], 1
mov al, 1
mov dword [rsp + 0x25c], eax
mov rax, qword [rbx + 0x10]
lea rcx, [rax + 0x14]
cmp rcx, qword [rbx + 8]
jbe 0x410392
jmp 0x418ff8
mov r12, 0xffffffffffffffff
lea rax, [r15 + r8]
cmp r12, rax
mov rcx, r12
jae 0x417361
lea rax, [rcx + r8]
cmp rax, r15
ja 0x419394
mov qword [rsp + 0x3a0], rcx
mov rdx, r15
call fcn.0043fd00
mov eax, dword [rsi + rdi]
mov qword [rsp + 0x398], rax
mov byte [rsp + 0x68], 1
mov al, 1
mov dword [rsp + 0x26c], eax
mov rax, qword [rbx + 0x10]
lea rcx, [rax + 0x14]
cmp rcx, qword [rbx + 8]
jbe 0x41055f
jmp 0x418ff8
mov rax, qword [rsp + 0xa8]
mov rbx, qword [rax]
mov rsi, qword [rax + 8]
mov rcx, qword [rsp + 0x210]
test rcx, rcx
je 0x4176d1
movabs rax, 0x7ffffffffffffff
cmp rcx, rax
mov r13, qword [rsp + 0x238]
mov r14, qword [rsp + 0x270]
jbe 0x41742a
jmp 0x418230
mov ebp, eax
mov rax, qword [rsp + 0xa8]
mov rbx, qword [rax]
mov rsi, qword [rax + 8]
mov rcx, qword [rsp + 0x210]
test rcx, rcx
mov r14, qword [rsp + 0x270]
je 0x417766
movabs rax, 0x7ffffffffffffff
cmp rcx, rax
ja 0x418230
mov r13, qword [rsp + 0x238]
mov rdi, qword [rsp + 0x230]
jmp 0x417772
mov r12, 0xffffffffffffffff
lea rax, [r15 + r8]
cmp r12, rax
mov rcx, r12
jae 0x417457
lea rax, [rcx + r8]
cmp rax, r15
ja 0x419394
mov qword [rsp + 0x3d0], rcx
mov rdx, r15
call fcn.0043fd00
mov eax, dword [rsi + rdi]
mov qword [rsp + 0x3c8], rax
mov byte [rsp + 0x50], 1
mov al, 1
mov dword [rsp + 0x2cc], eax
mov rax, qword [rbx + 0x10]
lea rcx, [rax + 0x14]
cmp rcx, qword [rbx + 8]
jbe 0x4110ef
jmp 0x418ff8
mov rcx, 0xffffffffffffffff
lea rax, [r15 + r8]
cmp rcx, rax
jae 0x4174b4
lea rax, [rcx + r8]
cmp rax, r15
ja 0x419394
mov qword [rsp + 0x3e8], rcx
mov rdx, r15
call fcn.0043fd00
mov eax, dword [rsi + rdi]
mov qword [rsp + 0x3e0], rax
mov byte [rsp + 0x48], 1
mov al, 1
mov dword [rsp + 0x304], eax
mov rax, qword [rbx + 0x10]
lea rcx, [rax + 0x14]
cmp rcx, qword [rbx + 8]
jbe 0x4112b3
jmp 0x418ff8
lea rcx, [rsp + 0x1be40]
call fcn.00407ee0
jmp 0x41755e
mov bp, 0x11
jmp 0x41846c
mov rbp, 0xffffffffffffffff
lea rax, [r15 + r12]
cmp rbp, rax
jae 0x417529
lea rax, [r12 + rbp]
cmp rax, r15
ja 0x419394
mov rcx, rbp
mov rdx, r15
mov r8, r12
call fcn.0043fd00
mov r9d, dword [rsi + rdi]
mov byte [rsp + 0x38], 1
mov r8b, 1
movzx eax, byte [rsp + 0x38]
jmp 0x411eee
lea rcx, [rsp + 0x1be40]
call fcn.00407ee0
mov bp, 0x29
mov rax, qword [rsp + 0xb8]
jmp 0x41775a
mov rsi, qword [rsp + 0x1be58]
mov r14, qword [rsp + 0x1be60]
mov r15, qword [rsp + 0x1be50]
test r15, r15
mov qword [rsp + 0x210], rbp
je 0x4177f1
movabs rax, 0x7ffffffffffffff
cmp r15, rax
lea r13, [rsp + 0x3270]
mov edi, dword [rsp + 0xb4]
ja 0x418230
mov r12, qword [rsp + 0x1be40]
shl r15, 5
jmp 0x41780d
mov r14, qword [rsp + 0x1be58]
mov rsi, qword [rsp + 0x1be60]
mov r15, qword [rsp + 0x1be50]
test r15, r15
je 0x417846
movabs rax, 0x7ffffffffffffff
cmp r15, rax
ja 0x418230
mov rax, qword [rsp + 0x1be40]
mov qword [rsp + 0x3c0], rax
shl r15, 5
jmp 0x417849
mov r14, qword [rsp + 0x1be58]
mov rsi, qword [rsp + 0x1be60]
mov r15, qword [rsp + 0x1be50]
jmp 0x4177b9
mov r14, qword [rsp + 0x1be58]
mov rsi, qword [rsp + 0x1be60]
mov r15, qword [rsp + 0x1be50]
test r15, r15
je 0x417858
movabs rax, 0x7ffffffffffffff
cmp r15, rax
ja 0x418230
mov r12, qword [rsp + 0x1be40]
shl r15, 5
jmp 0x417865
mov r14, qword [rsp + 0x1be58]
mov rsi, qword [rsp + 0x1be60]
mov r15, qword [rsp + 0x1be50]
test r15, r15
je 0x41786b
movabs rax, 0x7ffffffffffffff
cmp r15, rax
mov edi, dword [rsp + 0xb4]
ja 0x418230
mov r12, qword [rsp + 0x1be40]
shl r15, 5
jmp 0x41787f
lea rcx, [rsp + 0x1be40]
call fcn.00407ee0
jmp 0x41774a
movabs r13, 0xaaaaaaaaaaaaaaaa
xor edi, edi
mov r14, qword [rsp + 0x270]
jmp 0x417772
mov rax, qword [rsp + 0xa8]
movups xmm0, xmmword [rax]
movaps xmmword [rsp + 0x3150], xmm0
lea rcx, [rsp + 0x3150]
jmp 0x417724
mov ebp, eax
mov rax, qword [rsp + 0xa8]
movups xmm0, xmmword [rax]
movaps xmmword [rsp + 0x3180], xmm0
lea rcx, [rsp + 0x3180]
mov rdx, r15
mov r8, qword [rsp + 0x210]
call fcn.00407940
jmp 0x41846c
lea rcx, [rsp + 0x1be40]
call fcn.00407ee0
mov bp, 0x11
mov rax, qword [rsp + 0xb8]
lea r13, [rsp + 0x3270]
mov edi, dword [rsp + 0xb4]
jmp 0x4178b9
movabs r13, 0xaaaaaaaaaaaaaaaa
xor edi, edi
test rdi, rdi
je 0x41846c
mov rcx, r13
mov dl, 0xaa
mov r8, rdi
call fcn.00440060
mov qword [rsp + 0x20], r14
mov rcx, rbx
mov rdx, r13
mov r8, rdi
mov r9b, 3
call qword [rsi + 0x10]
jmp 0x41846c
mov r15, qword [rsp + 0x1be50]
mov r14, qword [rsp + 0x1be58]
mov rsi, qword [rsp + 0x1be60]
test r15, r15
je 0x41444e
movabs rax, 0x7ffffffffffffff
cmp r15, rax
ja 0x418230
mov r12, qword [rsp + 0x1be40]
shl r15, 5
test r15, r15
jne 0x414464
xor ebp, ebp
jmp 0x4178b1
movabs r12, 0xaaaaaaaaaaaaaaaa
xor r15d, r15d
lea r13, [rsp + 0x3270]
mov edi, dword [rsp + 0xb4]
mov bp, 0x11
test r15, r15
je 0x4178b1
mov rcx, r12
mov dl, 0xaa
mov r8, r15
call fcn.00440060
mov rax, qword [rsp + 0x210]
mov qword [rsp + 0x20], rax
mov rcx, rsi
mov rdx, r12
mov r8, r15
mov r9b, 3
call qword [r14 + 0x10]
jmp 0x4178b1
xor r15d, r15d
test r15, r15
je 0x4178b1
mov r12, qword [rsp + 0x3c0]
jmp 0x417888
movabs r12, 0xaaaaaaaaaaaaaaaa
xor r15d, r15d
mov bp, 0x29
jmp 0x417883
movabs r12, 0xaaaaaaaaaaaaaaaa
xor r15d, r15d
mov edi, dword [rsp + 0xb4]
mov bp, 0x15
test r15, r15
je 0x4178b1
mov rcx, r12
mov dl, 0xaa
mov r8, r15
call fcn.00440060
mov rax, qword [rsp + 0x4bef8]
mov qword [rsp + 0x20], rax
mov rcx, r14
mov rdx, r12
mov r8, r15
mov r9b, 3
call qword [rsi + 0x10]
mov rax, qword [rsp + 0xb8]
test bp, bp
jne 0x41847b
lea rdx, [rsp + 0xb08]
mov r8d, 0x360
mov rcx, r13
call fcn.0043fd00
mov byte [rsp + 0x35d0], 1
lea rbp, [rsp + 0x31d0]
cmp byte [rbx + 0x1d], 0
je 0x419063
mov rdx, qword [rbx + 0x10]
mov rax, rdx
add rax, 0x14
jb 0x418230
mov rcx, qword [rbx + 8]
lea r8, [rax + 0x18]
cmp r8, rcx
ja 0x418ff8
mov r8, qword [rbx]
movzx r10d, word [r8 + rax]
mov r9d, 0x60
cmp r10d, 0x10b
je 0x41793e
cmp r10d, 0x20b
jne 0x419063
mov r9d, 0x70
add r9, rax
jb 0x418230
cmp r9, rcx
ja 0x4191f9
test byte [rbx + 0x1d], 1
je 0x419063
cmp r10d, 0x10b
je 0x41797c
cmp r10d, 0x20b
jne 0x419063
lea r11, [rax + 0x70]
mov r10d, 0x6c
jmp 0x417986
lea r11, [rax + 0x60]
mov r10d, 0x5c
cmp r11, rcx
ja 0x418ff8
lea r11, [r8 + rax]
cmp dword [r11 + r10], 7
jb 0x4179e2
mov r10d, dword [r8 + r9 + 0x30]
mov r9d, dword [r8 + r9 + 0x34]
mov qword [rsp + 0x2be50], r8
mov qword [rsp + 0x2be58], rcx
mov qword [rsp + 0x2be60], 0
cmp byte [rbx + 0x1c], 1
jne 0x417a0e
mov eax, r10d
cmp rax, rcx
cmovb rcx, rax
mov qword [rsp + 0x2be60], rcx
cmp r9d, 0x1c
jae 0x417aa9
lea rdx, [rsp + 0x31c8]
mov r8d, 0x428
mov rsi, qword [rsp + 0x220]
mov rcx, rsi
call fcn.0043fd00
mov word [rsi + 0x428], 0
jmp 0x417ca4
cmp rax, rcx
ja 0x418ff8
movzx r11d, word [r8 + rdx + 0x10]
add rax, r11
jb 0x418230
movzx edi, word [r8 + rdx + 2]
mov ax, 0x2a
test rdi, rdi
je 0x417c95
mov r15, rbp
add rdx, r11
lea rsi, [r8 + rdx]
add rsi, 0x28
shl edi, 3
lea rdi, [rdi + rdi*4]
xor r11d, r11d
jmp 0x417a6d
add r11, 0x28
cmp rdi, r11
je 0x417c95
mov ebp, dword [rsi + r11 - 8]
cmp r10d, ebp
jb 0x417a60
mov r14d, dword [rsi + r11 - 0xc]
add r14d, ebp
jb 0x418230
cmp r10d, r14d
jae 0x417a60
sub r10d, ebp
jb 0x418230
add rdx, r8
add r10d, dword [r11 + rdx + 0x28]
jb 0x418230
mov rbp, r15
jmp 0x4179c6
lea rax, [rbx + 0x1e]
mov qword [rsp + 0x250], rax
shr r9d, 2
imul rdi, r9, 0x24924925
shr rdi, 0x20
xor r13d, r13d
lea rsi, [rsp + 0x2be50]
movaps xmm6, xmmword [0x004441b0]
lea r14, [rsp + 0x1be40]
lea r12, [rsp + 0x548]
mov r15, rbp
mov qword [rsp + 0x548], rsi
movups xmmword [rsp + 0x3e4c], xmm6
movaps xmmword [rsp + 0x3e40], xmm6
xor ebp, ebp
nop word cs:[rax + rax]
nop dword [rax]
lea r8, [rsp + rbp]
add r8, 0x3e40
mov r9d, 0x1c
sub r9, rbp
mov rcx, r14
mov rdx, r12
call fcn.00403810
movzx ecx, word [rsp + 0x1be48]
test cx, cx
jne 0x417b7b
mov rax, qword [rsp + 0x1be40]
test rax, rax
je 0x417c91
add rbp, rax
jb 0x418230
cmp rbp, 0x1c
jb 0x417b10
cmp dword [rsp + 0x3e4c], 2
je 0x417b8e
add r13d, 1
cmp r13d, edi
mov rbp, r15
jne 0x417ae6
jmp 0x4179e2
mov ax, 0x16
cmp cx, 0x16
je 0x417c95
jmp 0x417da2
cmp byte [rbx + 0x1c], 0
mov eax, dword [rsp + 0x3e54]
cmove eax, dword [rsp + 0x3e58]
mov rcx, qword [rsp + 0x2be58]
cmp rax, rcx
cmovb rcx, rax
mov qword [rsp + 0x2be60], rcx
mov dword [rsp + 0x410], 0xaaaaaaaa
mov qword [rsp + 0x480], rsi
xor edi, edi
lea r14, [rsp + 0x3e40]
lea r12, [rsp + 0x480]
lea r8, [rsp + rdi]
add r8, 0x410
mov r9d, 4
sub r9, rdi
mov rcx, r14
mov rdx, r12
call fcn.00403810
movzx eax, word [rsp + 0x3e48]
test eax, eax
jne 0x417d99
mov rax, qword [rsp + 0x3e40]
test rax, rax
je 0x417c91
add rdi, rax
jb 0x418230
cmp rdi, 4
jb 0x417bdd
mov ax, 0x2b
cmp dword [rsp + 0x410], 0x53445352
jne 0x417c95
mov qword [rsp + 0x430], rsi
lea rax, [rsp + 0x430]
mov qword [rsp + 0x508], rax
lea rdi, [fcn.00403810]
mov qword [rsp + 0x510], rdi
lea rcx, [rsp + 0x508]
mov r8d, 0x10
mov rdx, qword [rsp + 0x250]
call fcn.004039a0
test ax, ax
je 0x417d54
movzx ecx, ax
cmp ecx, 0x16
je 0x417c95
jmp 0x417da2
mov ax, 0x16
mov rcx, qword [rsp + 0x220]
mov word [rcx + 0x428], ax
movaps xmm6, xmmword [rsp + 0x4be90]
movaps xmm7, xmmword [rsp + 0x4bea0]
add rsp, 0x4beb8
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret
lea rcx, [rsp + 0x31b8]
mov r15, qword [rsp + 0x238]
mov r8, qword [rsp + 0x210]
jmp 0x417d19
cmp cl, 0x11
jae 0x418eaf
lea rcx, [rsp + 0x1be40]
call fcn.00407ee0
mov bp, 0x15
mov rax, qword [rsp + 0xb8]
lea r13, [rsp + 0x3270]
jmp 0x4178b9
lea rcx, [rsp + 0x31a8]
mov rax, qword [rsp + 0xa8]
movups xmm0, xmmword [rax]
movups xmmword [rcx], xmm0
mov rdx, r15
call fcn.00407940
test bp, bp
mov rax, qword [rsp + 0xb8]
mov edi, dword [rsp + 0xb4]
lea r13, [rsp + 0x3270]
jne 0x4178b9
jmp 0x413756
mov qword [rsp + 0x4b0], rsi
lea rax, [rsp + 0x4b0]
mov qword [rsp + 0x3be60], rax
mov qword [rsp + 0x3be68], rdi
lea rcx, [rsp + 0x460]
lea rdx, [rsp + 0x3be60]
call fcn.00403900
movzx eax, word [rsp + 0x460]
test eax, eax
je 0x417ebf
cmp eax, 0x16
je 0x417c95
lea rcx, str.invalid_error_code
mov edx, 0x12
xor r9d, r9d
call fcn.00402230
mov rax, qword [rsp + 0xa8]
mov rbx, qword [rax]
mov rsi, qword [rax + 8]
test r8, r8
je 0x418244
movabs rax, 0x7ffffffffffffff
cmp r8, rax
jbe 0x418260
jmp 0x418230
mov qword [rsp + 0x360], r13
mov rax, qword [rsp + 0xa8]
mov rbx, qword [rax]
mov rsi, qword [rax + 8]
mov rcx, qword [rsp + 0x210]
test rcx, rcx
je 0x4182ec
movabs rax, 0x7ffffffffffffff
cmp rcx, rax
jbe 0x418308
jmp 0x418230
mov qword [rsp + 0x360], r13
mov rax, qword [rsp + 0xa8]
mov rbx, qword [rax]
mov rsi, qword [rax + 8]
test r8, r8
je 0x417e56
movabs rax, 0x7ffffffffffffff
cmp r8, rax
jbe 0x417e72
jmp 0x418230
movabs rax, 0xaaaaaaaaaaaaaaaa
mov qword [rsp + 0x238], rax
xor eax, eax
mov qword [rsp + 0x230], rax
mov rdi, qword [rsp + 0x230]
test rdi, rdi
je 0x4182e3
mov r13, qword [rsp + 0x238]
mov rcx, r13
mov dl, 0xaa
jmp 0x4182bf
mov ebp, eax
mov rax, qword [rsp + 0xa8]
movups xmm0, xmmword [rax]
movaps xmmword [rsp + 0x3170], xmm0
lea rcx, [rsp + 0x3170]
mov rdx, qword [rsp + 0x238]
jmp 0x417727
mov eax, dword [rsp + 0x462]
mov dword [rbx + 0x18], eax
mov rdi, qword [rsp + 0x2be60]
mov r8, qword [rbx + 8]
sub r8, rdi
jb 0x4191f9
mov rdx, qword [rbx]
add rdx, rdi
mov byte [rsp + 0x20], 0
lea rcx, [rsp + 0x3e40]
xor r9d, r9d
call fcn.004196e0
cmp byte [rsp + 0x3e48], 0
je 0x4179e2
mov r14, qword [rsp + 0x3e40]
add r14, rdi
jb 0x418230
cmp r14, qword [rbx + 8]
ja 0x418ff8
mov rsi, qword [rbx]
test rsi, rsi
je 0x4179e2
add rsi, rdi
sub r14, rdi
je 0x418ee5
movzx eax, byte [rsi]
cmp eax, 0x2f
je 0x417f4b
cmp eax, 0x5c
jne 0x418ec3
mov r12, rsi
mov rax, qword gs:[0x30]
mov rax, qword [rax + 0x60]
mov rax, qword [rax + 0x20]
mov r13, qword [rax + 0x48]
lea rcx, [rsp + 0x2be50]
mov r8d, 0x10008
mov dl, 0xaa
call fcn.00440060
lea rdx, [rsp + 0x2be58]
lea rcx, [rsp + 0x4b0]
mov r8, r12
mov r9, r14
call fcn.00426330
movzx edi, word [rsp + 0x4b8]
test di, di
jne 0x4180ee
mov rax, qword [rsp + 0x4b0]
mov qword [rsp + 0x2be50], rax
cmp rax, 0x8000
jae 0x418ff8
mov word [rsp + rax*2 + 0x2be58], 0
lea rcx, [rsp + 0x2be50]
call fcn.004223e0
mov r9, rdx
lea rbp, [rsp + 0x3e40]
mov rcx, rbp
mov rdx, r13
mov r8, rax
call fcn.00423fc0
lea rcx, [rsp + 0x3be60]
mov r8d, 0x10008
mov rdx, rbp
call fcn.0043fd00
movzx edi, word [rsp + 0x13e48]
test di, di
jne 0x4180ee
lea rcx, [rsp + 0x1be40]
lea rdx, [rsp + 0x3be60]
mov r8d, 0x10008
call fcn.0043fd00
mov qword [rsp + 0x480], r13
mov r9, qword [rsp + 0x1be40]
mov rax, r9
inc rax
je 0x418230
cmp rax, 0x8001
jae 0x418ff8
cmp word [rsp + r9*2 + 0x1be48], 0
jne 0x419530
lea r8, [rsp + 0x1be48]
lea rax, [0x00446098]
mov qword [rsp + 0x20], rax
lea rcx, [rsp + 0x430]
lea rdx, [rsp + 0x480]
call fcn.004215d0
movzx edi, word [rsp + 0x438]
test di, di
jne 0x4180ee
mov r13, qword [rsp + 0x430]
mov qword [rsp + 0x548], r13
lea rcx, [rsp + 0x508]
lea r8, [rsp + 0x548]
mov rdx, qword [rsp + 0xa8]
call fcn.00408270
movzx edi, word [rsp + 0x540]
test di, di
je 0x419270
mov rcx, r13
call sub.ntdll.dll_NtClose
test eax, eax
jne 0x419063
cmp di, 0x1a
je 0x418100
movzx eax, di
cmp eax, 0x25
jne 0x41900c
cmp byte [rsp + 0x35d0], 0
je 0x419084
lea rcx, [rsp + 0x35f0]
lea rdx, [rsp + 0x31c8]
mov r8d, 0x428
call fcn.0043fd00
cmp r12, rsi
je 0x419077
movabs rax, 0xaaaaaaaaaaaaaaaa
test r14, r14
cmove r12, rax
je 0x419077
mov rax, qword [rsp + 0xa8]
mov rbx, qword [rax]
mov rsi, qword [rax + 8]
mov rcx, r12
mov dl, 0xaa
mov r8, r14
call fcn.00440060
mov rax, qword [rsp + 0x4bef8]
mov qword [rsp + 0x20], rax
mov rcx, rbx
mov rdx, r12
mov r8, r14
xor r9d, r9d
call qword [rsi + 0x10]
lea rdx, [rsp + 0x35f0]
jmp 0x4179ea
mov rax, qword [rsp + 0xa8]
mov rbx, qword [rax]
mov rsi, qword [rax + 8]
test r8, r8
je 0x418408
movabs rax, 0x7ffffffffffffff
cmp qword [rsp + 0x210], rax
jbe 0x418424
jmp 0x418230
mov qword [rsp + 0x360], r13
mov rax, qword [rsp + 0xa8]
mov rbx, qword [rax]
mov rsi, qword [rax + 8]
cmp qword [rsp + 0x210], 0
je 0x418e3a
movabs rax, 0x7ffffffffffffff
cmp qword [rsp + 0x210], rax
jbe 0x418e56
jmp 0x418230
mov qword [rsp + 0x360], r13
mov rax, qword [rsp + 0xa8]
mov rbx, qword [rax]
mov rsi, qword [rax + 8]
test r8, r8
je 0x418283
movabs rax, 0x7ffffffffffffff
cmp qword [rsp + 0x210], rax
jbe 0x41829f
lea rcx, str.integer_overflow
mov edx, 0x10
xor r9d, r9d
call fcn.00402230
movabs rax, 0xaaaaaaaaaaaaaaaa
mov qword [rsp + 0x238], rax
xor eax, eax
mov qword [rsp + 0x230], rax
mov rdi, qword [rsp + 0x230]
test rdi, rdi
je 0x418468
mov r13, qword [rsp + 0x238]
mov rcx, r13
mov dl, 0xaa
jmp 0x418444
movabs rax, 0xaaaaaaaaaaaaaaaa
mov qword [rsp + 0x238], rax
xor eax, eax
mov qword [rsp + 0x230], rax
cmp qword [rsp + 0x230], 0
je 0x4182e3
mov r13, qword [rsp + 0x238]
mov rcx, r13
mov dl, 0xaa
mov rdi, qword [rsp + 0x230]
mov r8, rdi
call fcn.00440060
mov rax, qword [rsp + 0x270]
mov qword [rsp + 0x20], rax
mov rcx, rbx
mov rdx, r13
mov r8, rdi
mov r9b, 3
call qword [rsi + 0x10]
mov bp, 0x15
jmp 0x41846c
movabs rax, 0xaaaaaaaaaaaaaaaa
mov qword [rsp + 0x238], rax
xor eax, eax
mov qword [rsp + 0x230], rax
mov rdi, qword [rsp + 0x230]
test rdi, rdi
je 0x41846c
mov r13, qword [rsp + 0x238]
mov rcx, r13
mov dl, 0xaa
jmp 0x418e7a
cmp dl, 0x11
jae 0x418eaf
mov rax, qword [rsp + 0xa8]
movups xmm0, xmmword [rax]
movaps xmmword [rsp + 0x3160], xmm0
lea rcx, [rsp + 0x3160]
mov rdx, qword [rsp + 0x238]
jmp 0x4183f5
cmp cl, 0x11
jae 0x418eaf
mov rax, qword [rsp + 0xa8]
movups xmm0, xmmword [rax]
movaps xmmword [rsp + 0x3110], xmm0
lea rcx, [rsp + 0x3110]
jmp 0x4183f2
cmp cl, 0x11
jae 0x418eaf
mov rax, qword [rsp + 0xa8]
movups xmm0, xmmword [rax]
movaps xmmword [rsp + 0x3120], xmm0
lea rcx, [rsp + 0x3120]
jmp 0x4183f2
cmp cl, 0x11
jae 0x418eaf
mov rax, qword [rsp + 0xa8]
movups xmm0, xmmword [rax]
movaps xmmword [rsp + 0x3130], xmm0
lea rcx, [rsp + 0x3130]
jmp 0x4183f2
cmp cl, 0x11
jae 0x418eaf
mov rax, qword [rsp + 0xa8]
movups xmm0, xmmword [rax]
movaps xmmword [rsp + 0x3140], xmm0
lea rcx, [rsp + 0x3140]
mov rdx, r15
mov r8, qword [rsp + 0x210]
call fcn.00407940
mov bp, 0x15
jmp 0x41846c
movabs rax, 0xaaaaaaaaaaaaaaaa
mov qword [rsp + 0x238], rax
xor eax, eax
mov qword [rsp + 0x230], rax
cmp qword [rsp + 0x230], 0
je 0x418468
mov r13, qword [rsp + 0x238]
mov rcx, r13
mov dl, 0xaa
mov rdi, qword [rsp + 0x230]
mov r8, rdi
call fcn.00440060
mov rax, qword [rsp + 0x270]
mov qword [rsp + 0x20], rax
mov rcx, rbx
mov rdx, r13
mov r8, rdi
mov r9b, 3
call qword [rsi + 0x10]
mov bp, 0x29
mov rax, qword [rsp + 0xb8]
mov edi, dword [rsp + 0xb4]
mov rcx, qword [rsp + 0x278]
mov qword [rsp + 0x570], rcx
mov rcx, qword [rsp + 0x280]
mov qword [rsp + 0x578], rcx
mov qword [rsp + 0x580], rax
mov byte [rsp + 0x588], 1
mov eax, dword [rsp + 0x198]
mov dword [rsp + 0x589], eax
mov eax, dword [rsp + 0x19b]
mov dword [rsp + 0x58c], eax
movzx eax, byte [rsp + 0x60]
mov byte [rsp + 0x590], al
mov eax, dword [rsp + 0x190]
mov dword [rsp + 0x591], eax
mov eax, dword [rsp + 0x193]
mov dword [rsp + 0x594], eax
mov eax, dword [rsp + 0x250]
mov byte [rsp + 0x598], al
mov eax, dword [rsp + 0x188]
mov dword [rsp + 0x599], eax
mov eax, dword [rsp + 0x18b]
mov dword [rsp + 0x59c], eax
mov rax, qword [rsp + 0x298]
mov qword [rsp + 0x5a0], rax
mov rax, qword [rsp + 0x2a0]
mov qword [rsp + 0x5a8], rax
mov rax, qword [rsp + 0x2a8]
mov qword [rsp + 0x5b0], rax
mov byte [rsp + 0x5b8], 1
mov eax, dword [rsp + 0x208]
mov dword [rsp + 0x5b9], eax
mov eax, dword [rsp + 0x20b]
mov dword [rsp + 0x5bc], eax
movzx eax, byte [rsp + 0x70]
mov byte [rsp + 0x5c0], al
mov eax, dword [rsp + 0x203]
mov dword [rsp + 0x5c4], eax
mov eax, dword [rsp + 0x200]
mov dword [rsp + 0x5c1], eax
mov eax, dword [rsp + 0x260]
mov byte [rsp + 0x5c8], al
mov eax, dword [rsp + 0x1fb]
mov dword [rsp + 0x5cc], eax
mov eax, dword [rsp + 0x1f8]
mov dword [rsp + 0x5c9], eax
mov rax, qword [rsp + 0x2b0]
mov qword [rsp + 0x5d0], rax
mov rax, qword [rsp + 0x2b8]
mov qword [rsp + 0x5d8], rax
mov rax, qword [rsp + 0x2c0]
mov qword [rsp + 0x5e0], rax
mov byte [rsp + 0x5e8], 1
mov eax, dword [rsp + 0x1f3]
mov dword [rsp + 0x5ec], eax
mov eax, dword [rsp + 0x1f0]
mov dword [rsp + 0x5e9], eax
movzx eax, byte [rsp + 0x78]
mov byte [rsp + 0x5f0], al
mov eax, dword [rsp + 0x1eb]
mov dword [rsp + 0x5f4], eax
mov eax, dword [rsp + 0x1e8]
mov dword [rsp + 0x5f1], eax
mov eax, dword [rsp + 0x21c]
mov byte [rsp + 0x5f8], al
mov eax, dword [rsp + 0x1e3]
mov dword [rsp + 0x5fc], eax
mov eax, dword [rsp + 0x1e0]
mov dword [rsp + 0x5f9], eax
mov rax, qword [rsp + 0x2d0]
mov qword [rsp + 0x600], rax
mov rax, qword [rsp + 0x2d8]
mov qword [rsp + 0x608], rax
mov rax, qword [rsp + 0x2e0]
mov qword [rsp + 0x610], rax
mov byte [rsp + 0x618], 1
mov eax, dword [rsp + 0x1db]
mov dword [rsp + 0x61c], eax
mov eax, dword [rsp + 0x1d8]
mov dword [rsp + 0x619], eax
movzx eax, byte [rsp + 0x88]
mov byte [rsp + 0x620], al
mov eax, dword [rsp + 0x1d3]
mov dword [rsp + 0x624], eax
mov eax, dword [rsp + 0x1d0]
mov dword [rsp + 0x621], eax
mov eax, dword [rsp + 0x22c]
mov byte [rsp + 0x628], al
mov eax, dword [rsp + 0x1cb]
mov dword [rsp + 0x62c], eax
mov eax, dword [rsp + 0x1c8]
mov dword [rsp + 0x629], eax
mov rax, qword [rsp + 0x2e8]
mov qword [rsp + 0x630], rax
mov rax, qword [rsp + 0x2f0]
mov qword [rsp + 0x638], rax
mov rax, qword [rsp + 0x2f8]
mov qword [rsp + 0x640], rax
mov byte [rsp + 0x648], 1
mov eax, dword [rsp + 0x1c3]
mov dword [rsp + 0x64c], eax
mov eax, dword [rsp + 0x1c0]
mov dword [rsp + 0x649], eax
movzx eax, byte [rsp + 0x98]
mov byte [rsp + 0x650], al
mov eax, dword [rsp + 0x1bb]
mov dword [rsp + 0x654], eax
mov eax, dword [rsp + 0x1b8]
mov dword [rsp + 0x651], eax
mov eax, dword [rsp + 0x244]
mov byte [rsp + 0x658], al
mov eax, dword [rsp + 0x1b3]
mov dword [rsp + 0x65c], eax
mov eax, dword [rsp + 0x1b0]
mov dword [rsp + 0x659], eax
mov rax, qword [rsp + 0x310]
mov qword [rsp + 0x660], rax
mov rax, qword [rsp + 0x318]
mov qword [rsp + 0x668], rax
mov rax, qword [rsp + 0x320]
mov qword [rsp + 0x670], rax
mov byte [rsp + 0x678], 1
mov eax, dword [rsp + 0x1ab]
mov dword [rsp + 0x67c], eax
mov eax, dword [rsp + 0x1a8]
mov dword [rsp + 0x679], eax
movzx eax, byte [rsp + 0xa0]
mov byte [rsp + 0x680], al
mov eax, dword [rsp + 0x1a3]
mov dword [rsp + 0x684], eax
mov eax, dword [rsp + 0x1a0]
mov dword [rsp + 0x681], eax
mov eax, dword [rsp + 0x248]
mov byte [rsp + 0x688], al
mov eax, dword [rsp + 0x183]
mov dword [rsp + 0x68c], eax
mov eax, dword [rsp + 0x180]
mov dword [rsp + 0x689], eax
mov rax, qword [rsp + 0x330]
mov qword [rsp + 0x690], rax
mov rax, qword [rsp + 0x338]
mov qword [rsp + 0x698], rax
mov rax, qword [rsp + 0x340]
mov qword [rsp + 0x6a0], rax
mov byte [rsp + 0x6a8], 1
mov eax, dword [rsp + 0x17b]
mov dword [rsp + 0x6ac], eax
mov eax, dword [rsp + 0x178]
mov dword [rsp + 0x6a9], eax
movzx eax, byte [rsp + 0x90]
mov byte [rsp + 0x6b0], al
mov eax, dword [rsp + 0x173]
mov dword [rsp + 0x6b4], eax
mov eax, dword [rsp + 0x170]
mov dword [rsp + 0x6b1], eax
mov eax, dword [rsp + 0x24c]
mov byte [rsp + 0x6b8], al
mov eax, dword [rsp + 0x16b]
mov dword [rsp + 0x6bc], eax
mov eax, dword [rsp + 0x168]
mov dword [rsp + 0x6b9], eax
mov rax, qword [rsp + 0x380]
mov qword [rsp + 0x6c0], rax
mov rax, qword [rsp + 0x308]
mov qword [rsp + 0x6c8], rax
mov rax, qword [rsp + 0x378]
mov qword [rsp + 0x6d0], rax
mov byte [rsp + 0x6d8], 1
mov eax, dword [rsp + 0x163]
mov dword [rsp + 0x6dc], eax
mov eax, dword [rsp + 0x160]
mov dword [rsp + 0x6d9], eax
movzx eax, byte [rsp + 0x80]
mov byte [rsp + 0x6e0], al
mov eax, dword [rsp + 0x15b]
mov dword [rsp + 0x6e4], eax
mov eax, dword [rsp + 0x158]
mov dword [rsp + 0x6e1], eax
mov eax, dword [rsp + 0x25c]
mov byte [rsp + 0x6e8], al
mov eax, dword [rsp + 0x153]
mov dword [rsp + 0x6ec], eax
mov eax, dword [rsp + 0x150]
mov dword [rsp + 0x6e9], eax
mov rax, qword [rsp + 0x3a0]
mov qword [rsp + 0x6f0], rax
mov rax, qword [rsp + 0x328]
mov qword [rsp + 0x6f8], rax
mov rax, qword [rsp + 0x398]
mov qword [rsp + 0x700], rax
mov byte [rsp + 0x708], 1
mov eax, dword [rsp + 0x14b]
mov dword [rsp + 0x70c], eax
mov eax, dword [rsp + 0x148]
mov dword [rsp + 0x709], eax
movzx eax, byte [rsp + 0x68]
mov byte [rsp + 0x710], al
mov eax, dword [rsp + 0x143]
mov dword [rsp + 0x714], eax
mov eax, dword [rsp + 0x140]
mov dword [rsp + 0x711], eax
mov eax, dword [rsp + 0x26c]
mov byte [rsp + 0x718], al
mov eax, dword [rsp + 0x13b]
mov dword [rsp + 0x71c], eax
mov eax, dword [rsp + 0x138]
mov dword [rsp + 0x719], eax
mov rax, qword [rsp + 0x3a8]
mov qword [rsp + 0x720], rax
mov rax, qword [rsp + 0x3b0]
mov qword [rsp + 0x728], rax
mov rax, qword [rsp + 0x3b8]
mov qword [rsp + 0x730], rax
mov byte [rsp + 0x738], 1
mov eax, dword [rsp + 0x133]
mov dword [rsp + 0x73c], eax
mov eax, dword [rsp + 0x130]
mov dword [rsp + 0x739], eax
movzx eax, byte [rsp + 0x58]
mov byte [rsp + 0x740], al
mov eax, dword [rsp + 0x12b]
mov dword [rsp + 0x744], eax
mov eax, dword [rsp + 0x128]
mov dword [rsp + 0x741], eax
mov eax, dword [rsp + 0x290]
mov byte [rsp + 0x748], al
mov eax, dword [rsp + 0x123]
mov dword [rsp + 0x74c], eax
mov eax, dword [rsp + 0x120]
mov dword [rsp + 0x749], eax
mov rax, qword [rsp + 0x3d0]
mov qword [rsp + 0x750], rax
mov rax, qword [rsp + 0x390]
mov qword [rsp + 0x758], rax
mov rax, qword [rsp + 0x3c8]
mov qword [rsp + 0x760], rax
mov byte [rsp + 0x768], 1
mov eax, dword [rsp + 0x11b]
mov dword [rsp + 0x76c], eax
mov eax, dword [rsp + 0x118]
mov dword [rsp + 0x769], eax
movzx eax, byte [rsp + 0x50]
mov byte [rsp + 0x770], al
mov eax, dword [rsp + 0x113]
mov dword [rsp + 0x774], eax
mov eax, dword [rsp + 0x110]
mov dword [rsp + 0x771], eax
mov eax, dword [rsp + 0x2cc]
mov byte [rsp + 0x778], al
mov eax, dword [rsp + 0x10b]
mov dword [rsp + 0x77c], eax
mov eax, dword [rsp + 0x108]
mov dword [rsp + 0x779], eax
mov rax, qword [rsp + 0x3e8]
mov qword [rsp + 0x780], rax
mov rax, qword [rsp + 0x370]
mov qword [rsp + 0x788], rax
mov rax, qword [rsp + 0x3e0]
mov qword [rsp + 0x790], rax
mov byte [rsp + 0x798], 1
mov eax, dword [rsp + 0x103]
mov dword [rsp + 0x79c], eax
mov eax, dword [rsp + 0x100]
mov dword [rsp + 0x799], eax
movzx eax, byte [rsp + 0x48]
mov byte [rsp + 0x7a0], al
mov eax, dword [rsp + 0xfb]
mov dword [rsp + 0x7a4], eax
mov eax, dword [rsp + 0xf8]
mov dword [rsp + 0x7a1], eax
mov eax, dword [rsp + 0x304]
mov byte [rsp + 0x7a8], al
mov eax, dword [rsp + 0xf3]
mov dword [rsp + 0x7ac], eax
mov eax, dword [rsp + 0xf0]
mov dword [rsp + 0x7a9], eax
mov rax, qword [rsp + 0x3f8]
mov qword [rsp + 0x7b0], rax
mov rax, qword [rsp + 0x408]
mov qword [rsp + 0x7b8], rax
mov rax, qword [rsp + 0x400]
mov qword [rsp + 0x7c0], rax
mov byte [rsp + 0x7c8], 1
mov eax, dword [rsp + 0xeb]
mov dword [rsp + 0x7cc], eax
mov eax, dword [rsp + 0xe8]
mov dword [rsp + 0x7c9], eax
movzx eax, byte [rsp + 0x40]
mov byte [rsp + 0x7d0], al
mov eax, dword [rsp + 0xe3]
mov dword [rsp + 0x7d4], eax
mov eax, dword [rsp + 0xe0]
mov dword [rsp + 0x7d1], eax
mov eax, dword [rsp + 0x34c]
mov byte [rsp + 0x7d8], al
mov eax, dword [rsp + 0xdb]
mov dword [rsp + 0x7dc], eax
mov eax, dword [rsp + 0xd8]
mov dword [rsp + 0x7d9], eax
mov rax, qword [rsp + 0x820]
mov qword [rsp + 0x7e0], rax
mov rax, qword [rsp + 0x828]
mov qword [rsp + 0x7e8], rax
mov rax, qword [rsp + 0x818]
mov qword [rsp + 0x7f0], rax
mov byte [rsp + 0x7f8], 1
mov eax, dword [rsp + 0xd3]
mov dword [rsp + 0x7fc], eax
mov eax, dword [rsp + 0xd0]
mov dword [rsp + 0x7f9], eax
movzx eax, byte [rsp + 0x38]
mov byte [rsp + 0x800], al
mov eax, dword [rsp + 0xcb]
mov dword [rsp + 0x804], eax
mov eax, dword [rsp + 0xc8]
mov dword [rsp + 0x801], eax
mov byte [rsp + 0x808], dil
mov eax, dword [rsp + 0xc0]
mov ecx, dword [rsp + 0xc3]
mov dword [rsp + 0x80c], ecx
mov dword [rsp + 0x809], eax
mov esi, 0x28
movabs rdi, 0xaaaaaaaaaaaaaaaa
jmp 0x418dbd
add rsi, 0x30
cmp rsi, 0x2c8
je 0x418e26
cmp byte [rsp + rsi + 0x570], 0
je 0x418db0
test byte [rsp + rsi + 0x568], 1
je 0x418db0
mov rbx, qword [rsp + rsi + 0x550]
mov r14, qword [rsp + rsi + 0x548]
test rbx, rbx
cmove r14, rdi
je 0x418db0
mov rax, qword [rsp + 0xa8]
mov r15, qword [rax]
mov r12, qword [rax + 8]
mov rcx, r14
mov dl, 0xaa
mov r8, rbx
call fcn.00440060
mov rax, qword [rsp + 0x4bef8]
mov qword [rsp + 0x20], rax
mov rcx, r15
mov rdx, r14
mov r8, rbx
xor r9d, r9d
call qword [r12 + 0x10]
jmp 0x418db0
mov rax, qword [rsp + 0x220]
mov word [rax + 0x428], bp
jmp 0x417ca4
movabs rax, 0xaaaaaaaaaaaaaaaa
mov qword [rsp + 0x238], rax
xor eax, eax
mov qword [rsp + 0x230], rax
cmp qword [rsp + 0x230], 0
je 0x41846c
mov r13, qword [rsp + 0x238]
mov rcx, r13
mov dl, 0xaa
mov rdi, qword [rsp + 0x230]
mov r8, rdi
call fcn.00440060
mov rax, qword [rsp + 0x270]
mov qword [rsp + 0x20], rax
jmp 0x41778d
cmp dl, 0x11
jae 0x418eaf
lea rcx, [rsp + 0x1be40]
call fcn.00407ee0
mov bp, 0x15
jmp 0x41774a
lea rcx, str.switch_on_corrupt_value
mov edx, 0x17
xor r9d, r9d
call fcn.00402230
cmp r14, 3
jb 0x418ee5
cmp byte [rsi + 1], 0x3a
jne 0x418ee5
movzx eax, byte [rsi + 2]
cmp eax, 0x2f
je 0x417f4b
cmp eax, 0x5c
je 0x417f4b
lea r12, [rsp + 0x3e40]
mov r8d, 0x17ffe
mov rcx, r12
mov dl, 0xaa
call fcn.00440060
mov rax, qword [rsp + 0xa8]
movups xmm0, xmmword [rax]
movaps xmmword [rsp + 0x4b0], xmm0
mov rax, qword gs:[0x30]
mov rax, qword [rax + 0x60]
mov rax, qword [rax + 0x20]
mov r8, qword [rax + 0x68]
test r8, r8
je 0x41949d
movzx r9d, word [rax + 0x60]
mov eax, r9d
and eax, 0xfffffffe
cmp word [r8 + rax], 0
jne 0x419530
shr r9d, 1
lea rcx, [rsp + 0x2be50]
xor edx, edx
call fcn.00423fc0
movzx eax, word [rsp + 0x3be58]
test ax, ax
jne 0x417c95
lea r13, [rsp + 0x1be40]
lea rdx, [rsp + 0x2be50]
mov r8d, 0x10008
mov rcx, r13
call fcn.0043fd00
mov rax, qword gs:[0x30]
mov rax, qword [rax + 0x60]
mov rax, qword [rax + 0x20]
mov rax, qword [rax + 0x48]
mov qword [rsp + 0x430], rax
mov rcx, r13
call fcn.004223e0
mov r9, rdx
mov qword [rsp + 0x20], r12
lea rcx, [rsp + 0x3be60]
lea rdx, [rsp + 0x430]
mov r8, rax
call fcn.00424ab0
movzx eax, word [rsp + 0x3be70]
test eax, eax
je 0x4190f3
cmp eax, 0x1d
jne 0x417c95
lea rcx, str.attempt_to_unwrap_error
mov edx, 0x17
xor r9d, r9d
call fcn.00402230
lea rcx, str.index_out_of_bounds
mov edx, 0x13
xor r9d, r9d
call fcn.00402230
cmp r12, rsi
je 0x4191e5
movabs rax, 0xaaaaaaaaaaaaaaaa
test r14, r14
cmove r12, rax
je 0x4191e5
mov rax, qword [rsp + 0xa8]
mov rbx, qword [rax]
mov rsi, qword [rax + 8]
mov rcx, r12
mov dl, 0xaa
mov r8, r14
call fcn.00440060
mov rax, qword [rsp + 0x4bef8]
mov qword [rsp + 0x20], rax
mov rcx, rbx
mov rdx, r12
mov r8, r14
jmp 0x4191df
lea rcx, str.reached_unreachable_code
mov edx, 0x18
xor r9d, r9d
call fcn.00402230
lea rdx, [rsp + 0x35f0]
jmp 0x4179ea
cmp r12, rsi
je 0x4190d4
movabs rax, 0xaaaaaaaaaaaaaaaa
test r14, r14
cmove r12, rax
je 0x4190d4
mov rax, qword [rsp + 0xa8]
mov rbx, qword [rax]
mov rsi, qword [rax + 8]
mov rcx, r12
mov dl, 0xaa
mov r8, r14
call fcn.00440060
mov rax, qword [rsp + 0x4bef8]
mov qword [rsp + 0x20], rax
mov rcx, rbx
mov rdx, r12
mov r8, r14
xor r9d, r9d
call qword [rsi + 0x10]
lea rdx, [0x00445790]
mov r8d, 0x430
mov rcx, qword [rsp + 0x220]
call fcn.0043fd00
jmp 0x417ca4
mov rcx, qword [rsp + 0x3be60]
mov rdx, qword [rsp + 0x3be68]
call fcn.00424fb0
test rax, rax
je 0x41949d
mov r9, rdx
lea rcx, [rsp + 0x508]
lea rdx, [rsp + 0x4b0]
mov r8, rax
call fcn.00403560
movzx eax, word [rsp + 0x518]
test ax, ax
jne 0x417c95
mov r12, qword [rsp + 0x508]
mov r13, qword [rsp + 0x510]
mov qword [rsp + 0x30f0], r12
mov qword [rsp + 0x30f8], r13
mov qword [rsp + 0x3100], rsi
mov qword [rsp + 0x3108], r14
lea rcx, [rsp + 0x3e40]
lea r8, [rsp + 0x30f0]
mov rdx, qword [rsp + 0xa8]
call fcn.00407f70
movzx edi, word [rsp + 0x3e50]
test r13, r13
movabs rbp, 0xaaaaaaaaaaaaaaaa
cmovne rbp, r12
test di, di
je 0x41920d
test r13, r13
je 0x4191e5
mov rax, qword [rsp + 0xa8]
mov rbx, qword [rax]
mov rsi, qword [rax + 8]
mov rcx, rbp
mov dl, 0xaa
mov r8, r13
call fcn.00440060
mov rax, qword [rsp + 0x4bef8]
mov qword [rsp + 0x20], rax
mov rcx, rbx
mov rdx, rbp
mov r8, r13
xor r9d, r9d
call qword [rsi + 0x10]
mov rax, qword [rsp + 0x220]
mov word [rax + 0x428], di
jmp 0x417ca4
lea rcx, str.start_index_is_larger_than_end_index
mov edx, 0x24
xor r9d, r9d
call fcn.00402230
mov r12, qword [rsp + 0x3e40]
mov r14, qword [rsp + 0x3e48]
test r13, r13
je 0x417f4e
mov rax, qword [rsp + 0xa8]
mov rcx, qword [rax]
mov qword [rsp + 0x260], rcx
mov rdi, qword [rax + 8]
mov rcx, rbp
mov dl, 0xaa
mov r8, r13
call fcn.00440060
mov rax, qword [rsp + 0x4bef8]
mov qword [rsp + 0x20], rax
mov rcx, qword [rsp + 0x260]
mov rdx, rbp
mov r8, r13
xor r9d, r9d
call qword [rdi + 0x10]
jmp 0x417f4e
mov rax, qword [rsp + 0x538]
mov qword [rsp + 0x3208], rax
movups xmm0, xmmword [rsp + 0x508]
movups xmm1, xmmword [rsp + 0x518]
movups xmm2, xmmword [rsp + 0x528]
movups xmmword [rsp + 0x31f8], xmm2
movups xmmword [rsp + 0x31e8], xmm1
movups xmmword [rsp + 0x31d8], xmm0
mov rax, qword [rsp + 0xa8]
movups xmm0, xmmword [rax]
movups xmmword [rsp + 0x3210], xmm0
mov qword [rsp + 0x31d0], r13
xorps xmm0, xmm0
movups xmmword [rsp + 0x3220], xmm0
movabs rdi, 0xaaaaaaaaaaaaaaaa
mov qword [rsp + 0x3230], rdi
mov qword [rsp + 0x3238], 0
mov qword [rsp + 0x3240], rdi
mov qword [rsp + 0x3248], 0
mov byte [rsp + 0x3268], 1
mov rcx, r15
call fcn.00409a10
test ax, ax
jne 0x419338
cmp byte [rsp + 0x3268], 0
je 0x41949d
mov rcx, r15
call fcn.0040a2d0
test ax, ax
je 0x4193a8
mov ebp, eax
cmp r12, rsi
je 0x419380
test r14, r14
cmove r12, rdi
je 0x419380
mov rax, qword [rsp + 0xa8]
mov rbx, qword [rax]
mov rsi, qword [rax + 8]
mov rcx, r12
mov dl, 0xaa
mov r8, r14
call fcn.00440060
mov rax, qword [rsp + 0x4bef8]
mov qword [rsp + 0x20], rax
mov rcx, rbx
mov rdx, r12
mov r8, r14
xor r9d, r9d
call qword [rsi + 0x10]
mov rax, qword [rsp + 0x220]
mov word [rax + 0x428], bp
jmp 0x417ca4
lea rcx, str._memcpy_arguments_alias
mov edx, 0x17
xor r9d, r9d
call fcn.00402230
cmp byte [rsp + 0x3268], 0
je 0x41949d
lea r8, [rsp + 0x3254]
mov edx, 0x10
mov r9d, 0x10
mov rcx, qword [rsp + 0x250]
call fcn.00421480
test al, 1
je 0x4194b1
mov eax, dword [rbx + 0x18]
cmp eax, dword [rsp + 0x3250]
jne 0x4194b1
lea rcx, [rsp + 0x3190]
mov rdx, rbx
mov r8, qword [rsp + 0xa8]
call fcn.0040beb0
movzx ebp, word [rsp + 0x31a0]
test bp, bp
jne 0x41933a
movups xmm0, xmmword [rsp + 0x3190]
movups xmmword [rsp + 0x35e0], xmm0
lea rcx, [rsp + 0x3a18]
lea rdx, [rsp + 0x31c8]
mov r8d, 0x428
call fcn.0043fd00
cmp r12, rsi
je 0x419523
test r14, r14
cmove r12, rdi
je 0x419523
mov rax, qword [rsp + 0xa8]
mov rbx, qword [rax]
mov rsi, qword [rax + 8]
mov rcx, r12
mov dl, 0xaa
mov r8, r14
call fcn.00440060
mov rax, qword [rsp + 0x4bef8]
mov qword [rsp + 0x20], rax
mov rcx, rbx
mov rdx, r12
mov r8, r14
xor r9d, r9d
call qword [rsi + 0x10]
lea rdx, [rsp + 0x3a18]
jmp 0x4179ea
lea rcx, str.attempt_to_use_null_value
mov edx, 0x19
xor r9d, r9d
call fcn.00402230
cmp r12, rsi
je 0x419517
test r14, r14
cmove r12, rdi
je 0x419517
mov rax, qword [rsp + 0xa8]
mov rbx, qword [rax]
mov rsi, qword [rax + 8]
mov rcx, r12
mov dl, 0xaa
mov r8, r14
call fcn.00440060
mov rax, qword [rsp + 0x4bef8]
mov qword [rsp + 0x20], rax
mov rcx, rbx
mov rdx, r12
mov r8, r14
xor r9d, r9d
call qword [rsi + 0x10]
lea rdx, [0x00445bc0]
jmp 0x4190db
lea rcx, [0x00444f85]
mov edx, 0x13
xor r9d, r9d
call fcn.00402230
lea rdx, [0x00445bc0]
jmp 0x4190db
lea rdx, [rsp + 0x3a18]
jmp 0x4179ea
lea rcx, [0x00445ff8]
mov edx, 0x11
xor r9d, r9d
call fcn.00402230
int3