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

Disassembly:
push rbp
push rsi
push rbx
mov rbp, rsp
sub rsp, 0x90
movsd qword [rbp + 0x20], xmm0
movsd qword [rbp + 0x28], xmm1
movsd qword [rbp + 0x30], xmm2
movsd qword [rbp + 0x38], xmm3
mov dword [0x00c59620], 0
mov dword [0x00c59624], 0
mov dword [0x00c59628], 1
mov dword [0x00c5962c], 0
mov dword [0x00c59630], 0
mov dword [0x00c596c8], 0
mov qword [rbp - 8], 0
mov qword [rbp - 0x10], 0
cmp dword [rbp + 0x40], 0
je 0x43b016
mov eax, dword [0x0058713c]
mov edx, dword [rbp + 0x40]
sub edx, eax
mov eax, edx
cdqe
mov rcx, qword [0x00712f90]
mov rdx, rax
call fcn.00437af2
mov qword [rbp - 0x10], rax
cmp qword [rbp - 0x10], 0
je 0x43b016
mov eax, dword [0x0058713c]
sub dword [rbp + 0x40], eax
call fcn.0043ac3d
mov rax, qword [rbp - 0x10]
mov eax, dword [rax]
mov word [0x00c596f4], ax
mov rax, qword [rbp - 0x10]
mov eax, dword [rax + 4]
mov word [0x00c596f6], ax
mov byte [0x00c59760], 0
mov rax, qword [rbp - 0x10]
mov eax, dword [rax + 0x28]
mov byte [0x00c5973c], al
lea rax, [0x00c596e0]
mov qword [0x00c595d0], rax
cmp dword [rbp + 0x48], 0
jns 0x43afcd
mov eax, dword [0x0058713c]
mov edx, dword [rbp + 0x48]
sub edx, eax
mov eax, edx
cdqe
mov rcx, qword [0x00712f90]
mov rdx, rax
call fcn.00437af2
mov qword [rbp - 8], rax
cmp qword [rbp - 8], 0
jne 0x43af85
mov ecx, 0x102
call fcn.0044495a
jmp 0x4401a0
mov eax, dword [0x0058713c]
sub dword [rbp + 0x48], eax
mov rax, qword [rbp - 8]
mov eax, dword [rax]
mov word [0x00c597b4], ax
mov rax, qword [rbp - 8]
mov eax, dword [rax + 4]
mov word [0x00c597b6], ax
mov byte [0x00c59820], 0
mov rax, qword [rbp - 8]
mov eax, dword [rax + 0x28]
mov byte [0x00c597fc], al
lea rax, [0x00c597a0]
mov qword [0x00c595d8], rax
jmp 0x43aff3
cmp dword [rbp + 0x48], 1
jle 0x43afe2
mov ecx, 5
call fcn.0044495a
jmp 0x4401a0
neg dword [rbp + 0x48]
mov rax, qword [0x00723a80]
mov qword [0x00c595d8], rax
mov dword [0x00c595c8], 4
mov dword [0x00c595c4], 4
mov dword [0x00c596c8], 1
jmp 0x43b2c7
mov eax, dword [rbp + 0x70]
and eax, 8
test eax, eax
je 0x43b0cb
cmp dword [rbp + 0x40], 0
js 0x43b06c
mov eax, dword [rbp + 0x40]
mov ecx, eax
call fcn.0044b786
mov rcx, qword [0x00723a28]
mov rdx, qword [0x00723a20]
mov eax, dword [rbp + 0x40]
cdqe
shl rax, 2
add rax, rdx
mov eax, dword [rax]
movsxd rdx, eax
mov rax, rdx
add rax, rax
add rax, rdx
shl rax, 6
add rax, rcx
mov qword [0x00c595d0], rax
jmp 0x43b0d9
neg dword [rbp + 0x40]
mov eax, dword [0x00723a30]
cmp dword [rbp + 0x40], eax
jl 0x43b089
mov ecx, 0x102
call fcn.0044495a
jmp 0x4401a0
mov rcx, qword [0x00723a28]
mov eax, dword [rbp + 0x40]
movsxd rdx, eax
mov rax, rdx
add rax, rax
add rax, rdx
shl rax, 6
add rax, rcx
mov qword [0x00c595d0], rax
mov rax, qword [0x00c595d0]
movzx eax, byte [rax + 0x10]
test al, al
jne 0x43b0d9
mov ecx, 0x102
call fcn.0044495a
jmp 0x4401a0
mov rax, qword [0x00723a78]
mov qword [0x00c595d0], rax
mov rax, qword [0x00c595d0]
movzx eax, byte [rax + 0x11]
test al, al
je 0x43b0f7
mov ecx, 5
call fcn.0044495a
jmp 0x4401a0
mov rax, qword [0x00c595d0]
movzx eax, byte [rax + 0x18]
movzx eax, al
mov dword [0x00c595c8], eax
mov eax, dword [rbp + 0x70]
and eax, 0x20
test eax, eax
je 0x43b1c0
cmp dword [rbp + 0x48], 0
js 0x43b161
mov eax, dword [rbp + 0x48]
mov ecx, eax
call fcn.0044b786
mov rcx, qword [0x00723a28]
mov rdx, qword [0x00723a20]
mov eax, dword [rbp + 0x48]
cdqe
shl rax, 2
add rax, rdx
mov eax, dword [rax]
movsxd rdx, eax
mov rax, rdx
add rax, rax
add rax, rdx
shl rax, 6
add rax, rcx
mov qword [0x00c595d8], rax
jmp 0x43b1ce
neg dword [rbp + 0x48]
mov eax, dword [0x00723a30]
cmp dword [rbp + 0x48], eax
jl 0x43b17e
mov ecx, 0x102
call fcn.0044495a
jmp 0x4401a0
mov rcx, qword [0x00723a28]
mov eax, dword [rbp + 0x48]
movsxd rdx, eax
mov rax, rdx
add rax, rax
add rax, rdx
shl rax, 6
add rax, rcx
mov qword [0x00c595d8], rax
mov rax, qword [0x00c595d8]
movzx eax, byte [rax + 0x10]
test al, al
jne 0x43b1ce
mov ecx, 0x102
call fcn.0044495a
jmp 0x4401a0
mov rax, qword [0x00723a70]
mov qword [0x00c595d8], rax
mov rax, qword [0x00c595d8]
movzx eax, byte [rax + 0x11]
test al, al
je 0x43b1ec
mov ecx, 5
call fcn.0044495a
jmp 0x4401a0
mov rax, qword [0x00c595d8]
movzx eax, byte [rax + 0x18]
movzx eax, al
mov dword [0x00c595c4], eax
mov eax, dword [0x00c595c8]
cmp eax, 4
jne 0x43b225
mov eax, dword [0x00c595c4]
cmp eax, 1
jne 0x43b225
mov ecx, 5
call fcn.0044495a
jmp 0x4401a0
mov rdx, qword [0x00c595d0]
mov rax, qword [0x00c595d8]
cmp rdx, rax
jne 0x43b2c6
mov eax, dword [rbp + 0x48]
mov r8d, 0
mov edx, 0
mov ecx, eax
call fcn.00471621
mov dword [rbp - 0x14], eax
or dword [rbp + 0x70], 8
movsd xmm3, qword [rbp + 0x38]
movsd xmm2, qword [rbp + 0x30]
movsd xmm1, qword [rbp + 0x28]
mov eax, dword [rbp + 0x70]
mov dword [rsp + 0x50], eax
movsd xmm0, qword [rbp + 0x68]
movsd qword [rsp + 0x48], xmm0
movsd xmm0, qword [rbp + 0x60]
movsd qword [rsp + 0x40], xmm0
movsd xmm0, qword [rbp + 0x58]
movsd qword [rsp + 0x38], xmm0
movsd xmm0, qword [rbp + 0x50]
movsd qword [rsp + 0x30], xmm0
mov eax, dword [rbp + 0x48]
mov dword [rsp + 0x28], eax
mov eax, dword [rbp - 0x14]
mov dword [rsp + 0x20], eax
movsd xmm0, qword [rbp + 0x20]
call fcn.0043ae54
mov eax, dword [rbp - 0x14]
mov edx, 1
mov ecx, eax
call fcn.004719bb
jmp 0x4401a0
nop
mov rax, qword [0x00c595d0]
movzx eax, word [rax + 0x14]
movzx eax, ax
mov dword [0x00c596a8], eax
mov rax, qword [0x00c595d0]
movzx eax, word [rax + 0x16]
movzx eax, ax
mov dword [0x00c596ac], eax
mov rax, qword [0x00c595d8]
movzx eax, word [rax + 0x14]
movzx eax, ax
mov dword [0x00c596b0], eax
mov rax, qword [0x00c595d8]
movzx eax, word [rax + 0x16]
movzx eax, ax
mov dword [0x00c596b4], eax
mov eax, dword [rbp + 0x70]
and eax, 2
test eax, eax
je 0x43b35d
mov rax, qword [0x00c595d8]
movss xmm0, dword [rax + 0x78]
cvtss2sd xmm0, xmm0
movsd xmm1, qword [rbp + 0x20]
addsd xmm0, xmm1
movsd qword [rbp + 0x20], xmm0
mov rax, qword [0x00c595d8]
movss xmm0, dword [rax + 0x7c]
cvtss2sd xmm0, xmm0
movsd xmm1, qword [rbp + 0x28]
addsd xmm0, xmm1
movsd qword [rbp + 0x28], xmm0
mov eax, dword [rbp + 0x70]
and eax, 0x10
test eax, eax
je 0x43b385
movsd xmm0, qword [rbp + 0x30]
addsd xmm0, qword [rbp + 0x20]
movsd qword [rbp + 0x30], xmm0
movsd xmm0, qword [rbp + 0x38]
addsd xmm0, qword [rbp + 0x28]
movsd qword [rbp + 0x38], xmm0
mov eax, dword [rbp + 0x70]
and eax, 0x100
test eax, eax
je 0x43b3cd
mov rax, qword [0x00c595d0]
movss xmm0, dword [rax + 0x78]
cvtss2sd xmm0, xmm0
movsd xmm1, qword [rbp + 0x50]
addsd xmm0, xmm1
movsd qword [rbp + 0x50], xmm0
mov rax, qword [0x00c595d0]
movss xmm0, dword [rax + 0x7c]
cvtss2sd xmm0, xmm0
movsd xmm1, qword [rbp + 0x58]
addsd xmm0, xmm1
movsd qword [rbp + 0x58], xmm0
mov eax, dword [rbp + 0x70]
and eax, 0x400
test eax, eax
je 0x43b3f7
movsd xmm0, qword [rbp + 0x60]
addsd xmm0, qword [rbp + 0x50]
movsd qword [rbp + 0x60], xmm0
movsd xmm0, qword [rbp + 0x68]
addsd xmm0, qword [rbp + 0x58]
movsd qword [rbp + 0x68], xmm0
mov eax, dword [rbp + 0x70]
and eax, 4
test eax, eax
je 0x43b428
mov rax, qword [0x00c595d8]
cvtsd2ss xmm0, qword [rbp + 0x30]
movss dword [rax + 0x78], xmm0
mov rax, qword [0x00c595d8]
cvtsd2ss xmm0, qword [rbp + 0x38]
movss dword [rax + 0x7c], xmm0
jmp 0x43b50f
mov eax, dword [rbp + 0x70]
and eax, 1
test eax, eax
je 0x43b4e3
mov eax, dword [rbp + 0x70]
and eax, 0x200
test eax, eax
je 0x43b48f
movsd xmm0, qword [rbp + 0x60]
subsd xmm0, qword [rbp + 0x50]
call fcn.0057eda0
addsd xmm0, qword [rbp + 0x20]
mov rax, qword [0x00c595d8]
cvtsd2ss xmm0, xmm0
movss dword [rax + 0x78], xmm0
movsd xmm0, qword [rbp + 0x68]
subsd xmm0, qword [rbp + 0x58]
call fcn.0057eda0
addsd xmm0, qword [rbp + 0x28]
mov rax, qword [0x00c595d8]
cvtsd2ss xmm0, xmm0
movss dword [rax + 0x7c], xmm0
jmp 0x43b50f
mov eax, dword [0x00c596a8]
cvtsi2sd xmm0, eax
subsd xmm0, qword [rbp + 0x50]
call fcn.0057eda0
addsd xmm0, qword [rbp + 0x20]
mov rax, qword [0x00c595d8]
cvtsd2ss xmm0, xmm0
movss dword [rax + 0x78], xmm0
mov eax, dword [0x00c596ac]
cvtsi2sd xmm0, eax
subsd xmm0, qword [rbp + 0x58]
call fcn.0057eda0
addsd xmm0, qword [rbp + 0x28]
mov rax, qword [0x00c595d8]
cvtsd2ss xmm0, xmm0
movss dword [rax + 0x7c], xmm0
jmp 0x43b50f
mov edx, dword [0x00c596b0]
mov rax, qword [0x00c595d8]
cvtsi2ss xmm0, edx
movss dword [rax + 0x78], xmm0
mov edx, dword [0x00c596b4]
mov rax, qword [0x00c595d8]
cvtsi2ss xmm0, edx
movss dword [rax + 0x7c], xmm0
mov eax, dword [rbp + 0x70]
and eax, 0x200
test eax, eax
je 0x43b53f
mov rax, qword [0x00c595d0]
cvtsd2ss xmm0, qword [rbp + 0x60]
movss dword [rax + 0x78], xmm0
mov rax, qword [0x00c595d0]
cvtsd2ss xmm0, qword [rbp + 0x68]
movss dword [rax + 0x7c], xmm0
jmp 0x43b56b
mov edx, dword [0x00c596a8]
mov rax, qword [0x00c595d0]
cvtsi2ss xmm0, edx
movss dword [rax + 0x78], xmm0
mov edx, dword [0x00c596ac]
mov rax, qword [0x00c595d0]
cvtsi2ss xmm0, edx
movss dword [rax + 0x7c], xmm0
mov eax, dword [rbp + 0x70]
and eax, 1
test eax, eax
je 0x43b7fa
mov rax, qword [0x00c595d8]
movzx eax, byte [rax + 0x80]
test al, al
je 0x43b685
mov rax, qword [0x00c595d8]
movzx eax, byte [rax + 0x80]
cmp al, 2
jne 0x43b647
mov rax, qword [0x00c595d8]
movss xmm0, dword [rax + 0x84]
cvtss2sd xmm0, xmm0
movapd xmm1, xmm0
mulsd xmm1, qword [rbp + 0x20]
mov rax, qword [0x00c595d8]
movss xmm0, dword [rax + 0x8c]
cvtss2sd xmm0, xmm0
addsd xmm0, xmm1
cvtsd2ss xmm0, xmm0
call fcn.00437029
mov edx, eax
mov rax, qword [0x00c595d8]
mov eax, dword [rax + 0x70]
add eax, edx
mov dword [0x00c59698], eax
mov rax, qword [0x00c595d8]
movss xmm0, dword [rax + 0x88]
cvtss2sd xmm0, xmm0
movapd xmm1, xmm0
mulsd xmm1, qword [rbp + 0x28]
mov rax, qword [0x00c595d8]
movss xmm0, dword [rax + 0x90]
cvtss2sd xmm0, xmm0
addsd xmm0, xmm1
cvtsd2ss xmm0, xmm0
call fcn.00437029
mov edx, eax
mov rax, qword [0x00c595d8]
mov eax, dword [rax + 0x74]
add eax, edx
mov dword [0x00c5969c], eax
jmp 0x43b6a5
cvtsd2ss xmm0, qword [rbp + 0x20]
call fcn.00437029
mov edx, eax
mov rax, qword [0x00c595d8]
mov eax, dword [rax + 0x70]
add eax, edx
mov dword [0x00c59698], eax
cvtsd2ss xmm0, qword [rbp + 0x28]
call fcn.00437029
mov edx, eax
mov rax, qword [0x00c595d8]
mov eax, dword [rax + 0x74]
add eax, edx
mov dword [0x00c5969c], eax
jmp 0x43b6a5
cvtsd2ss xmm0, qword [rbp + 0x20]
call fcn.00437029
mov dword [0x00c59698], eax
cvtsd2ss xmm0, qword [rbp + 0x28]
call fcn.00437029
mov dword [0x00c5969c], eax
mov eax, dword [rbp + 0x70]
and eax, 4
test eax, eax
je 0x43b7e4
mov rax, qword [0x00c595d8]
movzx eax, byte [rax + 0x80]
test al, al
je 0x43b7c2
mov rax, qword [0x00c595d8]
movzx eax, byte [rax + 0x80]
cmp al, 2
jne 0x43b784
mov rax, qword [0x00c595d8]
movss xmm0, dword [rax + 0x84]
cvtss2sd xmm0, xmm0
movapd xmm1, xmm0
mulsd xmm1, qword [rbp + 0x30]
mov rax, qword [0x00c595d8]
movss xmm0, dword [rax + 0x8c]
cvtss2sd xmm0, xmm0
addsd xmm0, xmm1
cvtsd2ss xmm0, xmm0
call fcn.00437029
mov edx, eax
mov rax, qword [0x00c595d8]
mov eax, dword [rax + 0x70]
add eax, edx
mov dword [0x00c596a0], eax
mov rax, qword [0x00c595d8]
movss xmm0, dword [rax + 0x88]
cvtss2sd xmm0, xmm0
movapd xmm1, xmm0
mulsd xmm1, qword [rbp + 0x38]
mov rax, qword [0x00c595d8]
movss xmm0, dword [rax + 0x90]
cvtss2sd xmm0, xmm0
addsd xmm0, xmm1
cvtsd2ss xmm0, xmm0
call fcn.00437029
mov edx, eax
mov rax, qword [0x00c595d8]
mov eax, dword [rax + 0x74]
add eax, edx
mov dword [0x00c596a4], eax
jmp 0x43b822
cvtsd2ss xmm0, qword [rbp + 0x30]
call fcn.00437029
mov edx, eax
mov rax, qword [0x00c595d8]
mov eax, dword [rax + 0x70]
add eax, edx
mov dword [0x00c596a0], eax
cvtsd2ss xmm0, qword [rbp + 0x38]
call fcn.00437029
mov edx, eax
mov rax, qword [0x00c595d8]
mov eax, dword [rax + 0x74]
add eax, edx
mov dword [0x00c596a4], eax
jmp 0x43b822
cvtsd2ss xmm0, qword [rbp + 0x30]
call fcn.00437029
mov dword [0x00c596a0], eax
cvtsd2ss xmm0, qword [rbp + 0x38]
call fcn.00437029
mov dword [0x00c596a4], eax
jmp 0x43b822
mov dword [0x00c596a0], 0
mov dword [0x00c596a4], 0
jmp 0x43b822
mov dword [0x00c59698], 0
mov dword [0x00c5969c], 0
mov dword [0x00c596a0], 0
mov dword [0x00c596a4], 0
mov eax, dword [rbp + 0x70]
and eax, 0x40
test eax, eax
je 0x43bab3
mov rax, qword [0x00c595d0]
movzx eax, byte [rax + 0x80]
test al, al
je 0x43b93c
mov rax, qword [0x00c595d0]
movzx eax, byte [rax + 0x80]
cmp al, 2
jne 0x43b8fe
mov rax, qword [0x00c595d0]
movss xmm0, dword [rax + 0x84]
cvtss2sd xmm0, xmm0
movapd xmm1, xmm0
mulsd xmm1, qword [rbp + 0x50]
mov rax, qword [0x00c595d0]
movss xmm0, dword [rax + 0x8c]
cvtss2sd xmm0, xmm0
addsd xmm0, xmm1
cvtsd2ss xmm0, xmm0
call fcn.00437029
mov edx, eax
mov rax, qword [0x00c595d0]
mov eax, dword [rax + 0x70]
add eax, edx
mov dword [0x00c59688], eax
mov rax, qword [0x00c595d0]
movss xmm0, dword [rax + 0x88]
cvtss2sd xmm0, xmm0
movapd xmm1, xmm0
mulsd xmm1, qword [rbp + 0x58]
mov rax, qword [0x00c595d0]
movss xmm0, dword [rax + 0x90]
cvtss2sd xmm0, xmm0
addsd xmm0, xmm1
cvtsd2ss xmm0, xmm0
call fcn.00437029
mov edx, eax
mov rax, qword [0x00c595d0]
mov eax, dword [rax + 0x74]
add eax, edx
mov dword [0x00c5968c], eax
jmp 0x43b95c
cvtsd2ss xmm0, qword [rbp + 0x50]
call fcn.00437029
mov edx, eax
mov rax, qword [0x00c595d0]
mov eax, dword [rax + 0x70]
add eax, edx
mov dword [0x00c59688], eax
cvtsd2ss xmm0, qword [rbp + 0x58]
call fcn.00437029
mov edx, eax
mov rax, qword [0x00c595d0]
mov eax, dword [rax + 0x74]
add eax, edx
mov dword [0x00c5968c], eax
jmp 0x43b95c
cvtsd2ss xmm0, qword [rbp + 0x50]
call fcn.00437029
mov dword [0x00c59688], eax
cvtsd2ss xmm0, qword [rbp + 0x58]
call fcn.00437029
mov dword [0x00c5968c], eax
mov eax, dword [rbp + 0x70]
and eax, 0x200
test eax, eax
je 0x43ba9d
mov rax, qword [0x00c595d0]
movzx eax, byte [rax + 0x80]
test al, al
je 0x43ba7b
mov rax, qword [0x00c595d0]
movzx eax, byte [rax + 0x80]
cmp al, 2
jne 0x43ba3d
mov rax, qword [0x00c595d0]
movss xmm0, dword [rax + 0x84]
cvtss2sd xmm0, xmm0
movapd xmm1, xmm0
mulsd xmm1, qword [rbp + 0x60]
mov rax, qword [0x00c595d0]
movss xmm0, dword [rax + 0x8c]
cvtss2sd xmm0, xmm0
addsd xmm0, xmm1
cvtsd2ss xmm0, xmm0
call fcn.00437029
mov edx, eax
mov rax, qword [0x00c595d0]
mov eax, dword [rax + 0x70]
add eax, edx
mov dword [0x00c59690], eax
mov rax, qword [0x00c595d0]
movss xmm0, dword [rax + 0x88]
cvtss2sd xmm0, xmm0
movapd xmm1, xmm0
mulsd xmm1, qword [rbp + 0x68]
mov rax, qword [0x00c595d0]
movss xmm0, dword [rax + 0x90]
cvtss2sd xmm0, xmm0
addsd xmm0, xmm1
cvtsd2ss xmm0, xmm0
call fcn.00437029
mov edx, eax
mov rax, qword [0x00c595d0]
mov eax, dword [rax + 0x74]
add eax, edx
mov dword [0x00c59694], eax
jmp 0x43badb
cvtsd2ss xmm0, qword [rbp + 0x60]
call fcn.00437029
mov edx, eax
mov rax, qword [0x00c595d0]
mov eax, dword [rax + 0x70]
add eax, edx
mov dword [0x00c59690], eax
cvtsd2ss xmm0, qword [rbp + 0x68]
call fcn.00437029
mov edx, eax
mov rax, qword [0x00c595d0]
mov eax, dword [rax + 0x74]
add eax, edx
mov dword [0x00c59694], eax
jmp 0x43badb
cvtsd2ss xmm0, qword [rbp + 0x60]
call fcn.00437029
mov dword [0x00c59690], eax
cvtsd2ss xmm0, qword [rbp + 0x68]
call fcn.00437029
mov dword [0x00c59694], eax
jmp 0x43badb
mov dword [0x00c59690], 0
mov dword [0x00c59694], 0
jmp 0x43badb
mov dword [0x00c59688], 0
mov dword [0x00c5968c], 0
mov dword [0x00c59690], 0
mov dword [0x00c59694], 0
mov eax, dword [0x00c596c8]
test eax, eax
je 0x43bea5
mov eax, dword [rbp + 0x70]
and eax, 4
test eax, eax
je 0x43bb03
mov eax, dword [rbp + 0x70]
and eax, 0x200
test eax, eax
jne 0x43bce2
mov eax, dword [rbp + 0x70]
and eax, 4
test eax, eax
je 0x43bb85
mov eax, dword [rbp + 0x70]
and eax, 0x40
test eax, eax
je 0x43bb62
mov edx, dword [0x00c596a0]
mov eax, dword [0x00c59698]
sub edx, eax
mov eax, edx
cdq
xor eax, edx
sub eax, edx
mov edx, dword [0x00c59688]
add eax, edx
mov dword [0x00c59690], eax
mov edx, dword [0x00c596a4]
mov eax, dword [0x00c5969c]
sub edx, eax
mov eax, edx
cdq
xor eax, edx
sub eax, edx
mov edx, dword [0x00c5968c]
add eax, edx
mov dword [0x00c59694], eax
jmp 0x43bce3
mov eax, dword [0x00c596a8]
sub eax, 1
mov dword [0x00c59690], eax
mov eax, dword [0x00c596ac]
sub eax, 1
mov dword [0x00c59694], eax
jmp 0x43bce3
mov eax, dword [rbp + 0x70]
and eax, 0x200
test eax, eax
je 0x43bc09
mov eax, dword [rbp + 0x70]
and eax, 1
test eax, eax
je 0x43bbe6
mov edx, dword [0x00c59690]
mov eax, dword [0x00c59688]
sub edx, eax
mov eax, edx
cdq
xor eax, edx
sub eax, edx
mov edx, dword [0x00c59698]
add eax, edx
mov dword [0x00c596a0], eax
mov edx, dword [0x00c59694]
mov eax, dword [0x00c5968c]
sub edx, eax
mov eax, edx
cdq
xor eax, edx
sub eax, edx
mov edx, dword [0x00c5969c]
add eax, edx
mov dword [0x00c596a4], eax
jmp 0x43bce3
mov eax, dword [0x00c596b0]
sub eax, 1
mov dword [0x00c596a0], eax
mov eax, dword [0x00c596b4]
sub eax, 1
mov dword [0x00c596a4], eax
jmp 0x43bce3
mov eax, dword [rbp + 0x70]
and eax, 0x40
test eax, eax
je 0x43bc22
mov ecx, 5
call fcn.0044495a
jmp 0x4401a0
mov eax, dword [rbp + 0x70]
and eax, 1
test eax, eax
je 0x43bc84
mov rax, qword [0x00c595d0]
movzx eax, word [rax + 0x14]
movzx eax, ax
sub eax, 1
mov dword [0x00c59690], eax
mov rax, qword [0x00c595d0]
movzx eax, word [rax + 0x16]
movzx eax, ax
sub eax, 1
mov dword [0x00c59694], eax
mov edx, dword [0x00c59698]
mov eax, dword [0x00c59690]
add eax, edx
mov dword [0x00c596a0], eax
mov edx, dword [0x00c5969c]
mov eax, dword [0x00c59694]
add eax, edx
mov dword [0x00c596a4], eax
jmp 0x43bce3
mov rax, qword [0x00c595d0]
movzx eax, word [rax + 0x14]
movzx eax, ax
sub eax, 1
mov dword [0x00c59690], eax
mov rax, qword [0x00c595d0]
movzx eax, word [rax + 0x16]
movzx eax, ax
sub eax, 1
mov dword [0x00c59694], eax
mov rax, qword [0x00c595d8]
movzx eax, word [rax + 0x14]
movzx eax, ax
sub eax, 1
mov dword [0x00c596a0], eax
mov rax, qword [0x00c595d8]
movzx eax, word [rax + 0x16]
movzx eax, ax
sub eax, 1
mov dword [0x00c596a4], eax
jmp 0x43bce3
nop
mov rax, qword [0x00712fa8]
mov rcx, rax
call fcn.00437534
mov dword [rbp - 0x18], eax
mov eax, dword [rbp - 0x18]
cdqe
mov rcx, qword [0x00712fa8]
mov rdx, rax
call fcn.00437af2
mov qword [rbp - 0x20], rax
mov rax, qword [rbp - 0x20]
mov dword [rax + 0x6c], 0
mov rax, qword [rbp - 0x20]
mov qword [rax + 0x10], 1
mov rax, qword [rbp - 0x20]
mov edx, dword [rbp + 0x40]
mov dword [rax + 0x18], edx
mov eax, dword [0x00c59688]
cvtsi2ss xmm0, eax
mov rax, qword [rbp - 0x20]
movss dword [rax + 0x20], xmm0
mov eax, dword [0x00c5968c]
cvtsi2ss xmm0, eax
mov rax, qword [rbp - 0x20]
movss dword [rax + 0x24], xmm0
mov eax, dword [0x00c59690]
cvtsi2ss xmm0, eax
mov rax, qword [rbp - 0x20]
movss dword [rax + 0x28], xmm0
mov eax, dword [0x00c59694]
cvtsi2ss xmm0, eax
mov rax, qword [rbp - 0x20]
movss dword [rax + 0x2c], xmm0
mov rax, qword [rbp - 0x20]
mov edx, dword [rbp + 0x48]
mov dword [rax + 0x1c], edx
mov eax, dword [0x00c59698]
cvtsi2ss xmm0, eax
mov rax, qword [rbp - 0x20]
movss dword [rax + 0x38], xmm0
mov eax, dword [0x00c5969c]
cvtsi2ss xmm0, eax
mov rax, qword [rbp - 0x20]
movss dword [rax + 0x3c], xmm0
mov eax, dword [0x00c596a0]
cvtsi2ss xmm0, eax
mov rax, qword [rbp - 0x20]
movss dword [rax + 0x44], xmm0
mov eax, dword [0x00c596a4]
cvtsi2ss xmm0, eax
mov rax, qword [rbp - 0x20]
movss dword [rax + 0x48], xmm0
mov rax, qword [rbp - 0x20]
mov dword [rax + 0x5c], 0
mov eax, dword [rbp + 0x70]
and eax, 0x80
test eax, eax
je 0x43bdf2
mov rax, qword [rbp - 0x20]
mov dword [rax + 0x5c], 1
mov rax, qword [rbp - 0x20]
mov dword [rax + 0x68], 1
mov rax, qword [0x00c595d0]
movzx eax, byte [rax + 0x5c]
test al, al
je 0x43be17
mov rax, qword [rbp - 0x20]
mov dword [rax + 0x68], 0
cmp qword [rbp - 8], 0
je 0x43be38
mov rax, qword [0x00c595d8]
movzx eax, byte [rax + 0x5c]
test al, al
je 0x43be38
mov rax, qword [rbp - 0x20]
mov dword [rax + 0x68], 0
mov rax, qword [rbp - 0x20]
mov dword [rax + 8], 0
mov rdx, qword [0x00587128]
mov rax, qword [rbp - 0x20]
mov qword [rax], rdx
mov eax, dword [0x00712f9c]
test eax, eax
je 0x43be80
mov eax, dword [0x00712f9c]
cdqe
mov rcx, qword [0x00712fa8]
mov rdx, rax
call fcn.00437af2
mov qword [rbp - 0x28], rax
mov rax, qword [rbp - 0x28]
mov edx, dword [rbp - 0x18]
mov dword [rax + 8], edx
mov eax, dword [rbp - 0x18]
mov dword [0x00712f9c], eax
mov eax, dword [0x00712f98]
test eax, eax
jne 0x44015d
mov eax, dword [rbp - 0x18]
mov dword [0x00712f98], eax
jmp 0x44015d
mov eax, dword [rbp + 0x70]
and eax, 4
test eax, eax
je 0x43bf34
mov eax, dword [rbp + 0x70]
and eax, 0x200
test eax, eax
je 0x43bf34
mov edx, dword [0x00c596a0]
mov eax, dword [0x00c59698]
sub edx, eax
mov eax, edx
sar eax, 0x1f
xor edx, eax
sub edx, eax
mov ecx, dword [0x00c59690]
mov eax, dword [0x00c59688]
sub ecx, eax
mov eax, ecx
mov ecx, eax
sar ecx, 0x1f
xor eax, ecx
sub eax, ecx
cmp edx, eax
jne 0x43c3e8
mov edx, dword [0x00c596a4]
mov eax, dword [0x00c5969c]
sub edx, eax
mov eax, edx
sar eax, 0x1f
xor edx, eax
sub edx, eax
mov ecx, dword [0x00c59694]
mov eax, dword [0x00c5968c]
sub ecx, eax
mov eax, ecx
mov ecx, eax
sar ecx, 0x1f
xor eax, ecx
sub eax, ecx
cmp edx, eax
jne 0x43c3e8
jmp 0x43e1ac
mov eax, dword [rbp + 0x70]
and eax, 4
test eax, eax
je 0x43c006
mov eax, dword [rbp + 0x70]
and eax, 0x40
test eax, eax
je 0x43bf97
mov edx, dword [0x00c596a0]
mov eax, dword [0x00c59698]
sub edx, eax
mov eax, edx
cdq
xor eax, edx
sub eax, edx
mov edx, dword [0x00c59688]
add eax, edx
mov dword [0x00c59690], eax
mov edx, dword [0x00c596a4]
mov eax, dword [0x00c5969c]
sub edx, eax
mov eax, edx
cdq
xor eax, edx
sub eax, edx
mov edx, dword [0x00c5968c]
add eax, edx
mov dword [0x00c59694], eax
jmp 0x43e1ac
mov eax, dword [0x00c596a8]
sub eax, 1
mov dword [0x00c59690], eax
mov eax, dword [0x00c596ac]
sub eax, 1
mov dword [0x00c59694], eax
mov edx, dword [0x00c596a0]
mov eax, dword [0x00c59698]
sub edx, eax
mov eax, edx
cdq
xor eax, edx
sub eax, edx
lea edx, [rax + 1]
mov eax, dword [0x00c596a8]
cmp edx, eax
jne 0x43c3eb
mov edx, dword [0x00c596a4]
mov eax, dword [0x00c5969c]
sub edx, eax
mov eax, edx
cdq
xor eax, edx
sub eax, edx
lea edx, [rax + 1]
mov eax, dword [0x00c596ac]
cmp edx, eax
jne 0x43c3eb
jmp 0x43e1ac
mov eax, dword [rbp + 0x70]
and eax, 0x200
test eax, eax
je 0x43c0da
mov eax, dword [rbp + 0x70]
and eax, 1
test eax, eax
je 0x43c06b
mov edx, dword [0x00c59690]
mov eax, dword [0x00c59688]
sub edx, eax
mov eax, edx
cdq
xor eax, edx
sub eax, edx
mov edx, dword [0x00c59698]
add eax, edx
mov dword [0x00c596a0], eax
mov edx, dword [0x00c59694]
mov eax, dword [0x00c5968c]
sub edx, eax
mov eax, edx
cdq
xor eax, edx
sub eax, edx
mov edx, dword [0x00c5969c]
add eax, edx
mov dword [0x00c596a4], eax
jmp 0x43e1ac
mov eax, dword [0x00c596b0]
sub eax, 1
mov dword [0x00c596a0], eax
mov eax, dword [0x00c596b4]
sub eax, 1
mov dword [0x00c596a4], eax
mov edx, dword [0x00c59690]
mov eax, dword [0x00c59688]
sub edx, eax
mov eax, edx
cdq
xor eax, edx
sub eax, edx
lea edx, [rax + 1]
mov eax, dword [0x00c596b0]
cmp edx, eax
jne 0x43c3ee
mov edx, dword [0x00c59694]
mov eax, dword [0x00c5968c]
sub edx, eax
mov eax, edx
cdq
xor eax, edx
sub eax, edx
lea edx, [rax + 1]
mov eax, dword [0x00c596b4]
cmp edx, eax
jne 0x43c3ee
jmp 0x43e1ac
mov eax, dword [rbp + 0x70]
and eax, 0x40
test eax, eax
je 0x43c0f3
mov ecx, 5
call fcn.0044495a
jmp 0x4401a0
mov eax, dword [rbp + 0x70]
and eax, 1
test eax, eax
je 0x43c158
mov rax, qword [0x00c595d0]
movzx eax, word [rax + 0x14]
movzx eax, ax
sub eax, 1
mov dword [0x00c59690], eax
mov rax, qword [0x00c595d0]
movzx eax, word [rax + 0x16]
movzx eax, ax
sub eax, 1
mov dword [0x00c59694], eax
mov edx, dword [0x00c59698]
mov eax, dword [0x00c59690]
add eax, edx
mov dword [0x00c596a0], eax
mov edx, dword [0x00c5969c]
mov eax, dword [0x00c59694]
add eax, edx
mov dword [0x00c596a4], eax
jmp 0x43e327
mov rax, qword [0x00c595d0]
movzx eax, word [rax + 0x14]
movzx eax, ax
sub eax, 1
mov dword [0x00c59690], eax
mov rax, qword [0x00c595d0]
movzx eax, word [rax + 0x16]
movzx eax, ax
sub eax, 1
mov dword [0x00c59694], eax
mov rax, qword [0x00c595d8]
movzx eax, word [rax + 0x14]
movzx eax, ax
sub eax, 1
mov dword [0x00c596a0], eax
mov rax, qword [0x00c595d8]
movzx eax, word [rax + 0x16]
movzx eax, ax
sub eax, 1
mov dword [0x00c596a4], eax
mov edx, dword [0x00c59690]
mov eax, dword [0x00c596a0]
cmp edx, eax
jne 0x43c1d8
mov edx, dword [0x00c59694]
mov eax, dword [0x00c596a4]
cmp edx, eax
je 0x43e6ae
mov edx, dword [0x00c596a0]
mov eax, dword [0x00c59698]
sub edx, eax
mov eax, edx
mov dword [0x00c59598], eax
mov edx, dword [0x00c596a4]
mov eax, dword [0x00c5969c]
sub edx, eax
mov eax, edx
mov dword [0x00c5959c], eax
mov eax, dword [0x00c59688]
cvtsi2sd xmm0, eax
movsd qword [0x00c59658], xmm0
mov eax, dword [0x00c5968c]
cvtsi2sd xmm0, eax
movsd qword [0x00c59660], xmm0
mov eax, dword [0x00c59690]
cvtsi2sd xmm0, eax
movsd qword [0x00c59668], xmm0
mov eax, dword [0x00c59694]
cvtsi2sd xmm0, eax
movsd qword [0x00c59670], xmm0
movsd xmm1, qword [0x00c59658]
movsd xmm0, qword [0x00c59668]
comisd xmm0, xmm1
jb 0x43c29c
movsd xmm0, qword [0x00c59658]
movsd xmm1, qword [0x005b5ca0]
subsd xmm0, xmm1
movsd qword [0x00c59658], xmm0
movsd xmm1, qword [0x00c59668]
movsd xmm0, qword [0x005b5ca0]
addsd xmm0, xmm1
movsd qword [0x00c59668], xmm0
jmp 0x43c2d4
movsd xmm1, qword [0x00c59658]
movsd xmm0, qword [0x005b5ca0]
addsd xmm0, xmm1
movsd qword [0x00c59658], xmm0
movsd xmm0, qword [0x00c59668]
movsd xmm1, qword [0x005b5ca0]
subsd xmm0, xmm1
movsd qword [0x00c59668], xmm0
movsd xmm1, qword [0x00c59660]
movsd xmm0, qword [0x00c59670]
comisd xmm0, xmm1
jb 0x43c324
movsd xmm0, qword [0x00c59660]
movsd xmm1, qword [0x005b5ca0]
subsd xmm0, xmm1
movsd qword [0x00c59660], xmm0
movsd xmm1, qword [0x00c59670]
movsd xmm0, qword [0x005b5ca0]
addsd xmm0, xmm1
movsd qword [0x00c59670], xmm0
jmp 0x43c35c
movsd xmm1, qword [0x00c59660]
movsd xmm0, qword [0x005b5ca0]
addsd xmm0, xmm1
movsd qword [0x00c59660], xmm0
movsd xmm0, qword [0x00c59670]
movsd xmm1, qword [0x005b5ca0]
subsd xmm0, xmm1
movsd qword [0x00c59670], xmm0
mov eax, dword [0x00c59598]
test eax, eax
je 0x43c392
movsd xmm0, qword [0x00c59668]
movsd xmm1, qword [0x00c59658]
subsd xmm0, xmm1
mov eax, dword [0x00c59598]
cvtsi2sd xmm1, eax
divsd xmm0, xmm1
movsd qword [0x00c59638], xmm0
jmp 0x43c39e
pxor xmm0, xmm0
movsd qword [0x00c59638], xmm0
mov eax, dword [0x00c5959c]
test eax, eax
je 0x43c3d7
movsd xmm0, qword [0x00c59670]
movsd xmm1, qword [0x00c59660]
subsd xmm0, xmm1
mov eax, dword [0x00c5959c]
cvtsi2sd xmm1, eax
divsd xmm0, xmm1
movsd qword [0x00c59640], xmm0
jmp 0x43ccfe
pxor xmm0, xmm0
movsd qword [0x00c59640], xmm0
jmp 0x43ccfe
nop
jmp 0x43c3ef
nop
jmp 0x43c3ef
nop
mov edx, dword [0x00c596a0]
mov eax, dword [0x00c59698]
cmp edx, eax
jge 0x43c419
mov edx, dword [0x00c59690]
mov eax, dword [0x00c59688]
cmp edx, eax
jle 0x43c419
mov dword [0x00c59630], 1
mov edx, dword [0x00c59690]
mov eax, dword [0x00c59688]
cmp edx, eax
jge 0x43c443
mov edx, dword [0x00c596a0]
mov eax, dword [0x00c59698]
cmp edx, eax
jle 0x43c443
mov dword [0x00c59630], 1
mov edx, dword [0x00c596a0]
mov eax, dword [0x00c59698]
cmp edx, eax
jge 0x43c477
mov eax, dword [0x00c59698]
mov dword [0x00c595a8], eax
mov eax, dword [0x00c596a0]
mov dword [0x00c59698], eax
mov eax, dword [0x00c595a8]
mov dword [0x00c596a0], eax
mov edx, dword [0x00c59690]
mov eax, dword [0x00c59688]
cmp edx, eax
jge 0x43c4ab
mov eax, dword [0x00c59688]
mov dword [0x00c595a8], eax
mov eax, dword [0x00c59690]
mov dword [0x00c59688], eax
mov eax, dword [0x00c595a8]
mov dword [0x00c59690], eax
mov edx, dword [0x00c596a4]
mov eax, dword [0x00c5969c]
cmp edx, eax
jge 0x43c4d5
mov edx, dword [0x00c59694]
mov eax, dword [0x00c5968c]
cmp edx, eax
jle 0x43c4d5
mov dword [0x00c5962c], 1
mov edx, dword [0x00c59694]
mov eax, dword [0x00c5968c]
cmp edx, eax
jge 0x43c4ff
mov edx, dword [0x00c596a4]
mov eax, dword [0x00c5969c]
cmp edx, eax
jle 0x43c4ff
mov dword [0x00c5962c], 1
mov edx, dword [0x00c596a4]
mov eax, dword [0x00c5969c]
cmp edx, eax
jge 0x43c533
mov eax, dword [0x00c5969c]
mov dword [0x00c595ac], eax
mov eax, dword [0x00c596a4]
mov dword [0x00c5969c], eax
mov eax, dword [0x00c595ac]
mov dword [0x00c596a4], eax
mov edx, dword [0x00c59694]
mov eax, dword [0x00c5968c]
cmp edx, eax
jge 0x43c567
mov eax, dword [0x00c5968c]
mov dword [0x00c595ac], eax
mov eax, dword [0x00c59694]
mov dword [0x00c5968c], eax
mov eax, dword [0x00c595ac]
mov dword [0x00c59694], eax
mov edx, dword [0x00c596a0]
mov eax, dword [0x00c59698]
sub edx, eax
mov eax, edx
mov dword [0x00c59598], eax
mov edx, dword [0x00c596a4]
mov eax, dword [0x00c5969c]
sub edx, eax
mov eax, edx
mov dword [0x00c5959c], eax
mov eax, dword [0x00c59688]
cvtsi2sd xmm0, eax
movsd qword [0x00c59658], xmm0
mov eax, dword [0x00c5968c]
cvtsi2sd xmm0, eax
movsd qword [0x00c59660], xmm0
mov eax, dword [0x00c59690]
cvtsi2sd xmm0, eax
movsd qword [0x00c59668], xmm0
mov eax, dword [0x00c59694]
cvtsi2sd xmm0, eax
movsd qword [0x00c59670], xmm0
movsd xmm1, qword [0x00c59658]
movsd xmm0, qword [0x00c59668]
comisd xmm0, xmm1
jb 0x43c62b
movsd xmm0, qword [0x00c59658]
movsd xmm1, qword [0x005b5ca0]
subsd xmm0, xmm1
movsd qword [0x00c59658], xmm0
movsd xmm1, qword [0x00c59668]
movsd xmm0, qword [0x005b5ca0]
addsd xmm0, xmm1
movsd qword [0x00c59668], xmm0
jmp 0x43c663
movsd xmm1, qword [0x00c59658]
movsd xmm0, qword [0x005b5ca0]
addsd xmm0, xmm1
movsd qword [0x00c59658], xmm0
movsd xmm0, qword [0x00c59668]
movsd xmm1, qword [0x005b5ca0]
subsd xmm0, xmm1
movsd qword [0x00c59668], xmm0
movsd xmm1, qword [0x00c59660]
movsd xmm0, qword [0x00c59670]
comisd xmm0, xmm1
jb 0x43c6b3
movsd xmm0, qword [0x00c59660]
movsd xmm1, qword [0x005b5ca0]
subsd xmm0, xmm1
movsd qword [0x00c59660], xmm0
movsd xmm1, qword [0x00c59670]
movsd xmm0, qword [0x005b5ca0]
addsd xmm0, xmm1
movsd qword [0x00c59670], xmm0
jmp 0x43c6eb
movsd xmm1, qword [0x00c59660]
movsd xmm0, qword [0x005b5ca0]
addsd xmm0, xmm1
movsd qword [0x00c59660], xmm0
movsd xmm0, qword [0x00c59670]
movsd xmm1, qword [0x005b5ca0]
subsd xmm0, xmm1
movsd qword [0x00c59670], xmm0
mov eax, dword [0x00c59598]
test eax, eax
je 0x43c721
movsd xmm0, qword [0x00c59668]
movsd xmm1, qword [0x00c59658]
subsd xmm0, xmm1
mov eax, dword [0x00c59598]
cvtsi2sd xmm1, eax
divsd xmm0, xmm1
movsd qword [0x00c59638], xmm0
jmp 0x43c72d
pxor xmm0, xmm0
movsd qword [0x00c59638], xmm0
mov eax, dword [0x00c5959c]
test eax, eax
je 0x43c763
movsd xmm0, qword [0x00c59670]
movsd xmm1, qword [0x00c59660]
subsd xmm0, xmm1
mov eax, dword [0x00c5959c]
cvtsi2sd xmm1, eax
divsd xmm0, xmm1
movsd qword [0x00c59640], xmm0
jmp 0x43c76f
pxor xmm0, xmm0
movsd qword [0x00c59640], xmm0
mov eax, dword [0x00c59698]
test eax, eax
jns 0x43c7e3
mov eax, dword [0x00c59630]
test eax, eax
je 0x43c7af
mov eax, dword [0x00c59698]
cvtsi2sd xmm1, eax
movsd xmm0, qword [0x00c59638]
mulsd xmm1, xmm0
movsd xmm0, qword [0x00c59668]
addsd xmm0, xmm1
movsd qword [0x00c59668], xmm0
jmp 0x43c7d9
movsd xmm0, qword [0x00c59658]
mov eax, dword [0x00c59698]
cvtsi2sd xmm2, eax
movsd xmm1, qword [0x00c59638]
mulsd xmm1, xmm2
subsd xmm0, xmm1
movsd qword [0x00c59658], xmm0
mov dword [0x00c59698], 0
mov eax, dword [0x00c5969c]
test eax, eax
jns 0x43c857
mov eax, dword [0x00c5962c]
test eax, eax
je 0x43c823
mov eax, dword [0x00c5969c]
cvtsi2sd xmm1, eax
movsd xmm0, qword [0x00c59640]
mulsd xmm1, xmm0
movsd xmm0, qword [0x00c59670]
addsd xmm0, xmm1
movsd qword [0x00c59670], xmm0
jmp 0x43c84d
movsd xmm0, qword [0x00c59660]
mov eax, dword [0x00c5969c]
cvtsi2sd xmm2, eax
movsd xmm1, qword [0x00c59640]
mulsd xmm1, xmm2
subsd xmm0, xmm1
movsd qword [0x00c59660], xmm0
mov dword [0x00c5969c], 0
mov edx, dword [0x00c596a0]
mov eax, dword [0x00c596b0]
cmp edx, eax
jl 0x43c8f4
mov eax, dword [0x00c59630]
test eax, eax
je 0x43c8ae
mov edx, dword [0x00c596a0]
mov eax, dword [0x00c596b0]
sub edx, eax
mov eax, edx
add eax, 1
cvtsi2sd xmm1, eax
movsd xmm0, qword [0x00c59638]
mulsd xmm1, xmm0
movsd xmm0, qword [0x00c59658]
addsd xmm0, xmm1
movsd qword [0x00c59658], xmm0
jmp 0x43c8e5
movsd xmm0, qword [0x00c59668]
mov edx, dword [0x00c596a0]
mov eax, dword [0x00c596b0]
sub edx, eax
mov eax, edx
add eax, 1
cvtsi2sd xmm2, eax
movsd xmm1, qword [0x00c59638]
mulsd xmm1, xmm2
subsd xmm0, xmm1
movsd qword [0x00c59668], xmm0
mov eax, dword [0x00c596b0]
sub eax, 1
mov dword [0x00c596a0], eax
mov edx, dword [0x00c596a4]
mov eax, dword [0x00c596b4]
cmp edx, eax
jl 0x43c991
mov eax, dword [0x00c5962c]
test eax, eax
je 0x43c94b
mov edx, dword [0x00c596a4]
mov eax, dword [0x00c596b4]
sub edx, eax
mov eax, edx
add eax, 1
cvtsi2sd xmm1, eax
movsd xmm0, qword [0x00c59640]
mulsd xmm1, xmm0
movsd xmm0, qword [0x00c59660]
addsd xmm0, xmm1
movsd qword [0x00c59660], xmm0
jmp 0x43c982
movsd xmm0, qword [0x00c59670]
mov edx, dword [0x00c596a4]
mov eax, dword [0x00c596b4]
sub edx, eax
mov eax, edx
add eax, 1
cvtsi2sd xmm2, eax
movsd xmm1, qword [0x00c59640]
mulsd xmm1, xmm2
subsd xmm0, xmm1
movsd qword [0x00c59670], xmm0
mov eax, dword [0x00c596b4]
sub eax, 1
mov dword [0x00c596a4], eax
mov eax, dword [0x00c59598]
test eax, eax
je 0x43cb33
movsd xmm1, qword [0x00c59658]
movsd xmm0, qword [0x005b5ca8]
comisd xmm0, xmm1
jbe 0x43ca5f
movsd xmm0, qword [0x00c59658]
movq xmm1, qword [0x005b5cb0]
xorpd xmm0, xmm1
movsd xmm1, qword [0x005b5ca0]
subsd xmm0, xmm1
movsd xmm1, qword [0x00c59638]
divsd xmm0, xmm1
movapd xmm1, xmm0
movsd xmm0, qword [0x005b5c78]
addsd xmm0, xmm1
cvttsd2si eax, xmm0
mov dword [0x00c595a8], eax
mov eax, dword [0x00c59630]
test eax, eax
je 0x43ca21
mov edx, dword [0x00c596a0]
mov eax, dword [0x00c595a8]
sub edx, eax
mov eax, edx
mov dword [0x00c596a0], eax
jmp 0x43ca35
mov edx, dword [0x00c59698]
mov eax, dword [0x00c595a8]
add eax, edx
mov dword [0x00c59698], eax
mov eax, dword [0x00c595a8]
cvtsi2sd xmm1, eax
movsd xmm0, qword [0x00c59638]
mulsd xmm1, xmm0
movsd xmm0, qword [0x00c59658]
addsd xmm0, xmm1
movsd qword [0x00c59658], xmm0
mov eax, dword [0x00c596a8]
cvtsi2sd xmm0, eax
movsd xmm1, qword [0x005b5cc0]
subsd xmm0, xmm1
movapd xmm1, xmm0
movsd xmm0, qword [0x00c59668]
comisd xmm0, xmm1
jbe 0x43cb33
movsd xmm0, qword [0x00c59668]
mov eax, dword [0x00c596a8]
cvtsi2sd xmm1, eax
movsd xmm2, qword [0x005b5cc8]
subsd xmm1, xmm2
subsd xmm0, xmm1
movsd xmm1, qword [0x00c59638]
divsd xmm0, xmm1
movapd xmm1, xmm0
movsd xmm0, qword [0x005b5c78]
addsd xmm0, xmm1
cvttsd2si eax, xmm0
mov dword [0x00c595a8], eax
mov eax, dword [0x00c59630]
test eax, eax
je 0x43caf3
mov edx, dword [0x00c59698]
mov eax, dword [0x00c595a8]
add eax, edx
mov dword [0x00c59698], eax
jmp 0x43cb09
mov edx, dword [0x00c596a0]
mov eax, dword [0x00c595a8]
sub edx, eax
mov eax, edx
mov dword [0x00c596a0], eax
movsd xmm0, qword [0x00c59668]
mov eax, dword [0x00c595a8]
cvtsi2sd xmm2, eax
movsd xmm1, qword [0x00c59638]
mulsd xmm1, xmm2
subsd xmm0, xmm1
movsd qword [0x00c59668], xmm0
mov eax, dword [0x00c5959c]
test eax, eax
je 0x43ccd5
movsd xmm1, qword [0x00c59660]
movsd xmm0, qword [0x005b5ca8]
comisd xmm0, xmm1
jbe 0x43cc01
movsd xmm0, qword [0x00c59660]
movq xmm1, qword [0x005b5cb0]
xorpd xmm0, xmm1
movsd xmm1, qword [0x005b5ca0]
subsd xmm0, xmm1
movsd xmm1, qword [0x00c59640]
divsd xmm0, xmm1
movapd xmm1, xmm0
movsd xmm0, qword [0x005b5c78]
addsd xmm0, xmm1
cvttsd2si eax, xmm0
mov dword [0x00c595ac], eax
mov eax, dword [0x00c5962c]
test eax, eax
je 0x43cbc3
mov edx, dword [0x00c596a4]
mov eax, dword [0x00c595ac]
sub edx, eax
mov eax, edx
mov dword [0x00c596a4], eax
jmp 0x43cbd7
mov edx, dword [0x00c5969c]
mov eax, dword [0x00c595ac]
add eax, edx
mov dword [0x00c5969c], eax
mov eax, dword [0x00c595ac]
cvtsi2sd xmm1, eax
movsd xmm0, qword [0x00c59640]
mulsd xmm1, xmm0
movsd xmm0, qword [0x00c59660]
addsd xmm0, xmm1
movsd qword [0x00c59660], xmm0
mov eax, dword [0x00c596ac]
cvtsi2sd xmm0, eax
movsd xmm1, qword [0x005b5cc0]
subsd xmm0, xmm1
movapd xmm1, xmm0
movsd xmm0, qword [0x00c59670]
comisd xmm0, xmm1
jbe 0x43ccd5
movsd xmm0, qword [0x00c59670]
mov eax, dword [0x00c596ac]
cvtsi2sd xmm1, eax
movsd xmm2, qword [0x005b5cc8]
subsd xmm1, xmm2
subsd xmm0, xmm1
movsd xmm1, qword [0x00c59640]
divsd xmm0, xmm1
movapd xmm1, xmm0
movsd xmm0, qword [0x005b5c78]
addsd xmm0, xmm1
cvttsd2si eax, xmm0
mov dword [0x00c595ac], eax
mov eax, dword [0x00c5962c]
test eax, eax
je 0x43cc95
mov edx, dword [0x00c5969c]
mov eax, dword [0x00c595ac]
add eax, edx
mov dword [0x00c5969c], eax
jmp 0x43ccab
mov edx, dword [0x00c596a4]
mov eax, dword [0x00c595ac]
sub edx, eax
mov eax, edx
mov dword [0x00c596a4], eax
movsd xmm0, qword [0x00c59670]
mov eax, dword [0x00c595ac]
cvtsi2sd xmm2, eax
movsd xmm1, qword [0x00c59640]
mulsd xmm1, xmm2
subsd xmm0, xmm1
movsd qword [0x00c59670], xmm0
mov edx, dword [0x00c59698]
mov eax, dword [0x00c596a0]
cmp edx, eax
jg 0x440160
mov edx, dword [0x00c5969c]
mov eax, dword [0x00c596a4]
cmp edx, eax
jg 0x440163
nop
mov edx, dword [0x00c596a0]
mov eax, dword [0x00c59698]
sub edx, eax
mov eax, edx
add eax, 1
mov dword [0x00c59598], eax
mov edx, dword [0x00c596a4]
mov eax, dword [0x00c5969c]
sub edx, eax
mov eax, edx
add eax, 1
mov dword [0x00c5959c], eax
mov eax, dword [0x00c595c8]
cmp eax, 4
jne 0x43cd62
mov rax, qword [0x00c595d0]
movzx eax, byte [rax + 0x5c]
test al, al
jne 0x43d279
mov rax, qword [0x00c595d8]
movzx eax, byte [rax + 0x5c]
test al, al
je 0x43cd9d
jmp 0x43d279
mov eax, dword [0x00c595c4]
cmp eax, 1
jne 0x43cd85
mov rax, qword [0x00c595d0]
mov eax, dword [rax + 0x58]
cmp eax, 0xffffffff
jne 0x43d85c
jmp 0x43d57e
mov rax, qword [0x00c595d0]
mov eax, dword [rax + 0x58]
cmp eax, 0xffffffff
jne 0x43de77
jmp 0x43db55
nop
mov eax, dword [0x00c5962c]
test eax, eax
je 0x43ce54
mov eax, dword [0x00c59630]
test eax, eax
je 0x43ce03
mov rax, qword [0x00c595d8]
mov rdx, qword [rax + 0x40]
mov ecx, dword [0x00c596a4]
mov eax, dword [0x00c596b0]
imul eax, ecx
mov ecx, dword [0x00c596a0]
add eax, ecx
cdqe
shl rax, 2
add rax, rdx
mov qword [0x00c595e8], rax
mov edx, dword [0x00c59598]
mov eax, dword [0x00c596b0]
sub edx, eax
mov eax, edx
mov dword [0x00c595a4], eax
jmp 0x43ceee
mov rax, qword [0x00c595d8]
mov rdx, qword [rax + 0x40]
mov ecx, dword [0x00c596a4]
mov eax, dword [0x00c596b0]
imul eax, ecx
mov ecx, dword [0x00c59698]
add eax, ecx
cdqe
shl rax, 2
add rax, rdx
mov qword [0x00c595e8], rax
mov eax, dword [0x00c596b0]
neg eax
mov edx, eax
mov eax, dword [0x00c59598]
sub edx, eax
mov eax, edx
mov dword [0x00c595a4], eax
jmp 0x43ceee
mov eax, dword [0x00c59630]
test eax, eax
je 0x43cea6
mov rax, qword [0x00c595d8]
mov rdx, qword [rax + 0x40]
mov ecx, dword [0x00c5969c]
mov eax, dword [0x00c596b0]
imul eax, ecx
mov ecx, dword [0x00c596a0]
add eax, ecx
cdqe
shl rax, 2
add rax, rdx
mov qword [0x00c595e8], rax
mov edx, dword [0x00c596b0]
mov eax, dword [0x00c59598]
add eax, edx
mov dword [0x00c595a4], eax
jmp 0x43ceee
mov rax, qword [0x00c595d8]
mov rdx, qword [rax + 0x40]
mov ecx, dword [0x00c5969c]
mov eax, dword [0x00c596b0]
imul eax, ecx
mov ecx, dword [0x00c59698]
add eax, ecx
cdqe
shl rax, 2
add rax, rdx
mov qword [0x00c595e8], rax
mov edx, dword [0x00c596b0]
mov eax, dword [0x00c59598]
sub edx, eax
mov eax, edx
mov dword [0x00c595a4], eax
mov eax, dword [0x00c59630]
test eax, eax
je 0x43cf04
mov dword [0x00c59618], 0xffffffff
jmp 0x43cf0e
mov dword [0x00c59618], 1
mov eax, dword [0x00c5959c]
mov dword [0x00c595b4], eax
movsd xmm0, qword [0x00c59660]
movsd qword [0x00c59650], xmm0
movsd xmm0, qword [0x00c59658]
movsd xmm1, qword [0x00c59638]
subsd xmm0, xmm1
movsd qword [0x00c59658], xmm0
mov eax, dword [0x00c59598]
mov dword [0x00c595b0], eax
mov rax, qword [0x00c595d0]
mov rbx, qword [rax + 0x40]
mov rax, qword [0x00c59650]
movq xmm0, rax
call fcn.00437045
mov edx, eax
mov eax, dword [0x00c596a8]
imul eax, edx
cdqe
shl rax, 2
add rax, rbx
mov qword [0x00c596c0], rax
movsd xmm0, qword [0x00c59658]
movsd qword [0x00c59648], xmm0
mov rbx, qword [0x00c596c0]
movsd xmm1, qword [0x00c59648]
movsd xmm0, qword [0x00c59638]
addsd xmm0, xmm1
movsd qword [0x00c59648], xmm0
mov rax, qword [0x00c59648]
movq xmm0, rax
call fcn.00437045
cdqe
shl rax, 2
add rax, rbx
mov eax, dword [rax]
mov dword [0x00c595f0], eax
mov eax, dword [0x00c595f0]
and eax, 0xff000000
cmp eax, 0x7f000000
je 0x43d082
cmp eax, 0x7f000000
ja 0x43d008
test eax, eax
je 0x43d1d8
jmp 0x43d0d6
cmp eax, 0x80000000
je 0x43d02e
cmp eax, 0xff000000
jne 0x43d0d6
mov rax, qword [0x00c595e8]
mov edx, dword [0x00c595f0]
mov dword [rax], edx
jmp 0x43d1d9
mov rax, qword [0x00c595e8]
mov eax, dword [rax]
and eax, 0xfefefe
mov edx, eax
mov eax, dword [0x00c595f0]
and eax, 0xfefefe
add eax, edx
shr eax, 1
mov edx, eax
mov rcx, qword [0x00723a58]
mov rax, qword [0x00c595e8]
mov eax, dword [rax]
shr eax, 0x18
mov eax, eax
add rax, rcx
movzx eax, byte [rax]
movzx eax, al
shl eax, 0x18
mov ecx, eax
mov rax, qword [0x00c595e8]
add edx, ecx
mov dword [rax], edx
jmp 0x43d1d9
mov rax, qword [0x00c595e8]
mov eax, dword [rax]
and eax, 0xfefefe
mov edx, eax
mov eax, dword [0x00c595f0]
and eax, 0xfefefe
add eax, edx
shr eax, 1
mov edx, eax
mov rcx, qword [0x00723a50]
mov rax, qword [0x00c595e8]
mov eax, dword [rax]
shr eax, 0x18
mov eax, eax
add rax, rcx
movzx eax, byte [rax]
movzx eax, al
shl eax, 0x18
mov ecx, eax
mov rax, qword [0x00c595e8]
add edx, ecx
mov dword [rax], edx
jmp 0x43d1d9
mov rax, qword [0x00c595e8]
mov eax, dword [rax]
mov dword [0x00c595f8], eax
mov rax, qword [0x00723a40]
mov edx, dword [0x00c595f0]
shr edx, 0x18
shl edx, 0x10
mov edx, edx
add rax, rdx
mov qword [0x00c59610], rax
mov rcx, qword [0x00c59610]
mov eax, dword [0x00c595f0]
shl eax, 8
movzx edx, ax
mov eax, dword [0x00c595f8]
movzx eax, al
add eax, edx
mov eax, eax
add rax, rcx
movzx eax, byte [rax]
movzx edx, al
mov rcx, qword [0x00c59610]
mov eax, dword [0x00c595f0]
and eax, 0xff00
mov r8d, eax
mov eax, dword [0x00c595f8]
shr eax, 8
movzx eax, al
or eax, r8d
mov eax, eax
add rax, rcx
movzx eax, byte [rax]
movzx eax, al
shl eax, 8
add edx, eax
mov rcx, qword [0x00c59610]
mov eax, dword [0x00c595f0]
shr eax, 8
and eax, 0xff00
mov r8d, eax
mov eax, dword [0x00c595f8]
shr eax, 0x10
movzx eax, al
or eax, r8d
mov eax, eax
add rax, rcx
movzx eax, byte [rax]
movzx eax, al
shl eax, 0x10
add edx, eax
mov rax, qword [0x00723a48]
mov ecx, dword [0x00c595f0]
shr ecx, 0x18
mov r8d, ecx
mov ecx, dword [0x00c595f8]
shr ecx, 0x10
and ecx, 0xff00
add ecx, r8d
mov ecx, ecx
add rax, rcx
movzx eax, byte [rax]
movzx eax, al
shl eax, 0x18
add edx, eax
mov rax, qword [0x00c595e8]
mov dword [rax], edx
jmp 0x43d1d9
nop
mov rdx, qword [0x00c595e8]
mov eax, dword [0x00c59618]
cdqe
shl rax, 2
add rax, rdx
mov qword [0x00c595e8], rax
mov eax, dword [0x00c595b0]
sub eax, 1
mov dword [0x00c595b0], eax
mov eax, dword [0x00c595b0]
test eax, eax
setne al
test al, al
je 0x43d219
jmp 0x43cf99
mov rdx, qword [0x00c595e8]
mov eax, dword [0x00c595a4]
cdqe
shl rax, 2
add rax, rdx
mov qword [0x00c595e8], rax
movsd xmm1, qword [0x00c59650]
movsd xmm0, qword [0x00c59640]
addsd xmm0, xmm1
movsd qword [0x00c59650], xmm0
mov eax, dword [0x00c595b4]
sub eax, 1
mov dword [0x00c595b4], eax
mov eax, dword [0x00c595b4]
test eax, eax
setne al
test al, al
je 0x440166
jmp 0x43cf46
nop
mov eax, dword [0x00c5962c]
test eax, eax
je 0x43d330
mov eax, dword [0x00c59630]
test eax, eax
je 0x43d2df
mov rax, qword [0x00c595d8]
mov rdx, qword [rax + 0x40]
mov ecx, dword [0x00c596a4]
mov eax, dword [0x00c596b0]
imul eax, ecx
mov ecx, dword [0x00c596a0]
add eax, ecx
cdqe
shl rax, 2
add rax, rdx
mov qword [0x00c595e8], rax
mov edx, dword [0x00c59598]
mov eax, dword [0x00c596b0]
sub edx, eax
mov eax, edx
mov dword [0x00c595a4], eax
jmp 0x43d3ca
mov rax, qword [0x00c595d8]
mov rdx, qword [rax + 0x40]
mov ecx, dword [0x00c596a4]
mov eax, dword [0x00c596b0]
imul eax, ecx
mov ecx, dword [0x00c59698]
add eax, ecx
cdqe
shl rax, 2
add rax, rdx
mov qword [0x00c595e8], rax
mov eax, dword [0x00c596b0]
neg eax
mov edx, eax
mov eax, dword [0x00c59598]
sub edx, eax
mov eax, edx
mov dword [0x00c595a4], eax
jmp 0x43d3ca
mov eax, dword [0x00c59630]
test eax, eax
je 0x43d382
mov rax, qword [0x00c595d8]
mov rdx, qword [rax + 0x40]
mov ecx, dword [0x00c5969c]
mov eax, dword [0x00c596b0]
imul eax, ecx
mov ecx, dword [0x00c596a0]
add eax, ecx
cdqe
shl rax, 2
add rax, rdx
mov qword [0x00c595e8], rax
mov edx, dword [0x00c596b0]
mov eax, dword [0x00c59598]
add eax, edx
mov dword [0x00c595a4], eax
jmp 0x43d3ca
mov rax, qword [0x00c595d8]
mov rdx, qword [rax + 0x40]
mov ecx, dword [0x00c5969c]
mov eax, dword [0x00c596b0]
imul eax, ecx
mov ecx, dword [0x00c59698]
add eax, ecx
cdqe
shl rax, 2
add rax, rdx
mov qword [0x00c595e8], rax
mov edx, dword [0x00c596b0]
mov eax, dword [0x00c59598]
sub edx, eax
mov eax, edx
mov dword [0x00c595a4], eax
mov eax, dword [0x00c59630]
test eax, eax
je 0x43d3e0
mov dword [0x00c59618], 0xffffffff
jmp 0x43d3ea
mov dword [0x00c59618], 1
mov eax, dword [0x00c5959c]
mov dword [0x00c595b4], eax
movsd xmm0, qword [0x00c59660]
movsd qword [0x00c59650], xmm0
movsd xmm0, qword [0x00c59658]
movsd xmm1, qword [0x00c59638]
subsd xmm0, xmm1
movsd qword [0x00c59658], xmm0
mov rdx, qword [0x00c595e8]
mov eax, dword [0x00c59618]
cdqe
shl rax, 2
neg rax
add rax, rdx
mov qword [0x00c595e8], rax
mov eax, dword [0x00c59598]
mov dword [0x00c595b0], eax
mov rax, qword [0x00c595d0]
mov rbx, qword [rax + 0x40]
mov rax, qword [0x00c59650]
movq xmm0, rax
call fcn.00437045
mov edx, eax
mov eax, dword [0x00c596a8]
imul eax, edx
cdqe
shl rax, 2
add rax, rbx
mov qword [0x00c596c0], rax
movsd xmm0, qword [0x00c59658]
movsd qword [0x00c59648], xmm0
mov rbx, qword [0x00c596c0]
movsd xmm1, qword [0x00c59648]
movsd xmm0, qword [0x00c59638]
addsd xmm0, xmm1
movsd qword [0x00c59648], xmm0
mov rax, qword [0x00c59648]
movq xmm0, rax
call fcn.00437045
cdqe
shl rax, 2
lea rdx, [rbx + rax]
mov rcx, qword [0x00c595e8]
mov eax, dword [0x00c59618]
cdqe
shl rax, 2
add rax, rcx
mov qword [0x00c595e8], rax
mov rax, qword [0x00c595e8]
mov edx, dword [rdx]
mov dword [rax], edx
mov eax, dword [0x00c595b0]
sub eax, 1
mov dword [0x00c595b0], eax
mov eax, dword [0x00c595b0]
test eax, eax
setne al
test al, al
je 0x43d51e
jmp 0x43d495
mov rdx, qword [0x00c595e8]
mov eax, dword [0x00c595a4]
cdqe
shl rax, 2
add rax, rdx
mov qword [0x00c595e8], rax
movsd xmm1, qword [0x00c59650]
movsd xmm0, qword [0x00c59640]
addsd xmm0, xmm1
movsd qword [0x00c59650], xmm0
mov eax, dword [0x00c595b4]
sub eax, 1
mov dword [0x00c595b4], eax
mov eax, dword [0x00c595b4]
test eax, eax
setne al
test al, al
je 0x440169
jmp 0x43d442
mov eax, dword [0x00c5962c]
test eax, eax
je 0x43d62c
mov eax, dword [0x00c59630]
test eax, eax
je 0x43d5df
mov rax, qword [0x00c595d8]
mov rdx, qword [rax + 0x40]
mov ecx, dword [0x00c596a4]
mov eax, dword [0x00c596b0]
imul eax, ecx
mov ecx, dword [0x00c596a0]
add eax, ecx
cdqe
add rax, rdx
mov qword [0x00c59608], rax
mov edx, dword [0x00c59598]
mov eax, dword [0x00c596b0]
sub edx, eax
mov eax, edx
mov dword [0x00c595a4], eax
jmp 0x43d6be
mov rax, qword [0x00c595d8]
mov rdx, qword [rax + 0x40]
mov ecx, dword [0x00c596a4]
mov eax, dword [0x00c596b0]
imul eax, ecx
mov ecx, dword [0x00c59698]
add eax, ecx
cdqe
add rax, rdx
mov qword [0x00c59608], rax
mov eax, dword [0x00c596b0]
neg eax
mov edx, eax
mov eax, dword [0x00c59598]
sub edx, eax
mov eax, edx
mov dword [0x00c595a4], eax
jmp 0x43d6be
mov eax, dword [0x00c59630]
test eax, eax
je 0x43d67a
mov rax, qword [0x00c595d8]
mov rdx, qword [rax + 0x40]
mov ecx, dword [0x00c5969c]
mov eax, dword [0x00c596b0]
imul eax, ecx
mov ecx, dword [0x00c596a0]
add eax, ecx
cdqe
add rax, rdx
mov qword [0x00c59608], rax
mov edx, dword [0x00c596b0]
mov eax, dword [0x00c59598]
add eax, edx
mov dword [0x00c595a4], eax
jmp 0x43d6be
mov rax, qword [0x00c595d8]
mov rdx, qword [rax + 0x40]
mov ecx, dword [0x00c5969c]
mov eax, dword [0x00c596b0]
imul eax, ecx
mov ecx, dword [0x00c59698]
add eax, ecx
cdqe
add rax, rdx
mov qword [0x00c59608], rax
mov edx, dword [0x00c596b0]
mov eax, dword [0x00c59598]
sub edx, eax
mov eax, edx
mov dword [0x00c595a4], eax
mov eax, dword [0x00c59630]
test eax, eax
je 0x43d6d4
mov dword [0x00c59618], 0xffffffff
jmp 0x43d6de
mov dword [0x00c59618], 1
mov eax, dword [0x00c5959c]
mov dword [0x00c595b4], eax
movsd xmm0, qword [0x00c59660]
movsd qword [0x00c59650], xmm0
movsd xmm0, qword [0x00c59658]
movsd xmm1, qword [0x00c59638]
subsd xmm0, xmm1
movsd qword [0x00c59658], xmm0
mov rdx, qword [0x00c59608]
mov eax, dword [0x00c59618]
cdqe
neg rax
add rax, rdx
mov qword [0x00c59608], rax
mov eax, dword [0x00c59598]
mov dword [0x00c595b0], eax
mov rax, qword [0x00c595d0]
mov rbx, qword [rax + 0x40]
mov rax, qword [0x00c59650]
movq xmm0, rax
call fcn.00437045
mov edx, eax
mov eax, dword [0x00c596a8]
imul eax, edx
cdqe
add rax, rbx
mov qword [0x00c59610], rax
movsd xmm0, qword [0x00c59658]
movsd qword [0x00c59648], xmm0
mov rbx, qword [0x00c59610]
movsd xmm1, qword [0x00c59648]
movsd xmm0, qword [0x00c59638]
addsd xmm0, xmm1
movsd qword [0x00c59648], xmm0
mov rax, qword [0x00c59648]
movq xmm0, rax
call fcn.00437045
cdqe
add rax, rbx
mov rcx, qword [0x00c59608]
mov edx, dword [0x00c59618]
movsxd rdx, edx
add rdx, rcx
mov qword [0x00c59608], rdx
mov rdx, qword [0x00c59608]
movzx eax, byte [rax]
mov byte [rdx], al
mov eax, dword [0x00c595b0]
sub eax, 1
mov dword [0x00c595b0], eax
mov eax, dword [0x00c595b0]
test eax, eax
setne al
test al, al
je 0x43d800
jmp 0x43d781
mov rdx, qword [0x00c59608]
mov eax, dword [0x00c595a4]
cdqe
add rax, rdx
mov qword [0x00c59608], rax
movsd xmm1, qword [0x00c59650]
movsd xmm0, qword [0x00c59640]
addsd xmm0, xmm1
movsd qword [0x00c59650], xmm0
mov eax, dword [0x00c595b4]
sub eax, 1
mov dword [0x00c595b4], eax
mov eax, dword [0x00c595b4]
test eax, eax
setne al
test al, al
je 0x44016c
jmp 0x43d732
nop
mov rax, qword [0x00c595d0]
mov eax, dword [rax + 0x58]
mov dword [0x00c595f4], eax
mov eax, dword [0x00c5962c]
test eax, eax
je 0x43d91b
mov eax, dword [0x00c59630]
test eax, eax
je 0x43d8ce
mov rax, qword [0x00c595d8]
mov rdx, qword [rax + 0x40]
mov ecx, dword [0x00c596a4]
mov eax, dword [0x00c596b0]
imul eax, ecx
mov ecx, dword [0x00c596a0]
add eax, ecx
cdqe
add rax, rdx
mov qword [0x00c59608], rax
mov edx, dword [0x00c59598]
mov eax, dword [0x00c596b0]
sub edx, eax
mov eax, edx
mov dword [0x00c595a4], eax
jmp 0x43d9ad
mov rax, qword [0x00c595d8]
mov rdx, qword [rax + 0x40]
mov ecx, dword [0x00c596a4]
mov eax, dword [0x00c596b0]
imul eax, ecx
mov ecx, dword [0x00c59698]
add eax, ecx
cdqe
add rax, rdx
mov qword [0x00c59608], rax
mov eax, dword [0x00c596b0]
neg eax
mov edx, eax
mov eax, dword [0x00c59598]
sub edx, eax
mov eax, edx
mov dword [0x00c595a4], eax
jmp 0x43d9ad
mov eax, dword [0x00c59630]
test eax, eax
je 0x43d969
mov rax, qword [0x00c595d8]
mov rdx, qword [rax + 0x40]
mov ecx, dword [0x00c5969c]
mov eax, dword [0x00c596b0]
imul eax, ecx
mov ecx, dword [0x00c596a0]
add eax, ecx
cdqe
add rax, rdx
mov qword [0x00c59608], rax
mov edx, dword [0x00c596b0]
mov eax, dword [0x00c59598]
add eax, edx
mov dword [0x00c595a4], eax
jmp 0x43d9ad
mov rax, qword [0x00c595d8]
mov rdx, qword [rax + 0x40]
mov ecx, dword [0x00c5969c]
mov eax, dword [0x00c596b0]
imul eax, ecx
mov ecx, dword [0x00c59698]
add eax, ecx
cdqe
add rax, rdx
mov qword [0x00c59608], rax
mov edx, dword [0x00c596b0]
mov eax, dword [0x00c59598]
sub edx, eax
mov eax, edx
mov dword [0x00c595a4], eax
mov eax, dword [0x00c59630]
test eax, eax
je 0x43d9c3
mov dword [0x00c59618], 0xffffffff
jmp 0x43d9cd
mov dword [0x00c59618], 1
mov eax, dword [0x00c5959c]
mov dword [0x00c595b4], eax
movsd xmm0, qword [0x00c59660]
movsd qword [0x00c59650], xmm0
movsd xmm0, qword [0x00c59658]
movsd xmm1, qword [0x00c59638]
subsd xmm0, xmm1
movsd qword [0x00c59658], xmm0
mov eax, dword [0x00c59598]
mov dword [0x00c595b0], eax
mov rax, qword [0x00c595d0]
mov rbx, qword [rax + 0x40]
mov rax, qword [0x00c59650]
movq xmm0, rax
call fcn.00437045
mov edx, eax
mov eax, dword [0x00c596a8]
imul eax, edx
cdqe
add rax, rbx
mov qword [0x00c59610], rax
movsd xmm0, qword [0x00c59658]
movsd qword [0x00c59648], xmm0
mov rbx, qword [0x00c59610]
movsd xmm1, qword [0x00c59648]
movsd xmm0, qword [0x00c59638]
addsd xmm0, xmm1
movsd qword [0x00c59648], xmm0
mov rax, qword [0x00c59648]
movq xmm0, rax
call fcn.00437045
cdqe
add rax, rbx
movzx eax, byte [rax]
movzx eax, al
mov dword [0x00c595f0], eax
mov edx, dword [0x00c595f0]
mov eax, dword [0x00c595f4]
cmp edx, eax
setne al
test al, al
je 0x43dabd
mov edx, dword [0x00c595f0]
mov rax, qword [0x00c59608]
mov byte [rax], dl
mov rdx, qword [0x00c59608]
mov eax, dword [0x00c59618]
cdqe
add rax, rdx
mov qword [0x00c59608], rax
mov eax, dword [0x00c595b0]
sub eax, 1
mov dword [0x00c595b0], eax
mov eax, dword [0x00c595b0]
test eax, eax
setne al
test al, al
je 0x43daf9
jmp 0x43da54
mov rdx, qword [0x00c59608]
mov eax, dword [0x00c595a4]
cdqe
add rax, rdx
mov qword [0x00c59608], rax
movsd xmm1, qword [0x00c59650]
movsd xmm0, qword [0x00c59640]
addsd xmm0, xmm1
movsd qword [0x00c59650], xmm0
mov eax, dword [0x00c595b4]
sub eax, 1
mov dword [0x00c595b4], eax
mov eax, dword [0x00c595b4]
test eax, eax
setne al
test al, al
je 0x44016f
jmp 0x43da05
mov rax, qword [0x00c595d0]
mov rax, qword [rax + 0x50]
mov qword [0x00c596b8], rax
mov eax, dword [0x00c5962c]
test eax, eax
je 0x43dc1d
mov eax, dword [0x00c59630]
test eax, eax
je 0x43dbcc
mov rax, qword [0x00c595d8]
mov rdx, qword [rax + 0x40]
mov ecx, dword [0x00c596a4]
mov eax, dword [0x00c596b0]
imul eax, ecx
mov ecx, dword [0x00c596a0]
add eax, ecx
cdqe
shl rax, 2
add rax, rdx
mov qword [0x00c595e8], rax
mov edx, dword [0x00c59598]
mov eax, dword [0x00c596b0]
sub edx, eax
mov eax, edx
mov dword [0x00c595a4], eax
jmp 0x43dcb7
mov rax, qword [0x00c595d8]
mov rdx, qword [rax + 0x40]
mov ecx, dword [0x00c596a4]
mov eax, dword [0x00c596b0]
imul eax, ecx
mov ecx, dword [0x00c59698]
add eax, ecx
cdqe
shl rax, 2
add rax, rdx
mov qword [0x00c595e8], rax
mov eax, dword [0x00c596b0]
neg eax
mov edx, eax
mov eax, dword [0x00c59598]
sub edx, eax
mov eax, edx
mov dword [0x00c595a4], eax
jmp 0x43dcb7
mov eax, dword [0x00c59630]
test eax, eax
je 0x43dc6f
mov rax, qword [0x00c595d8]
mov rdx, qword [rax + 0x40]
mov ecx, dword [0x00c5969c]
mov eax, dword [0x00c596b0]
imul eax, ecx
mov ecx, dword [0x00c596a0]
add eax, ecx
cdqe
shl rax, 2
add rax, rdx
mov qword [0x00c595e8], rax
mov edx, dword [0x00c596b0]
mov eax, dword [0x00c59598]
add eax, edx
mov dword [0x00c595a4], eax
jmp 0x43dcb7
mov rax, qword [0x00c595d8]
mov rdx, qword [rax + 0x40]
mov ecx, dword [0x00c5969c]
mov eax, dword [0x00c596b0]
imul eax, ecx
mov ecx, dword [0x00c59698]
add eax, ecx
cdqe
shl rax, 2
add rax, rdx
mov qword [0x00c595e8], rax
mov edx, dword [0x00c596b0]
mov eax, dword [0x00c59598]
sub edx, eax
mov eax, edx
mov dword [0x00c595a4], eax
mov eax, dword [0x00c59630]
test eax, eax
je 0x43dccd
mov dword [0x00c59618], 0xffffffff
jmp 0x43dcd7
mov dword [0x00c59618], 1
mov eax, dword [0x00c5959c]
mov dword [0x00c595b4], eax
movsd xmm0, qword [0x00c59660]
movsd qword [0x00c59650], xmm0
movsd xmm0, qword [0x00c59658]
movsd xmm1, qword [0x00c59638]
subsd xmm0, xmm1
movsd qword [0x00c59658], xmm0
mov rdx, qword [0x00c595e8]
mov eax, dword [0x00c59618]
cdqe
shl rax, 2
neg rax
add rax, rdx
mov qword [0x00c595e8], rax
mov eax, dword [0x00c59598]
mov dword [0x00c595b0], eax
mov rax, qword [0x00c595d0]
mov rbx, qword [rax + 0x40]
mov rax, qword [0x00c59650]
movq xmm0, rax
call fcn.00437045
mov edx, eax
mov eax, dword [0x00c596a8]
imul eax, edx
cdqe
add rax, rbx
mov qword [0x00c59610], rax
movsd xmm0, qword [0x00c59658]
movsd qword [0x00c59648], xmm0
mov rbx, qword [0x00c596b8]
mov rsi, qword [0x00c59610]
movsd xmm1, qword [0x00c59648]
movsd xmm0, qword [0x00c59638]
addsd xmm0, xmm1
movsd qword [0x00c59648], xmm0
mov rax, qword [0x00c59648]
movq xmm0, rax
call fcn.00437045
cdqe
add rax, rsi
movzx eax, byte [rax]
movzx eax, al
shl rax, 2
lea rdx, [rbx + rax]
mov rcx, qword [0x00c595e8]
mov eax, dword [0x00c59618]
cdqe
shl rax, 2
add rax, rcx
mov qword [0x00c595e8], rax
mov rax, qword [0x00c595e8]
mov edx, dword [rdx]
mov dword [rax], edx
mov eax, dword [0x00c595b0]
sub eax, 1
mov dword [0x00c595b0], eax
mov eax, dword [0x00c595b0]
test eax, eax
setne al
test al, al
je 0x43de17
jmp 0x43dd7e
mov rdx, qword [0x00c595e8]
mov eax, dword [0x00c595a4]
cdqe
shl rax, 2
add rax, rdx
mov qword [0x00c595e8], rax
movsd xmm1, qword [0x00c59650]
movsd xmm0, qword [0x00c59640]
addsd xmm0, xmm1
movsd qword [0x00c59650], xmm0
mov eax, dword [0x00c595b4]
sub eax, 1
mov dword [0x00c595b4], eax
mov eax, dword [0x00c595b4]
test eax, eax
setne al
test al, al
je 0x440172
jmp 0x43dd2f
nop
mov rax, qword [0x00c595d0]
mov eax, dword [rax + 0x58]
mov dword [0x00c595f4], eax
mov rax, qword [0x00c595d0]
mov rax, qword [rax + 0x50]
mov qword [0x00c596b8], rax
mov eax, dword [0x00c5962c]
test eax, eax
je 0x43df50
mov eax, dword [0x00c59630]
test eax, eax
je 0x43deff
mov rax, qword [0x00c595d8]
mov rdx, qword [rax + 0x40]
mov ecx, dword [0x00c596a4]
mov eax, dword [0x00c596b0]
imul eax, ecx
mov ecx, dword [0x00c596a0]
add eax, ecx
cdqe
shl rax, 2
add rax, rdx
mov qword [0x00c595e8], rax
mov edx, dword [0x00c59598]
mov eax, dword [0x00c596b0]
sub edx, eax
mov eax, edx
mov dword [0x00c595a4], eax
jmp 0x43dfea
mov rax, qword [0x00c595d8]
mov rdx, qword [rax + 0x40]
mov ecx, dword [0x00c596a4]
mov eax, dword [0x00c596b0]
imul eax, ecx
mov ecx, dword [0x00c59698]
add eax, ecx
cdqe
shl rax, 2
add rax, rdx
mov qword [0x00c595e8], rax
mov eax, dword [0x00c596b0]
neg eax
mov edx, eax
mov eax, dword [0x00c59598]
sub edx, eax
mov eax, edx
mov dword [0x00c595a4], eax
jmp 0x43dfea
mov eax, dword [0x00c59630]
test eax, eax
je 0x43dfa2
mov rax, qword [0x00c595d8]
mov rdx, qword [rax + 0x40]
mov ecx, dword [0x00c5969c]
mov eax, dword [0x00c596b0]
imul eax, ecx
mov ecx, dword [0x00c596a0]
add eax, ecx
cdqe
shl rax, 2
add rax, rdx
mov qword [0x00c595e8], rax
mov edx, dword [0x00c596b0]
mov eax, dword [0x00c59598]
add eax, edx
mov dword [0x00c595a4], eax
jmp 0x43dfea
mov rax, qword [0x00c595d8]
mov rdx, qword [rax + 0x40]
mov ecx, dword [0x00c5969c]
mov eax, dword [0x00c596b0]
imul eax, ecx
mov ecx, dword [0x00c59698]
add eax, ecx
cdqe
shl rax, 2
add rax, rdx
mov qword [0x00c595e8], rax
mov edx, dword [0x00c596b0]
mov eax, dword [0x00c59598]
sub edx, eax
mov eax, edx
mov dword [0x00c595a4], eax
mov eax, dword [0x00c59630]
test eax, eax
je 0x43e000
mov dword [0x00c59618], 0xffffffff
jmp 0x43e00a
mov dword [0x00c59618], 1
mov eax, dword [0x00c5959c]
mov dword [0x00c595b4], eax
movsd xmm0, qword [0x00c59660]
movsd qword [0x00c59650], xmm0
movsd xmm0, qword [0x00c59658]
movsd xmm1, qword [0x00c59638]
subsd xmm0, xmm1
movsd qword [0x00c59658], xmm0
mov eax, dword [0x00c59598]
mov dword [0x00c595b0], eax
mov rax, qword [0x00c595d0]
mov rbx, qword [rax + 0x40]
mov rax, qword [0x00c59650]
movq xmm0, rax
call fcn.00437045
mov edx, eax
mov eax, dword [0x00c596a8]
imul eax, edx
cdqe
add rax, rbx
mov qword [0x00c59610], rax
movsd xmm0, qword [0x00c59658]
movsd qword [0x00c59648], xmm0
mov rbx, qword [0x00c59610]
movsd xmm1, qword [0x00c59648]
movsd xmm0, qword [0x00c59638]
addsd xmm0, xmm1
movsd qword [0x00c59648], xmm0
mov rax, qword [0x00c59648]
movq xmm0, rax
call fcn.00437045
cdqe
add rax, rbx
movzx eax, byte [rax]
movzx eax, al
mov dword [0x00c595f0], eax
mov edx, dword [0x00c595f0]
mov eax, dword [0x00c595f4]
cmp edx, eax
setne al
test al, al
je 0x43e10c
mov rdx, qword [0x00c596b8]
mov eax, dword [0x00c595f0]
mov eax, eax
shl rax, 2
add rdx, rax
mov rax, qword [0x00c595e8]
mov edx, dword [rdx]
mov dword [rax], edx
mov rdx, qword [0x00c595e8]
mov eax, dword [0x00c59618]
cdqe
shl rax, 2
add rax, rdx
mov qword [0x00c595e8], rax
mov eax, dword [0x00c595b0]
sub eax, 1
mov dword [0x00c595b0], eax
mov eax, dword [0x00c595b0]
test eax, eax
setne al
test al, al
je 0x43e14c
jmp 0x43e091
mov rdx, qword [0x00c595e8]
mov eax, dword [0x00c595a4]
cdqe
shl rax, 2
add rax, rdx
mov qword [0x00c595e8], rax
movsd xmm1, qword [0x00c59650]
movsd xmm0, qword [0x00c59640]
addsd xmm0, xmm1
movsd qword [0x00c59650], xmm0
mov eax, dword [0x00c595b4]
sub eax, 1
mov dword [0x00c595b4], eax
mov eax, dword [0x00c595b4]
test eax, eax
setne al
test al, al
je 0x440175
jmp 0x43e042
mov edx, dword [0x00c596a0]
mov eax, dword [0x00c59698]
cmp edx, eax
jge 0x43e1d6
mov edx, dword [0x00c59690]
mov eax, dword [0x00c59688]
cmp edx, eax
jle 0x43e1d6
mov dword [0x00c59630], 1
mov edx, dword [0x00c59690]
mov eax, dword [0x00c59688]
cmp edx, eax
jge 0x43e200
mov edx, dword [0x00c596a0]
mov eax, dword [0x00c59698]
cmp edx, eax
jle 0x43e200
mov dword [0x00c59630], 1
mov edx, dword [0x00c596a0]
mov eax, dword [0x00c59698]
cmp edx, eax
jge 0x43e234
mov eax, dword [0x00c59698]
mov dword [0x00c595a8], eax
mov eax, dword [0x00c596a0]
mov dword [0x00c59698], eax
mov eax, dword [0x00c595a8]
mov dword [0x00c596a0], eax
mov edx, dword [0x00c59690]
mov eax, dword [0x00c59688]
cmp edx, eax
jge 0x43e268
mov eax, dword [0x00c59688]
mov dword [0x00c595a8], eax
mov eax, dword [0x00c59690]
mov dword [0x00c59688], eax
mov eax, dword [0x00c595a8]
mov dword [0x00c59690], eax
mov edx, dword [0x00c596a4]
mov eax, dword [0x00c5969c]
cmp edx, eax
jge 0x43e292
mov edx, dword [0x00c59694]
mov eax, dword [0x00c5968c]
cmp edx, eax
jle 0x43e292
mov dword [0x00c5962c], 1
mov edx, dword [0x00c59694]
mov eax, dword [0x00c5968c]
cmp edx, eax
jge 0x43e2bc
mov edx, dword [0x00c596a4]
mov eax, dword [0x00c5969c]
cmp edx, eax
jle 0x43e2bc
mov dword [0x00c5962c], 1
mov edx, dword [0x00c596a4]
mov eax, dword [0x00c5969c]
cmp edx, eax
jge 0x43e2f0
mov eax, dword [0x00c5969c]
mov dword [0x00c595ac], eax
mov eax, dword [0x00c596a4]
mov dword [0x00c5969c], eax
mov eax, dword [0x00c595ac]
mov dword [0x00c596a4], eax
mov edx, dword [0x00c59694]
mov eax, dword [0x00c5968c]
cmp edx, eax
jge 0x43e326
mov eax, dword [0x00c5968c]
mov dword [0x00c595ac], eax
mov eax, dword [0x00c59694]
mov dword [0x00c5968c], eax
mov eax, dword [0x00c595ac]
mov dword [0x00c59694], eax
jmp 0x43e327
nop
mov eax, dword [0x00c59698]
test eax, eax
jns 0x43e371
mov eax, dword [0x00c59630]
test eax, eax
je 0x43e351
mov edx, dword [0x00c59690]
mov eax, dword [0x00c59698]
add eax, edx
mov dword [0x00c59690], eax
jmp 0x43e367
mov edx, dword [0x00c59688]
mov eax, dword [0x00c59698]
sub edx, eax
mov eax, edx
mov dword [0x00c59688], eax
mov dword [0x00c59698], 0
mov eax, dword [0x00c5969c]
test eax, eax
jns 0x43e3bb
mov eax, dword [0x00c5962c]
test eax, eax
je 0x43e39b
mov edx, dword [0x00c59694]
mov eax, dword [0x00c5969c]
add eax, edx
mov dword [0x00c59694], eax
jmp 0x43e3b1
mov edx, dword [0x00c5968c]
mov eax, dword [0x00c5969c]
sub edx, eax
mov eax, edx
mov dword [0x00c5968c], eax
mov dword [0x00c5969c], 0
mov edx, dword [0x00c596a0]
mov eax, dword [0x00c596b0]
cmp edx, eax
jl 0x43e42a
mov eax, dword [0x00c59630]
test eax, eax
je 0x43e3f8
mov edx, dword [0x00c596a0]
mov eax, dword [0x00c596b0]
sub edx, eax
mov eax, edx
lea edx, [rax + 1]
mov eax, dword [0x00c59688]
add eax, edx
mov dword [0x00c59688], eax
jmp 0x43e41b
mov edx, dword [0x00c59690]
mov ecx, dword [0x00c596a0]
mov eax, dword [0x00c596b0]
sub ecx, eax
mov eax, ecx
add eax, 1
sub edx, eax
mov eax, edx
mov dword [0x00c59690], eax
mov eax, dword [0x00c596b0]
sub eax, 1
mov dword [0x00c596a0], eax
mov edx, dword [0x00c596a4]
mov eax, dword [0x00c596b4]
cmp edx, eax
jl 0x43e499
mov eax, dword [0x00c5962c]
test eax, eax
je 0x43e467
mov edx, dword [0x00c596a4]
mov eax, dword [0x00c596b4]
sub edx, eax
mov eax, edx
lea edx, [rax + 1]
mov eax, dword [0x00c5968c]
add eax, edx
mov dword [0x00c5968c], eax
jmp 0x43e48a
mov edx, dword [0x00c59694]
mov ecx, dword [0x00c596a4]
mov eax, dword [0x00c596b4]
sub ecx, eax
mov eax, ecx
add eax, 1
sub edx, eax
mov eax, edx
mov dword [0x00c59694], eax
mov eax, dword [0x00c596b4]
sub eax, 1
mov dword [0x00c596a4], eax
mov eax, dword [0x00c59688]
test eax, eax
jns 0x43e4e3
mov eax, dword [0x00c59630]
test eax, eax
je 0x43e4c3
mov edx, dword [0x00c596a0]
mov eax, dword [0x00c59688]
add eax, edx
mov dword [0x00c596a0], eax
jmp 0x43e4d9
mov edx, dword [0x00c59698]
mov eax, dword [0x00c59688]
sub edx, eax
mov eax, edx
mov dword [0x00c59698], eax
mov dword [0x00c59688], 0
mov eax, dword [0x00c5968c]
test eax, eax
jns 0x43e52d
mov eax, dword [0x00c5962c]
test eax, eax
je 0x43e50d
mov edx, dword [0x00c596a4]
mov eax, dword [0x00c5968c]
add eax, edx
mov dword [0x00c596a4], eax
jmp 0x43e523
mov edx, dword [0x00c5969c]
mov eax, dword [0x00c5968c]
sub edx, eax
mov eax, edx
mov dword [0x00c5969c], eax
mov dword [0x00c5968c], 0
mov edx, dword [0x00c59690]
mov eax, dword [0x00c596a8]
cmp edx, eax
jl 0x43e59c
mov eax, dword [0x00c59630]
test eax, eax
je 0x43e56a
mov edx, dword [0x00c59690]
mov eax, dword [0x00c596a8]
sub edx, eax
mov eax, edx
lea edx, [rax + 1]
mov eax, dword [0x00c59698]
add eax, edx
mov dword [0x00c59698], eax
jmp 0x43e58d
mov edx, dword [0x00c596a0]
mov ecx, dword [0x00c59690]
mov eax, dword [0x00c596a8]
sub ecx, eax
mov eax, ecx
add eax, 1
sub edx, eax
mov eax, edx
mov dword [0x00c596a0], eax
mov eax, dword [0x00c596a8]
sub eax, 1
mov dword [0x00c59690], eax
mov edx, dword [0x00c59694]
mov eax, dword [0x00c596ac]
cmp edx, eax
jl 0x43e60b
mov eax, dword [0x00c5962c]
test eax, eax
je 0x43e5d9
mov edx, dword [0x00c59694]
mov eax, dword [0x00c596ac]
sub edx, eax
mov eax, edx
lea edx, [rax + 1]
mov eax, dword [0x00c5969c]
add eax, edx
mov dword [0x00c5969c], eax
jmp 0x43e5fc
mov edx, dword [0x00c596a4]
mov ecx, dword [0x00c59694]
mov eax, dword [0x00c596ac]
sub ecx, eax
mov eax, ecx
add eax, 1
sub edx, eax
mov eax, edx
mov dword [0x00c596a4], eax
mov eax, dword [0x00c596ac]
sub eax, 1
mov dword [0x00c59694], eax
mov edx, dword [0x00c59698]
mov eax, dword [0x00c596a0]
cmp edx, eax
jg 0x440178
mov edx, dword [0x00c5969c]
mov eax, dword [0x00c596a4]
cmp edx, eax
jg 0x44017b
mov eax, dword [0x00c59630]
test eax, eax
je 0x43e6b1
mov eax, dword [0x00c595c8]
cmp eax, 4
jne 0x43e673
mov rax, qword [0x00c595d0]
movzx eax, byte [rax + 0x5c]
test al, al
jne 0x43f7eb
mov rax, qword [0x00c595d8]
movzx eax, byte [rax + 0x5c]
test al, al
je 0x43f3ec
jmp 0x43f7eb
mov eax, dword [0x00c595c4]
cmp eax, 1
jne 0x43e696
mov rax, qword [0x00c595d0]
mov eax, dword [rax + 0x58]
cmp eax, 0xffffffff
jne 0x43fb6b
jmp 0x43f9b5
mov rax, qword [0x00c595d0]
mov eax, dword [rax + 0x58]
cmp eax, 0xffffffff
jne 0x43ff40
jmp 0x43fd5d
nop
jmp 0x43e6b2
nop
mov eax, dword [0x00c595c8]
cmp eax, 4
jne 0x43e6e4
mov rax, qword [0x00c595d0]
movzx eax, byte [rax + 0x5c]
test al, al
jne 0x43eb24
mov rax, qword [0x00c595d8]
movzx eax, byte [rax + 0x5c]
test al, al
je 0x43e71f
jmp 0x43eb24
mov eax, dword [0x00c595c4]
cmp eax, 1
jne 0x43e707
mov rax, qword [0x00c595d0]
mov eax, dword [rax + 0x58]
cmp eax, 0xffffffff
jne 0x43ede4
jmp 0x43ec90
mov rax, qword [0x00c595d0]
mov eax, dword [rax + 0x58]
cmp eax, 0xffffffff
jne 0x43f1c5
jmp 0x43efdc
nop
mov edx, dword [0x00c596a0]
mov eax, dword [0x00c59698]
sub edx, eax
mov eax, edx
add eax, 1
mov dword [0x00c59598], eax
mov rax, qword [0x00c595d8]
mov rdx, qword [rax + 0x40]
mov ecx, dword [0x00c5969c]
mov eax, dword [0x00c596b0]
imul eax, ecx
mov ecx, dword [0x00c59698]
add eax, ecx
cdqe
shl rax, 2
add rax, rdx
mov qword [0x00c595e8], rax
mov edx, dword [0x00c596b0]
mov eax, dword [0x00c59598]
sub edx, eax
mov eax, edx
mov dword [0x00c595a4], eax
mov eax, dword [0x00c5962c]
test eax, eax
je 0x43e7d9
mov rax, qword [0x00c595d0]
mov rdx, qword [rax + 0x40]
mov ecx, dword [0x00c59694]
mov eax, dword [0x00c596a8]
imul eax, ecx
mov ecx, dword [0x00c59688]
add eax, ecx
cdqe
shl rax, 2
add rax, rdx
mov qword [0x00c595e0], rax
mov eax, dword [0x00c59598]
neg eax
mov edx, eax
mov eax, dword [0x00c596a8]
sub edx, eax
mov eax, edx
mov dword [0x00c595a0], eax
jmp 0x43e821
mov rax, qword [0x00c595d0]
mov rdx, qword [rax + 0x40]
mov ecx, dword [0x00c5968c]
mov eax, dword [0x00c596a8]
imul eax, ecx
mov ecx, dword [0x00c59688]
add eax, ecx
cdqe
shl rax, 2
add rax, rdx
mov qword [0x00c595e0], rax
mov edx, dword [0x00c596a8]
mov eax, dword [0x00c59598]
sub edx, eax
mov eax, edx
mov dword [0x00c595a0], eax
mov edx, dword [0x00c596a4]
mov eax, dword [0x00c5969c]
sub edx, eax
mov eax, edx
add eax, 1
mov dword [0x00c5959c], eax
mov eax, dword [0x00c59598]
mov dword [0x00c595b0], eax
mov rax, qword [0x00c595e0]
lea rdx, [rax + 4]
mov qword [0x00c595e0], rdx
mov eax, dword [rax]
mov dword [0x00c595f0], eax
mov eax, dword [0x00c595f0]
and eax, 0xff000000
cmp eax, 0x7f000000
je 0x43e930
cmp eax, 0x7f000000
ja 0x43e886
test eax, eax
je 0x43e8b7
jmp 0x43e992
cmp eax, 0x80000000
je 0x43e8ce
cmp eax, 0xff000000
jne 0x43e992
mov rax, qword [0x00c595e8]
lea rdx, [rax + 4]
mov qword [0x00c595e8], rdx
mov edx, dword [0x00c595f0]
mov dword [rax], edx
jmp 0x43eaa0
mov rax, qword [0x00c595e8]
add rax, 4
mov qword [0x00c595e8], rax
jmp 0x43eaa0
mov rax, qword [0x00c595e8]
mov eax, dword [rax]
and eax, 0xfefefe
mov edx, eax
mov eax, dword [0x00c595f0]
and eax, 0xfefefe
add eax, edx
shr eax, 1
mov ecx, eax
mov rdx, qword [0x00723a58]
mov rax, qword [0x00c595e8]
mov eax, dword [rax]
shr eax, 0x18
mov eax, eax
add rax, rdx
movzx eax, byte [rax]
movzx eax, al
shl eax, 0x18
mov r8d, eax
mov rax, qword [0x00c595e8]
lea rdx, [rax + 4]
mov qword [0x00c595e8], rdx
lea edx, [rcx + r8]
mov dword [rax], edx
jmp 0x43eaa0
mov rax, qword [0x00c595e8]
mov eax, dword [rax]
and eax, 0xfefefe
mov edx, eax
mov eax, dword [0x00c595f0]
and eax, 0xfefefe
add eax, edx
shr eax, 1
mov ecx, eax
mov rdx, qword [0x00723a50]
mov rax, qword [0x00c595e8]
mov eax, dword [rax]
shr eax, 0x18
mov eax, eax
add rax, rdx
movzx eax, byte [rax]
movzx eax, al
shl eax, 0x18
mov r8d, eax
mov rax, qword [0x00c595e8]
lea rdx, [rax + 4]
mov qword [0x00c595e8], rdx
lea edx, [rcx + r8]
mov dword [rax], edx
jmp 0x43eaa0
mov rax, qword [0x00c595e8]
mov eax, dword [rax]
mov dword [0x00c595f8], eax
mov rax, qword [0x00723a40]
mov edx, dword [0x00c595f0]
shr edx, 0x18
shl edx, 0x10
mov edx, edx
add rax, rdx
mov qword [0x00c59610], rax
mov rcx, qword [0x00c59610]
mov eax, dword [0x00c595f0]
shl eax, 8
movzx edx, ax
mov eax, dword [0x00c595f8]
movzx eax, al
add eax, edx
mov eax, eax
add rax, rcx
movzx eax, byte [rax]
movzx edx, al
mov rcx, qword [0x00c59610]
mov eax, dword [0x00c595f0]
and eax, 0xff00
mov r8d, eax
mov eax, dword [0x00c595f8]
shr eax, 8
movzx eax, al
or eax, r8d
mov eax, eax
add rax, rcx
movzx eax, byte [rax]
movzx eax, al
shl eax, 8
add edx, eax
mov rcx, qword [0x00c59610]
mov eax, dword [0x00c595f0]
shr eax, 8
and eax, 0xff00
mov r8d, eax
mov eax, dword [0x00c595f8]
shr eax, 0x10
movzx eax, al
or eax, r8d
mov eax, eax
add rax, rcx
movzx eax, byte [rax]
movzx eax, al
shl eax, 0x10
add edx, eax
mov rax, qword [0x00723a48]
mov ecx, dword [0x00c595f0]
shr ecx, 0x18
mov r8d, ecx
mov ecx, dword [0x00c595f8]
shr ecx, 0x10
and ecx, 0xff00
add ecx, r8d
mov ecx, ecx
add rax, rcx
movzx eax, byte [rax]
movzx eax, al
shl eax, 0x18
lea ecx, [rdx + rax]
mov rax, qword [0x00c595e8]
lea rdx, [rax + 4]
mov qword [0x00c595e8], rdx
mov edx, ecx
mov dword [rax], edx
mov eax, dword [0x00c595b0]
sub eax, 1
mov dword [0x00c595b0], eax
mov eax, dword [0x00c595b0]
test eax, eax
setne al
test al, al
je 0x43eac3
jmp 0x43e846
mov rdx, qword [0x00c595e0]
mov eax, dword [0x00c595a0]
cdqe
shl rax, 2
add rax, rdx
mov qword [0x00c595e0], rax
mov rdx, qword [0x00c595e8]
mov eax, dword [0x00c595a4]
cdqe
shl rax, 2
add rax, rdx
mov qword [0x00c595e8], rax
mov eax, dword [0x00c5959c]
sub eax, 1
mov dword [0x00c5959c], eax
mov eax, dword [0x00c5959c]
test eax, eax
setne al
test al, al
je 0x44017e
jmp 0x43e83a
nop
mov rax, qword [0x00c595d8]
mov rdx, qword [rax + 0x40]
mov ecx, dword [0x00c5969c]
mov eax, dword [0x00c596b0]
imul eax, ecx
mov ecx, dword [0x00c59698]
add eax, ecx
cdqe
shl rax, 2
add rax, rdx
mov qword [0x00c595e8], rax
mov eax, dword [0x00c5962c]
test eax, eax
je 0x43eba3
mov rax, qword [0x00c595d0]
mov rdx, qword [rax + 0x40]
mov ecx, dword [0x00c59694]
mov eax, dword [0x00c596a8]
imul eax, ecx
mov ecx, dword [0x00c59688]
add eax, ecx
cdqe
shl rax, 2
add rax, rdx
mov qword [0x00c595e0], rax
mov eax, dword [0x00c596a8]
neg eax
mov dword [0x00c595a0], eax
jmp 0x43ebe1
mov rax, qword [0x00c595d0]
mov rdx, qword [rax + 0x40]
mov ecx, dword [0x00c5968c]
mov eax, dword [0x00c596a8]
imul eax, ecx
mov ecx, dword [0x00c59688]
add eax, ecx
cdqe
shl rax, 2
add rax, rdx
mov qword [0x00c595e0], rax
mov eax, dword [0x00c596a8]
mov dword [0x00c595a0], eax
mov edx, dword [0x00c596a4]
mov eax, dword [0x00c5969c]
sub edx, eax
mov eax, edx
add eax, 1
mov dword [0x00c5959c], eax
mov edx, dword [0x00c596a0]
mov eax, dword [0x00c59698]
sub edx, eax
mov eax, edx
add eax, 1
shl eax, 2
mov dword [0x00c59598], eax
mov eax, dword [0x00c5959c]
lea edx, [rax - 1]
mov dword [0x00c5959c], edx
test eax, eax
setne al
test al, al
je 0x440181
mov eax, dword [0x00c59598]
movsxd rcx, eax
mov rdx, qword [0x00c595e0]
mov rax, qword [0x00c595e8]
mov r8, rcx
mov rcx, rax
call sub.msvcrt.dll_memcpy
mov rdx, qword [0x00c595e0]
mov eax, dword [0x00c595a0]
cdqe
shl rax, 2
add rax, rdx
mov qword [0x00c595e0], rax
mov rdx, qword [0x00c595e8]
mov eax, dword [0x00c596b0]
cdqe
shl rax, 2
add rax, rdx
mov qword [0x00c595e8], rax
jmp 0x43ec16
mov rax, qword [0x00c595d8]
mov rdx, qword [rax + 0x40]
mov ecx, dword [0x00c5969c]
mov eax, dword [0x00c596b0]
imul eax, ecx
mov ecx, dword [0x00c59698]
add eax, ecx
cdqe
add rax, rdx
mov qword [0x00c59608], rax
mov eax, dword [0x00c5962c]
test eax, eax
je 0x43ed06
mov rax, qword [0x00c595d0]
mov rdx, qword [rax + 0x40]
mov ecx, dword [0x00c59694]
mov eax, dword [0x00c596a8]
imul eax, ecx
mov ecx, dword [0x00c59688]
add eax, ecx
cdqe
add rax, rdx
mov qword [0x00c59600], rax
mov eax, dword [0x00c596a8]
neg eax
mov dword [0x00c595a0], eax
jmp 0x43ed40
mov rax, qword [0x00c595d0]
mov rdx, qword [rax + 0x40]
mov ecx, dword [0x00c5968c]
mov eax, dword [0x00c596a8]
imul eax, ecx
mov ecx, dword [0x00c59688]
add eax, ecx
cdqe
add rax, rdx
mov qword [0x00c59600], rax
mov eax, dword [0x00c596a8]
mov dword [0x00c595a0], eax
mov edx, dword [0x00c596a4]
mov eax, dword [0x00c5969c]
sub edx, eax
mov eax, edx
add eax, 1
mov dword [0x00c5959c], eax
mov edx, dword [0x00c596a0]
mov eax, dword [0x00c59698]
sub edx, eax
mov eax, edx
add eax, 1
mov dword [0x00c59598], eax
mov eax, dword [0x00c5959c]
lea edx, [rax - 1]
mov dword [0x00c5959c], edx
test eax, eax
setne al
test al, al
je 0x440184
mov eax, dword [0x00c59598]
movsxd rcx, eax
mov rdx, qword [0x00c59600]
mov rax, qword [0x00c59608]
mov r8, rcx
mov rcx, rax
call sub.msvcrt.dll_memcpy
mov rdx, qword [0x00c59600]
mov eax, dword [0x00c595a0]
cdqe
add rax, rdx
mov qword [0x00c59600], rax
mov rdx, qword [0x00c59608]
mov eax, dword [0x00c596b0]
cdqe
add rax, rdx
mov qword [0x00c59608], rax
jmp 0x43ed72
nop
mov rax, qword [0x00c595d0]
mov eax, dword [rax + 0x58]
mov dword [0x00c595f4], eax
mov edx, dword [0x00c596a0]
mov eax, dword [0x00c59698]
sub edx, eax
mov eax, edx
add eax, 1
mov dword [0x00c59598], eax
mov rax, qword [0x00c595d8]
mov rdx, qword [rax + 0x40]
mov ecx, dword [0x00c5969c]
mov eax, dword [0x00c596b0]
imul eax, ecx
mov ecx, dword [0x00c59698]
add eax, ecx
cdqe
add rax, rdx
mov qword [0x00c59608], rax
mov edx, dword [0x00c596b0]
mov eax, dword [0x00c59598]
sub edx, eax
mov eax, edx
mov dword [0x00c595a4], eax
mov eax, dword [0x00c5962c]
test eax, eax
je 0x43eea6
mov rax, qword [0x00c595d0]
mov rdx, qword [rax + 0x40]
mov ecx, dword [0x00c59694]
mov eax, dword [0x00c596a8]
imul eax, ecx
mov ecx, dword [0x00c59688]
add eax, ecx
cdqe
add rax, rdx
mov qword [0x00c59600], rax
mov eax, dword [0x00c59598]
neg eax
mov edx, eax
mov eax, dword [0x00c596a8]
sub edx, eax
mov eax, edx
mov dword [0x00c595a0], eax
jmp 0x43eeea
mov rax, qword [0x00c595d0]
mov rdx, qword [rax + 0x40]
mov ecx, dword [0x00c5968c]
mov eax, dword [0x00c596a8]
imul eax, ecx
mov ecx, dword [0x00c59688]
add eax, ecx
cdqe
add rax, rdx
mov qword [0x00c59600], rax
mov edx, dword [0x00c596a8]
mov eax, dword [0x00c59598]
sub edx, eax
mov eax, edx
mov dword [0x00c595a0], eax
mov edx, dword [0x00c596a4]
mov eax, dword [0x00c5969c]
sub edx, eax
mov eax, edx
add eax, 1
mov dword [0x00c5959c], eax
mov eax, dword [0x00c59598]
mov dword [0x00c595b0], eax
mov rax, qword [0x00c59600]
lea rdx, [rax + 1]
mov qword [0x00c59600], rdx
movzx eax, byte [rax]
movzx eax, al
mov dword [0x00c595f0], eax
mov edx, dword [0x00c595f0]
mov eax, dword [0x00c595f4]
cmp edx, eax
setne al
test al, al
je 0x43ef51
mov edx, dword [0x00c595f0]
mov rax, qword [0x00c59608]
mov byte [rax], dl
mov rax, qword [0x00c59608]
add rax, 1
mov qword [0x00c59608], rax
mov eax, dword [0x00c595b0]
sub eax, 1
mov dword [0x00c595b0], eax
mov eax, dword [0x00c595b0]
test eax, eax
setne al
test al, al
je 0x43ef83
jmp 0x43ef0f
mov rdx, qword [0x00c59600]
mov eax, dword [0x00c595a0]
cdqe
add rax, rdx
mov qword [0x00c59600], rax
mov rdx, qword [0x00c59608]
mov eax, dword [0x00c595a4]
cdqe
add rax, rdx
mov qword [0x00c59608], rax
mov eax, dword [0x00c5959c]
sub eax, 1
mov dword [0x00c5959c], eax
mov eax, dword [0x00c5959c]
test eax, eax
setne al
test al, al
je 0x440187
jmp 0x43ef03
mov rax, qword [0x00c595d0]
mov rax, qword [rax + 0x50]
mov qword [0x00c596b8], rax
mov edx, dword [0x00c596a0]
mov eax, dword [0x00c59698]
sub edx, eax
mov eax, edx
add eax, 1
mov dword [0x00c59598], eax
mov rax, qword [0x00c595d8]
mov rdx, qword [rax + 0x40]
mov ecx, dword [0x00c5969c]
mov eax, dword [0x00c596b0]
imul eax, ecx
mov ecx, dword [0x00c59698]
add eax, ecx
cdqe
shl rax, 2
add rax, rdx
mov qword [0x00c595e8], rax
mov edx, dword [0x00c596b0]
mov eax, dword [0x00c59598]
sub edx, eax
mov eax, edx
mov dword [0x00c595a4], eax
mov eax, dword [0x00c5962c]
test eax, eax
je 0x43f0a3
mov rax, qword [0x00c595d0]
mov rdx, qword [rax + 0x40]
mov ecx, dword [0x00c59694]
mov eax, dword [0x00c596a8]
imul eax, ecx
mov ecx, dword [0x00c59688]
add eax, ecx
cdqe
add rax, rdx
mov qword [0x00c59600], rax
mov eax, dword [0x00c59598]
neg eax
mov edx, eax
mov eax, dword [0x00c596a8]
sub edx, eax
mov eax, edx
mov dword [0x00c595a0], eax
jmp 0x43f0e7
mov rax, qword [0x00c595d0]
mov rdx, qword [rax + 0x40]
mov ecx, dword [0x00c5968c]
mov eax, dword [0x00c596a8]
imul eax, ecx
mov ecx, dword [0x00c59688]
add eax, ecx
cdqe
add rax, rdx
mov qword [0x00c59600], rax
mov edx, dword [0x00c596a8]
mov eax, dword [0x00c59598]
sub edx, eax
mov eax, edx
mov dword [0x00c595a0], eax
mov edx, dword [0x00c596a4]
mov eax, dword [0x00c5969c]
sub edx, eax
mov eax, edx
add eax, 1
mov dword [0x00c5959c], eax
mov eax, dword [0x00c59598]
mov dword [0x00c595b0], eax
mov rcx, qword [0x00c596b8]
mov rax, qword [0x00c59600]
lea rdx, [rax + 1]
mov qword [0x00c59600], rdx
movzx eax, byte [rax]
movzx eax, al
shl rax, 2
add rcx, rax
mov rax, qword [0x00c595e8]
lea rdx, [rax + 4]
mov qword [0x00c595e8], rdx
mov edx, dword [rcx]
mov dword [rax], edx
mov eax, dword [0x00c595b0]
sub eax, 1
mov dword [0x00c595b0], eax
mov eax, dword [0x00c595b0]
test eax, eax
setne al
test al, al
je 0x43f168
jmp 0x43f10c
mov rdx, qword [0x00c59600]
mov eax, dword [0x00c595a0]
cdqe
add rax, rdx
mov qword [0x00c59600], rax
mov rdx, qword [0x00c595e8]
mov eax, dword [0x00c595a4]
cdqe
shl rax, 2
add rax, rdx
mov qword [0x00c595e8], rax
mov eax, dword [0x00c5959c]
sub eax, 1
mov dword [0x00c5959c], eax
mov eax, dword [0x00c5959c]
test eax, eax
setne al
test al, al
je 0x44018a
jmp 0x43f100
nop
mov rax, qword [0x00c595d0]
mov rax, qword [rax + 0x50]
mov qword [0x00c596b8], rax
mov rax, qword [0x00c595d0]
mov eax, dword [rax + 0x58]
mov dword [0x00c595f4], eax
mov edx, dword [0x00c596a0]
mov eax, dword [0x00c59698]
sub edx, eax
mov eax, edx
add eax, 1
mov dword [0x00c59598], eax
mov rax, qword [0x00c595d8]
mov rdx, qword [rax + 0x40]
mov ecx, dword [0x00c5969c]
mov eax, dword [0x00c596b0]
imul eax, ecx
mov ecx, dword [0x00c59698]
add eax, ecx
cdqe
shl rax, 2
add rax, rdx
mov qword [0x00c595e8], rax
mov edx, dword [0x00c596b0]
mov eax, dword [0x00c59598]
sub edx, eax
mov eax, edx
mov dword [0x00c595a4], eax
mov eax, dword [0x00c5962c]
test eax, eax
je 0x43f29d
mov rax, qword [0x00c595d0]
mov rdx, qword [rax + 0x40]
mov ecx, dword [0x00c59694]
mov eax, dword [0x00c596a8]
imul eax, ecx
mov ecx, dword [0x00c59688]
add eax, ecx
cdqe
add rax, rdx
mov qword [0x00c59600], rax
mov eax, dword [0x00c59598]
neg eax
mov edx, eax
mov eax, dword [0x00c596a8]
sub edx, eax
mov eax, edx
mov dword [0x00c595a0], eax
jmp 0x43f2e1
mov rax, qword [0x00c595d0]
mov rdx, qword [rax + 0x40]
mov ecx, dword [0x00c5968c]
mov eax, dword [0x00c596a8]
imul eax, ecx
mov ecx, dword [0x00c59688]
add eax, ecx
cdqe
add rax, rdx
mov qword [0x00c59600], rax
mov edx, dword [0x00c596a8]
mov eax, dword [0x00c59598]
sub edx, eax
mov eax, edx
mov dword [0x00c595a0], eax
mov edx, dword [0x00c596a4]
mov eax, dword [0x00c5969c]
sub edx, eax
mov eax, edx
add eax, 1
mov dword [0x00c5959c], eax
mov eax, dword [0x00c59598]
mov dword [0x00c595b0], eax
mov rax, qword [0x00c59600]
lea rdx, [rax + 1]
mov qword [0x00c59600], rdx
movzx eax, byte [rax]
movzx eax, al
mov dword [0x00c595f0], eax
mov edx, dword [0x00c595f0]
mov eax, dword [0x00c595f4]
cmp edx, eax
setne al
test al, al
je 0x43f35a
mov rdx, qword [0x00c596b8]
mov eax, dword [0x00c595f0]
mov eax, eax
shl rax, 2
add rdx, rax
mov rax, qword [0x00c595e8]
mov edx, dword [rdx]
mov dword [rax], edx
mov rax, qword [0x00c595e8]
add rax, 4
mov qword [0x00c595e8], rax
mov eax, dword [0x00c595b0]
sub eax, 1
mov dword [0x00c595b0], eax
mov eax, dword [0x00c595b0]
test eax, eax
setne al
test al, al
je 0x43f38f
jmp 0x43f306
mov rdx, qword [0x00c59600]
mov eax, dword [0x00c595a0]
cdqe
add rax, rdx
mov qword [0x00c59600], rax
mov rdx, qword [0x00c595e8]
mov eax, dword [0x00c595a4]
cdqe
shl rax, 2
add rax, rdx
mov qword [0x00c595e8], rax
mov eax, dword [0x00c5959c]
sub eax, 1
mov dword [0x00c5959c], eax
mov eax, dword [0x00c5959c]
test eax, eax
setne al
test al, al
je 0x44018d
jmp 0x43f2fa
nop
mov edx, dword [0x00c596a0]
mov eax, dword [0x00c59698]
sub edx, eax
mov eax, edx
add eax, 1
mov dword [0x00c59598], eax
mov rax, qword [0x00c595d8]
mov rdx, qword [rax + 0x40]
mov ecx, dword [0x00c5969c]
mov eax, dword [0x00c596b0]
imul eax, ecx
mov ecx, dword [0x00c59698]
add eax, ecx
cdqe
shl rax, 2
add rax, rdx
mov qword [0x00c595e8], rax
mov edx, dword [0x00c596b0]
mov eax, dword [0x00c59598]
sub edx, eax
mov eax, edx
mov dword [0x00c595a4], eax
mov eax, dword [0x00c5962c]
test eax, eax
je 0x43f4a2
mov rax, qword [0x00c595d0]
mov rdx, qword [rax + 0x40]
mov ecx, dword [0x00c59694]
mov eax, dword [0x00c596a8]
imul eax, ecx
mov ecx, dword [0x00c59690]
add eax, ecx
cdqe
shl rax, 2
add rax, rdx
mov qword [0x00c595e0], rax
mov edx, dword [0x00c59598]
mov eax, dword [0x00c596a8]
sub edx, eax
mov eax, edx
mov dword [0x00c595a0], eax
jmp 0x43f4e8
mov rax, qword [0x00c595d0]
mov rdx, qword [rax + 0x40]
mov ecx, dword [0x00c5968c]
mov eax, dword [0x00c596a8]
imul eax, ecx
mov ecx, dword [0x00c59690]
add eax, ecx
cdqe
shl rax, 2
add rax, rdx
mov qword [0x00c595e0], rax
mov edx, dword [0x00c59598]
mov eax, dword [0x00c596a8]
add eax, edx
mov dword [0x00c595a0], eax
mov edx, dword [0x00c596a4]
mov eax, dword [0x00c5969c]
sub edx, eax
mov eax, edx
add eax, 1
mov dword [0x00c5959c], eax
mov eax, dword [0x00c59598]
mov dword [0x00c595b0], eax
mov rax, qword [0x00c595e0]
lea rdx, [rax - 4]
mov qword [0x00c595e0], rdx
mov eax, dword [rax]
mov dword [0x00c595f0], eax
mov eax, dword [0x00c595f0]
and eax, 0xff000000
cmp eax, 0x7f000000
je 0x43f5f7
cmp eax, 0x7f000000
ja 0x43f54d
test eax, eax
je 0x43f57e
jmp 0x43f659
cmp eax, 0x80000000
je 0x43f595
cmp eax, 0xff000000
jne 0x43f659
mov rax, qword [0x00c595e8]
lea rdx, [rax + 4]
mov qword [0x00c595e8], rdx
mov edx, dword [0x00c595f0]
mov dword [rax], edx
jmp 0x43f767
mov rax, qword [0x00c595e8]
add rax, 4
mov qword [0x00c595e8], rax
jmp 0x43f767
mov rax, qword [0x00c595e8]
mov eax, dword [rax]
and eax, 0xfefefe
mov edx, eax
mov eax, dword [0x00c595f0]
and eax, 0xfefefe
add eax, edx
shr eax, 1
mov ecx, eax
mov rdx, qword [0x00723a58]
mov rax, qword [0x00c595e8]
mov eax, dword [rax]
shr eax, 0x18
mov eax, eax
add rax, rdx
movzx eax, byte [rax]
movzx eax, al
shl eax, 0x18
mov r8d, eax
mov rax, qword [0x00c595e8]
lea rdx, [rax + 4]
mov qword [0x00c595e8], rdx
lea edx, [rcx + r8]
mov dword [rax], edx
jmp 0x43f767
mov rax, qword [0x00c595e8]
mov eax, dword [rax]
and eax, 0xfefefe
mov edx, eax
mov eax, dword [0x00c595f0]
and eax, 0xfefefe
add eax, edx
shr eax, 1
mov ecx, eax
mov rdx, qword [0x00723a50]
mov rax, qword [0x00c595e8]
mov eax, dword [rax]
shr eax, 0x18
mov eax, eax
add rax, rdx
movzx eax, byte [rax]
movzx eax, al
shl eax, 0x18
mov r8d, eax
mov rax, qword [0x00c595e8]
lea rdx, [rax + 4]
mov qword [0x00c595e8], rdx
lea edx, [rcx + r8]
mov dword [rax], edx
jmp 0x43f767
mov rax, qword [0x00c595e8]
mov eax, dword [rax]
mov dword [0x00c595f8], eax
mov rax, qword [0x00723a40]
mov edx, dword [0x00c595f0]
shr edx, 0x18
shl edx, 0x10
mov edx, edx
add rax, rdx
mov qword [0x00c59610], rax
mov rcx, qword [0x00c59610]
mov eax, dword [0x00c595f0]
shl eax, 8
movzx edx, ax
mov eax, dword [0x00c595f8]
movzx eax, al
add eax, edx
mov eax, eax
add rax, rcx
movzx eax, byte [rax]
movzx edx, al
mov rcx, qword [0x00c59610]
mov eax, dword [0x00c595f0]
and eax, 0xff00
mov r8d, eax
mov eax, dword [0x00c595f8]
shr eax, 8
movzx eax, al
or eax, r8d
mov eax, eax
add rax, rcx
movzx eax, byte [rax]
movzx eax, al
shl eax, 8
add edx, eax
mov rcx, qword [0x00c59610]
mov eax, dword [0x00c595f0]
shr eax, 8
and eax, 0xff00
mov r8d, eax
mov eax, dword [0x00c595f8]
shr eax, 0x10
movzx eax, al
or eax, r8d
mov eax, eax
add rax, rcx
movzx eax, byte [rax]
movzx eax, al
shl eax, 0x10
add edx, eax
mov rax, qword [0x00723a48]
mov ecx, dword [0x00c595f0]
shr ecx, 0x18
mov r8d, ecx
mov ecx, dword [0x00c595f8]
shr ecx, 0x10
and ecx, 0xff00
add ecx, r8d
mov ecx, ecx
add rax, rcx
movzx eax, byte [rax]
movzx eax, al
shl eax, 0x18
lea ecx, [rdx + rax]
mov rax, qword [0x00c595e8]
lea rdx, [rax + 4]
mov qword [0x00c595e8], rdx
mov edx, ecx
mov dword [rax], edx
mov eax, dword [0x00c595b0]
sub eax, 1
mov dword [0x00c595b0], eax
mov eax, dword [0x00c595b0]
test eax, eax
setne al
test al, al
je 0x43f78a
jmp 0x43f50d
mov rdx, qword [0x00c595e0]
mov eax, dword [0x00c595a0]
cdqe
shl rax, 2
add rax, rdx
mov qword [0x00c595e0], rax
mov rdx, qword [0x00c595e8]
mov eax, dword [0x00c595a4]
cdqe
shl rax, 2
add rax, rdx
mov qword [0x00c595e8], rax
mov eax, dword [0x00c5959c]
sub eax, 1
mov dword [0x00c5959c], eax
mov eax, dword [0x00c5959c]
test eax, eax
setne al
test al, al
je 0x440190
jmp 0x43f501
nop
mov edx, dword [0x00c596a0]
mov eax, dword [0x00c59698]
sub edx, eax
mov eax, edx
add eax, 1
mov dword [0x00c59598], eax
mov rax, qword [0x00c595d8]
mov rdx, qword [rax + 0x40]
mov ecx, dword [0x00c5969c]
mov eax, dword [0x00c596b0]
imul eax, ecx
mov ecx, dword [0x00c59698]
add eax, ecx
cdqe
shl rax, 2
add rax, rdx
mov qword [0x00c595e8], rax
mov edx, dword [0x00c596b0]
mov eax, dword [0x00c59598]
sub edx, eax
mov eax, edx
mov dword [0x00c595a4], eax
mov eax, dword [0x00c5962c]
test eax, eax
je 0x43f8a1
mov rax, qword [0x00c595d0]
mov rdx, qword [rax + 0x40]
mov ecx, dword [0x00c59694]
mov eax, dword [0x00c596a8]
imul eax, ecx
mov ecx, dword [0x00c59690]
add eax, ecx
cdqe
shl rax, 2
add rax, rdx
mov qword [0x00c595e0], rax
mov edx, dword [0x00c59598]
mov eax, dword [0x00c596a8]
sub edx, eax
mov eax, edx
mov dword [0x00c595a0], eax
jmp 0x43f8e7
mov rax, qword [0x00c595d0]
mov rdx, qword [rax + 0x40]
mov ecx, dword [0x00c5968c]
mov eax, dword [0x00c596a8]
imul eax, ecx
mov ecx, dword [0x00c59690]
add eax, ecx
cdqe
shl rax, 2
add rax, rdx
mov qword [0x00c595e0], rax
mov edx, dword [0x00c59598]
mov eax, dword [0x00c596a8]
add eax, edx
mov dword [0x00c595a0], eax
mov edx, dword [0x00c596a4]
mov eax, dword [0x00c5969c]
sub edx, eax
mov eax, edx
add eax, 1
mov dword [0x00c5959c], eax
mov eax, dword [0x00c59598]
mov dword [0x00c595b0], eax
mov rdx, qword [0x00c595e0]
lea rax, [rdx - 4]
mov qword [0x00c595e0], rax
mov rax, qword [0x00c595e8]
lea rcx, [rax + 4]
mov qword [0x00c595e8], rcx
mov edx, dword [rdx]
mov dword [rax], edx
mov eax, dword [0x00c595b0]
sub eax, 1
mov dword [0x00c595b0], eax
mov eax, dword [0x00c595b0]
test eax, eax
setne al
test al, al
je 0x43f954
jmp 0x43f90c
mov rdx, qword [0x00c595e0]
mov eax, dword [0x00c595a0]
cdqe
shl rax, 2
add rax, rdx
mov qword [0x00c595e0], rax
mov rdx, qword [0x00c595e8]
mov eax, dword [0x00c595a4]
cdqe
shl rax, 2
add rax, rdx
mov qword [0x00c595e8], rax
mov eax, dword [0x00c5959c]
sub eax, 1
mov dword [0x00c5959c], eax
mov eax, dword [0x00c5959c]
test eax, eax
setne al
test al, al
je 0x440193
jmp 0x43f900
mov edx, dword [0x00c596a0]
mov eax, dword [0x00c59698]
sub edx, eax
mov eax, edx
add eax, 1
mov dword [0x00c59598], eax
mov rax, qword [0x00c595d8]
mov rdx, qword [rax + 0x40]
mov ecx, dword [0x00c5969c]
mov eax, dword [0x00c596b0]
imul eax, ecx
mov ecx, dword [0x00c59698]
add eax, ecx
cdqe
add rax, rdx
mov qword [0x00c59608], rax
mov edx, dword [0x00c596b0]
mov eax, dword [0x00c59598]
sub edx, eax
mov eax, edx
mov dword [0x00c595a4], eax
mov eax, dword [0x00c5962c]
test eax, eax
je 0x43fa62
mov rax, qword [0x00c595d0]
mov rdx, qword [rax + 0x40]
mov ecx, dword [0x00c59694]
mov eax, dword [0x00c596a8]
imul eax, ecx
mov ecx, dword [0x00c59690]
add eax, ecx
cdqe
add rax, rdx
mov qword [0x00c59600], rax
mov edx, dword [0x00c59598]
mov eax, dword [0x00c596a8]
sub edx, eax
mov eax, edx
mov dword [0x00c595a0], eax
jmp 0x43faa4
mov rax, qword [0x00c595d0]
mov rdx, qword [rax + 0x40]
mov ecx, dword [0x00c5968c]
mov eax, dword [0x00c596a8]
imul eax, ecx
mov ecx, dword [0x00c59690]
add eax, ecx
cdqe
add rax, rdx
mov qword [0x00c59600], rax
mov edx, dword [0x00c59598]
mov eax, dword [0x00c596a8]
add eax, edx
mov dword [0x00c595a0], eax
mov edx, dword [0x00c596a4]
mov eax, dword [0x00c5969c]
sub edx, eax
mov eax, edx
add eax, 1
mov dword [0x00c5959c], eax
mov eax, dword [0x00c59598]
mov dword [0x00c595b0], eax
mov rdx, qword [0x00c59600]
lea rax, [rdx - 1]
mov qword [0x00c59600], rax
mov rax, qword [0x00c59608]
lea rcx, [rax + 1]
mov qword [0x00c59608], rcx
movzx edx, byte [rdx]
mov byte [rax], dl
mov eax, dword [0x00c595b0]
sub eax, 1
mov dword [0x00c595b0], eax
mov eax, dword [0x00c595b0]
test eax, eax
setne al
test al, al
je 0x43fb12
jmp 0x43fac9
mov rdx, qword [0x00c59600]
mov eax, dword [0x00c595a0]
cdqe
add rax, rdx
mov qword [0x00c59600], rax
mov rdx, qword [0x00c59608]
mov eax, dword [0x00c595a4]
cdqe
add rax, rdx
mov qword [0x00c59608], rax
mov eax, dword [0x00c5959c]
sub eax, 1
mov dword [0x00c5959c], eax
mov eax, dword [0x00c5959c]
test eax, eax
setne al
test al, al
je 0x440196
jmp 0x43fabd
nop
mov rax, qword [0x00c595d0]
mov eax, dword [rax + 0x58]
mov dword [0x00c595f4], eax
mov edx, dword [0x00c596a0]
mov eax, dword [0x00c59698]
sub edx, eax
mov eax, edx
add eax, 1
mov dword [0x00c59598], eax
mov rax, qword [0x00c595d8]
mov rdx, qword [rax + 0x40]
mov ecx, dword [0x00c5969c]
mov eax, dword [0x00c596b0]
imul eax, ecx
mov ecx, dword [0x00c59698]
add eax, ecx
cdqe
add rax, rdx
mov qword [0x00c59608], rax
mov edx, dword [0x00c596b0]
mov eax, dword [0x00c59598]
sub edx, eax
mov eax, edx
mov dword [0x00c595a4], eax
mov eax, dword [0x00c5962c]
test eax, eax
je 0x43fc29
mov rax, qword [0x00c595d0]
mov rdx, qword [rax + 0x40]
mov ecx, dword [0x00c59694]
mov eax, dword [0x00c596a8]
imul eax, ecx
mov ecx, dword [0x00c59690]
add eax, ecx
cdqe
add rax, rdx
mov qword [0x00c59600], rax
mov edx, dword [0x00c59598]
mov eax, dword [0x00c596a8]
sub edx, eax
mov eax, edx
mov dword [0x00c595a0], eax
jmp 0x43fc6b
mov rax, qword [0x00c595d0]
mov rdx, qword [rax + 0x40]
mov ecx, dword [0x00c5968c]
mov eax, dword [0x00c596a8]
imul eax, ecx
mov ecx, dword [0x00c59690]
add eax, ecx
cdqe
add rax, rdx
mov qword [0x00c59600], rax
mov edx, dword [0x00c59598]
mov eax, dword [0x00c596a8]
add eax, edx
mov dword [0x00c595a0], eax
mov edx, dword [0x00c596a4]
mov eax, dword [0x00c5969c]
sub edx, eax
mov eax, edx
add eax, 1
mov dword [0x00c5959c], eax
mov eax, dword [0x00c59598]
mov dword [0x00c595b0], eax
mov rax, qword [0x00c59600]
lea rdx, [rax - 1]
mov qword [0x00c59600], rdx
movzx eax, byte [rax]
movzx eax, al
mov dword [0x00c595f0], eax
mov edx, dword [0x00c595f0]
mov eax, dword [0x00c595f4]
cmp edx, eax
setne al
test al, al
je 0x43fcd2
mov edx, dword [0x00c595f0]
mov rax, qword [0x00c59608]
mov byte [rax], dl
mov rax, qword [0x00c59608]
add rax, 1
mov qword [0x00c59608], rax
mov eax, dword [0x00c595b0]
sub eax, 1
mov dword [0x00c595b0], eax
mov eax, dword [0x00c595b0]
test eax, eax
setne al
test al, al
je 0x43fd04
jmp 0x43fc90
mov rdx, qword [0x00c59600]
mov eax, dword [0x00c595a0]
cdqe
add rax, rdx
mov qword [0x00c59600], rax
mov rdx, qword [0x00c59608]
mov eax, dword [0x00c595a4]
cdqe
add rax, rdx
mov qword [0x00c59608], rax
mov eax, dword [0x00c5959c]
sub eax, 1
mov dword [0x00c5959c], eax
mov eax, dword [0x00c5959c]
test eax, eax
setne al
test al, al
je 0x440199
jmp 0x43fc84
mov rax, qword [0x00c595d0]
mov rax, qword [rax + 0x50]
mov qword [0x00c596b8], rax
mov edx, dword [0x00c596a0]
mov eax, dword [0x00c59698]
sub edx, eax
mov eax, edx
add eax, 1
mov dword [0x00c59598], eax
mov rax, qword [0x00c595d8]
mov rdx, qword [rax + 0x40]
mov ecx, dword [0x00c5969c]
mov eax, dword [0x00c596b0]
imul eax, ecx
mov ecx, dword [0x00c59698]
add eax, ecx
cdqe
shl rax, 2
add rax, rdx
mov qword [0x00c595e8], rax
mov edx, dword [0x00c596b0]
mov eax, dword [0x00c59598]
sub edx, eax
mov eax, edx
mov dword [0x00c595a4], eax
mov eax, dword [0x00c5962c]
test eax, eax
je 0x43fe20
mov rax, qword [0x00c595d0]
mov rdx, qword [rax + 0x40]
mov ecx, dword [0x00c59694]
mov eax, dword [0x00c596a8]
imul eax, ecx
mov ecx, dword [0x00c59690]
add eax, ecx
cdqe
add rax, rdx
mov qword [0x00c59600], rax
mov edx, dword [0x00c59598]
mov eax, dword [0x00c596a8]
sub edx, eax
mov eax, edx
mov dword [0x00c595a0], eax
jmp 0x43fe62
mov rax, qword [0x00c595d0]
mov rdx, qword [rax + 0x40]
mov ecx, dword [0x00c5968c]
mov eax, dword [0x00c596a8]
imul eax, ecx
mov ecx, dword [0x00c59690]
add eax, ecx
cdqe
add rax, rdx
mov qword [0x00c59600], rax
mov edx, dword [0x00c59598]
mov eax, dword [0x00c596a8]
add eax, edx
mov dword [0x00c595a0], eax
mov edx, dword [0x00c596a4]
mov eax, dword [0x00c5969c]
sub edx, eax
mov eax, edx
add eax, 1
mov dword [0x00c5959c], eax
mov eax, dword [0x00c59598]
mov dword [0x00c595b0], eax
mov rcx, qword [0x00c596b8]
mov rax, qword [0x00c59600]
lea rdx, [rax - 1]
mov qword [0x00c59600], rdx
movzx eax, byte [rax]
movzx eax, al
shl rax, 2
add rcx, rax
mov rax, qword [0x00c595e8]
lea rdx, [rax + 4]
mov qword [0x00c595e8], rdx
mov edx, dword [rcx]
mov dword [rax], edx
mov eax, dword [0x00c595b0]
sub eax, 1
mov dword [0x00c595b0], eax
mov eax, dword [0x00c595b0]
test eax, eax
setne al
test al, al
je 0x43fee3
jmp 0x43fe87
mov rdx, qword [0x00c59600]
mov eax, dword [0x00c595a0]
cdqe
add rax, rdx
mov qword [0x00c59600], rax
mov rdx, qword [0x00c595e8]
mov eax, dword [0x00c595a4]
cdqe
shl rax, 2
add rax, rdx
mov qword [0x00c595e8], rax
mov eax, dword [0x00c5959c]
sub eax, 1
mov dword [0x00c5959c], eax
mov eax, dword [0x00c5959c]
test eax, eax
setne al
test al, al
je 0x44019c
jmp 0x43fe7b
nop
mov rax, qword [0x00c595d0]
mov rax, qword [rax + 0x50]
mov qword [0x00c596b8], rax
mov rax, qword [0x00c595d0]
mov eax, dword [rax + 0x58]
mov dword [0x00c595f4], eax
mov edx, dword [0x00c596a0]
mov eax, dword [0x00c59698]
sub edx, eax
mov eax, edx
add eax, 1
mov dword [0x00c59598], eax
mov rax, qword [0x00c595d8]
mov rdx, qword [rax + 0x40]
mov ecx, dword [0x00c5969c]
mov eax, dword [0x00c596b0]
imul eax, ecx
mov ecx, dword [0x00c59698]
add eax, ecx
cdqe
shl rax, 2
add rax, rdx
mov qword [0x00c595e8], rax
mov edx, dword [0x00c596b0]
mov eax, dword [0x00c59598]
sub edx, eax
mov eax, edx
mov dword [0x00c595a4], eax
mov eax, dword [0x00c5962c]
test eax, eax
je 0x440014
mov rax, qword [0x00c595d0]
mov rdx, qword [rax + 0x40]
mov ecx, dword [0x00c59694]
mov eax, dword [0x00c596a8]
imul eax, ecx
mov ecx, dword [0x00c59690]
add eax, ecx
cdqe
add rax, rdx
mov qword [0x00c59600], rax
mov edx, dword [0x00c59598]
mov eax, dword [0x00c596a8]
sub edx, eax
mov eax, edx
mov dword [0x00c595a0], eax
jmp 0x440056
mov rax, qword [0x00c595d0]
mov rdx, qword [rax + 0x40]
mov ecx, dword [0x00c5968c]
mov eax, dword [0x00c596a8]
imul eax, ecx
mov ecx, dword [0x00c59690]
add eax, ecx
cdqe
add rax, rdx
mov qword [0x00c59600], rax
mov edx, dword [0x00c59598]
mov eax, dword [0x00c596a8]
add eax, edx
mov dword [0x00c595a0], eax
mov edx, dword [0x00c596a4]
mov eax, dword [0x00c5969c]
sub edx, eax
mov eax, edx
add eax, 1
mov dword [0x00c5959c], eax
mov eax, dword [0x00c59598]
mov dword [0x00c595b0], eax
mov rax, qword [0x00c59600]
lea rdx, [rax - 1]
mov qword [0x00c59600], rdx
movzx eax, byte [rax]
movzx eax, al
mov dword [0x00c595f0], eax
mov edx, dword [0x00c595f0]
mov eax, dword [0x00c595f4]
cmp edx, eax
setne al
test al, al
je 0x4400cf
mov rdx, qword [0x00c596b8]
mov eax, dword [0x00c595f0]
mov eax, eax
shl rax, 2
add rdx, rax
mov rax, qword [0x00c595e8]
mov edx, dword [rdx]
mov dword [rax], edx
mov rax, qword [0x00c595e8]
add rax, 4
mov qword [0x00c595e8], rax
mov eax, dword [0x00c595b0]
sub eax, 1
mov dword [0x00c595b0], eax
mov eax, dword [0x00c595b0]
test eax, eax
setne al
test al, al
je 0x440104
jmp 0x44007b
mov rdx, qword [0x00c59600]
mov eax, dword [0x00c595a0]
cdqe
add rax, rdx
mov qword [0x00c59600], rax
mov rdx, qword [0x00c595e8]
mov eax, dword [0x00c595a4]
cdqe
shl rax, 2
add rax, rdx
mov qword [0x00c595e8], rax
mov eax, dword [0x00c5959c]
sub eax, 1
mov dword [0x00c5959c], eax
mov eax, dword [0x00c5959c]
test eax, eax
setne al
test al, al
je 0x44019f
jmp 0x44006f
nop
jmp 0x4401a0
nop
jmp 0x4401a0
nop
jmp 0x4401a0
nop
jmp 0x4401a0
nop
jmp 0x4401a0
nop
jmp 0x4401a0
nop
jmp 0x4401a0
nop
jmp 0x4401a0
nop
jmp 0x4401a0
nop
jmp 0x4401a0
nop
jmp 0x4401a0
nop
jmp 0x4401a0
nop
jmp 0x4401a0
nop
jmp 0x4401a0
nop
jmp 0x4401a0
nop
jmp 0x4401a0
nop
jmp 0x4401a0
nop
jmp 0x4401a0
nop
jmp 0x4401a0
nop
jmp 0x4401a0
nop
jmp 0x4401a0
nop
jmp 0x4401a0
nop
add rsp, 0x90
pop rbx
pop rsi
pop rbp
ret