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

Disassembly:
mov qword [rsp + 0x18], r8
mov qword [rsp + 0x10], rdx
mov qword [rsp + 8], rcx
push rdi
mov eax, 0x12c0
call fcn.1801f0860
sub rsp, rax
mov rax, qword [0x1802a60c0]
xor rax, rsp
mov qword [rsp + 0x12b0], rax
mov dword [rsp + 0x4fc], 0
mov eax, 0xffff
mov word [rsp + 0x710], ax
mov dword [rsp + 0x1104], 1
mov dword [rsp + 0x1134], 2
mov dword [rsp + 0x40], 3
mov dword [rsp + 0x488], 0
jmp 0x180051962
mov eax, dword [rsp + 0x488]
inc eax
mov dword [rsp + 0x488], eax
mov eax, dword [rsp + 0x488]
cmp eax, 0xa
jge 0x1800519ac
mov eax, dword [rsp + 0x1104]
mov ecx, dword [rsp + 0x1134]
add eax, ecx
mov dword [rsp + 0x1104], eax
mov eax, dword [rsp + 0x1134]
mov ecx, dword [rsp + 0x40]
add eax, ecx
mov dword [rsp + 0x1134], eax
mov eax, dword [rsp + 0x40]
mov ecx, dword [rsp + 0x1104]
add eax, ecx
mov dword [rsp + 0x40], eax
jmp 0x180051952
movsd xmm0, qword [0x1801f9e78]
movsd qword [rsp + 0x88], xmm0
movsd xmm0, qword [0x1801f9e80]
movsd qword [rsp + 0xd0], xmm0
movsd xmm0, qword [0x1801f9e88]
movsd qword [rsp + 0xc8], xmm0
mov dword [rsp + 0x48c], 0
jmp 0x1800519fc
mov eax, dword [rsp + 0x48c]
inc eax
mov dword [rsp + 0x48c], eax
mov eax, dword [rsp + 0x48c]
cmp eax, 0xa
jge 0x180051a67
movsd xmm0, qword [rsp + 0x88]
movsd xmm1, qword [rsp + 0xd0]
addsd xmm0, xmm1
movsd qword [rsp + 0x88], xmm0
movsd xmm0, qword [rsp + 0xd0]
movsd xmm1, qword [rsp + 0xc8]
addsd xmm0, xmm1
movsd qword [rsp + 0xd0], xmm0
movsd xmm0, qword [rsp + 0xc8]
movsd xmm1, qword [rsp + 0x88]
addsd xmm0, xmm1
movsd qword [rsp + 0xc8], xmm0
jmp 0x1800519ec
mov byte [rsp + 0x20], 0x61
mov byte [rsp + 0x27], 0x62
mov byte [rsp + 0x2e], 0x63
mov dword [rsp + 0x490], 0
jmp 0x180051a93
mov eax, dword [rsp + 0x490]
inc eax
mov dword [rsp + 0x490], eax
mov eax, dword [rsp + 0x490]
cmp eax, 0xa
jge 0x180051ae9
movzx eax, byte [rsp + 0x27]
movsx eax, al
movzx ecx, byte [rsp + 0x20]
movsx ecx, cl
add ecx, eax
mov eax, ecx
mov byte [rsp + 0x20], al
movzx eax, byte [rsp + 0x2e]
movsx eax, al
movzx ecx, byte [rsp + 0x27]
movsx ecx, cl
add ecx, eax
mov eax, ecx
mov byte [rsp + 0x27], al
movzx eax, byte [rsp + 0x20]
movsx eax, al
movzx ecx, byte [rsp + 0x2e]
movsx ecx, cl
add ecx, eax
mov eax, ecx
mov byte [rsp + 0x2e], al
jmp 0x180051a83
mov dword [rsp + 0x9e0], 0
mov dword [rsp + 0x9e4], 1
mov dword [rsp + 0x9e8], 2
mov dword [rsp + 0x9ec], 3
mov dword [rsp + 0x9f0], 4
mov dword [rsp + 0x9f4], 5
mov dword [rsp + 0x9f8], 6
mov dword [rsp + 0x9fc], 7
mov dword [rsp + 0xa00], 8
mov dword [rsp + 0xa04], 9
mov dword [rsp + 0x1e8], 0
jmp 0x180051b74
mov eax, dword [rsp + 0x1e8]
inc eax
mov dword [rsp + 0x1e8], eax
mov eax, dword [rsp + 0x1e8]
cmp eax, 0xa
jge 0x180051be2
mov eax, dword [rsp + 0x1e8]
inc eax
cdq
mov ecx, 0xa
idiv ecx
mov eax, edx
cdqe
mov qword [rsp + 0xb38], rax
mov ecx, dword [rsp + 0x1e8]
add ecx, 2
mov eax, ecx
cdq
mov ecx, 0xa
idiv ecx
mov eax, edx
cdqe
mov rcx, qword [rsp + 0xb38]
mov ecx, dword [rsp + rcx*4 + 0x9e0]
mov eax, dword [rsp + rax*4 + 0x9e0]
add ecx, eax
mov eax, ecx
mov ecx, dword [rsp + 0x1e8]
movsxd rcx, ecx
mov dword [rsp + rcx*4 + 0x9e0], eax
jmp 0x180051b64
mov eax, dword [rsp + 0x1104]
mov ecx, dword [rsp + 0x1134]
cmp eax, ecx
je 0x180051bff
mov eax, dword [rsp + 0x40]
mov dword [rsp + 0x1104], eax
mov eax, dword [rsp + 0x1134]
mov ecx, dword [rsp + 0x40]
cmp eax, ecx
je 0x180051c22
movsd xmm0, qword [rsp + 0x88]
cvttsd2si eax, xmm0
mov dword [rsp + 0x1134], eax
mov eax, dword [rsp + 0x40]
cvtsi2sd xmm0, eax
movsd xmm1, qword [rsp + 0x88]
ucomisd xmm0, xmm1
jp 0x180051c3b
je 0x180051c4c
movsd xmm0, qword [rsp + 0xd0]
cvttsd2si eax, xmm0
mov dword [rsp + 0x40], eax
movsd xmm0, qword [rsp + 0x88]
movsd xmm1, qword [rsp + 0xd0]
ucomisd xmm0, xmm1
jp 0x180051c66
je 0x180051c78
movsd xmm0, qword [rsp + 0xc8]
movsd qword [rsp + 0x88], xmm0
movsd xmm0, qword [rsp + 0xd0]
movsd xmm1, qword [rsp + 0xc8]
ucomisd xmm0, xmm1
jp 0x180051c92
je 0x180051ca7
movzx eax, byte [rsp + 0x20]
movsx eax, al
cvtsi2sd xmm0, eax
movsd qword [rsp + 0xd0], xmm0
movsd xmm0, qword [rsp + 0xc8]
movzx eax, byte [rsp + 0x20]
movsx eax, al
cvtsi2sd xmm1, eax
ucomisd xmm0, xmm1
jp 0x180051cc4
je 0x180051cd9
movzx eax, byte [rsp + 0x27]
movsx eax, al
cvtsi2sd xmm0, eax
movsd qword [rsp + 0xc8], xmm0
movzx eax, byte [rsp + 0x20]
movsx eax, al
movzx ecx, byte [rsp + 0x27]
movsx ecx, cl
cmp eax, ecx
je 0x180051cf6
movzx eax, byte [rsp + 0x2e]
mov byte [rsp + 0x20], al
mov dword [rsp + 0x494], 0
jmp 0x180051d13
mov eax, dword [rsp + 0x494]
inc eax
mov dword [rsp + 0x494], eax
mov eax, dword [rsp + 0x494]
cmp eax, 0x32
jge 0x180051e18
mov eax, dword [rsp + 0x1104]
mov ecx, dword [rsp + 0x1134]
add eax, ecx
mov dword [rsp + 0x1104], eax
mov eax, dword [rsp + 0x1134]
mov ecx, dword [rsp + 0x40]
add eax, ecx
mov dword [rsp + 0x1134], eax
mov eax, dword [rsp + 0x40]
cvtsi2sd xmm0, eax
movsd xmm1, qword [rsp + 0x88]
addsd xmm0, xmm1
cvttsd2si eax, xmm0
mov dword [rsp + 0x40], eax
movsd xmm0, qword [rsp + 0x88]
movsd xmm1, qword [rsp + 0xd0]
addsd xmm0, xmm1
movsd qword [rsp + 0x88], xmm0
movsd xmm0, qword [rsp + 0xd0]
movsd xmm1, qword [rsp + 0xc8]
addsd xmm0, xmm1
movsd qword [rsp + 0xd0], xmm0
movzx eax, byte [rsp + 0x20]
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [rsp + 0xc8]
addsd xmm1, xmm0
movaps xmm0, xmm1
movsd qword [rsp + 0xc8], xmm0
movzx eax, byte [rsp + 0x27]
movsx eax, al
movzx ecx, byte [rsp + 0x20]
movsx ecx, cl
add ecx, eax
mov eax, ecx
mov byte [rsp + 0x20], al
movzx eax, byte [rsp + 0x2e]
movsx eax, al
movzx ecx, byte [rsp + 0x27]
movsx ecx, cl
add ecx, eax
mov eax, ecx
mov byte [rsp + 0x27], al
movzx eax, byte [rsp + 0x2e]
movsx eax, al
mov ecx, dword [rsp + 0x1104]
add eax, ecx
mov byte [rsp + 0x2e], al
jmp 0x180051d03
lea rdx, [0x1801f8d80]
lea rcx, [rsp + 0x1148]
call fcn.180043c60
mov qword [rsp + 0x200], 0x12345678
mov rax, qword [rsp + 0x200]
test rax, rax
je 0x180051e5d
mov rax, qword [rsp + 0x200]
mov ecx, 0x87654321
add rax, rcx
mov qword [rsp + 0x200], rax
mov dword [rsp + 0x498], 0
jmp 0x180051e7a
mov eax, dword [rsp + 0x498]
inc eax
mov dword [rsp + 0x498], eax
mov eax, dword [rsp + 0x498]
cmp eax, 0x32
jge 0x180051ee1
mov eax, dword [rsp + 0x1104]
cdqe
mov rcx, qword [rsp + 0x200]
xor rcx, rax
mov rax, rcx
mov qword [rsp + 0x200], rax
mov eax, dword [rsp + 0x1104]
cdqe
mov rcx, qword [rsp + 0x200]
xor rax, rcx
mov dword [rsp + 0x1104], eax
mov eax, dword [rsp + 0x1104]
cdqe
mov rcx, qword [rsp + 0x200]
xor rcx, rax
mov rax, rcx
mov qword [rsp + 0x200], rax
jmp 0x180051e6a
mov dword [rsp + 0x230], 0
jmp 0x180051efe
mov eax, dword [rsp + 0x230]
inc eax
mov dword [rsp + 0x230], eax
mov eax, dword [rsp + 0x230]
cmp eax, 0xa
jge 0x180051f44
mov eax, dword [rsp + 0x230]
inc eax
cdq
mov ecx, 0xa
idiv ecx
mov eax, edx
cdqe
movsd xmm0, qword [rsp + rax*8 + 0xcf0]
mulsd xmm0, qword [0x1801f9ea0]
mov eax, dword [rsp + 0x230]
cdqe
movsd qword [rsp + rax*8 + 0xcf0], xmm0
jmp 0x180051eee
movss xmm0, dword [0x1801f9e70]
movss dword [rsp + 0xf8], xmm0
mov dword [rsp + 0x49c], 0
jmp 0x180051f72
mov eax, dword [rsp + 0x49c]
inc eax
mov dword [rsp + 0x49c], eax
mov eax, dword [rsp + 0x49c]
cmp eax, 0x32
jge 0x1800520b6
mov eax, dword [rsp + 0x1104]
test eax, eax
je 0x180051f9d
mov eax, dword [rsp + 0x1104]
mov dword [rsp + 0x650], eax
jmp 0x180051fa8
mov dword [rsp + 0x650], 1
cvtsi2ss xmm0, dword [rsp + 0x650]
movss xmm1, dword [rsp + 0xf8]
addss xmm1, xmm0
movaps xmm0, xmm1
movss dword [rsp + 0xf8], xmm0
mov eax, dword [rsp + 0x1134]
test eax, eax
je 0x180051fe5
mov eax, dword [rsp + 0x1134]
mov dword [rsp + 0x654], eax
jmp 0x180051ff0
mov dword [rsp + 0x654], 1
cvtsi2ss xmm0, dword [rsp + 0x654]
movss xmm1, dword [rsp + 0xf8]
mulss xmm1, xmm0
movaps xmm0, xmm1
movss dword [rsp + 0xf8], xmm0
mov eax, dword [rsp + 0x40]
test eax, eax
je 0x180052027
mov eax, dword [rsp + 0x40]
mov dword [rsp + 0x658], eax
jmp 0x180052032
mov dword [rsp + 0x658], 1
cvtsi2ss xmm0, dword [rsp + 0x658]
movss xmm1, dword [rsp + 0xf8]
subss xmm1, xmm0
movaps xmm0, xmm1
movss dword [rsp + 0xf8], xmm0
movsd xmm0, qword [rsp + 0x88]
ucomisd xmm0, qword [0x1801f9e60]
jp 0x180052069
je 0x18005207d
movsd xmm0, qword [rsp + 0x88]
movsd qword [rsp + 0x910], xmm0
jmp 0x18005208e
movsd xmm0, qword [0x1801f9e90]
movsd qword [rsp + 0x910], xmm0
movss xmm0, dword [rsp + 0xf8]
cvtss2sd xmm0, xmm0
divsd xmm0, qword [rsp + 0x910]
cvtsd2ss xmm0, xmm0
movss dword [rsp + 0xf8], xmm0
jmp 0x180051f62
mov dword [rsp + 0x1b0], 0
mov eax, dword [rsp + 0x1b0]
cmp eax, 0x64
jge 0x180052148
mov eax, dword [rsp + 0x1b0]
inc eax
mov dword [rsp + 0x1b0], eax
mov eax, dword [rsp + 0x1134]
test eax, eax
je 0x1800520f8
mov eax, dword [rsp + 0x1134]
mov dword [rsp + 0x65c], eax
jmp 0x180052103
mov dword [rsp + 0x65c], 1
mov eax, dword [rsp + 0x40]
test eax, eax
je 0x180052118
mov eax, dword [rsp + 0x40]
mov dword [rsp + 0x62c], eax
jmp 0x180052123
mov dword [rsp + 0x62c], 1
mov eax, dword [rsp + 0x1104]
imul eax, dword [rsp + 0x65c]
cdq
idiv dword [rsp + 0x62c]
mov eax, edx
mov dword [rsp + 0x1104], eax
jmp 0x1800520c1
lea rax, [rsp + 0x1104]
mov qword [rsp + 0x918], rax
cmp qword [rsp + 0x918], 0
je 0x180052173
lea rax, [rsp + 0x1134]
mov qword [rsp + 0x918], rax
mov dword [rsp + 0x4a0], 0
mov dword [rsp + 0x1a8], 0
jmp 0x18005219b
mov eax, dword [rsp + 0x1a8]
inc eax
mov dword [rsp + 0x1a8], eax
mov eax, dword [rsp + 0x1a8]
cmp eax, 0x32
jge 0x180052235
mov eax, dword [rsp + 0x1a8]
test eax, eax
je 0x1800521c6
mov eax, dword [rsp + 0x1a8]
mov dword [rsp + 0x630], eax
jmp 0x1800521d1
mov dword [rsp + 0x630], 1
mov eax, dword [rsp + 0x4a0]
imul eax, dword [rsp + 0x630]
mov ecx, dword [rsp + 0x1b0]
add eax, ecx
mov dword [rsp + 0x4a0], eax
mov eax, dword [rsp + 0x1a8]
test eax, eax
je 0x180052217
mov eax, dword [rsp + 0x4a0]
mov ecx, dword [rsp + 0x1a8]
cdq
idiv ecx
mov eax, edx
mov dword [rsp + 0x634], eax
jmp 0x180052222
mov dword [rsp + 0x634], 0
mov eax, dword [rsp + 0x634]
mov dword [rsp + 0x1b0], eax
jmp 0x18005218b
mov dword [rsp + 0x4a4], 0x7b
mov dword [rsp + 0x4a8], 0x1c8
mov dword [rsp + 0x4ac], 0x315
mov eax, dword [rsp + 0x4a8]
mov ecx, dword [rsp + 0x4ac]
add eax, ecx
mov dword [rsp + 0x4a4], eax
mov eax, dword [rsp + 0x4a4]
mov ecx, dword [rsp + 0x4ac]
sub eax, ecx
mov dword [rsp + 0x4a8], eax
mov eax, dword [rsp + 0x4a4]
mov ecx, dword [rsp + 0x4a8]
imul eax, ecx
mov dword [rsp + 0x4ac], eax
movsd xmm0, qword [0x1801f9e98]
movsd qword [rsp + 0x718], xmm0
movsd xmm0, qword [str._np]
movsd qword [rsp + 0x720], xmm0
movsd xmm0, qword [0x1801f9eb8]
movsd qword [rsp + 0x678], xmm0
movsd xmm0, qword [rsp + 0x678]
ucomisd xmm0, qword [0x1801f9e60]
jp 0x1800522e4
je 0x1800522f8
movsd xmm0, qword [rsp + 0x678]
movsd qword [rsp + 0x8e0], xmm0
jmp 0x180052309
movsd xmm0, qword [0x1801f9e90]
movsd qword [rsp + 0x8e0], xmm0
movsd xmm0, qword [rsp + 0x720]
divsd xmm0, qword [rsp + 0x8e0]
movsd qword [rsp + 0x718], xmm0
movsd xmm0, qword [rsp + 0x678]
movsd xmm1, qword [rsp + 0x718]
mulsd xmm0, xmm1
movsd qword [rsp + 0x720], xmm0
movsd xmm0, qword [rsp + 0x718]
movsd xmm1, qword [rsp + 0x720]
addsd xmm0, xmm1
movsd qword [rsp + 0x678], xmm0
movss xmm0, dword [0x1801f9e6c]
movss dword [rsp + 0x4b0], xmm0
movss xmm0, dword [0x1801f9ea8]
movss dword [rsp + 0x4b4], xmm0
movss xmm0, dword [0x1801f9ec0]
movss dword [rsp + 0x280], xmm0
movss xmm0, dword [rsp + 0x4b4]
movss xmm1, dword [rsp + 0x280]
subss xmm0, xmm1
movss dword [rsp + 0x4b0], xmm0
movss xmm0, dword [rsp + 0x280]
ucomiss xmm0, dword [0x1801f9e5c]
jp 0x1800523c8
je 0x1800523e9
movss xmm0, dword [rsp + 0x280]
movss xmm1, dword [rsp + 0x4b0]
divss xmm0, xmm1
movss dword [rsp + 0x638], xmm0
jmp 0x1800523fa
movss xmm0, dword [0x1801f9e68]
movss dword [rsp + 0x638], xmm0
movss xmm0, dword [rsp + 0x638]
movss dword [rsp + 0x4b4], xmm0
movss xmm0, dword [rsp + 0x4b0]
movss xmm1, dword [rsp + 0x4b4]
mulss xmm0, xmm1
movss dword [rsp + 0x280], xmm0
mov byte [rsp + 0x79], 0x61
mov byte [rsp + 0x77], 0x62
mov byte [rsp + 0x7a], 0x63
movzx eax, byte [rsp + 0x77]
movsx eax, al
movzx ecx, byte [rsp + 0x79]
movsx ecx, cl
add ecx, eax
mov eax, ecx
mov byte [rsp + 0x79], al
movzx eax, byte [rsp + 0x7a]
movsx eax, al
movzx ecx, byte [rsp + 0x77]
movsx ecx, cl
add ecx, eax
mov eax, ecx
mov byte [rsp + 0x77], al
movzx eax, byte [rsp + 0x79]
movsx eax, al
movzx ecx, byte [rsp + 0x7a]
movsx ecx, cl
add ecx, eax
mov eax, ecx
mov byte [rsp + 0x7a], al
mov qword [rsp + 0x728], 0x123
mov qword [rsp + 0x730], 0x456
mov qword [rsp + 0x738], 0x789
mov rax, qword [rsp + 0x730]
mov rcx, qword [rsp + 0x738]
add rax, rcx
mov qword [rsp + 0x728], rax
mov rax, qword [rsp + 0x728]
mov rcx, qword [rsp + 0x738]
sub rax, rcx
mov qword [rsp + 0x730], rax
mov rax, qword [rsp + 0x728]
mov rcx, qword [rsp + 0x730]
imul rax, rcx
mov qword [rsp + 0x738], rax
mov dword [rsp + 0x288], 1
mov dword [rsp + 0x284], 2
mov dword [rsp + 0x28c], 3
mov eax, dword [rsp + 0x288]
mov ecx, dword [rsp + 0x284]
add eax, ecx
mov dword [rsp + 0x288], eax
mov eax, dword [rsp + 0x284]
mov ecx, dword [rsp + 0x28c]
add eax, ecx
mov dword [rsp + 0x284], eax
mov eax, dword [rsp + 0x28c]
mov ecx, dword [rsp + 0x288]
add eax, ecx
mov dword [rsp + 0x28c], eax
movsd xmm0, qword [0x1801f9e78]
movsd qword [rsp + 0x748], xmm0
movsd xmm0, qword [0x1801f9e80]
movsd qword [rsp + 0x740], xmm0
movsd xmm0, qword [0x1801f9e88]
movsd qword [rsp + 0x750], xmm0
movsd xmm0, qword [rsp + 0x748]
movsd xmm1, qword [rsp + 0x740]
addsd xmm0, xmm1
movsd qword [rsp + 0x748], xmm0
movsd xmm0, qword [rsp + 0x740]
movsd xmm1, qword [rsp + 0x750]
addsd xmm0, xmm1
movsd qword [rsp + 0x740], xmm0
movsd xmm0, qword [rsp + 0x750]
movsd xmm1, qword [rsp + 0x748]
addsd xmm0, xmm1
movsd qword [rsp + 0x750], xmm0
mov byte [rsp + 0x7c], 0x61
mov byte [rsp + 0x7b], 0x62
mov byte [rsp + 0x7d], 0x63
movzx eax, byte [rsp + 0x7b]
movsx eax, al
movzx ecx, byte [rsp + 0x7c]
movsx ecx, cl
add ecx, eax
mov eax, ecx
mov byte [rsp + 0x7c], al
movzx eax, byte [rsp + 0x7d]
movsx eax, al
movzx ecx, byte [rsp + 0x7b]
movsx ecx, cl
add ecx, eax
mov eax, ecx
mov byte [rsp + 0x7b], al
movzx eax, byte [rsp + 0x7c]
movsx eax, al
movzx ecx, byte [rsp + 0x7d]
movsx ecx, cl
add ecx, eax
mov eax, ecx
mov byte [rsp + 0x7d], al
mov dword [rsp + 0x1ec], 0
jmp 0x180052662
mov eax, dword [rsp + 0x1ec]
inc eax
mov dword [rsp + 0x1ec], eax
mov eax, dword [rsp + 0x1ec]
cmp eax, 0xa
jge 0x1800526d0
mov eax, dword [rsp + 0x1ec]
inc eax
cdq
mov ecx, 0xa
idiv ecx
mov eax, edx
cdqe
mov qword [rsp + 0xb40], rax
mov ecx, dword [rsp + 0x1ec]
add ecx, 2
mov eax, ecx
cdq
mov ecx, 0xa
idiv ecx
mov eax, edx
cdqe
mov rcx, qword [rsp + 0xb40]
mov ecx, dword [rsp + rcx*4 + 0xb78]
mov eax, dword [rsp + rax*4 + 0xb78]
add ecx, eax
mov eax, ecx
mov ecx, dword [rsp + 0x1ec]
movsxd rcx, ecx
mov dword [rsp + rcx*4 + 0xb78], eax
jmp 0x180052652
mov eax, dword [rsp + 0x1104]
mov ecx, dword [rsp + 0x1134]
cmp eax, ecx
je 0x1800526ed
mov eax, dword [rsp + 0x40]
mov dword [rsp + 0x1104], eax
mov eax, dword [rsp + 0x1134]
mov ecx, dword [rsp + 0x40]
cmp eax, ecx
je 0x180052710
movsd xmm0, qword [rsp + 0x88]
cvttsd2si eax, xmm0
mov dword [rsp + 0x1134], eax
mov eax, dword [rsp + 0x40]
cvtsi2sd xmm0, eax
movsd xmm1, qword [rsp + 0x88]
ucomisd xmm0, xmm1
jp 0x180052729
je 0x18005273a
movsd xmm0, qword [rsp + 0xd0]
cvttsd2si eax, xmm0
mov dword [rsp + 0x40], eax
movsd xmm0, qword [rsp + 0x88]
movsd xmm1, qword [rsp + 0xd0]
ucomisd xmm0, xmm1
jp 0x180052754
je 0x180052766
movsd xmm0, qword [rsp + 0xc8]
movsd qword [rsp + 0x88], xmm0
movsd xmm0, qword [rsp + 0xd0]
movsd xmm1, qword [rsp + 0xc8]
ucomisd xmm0, xmm1
jp 0x180052780
je 0x180052795
movzx eax, byte [rsp + 0x20]
movsx eax, al
cvtsi2sd xmm0, eax
movsd qword [rsp + 0xd0], xmm0
movsd xmm0, qword [rsp + 0xc8]
movzx eax, byte [rsp + 0x20]
movsx eax, al
cvtsi2sd xmm1, eax
ucomisd xmm0, xmm1
jp 0x1800527b2
je 0x1800527c7
movzx eax, byte [rsp + 0x27]
movsx eax, al
cvtsi2sd xmm0, eax
movsd qword [rsp + 0xc8], xmm0
movzx eax, byte [rsp + 0x20]
movsx eax, al
movzx ecx, byte [rsp + 0x27]
movsx ecx, cl
cmp eax, ecx
je 0x1800527e4
movzx eax, byte [rsp + 0x2e]
mov byte [rsp + 0x20], al
movzx eax, byte [rsp + 0x27]
movsx eax, al
movzx ecx, byte [rsp + 0x2e]
movsx ecx, cl
cmp eax, ecx
je 0x180052803
mov eax, dword [rsp + 0x1104]
mov byte [rsp + 0x27], al
mov dword [rsp + 0x290], 0
jmp 0x180052820
mov eax, dword [rsp + 0x290]
inc eax
mov dword [rsp + 0x290], eax
mov eax, dword [rsp + 0x290]
cmp eax, 0x32
jge 0x180052925
mov eax, dword [rsp + 0x1104]
mov ecx, dword [rsp + 0x1134]
add eax, ecx
mov dword [rsp + 0x1104], eax
mov eax, dword [rsp + 0x1134]
mov ecx, dword [rsp + 0x40]
add eax, ecx
mov dword [rsp + 0x1134], eax
mov eax, dword [rsp + 0x40]
cvtsi2sd xmm0, eax
movsd xmm1, qword [rsp + 0x88]
addsd xmm0, xmm1
cvttsd2si eax, xmm0
mov dword [rsp + 0x40], eax
movsd xmm0, qword [rsp + 0x88]
movsd xmm1, qword [rsp + 0xd0]
addsd xmm0, xmm1
movsd qword [rsp + 0x88], xmm0
movsd xmm0, qword [rsp + 0xd0]
movsd xmm1, qword [rsp + 0xc8]
addsd xmm0, xmm1
movsd qword [rsp + 0xd0], xmm0
movzx eax, byte [rsp + 0x20]
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [rsp + 0xc8]
addsd xmm1, xmm0
movaps xmm0, xmm1
movsd qword [rsp + 0xc8], xmm0
movzx eax, byte [rsp + 0x27]
movsx eax, al
movzx ecx, byte [rsp + 0x20]
movsx ecx, cl
add ecx, eax
mov eax, ecx
mov byte [rsp + 0x20], al
movzx eax, byte [rsp + 0x2e]
movsx eax, al
movzx ecx, byte [rsp + 0x27]
movsx ecx, cl
add ecx, eax
mov eax, ecx
mov byte [rsp + 0x27], al
movzx eax, byte [rsp + 0x2e]
movsx eax, al
mov ecx, dword [rsp + 0x1104]
add eax, ecx
mov byte [rsp + 0x2e], al
jmp 0x180052810
mov qword [rsp + 0x758], 0x12345678
mov rax, qword [rsp + 0x758]
test rax, rax
je 0x180052956
mov rax, qword [rsp + 0x758]
mov ecx, 0x87654321
add rax, rcx
mov qword [rsp + 0x758], rax
mov dword [rsp + 0x294], 0
jmp 0x180052973
mov eax, dword [rsp + 0x294]
inc eax
mov dword [rsp + 0x294], eax
mov eax, dword [rsp + 0x294]
cmp eax, 0x32
jge 0x1800529da
mov eax, dword [rsp + 0x1104]
cdqe
mov rcx, qword [rsp + 0x200]
xor rcx, rax
mov rax, rcx
mov qword [rsp + 0x200], rax
mov eax, dword [rsp + 0x1104]
cdqe
mov rcx, qword [rsp + 0x200]
xor rax, rcx
mov dword [rsp + 0x1104], eax
mov eax, dword [rsp + 0x1104]
cdqe
mov rcx, qword [rsp + 0x200]
xor rcx, rax
mov rax, rcx
mov qword [rsp + 0x200], rax
jmp 0x180052963
mov dword [rsp + 0x234], 0
jmp 0x1800529f7
mov eax, dword [rsp + 0x234]
inc eax
mov dword [rsp + 0x234], eax
mov eax, dword [rsp + 0x234]
cmp eax, 0xa
jge 0x180052a3d
mov eax, dword [rsp + 0x234]
inc eax
cdq
mov ecx, 0xa
idiv ecx
mov eax, edx
cdqe
movsd xmm0, qword [rsp + rax*8 + 0xca0]
mulsd xmm0, qword [0x1801f9ea0]
mov eax, dword [rsp + 0x234]
cdqe
movsd qword [rsp + rax*8 + 0xca0], xmm0
jmp 0x1800529e7
movss xmm0, dword [0x1801f9e70]
movss dword [rsp + 0xfc], xmm0
mov dword [rsp + 0x298], 0
jmp 0x180052a6b
mov eax, dword [rsp + 0x298]
inc eax
mov dword [rsp + 0x298], eax
mov eax, dword [rsp + 0x298]
cmp eax, 0x32
jge 0x180052baf
mov eax, dword [rsp + 0x1104]
test eax, eax
je 0x180052a96
mov eax, dword [rsp + 0x1104]
mov dword [rsp + 0x63c], eax
jmp 0x180052aa1
mov dword [rsp + 0x63c], 1
cvtsi2ss xmm0, dword [rsp + 0x63c]
movss xmm1, dword [rsp + 0xfc]
addss xmm1, xmm0
movaps xmm0, xmm1
movss dword [rsp + 0xfc], xmm0
mov eax, dword [rsp + 0x1134]
test eax, eax
je 0x180052ade
mov eax, dword [rsp + 0x1134]
mov dword [rsp + 0x640], eax
jmp 0x180052ae9
mov dword [rsp + 0x640], 1
cvtsi2ss xmm0, dword [rsp + 0x640]
movss xmm1, dword [rsp + 0xfc]
mulss xmm1, xmm0
movaps xmm0, xmm1
movss dword [rsp + 0xfc], xmm0
mov eax, dword [rsp + 0x40]
test eax, eax
je 0x180052b20
mov eax, dword [rsp + 0x40]
mov dword [rsp + 0x644], eax
jmp 0x180052b2b
mov dword [rsp + 0x644], 1
cvtsi2ss xmm0, dword [rsp + 0x644]
movss xmm1, dword [rsp + 0xfc]
subss xmm1, xmm0
movaps xmm0, xmm1
movss dword [rsp + 0xfc], xmm0
movsd xmm0, qword [rsp + 0x88]
ucomisd xmm0, qword [0x1801f9e60]
jp 0x180052b62
je 0x180052b76
movsd xmm0, qword [rsp + 0x88]
movsd qword [rsp + 0x928], xmm0
jmp 0x180052b87
movsd xmm0, qword [0x1801f9e90]
movsd qword [rsp + 0x928], xmm0
movss xmm0, dword [rsp + 0xfc]
cvtss2sd xmm0, xmm0
divsd xmm0, qword [rsp + 0x928]
cvtsd2ss xmm0, xmm0
movss dword [rsp + 0xfc], xmm0
jmp 0x180052a5b
mov dword [rsp + 0x29c], 0
mov eax, dword [rsp + 0x29c]
cmp eax, 0x64
jge 0x180052c41
mov eax, dword [rsp + 0x29c]
inc eax
mov dword [rsp + 0x29c], eax
mov eax, dword [rsp + 0x1134]
test eax, eax
je 0x180052bf1
mov eax, dword [rsp + 0x1134]
mov dword [rsp + 0x648], eax
jmp 0x180052bfc
mov dword [rsp + 0x648], 1
mov eax, dword [rsp + 0x40]
test eax, eax
je 0x180052c11
mov eax, dword [rsp + 0x40]
mov dword [rsp + 0x64c], eax
jmp 0x180052c1c
mov dword [rsp + 0x64c], 1
mov eax, dword [rsp + 0x1104]
imul eax, dword [rsp + 0x648]
cdq
idiv dword [rsp + 0x64c]
mov eax, edx
mov dword [rsp + 0x1104], eax
jmp 0x180052bba
lea rax, [rsp + 0x1104]
mov qword [rsp + 0x930], rax
cmp qword [rsp + 0x930], 0
je 0x180052c6c
lea rax, [rsp + 0x1134]
mov qword [rsp + 0x930], rax
mov dword [rsp + 0x2a0], 0
mov dword [rsp + 0x1ac], 0
jmp 0x180052c94
mov eax, dword [rsp + 0x1ac]
inc eax
mov dword [rsp + 0x1ac], eax
mov eax, dword [rsp + 0x1ac]
cmp eax, 0x32
jge 0x180052d2e
mov eax, dword [rsp + 0x1ac]
test eax, eax
je 0x180052cbf
mov eax, dword [rsp + 0x1ac]
mov dword [rsp + 0x4b8], eax
jmp 0x180052cca
mov dword [rsp + 0x4b8], 1
mov eax, dword [rsp + 0x2a0]
imul eax, dword [rsp + 0x4b8]
mov ecx, dword [rsp + 0x1b0]
add eax, ecx
mov dword [rsp + 0x2a0], eax
mov eax, dword [rsp + 0x1ac]
test eax, eax
je 0x180052d10
mov eax, dword [rsp + 0x2a0]
mov ecx, dword [rsp + 0x1ac]
cdq
idiv ecx
mov eax, edx
mov dword [rsp + 0x4bc], eax
jmp 0x180052d1b
mov dword [rsp + 0x4bc], 0
mov eax, dword [rsp + 0x4bc]
mov dword [rsp + 0x1b0], eax
jmp 0x180052c84
lea rcx, [rsp + 0x1148]
call fcn.180046980
nop
mov dword [rsp + 0x1100], 1
mov dword [rsp + 0x111c], 2
mov dword [rsp + 0x44], 3
mov dword [rsp + 0x2a4], 0
jmp 0x180052d77
mov eax, dword [rsp + 0x2a4]
inc eax
mov dword [rsp + 0x2a4], eax
mov eax, dword [rsp + 0x2a4]
cmp eax, 0xa
jge 0x180052dc1
mov eax, dword [rsp + 0x1100]
mov ecx, dword [rsp + 0x111c]
add eax, ecx
mov dword [rsp + 0x1100], eax
mov eax, dword [rsp + 0x111c]
mov ecx, dword [rsp + 0x44]
add eax, ecx
mov dword [rsp + 0x111c], eax
mov eax, dword [rsp + 0x44]
mov ecx, dword [rsp + 0x1100]
add eax, ecx
mov dword [rsp + 0x44], eax
jmp 0x180052d67
movsd xmm0, qword [0x1801f9e78]
movsd qword [rsp + 0xa0], xmm0
movsd xmm0, qword [0x1801f9e80]
movsd qword [rsp + 0xc0], xmm0
movsd xmm0, qword [0x1801f9e88]
movsd qword [rsp + 0xb8], xmm0
mov dword [rsp + 0x2a8], 0
jmp 0x180052e11
mov eax, dword [rsp + 0x2a8]
inc eax
mov dword [rsp + 0x2a8], eax
mov eax, dword [rsp + 0x2a8]
cmp eax, 0xa
jge 0x180052e7c
movsd xmm0, qword [rsp + 0xa0]
movsd xmm1, qword [rsp + 0xc0]
addsd xmm0, xmm1
movsd qword [rsp + 0xa0], xmm0
movsd xmm0, qword [rsp + 0xc0]
movsd xmm1, qword [rsp + 0xb8]
addsd xmm0, xmm1
movsd qword [rsp + 0xc0], xmm0
movsd xmm0, qword [rsp + 0xb8]
movsd xmm1, qword [rsp + 0xa0]
addsd xmm0, xmm1
movsd qword [rsp + 0xb8], xmm0
jmp 0x180052e01
mov byte [rsp + 0x21], 0x61
mov byte [rsp + 0x28], 0x62
mov byte [rsp + 0x2f], 0x63
mov dword [rsp + 0x2ac], 0
jmp 0x180052ea8
mov eax, dword [rsp + 0x2ac]
inc eax
mov dword [rsp + 0x2ac], eax
mov eax, dword [rsp + 0x2ac]
cmp eax, 0xa
jge 0x180052efe
movzx eax, byte [rsp + 0x28]
movsx eax, al
movzx ecx, byte [rsp + 0x21]
movsx ecx, cl
add ecx, eax
mov eax, ecx
mov byte [rsp + 0x21], al
movzx eax, byte [rsp + 0x2f]
movsx eax, al
movzx ecx, byte [rsp + 0x28]
movsx ecx, cl
add ecx, eax
mov eax, ecx
mov byte [rsp + 0x28], al
movzx eax, byte [rsp + 0x21]
movsx eax, al
movzx ecx, byte [rsp + 0x2f]
movsx ecx, cl
add ecx, eax
mov eax, ecx
mov byte [rsp + 0x2f], al
jmp 0x180052e98
mov dword [rsp + 0xa08], 0
mov dword [rsp + 0xa0c], 1
mov dword [rsp + 0xa10], 2
mov dword [rsp + 0xa14], 3
mov dword [rsp + 0xa18], 4
mov dword [rsp + 0xa1c], 5
mov dword [rsp + 0xa20], 6
mov dword [rsp + 0xa24], 7
mov dword [rsp + 0xa28], 8
mov dword [rsp + 0xa2c], 9
mov dword [rsp + 0x1f0], 0
jmp 0x180052f89
mov eax, dword [rsp + 0x1f0]
inc eax
mov dword [rsp + 0x1f0], eax
mov eax, dword [rsp + 0x1f0]
cmp eax, 0xa
jge 0x180052ff7
mov eax, dword [rsp + 0x1f0]
inc eax
cdq
mov ecx, 0xa
idiv ecx
mov eax, edx
cdqe
mov qword [rsp + 0xb48], rax
mov ecx, dword [rsp + 0x1f0]
add ecx, 2
mov eax, ecx
cdq
mov ecx, 0xa
idiv ecx
mov eax, edx
cdqe
mov rcx, qword [rsp + 0xb48]
mov ecx, dword [rsp + rcx*4 + 0xa08]
mov eax, dword [rsp + rax*4 + 0xa08]
add ecx, eax
mov eax, ecx
mov ecx, dword [rsp + 0x1f0]
movsxd rcx, ecx
mov dword [rsp + rcx*4 + 0xa08], eax
jmp 0x180052f79
mov eax, dword [rsp + 0x1100]
mov ecx, dword [rsp + 0x111c]
cmp eax, ecx
je 0x180053014
mov eax, dword [rsp + 0x44]
mov dword [rsp + 0x1100], eax
mov eax, dword [rsp + 0x111c]
mov ecx, dword [rsp + 0x44]
cmp eax, ecx
je 0x180053037
movsd xmm0, qword [rsp + 0xa0]
cvttsd2si eax, xmm0
mov dword [rsp + 0x111c], eax
mov eax, dword [rsp + 0x44]
cvtsi2sd xmm0, eax
movsd xmm1, qword [rsp + 0xa0]
ucomisd xmm0, xmm1
jp 0x180053050
je 0x180053061
movsd xmm0, qword [rsp + 0xc0]
cvttsd2si eax, xmm0
mov dword [rsp + 0x44], eax
movsd xmm0, qword [rsp + 0xa0]
movsd xmm1, qword [rsp + 0xc0]
ucomisd xmm0, xmm1
jp 0x18005307b
je 0x18005308d
movsd xmm0, qword [rsp + 0xb8]
movsd qword [rsp + 0xa0], xmm0
movsd xmm0, qword [rsp + 0xc0]
movsd xmm1, qword [rsp + 0xb8]
ucomisd xmm0, xmm1
jp 0x1800530a7
je 0x1800530bc
movzx eax, byte [rsp + 0x21]
movsx eax, al
cvtsi2sd xmm0, eax
movsd qword [rsp + 0xc0], xmm0
movsd xmm0, qword [rsp + 0xb8]
movzx eax, byte [rsp + 0x21]
movsx eax, al
cvtsi2sd xmm1, eax
ucomisd xmm0, xmm1
jp 0x1800530d9
je 0x1800530ee
movzx eax, byte [rsp + 0x28]
movsx eax, al
cvtsi2sd xmm0, eax
movsd qword [rsp + 0xb8], xmm0
movzx eax, byte [rsp + 0x21]
movsx eax, al
movzx ecx, byte [rsp + 0x28]
movsx ecx, cl
cmp eax, ecx
je 0x18005310b
movzx eax, byte [rsp + 0x2f]
mov byte [rsp + 0x21], al
mov dword [rsp + 0x2b0], 0
jmp 0x180053128
mov eax, dword [rsp + 0x2b0]
inc eax
mov dword [rsp + 0x2b0], eax
mov eax, dword [rsp + 0x2b0]
cmp eax, 0x32
jge 0x18005322d
mov eax, dword [rsp + 0x1100]
mov ecx, dword [rsp + 0x111c]
add eax, ecx
mov dword [rsp + 0x1100], eax
mov eax, dword [rsp + 0x111c]
mov ecx, dword [rsp + 0x44]
add eax, ecx
mov dword [rsp + 0x111c], eax
mov eax, dword [rsp + 0x44]
cvtsi2sd xmm0, eax
movsd xmm1, qword [rsp + 0xa0]
addsd xmm0, xmm1
cvttsd2si eax, xmm0
mov dword [rsp + 0x44], eax
movsd xmm0, qword [rsp + 0xa0]
movsd xmm1, qword [rsp + 0xc0]
addsd xmm0, xmm1
movsd qword [rsp + 0xa0], xmm0
movsd xmm0, qword [rsp + 0xc0]
movsd xmm1, qword [rsp + 0xb8]
addsd xmm0, xmm1
movsd qword [rsp + 0xc0], xmm0
movzx eax, byte [rsp + 0x21]
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [rsp + 0xb8]
addsd xmm1, xmm0
movaps xmm0, xmm1
movsd qword [rsp + 0xb8], xmm0
movzx eax, byte [rsp + 0x28]
movsx eax, al
movzx ecx, byte [rsp + 0x21]
movsx ecx, cl
add ecx, eax
mov eax, ecx
mov byte [rsp + 0x21], al
movzx eax, byte [rsp + 0x2f]
movsx eax, al
movzx ecx, byte [rsp + 0x28]
movsx ecx, cl
add ecx, eax
mov eax, ecx
mov byte [rsp + 0x28], al
movzx eax, byte [rsp + 0x2f]
movsx eax, al
mov ecx, dword [rsp + 0x1100]
add eax, ecx
mov byte [rsp + 0x2f], al
jmp 0x180053118
lea rdx, [0x1801f8d80]
lea rcx, [rsp + 0x1168]
call fcn.180043c60
mov qword [rsp + 0x1e0], 0x12345678
mov rax, qword [rsp + 0x1e0]
test rax, rax
je 0x180053272
mov rax, qword [rsp + 0x1e0]
mov ecx, 0x87654321
add rax, rcx
mov qword [rsp + 0x1e0], rax
mov dword [rsp + 0x2b4], 0
jmp 0x18005328f
mov eax, dword [rsp + 0x2b4]
inc eax
mov dword [rsp + 0x2b4], eax
mov eax, dword [rsp + 0x2b4]
cmp eax, 0x32
jge 0x1800532f6
mov eax, dword [rsp + 0x1100]
cdqe
mov rcx, qword [rsp + 0x1e0]
xor rcx, rax
mov rax, rcx
mov qword [rsp + 0x1e0], rax
mov eax, dword [rsp + 0x1100]
cdqe
mov rcx, qword [rsp + 0x1e0]
xor rax, rcx
mov dword [rsp + 0x1100], eax
mov eax, dword [rsp + 0x1100]
cdqe
mov rcx, qword [rsp + 0x1e0]
xor rcx, rax
mov rax, rcx
mov qword [rsp + 0x1e0], rax
jmp 0x18005327f
mov dword [rsp + 0x238], 0
jmp 0x180053313
mov eax, dword [rsp + 0x238]
inc eax
mov dword [rsp + 0x238], eax
mov eax, dword [rsp + 0x238]
cmp eax, 0xa
jge 0x180053359
mov eax, dword [rsp + 0x238]
inc eax
cdq
mov ecx, 0xa
idiv ecx
mov eax, edx
cdqe
movsd xmm0, qword [rsp + rax*8 + 0xd40]
mulsd xmm0, qword [0x1801f9ea0]
mov eax, dword [rsp + 0x238]
cdqe
movsd qword [rsp + rax*8 + 0xd40], xmm0
jmp 0x180053303
movss xmm0, dword [0x1801f9e70]
movss dword [rsp + 0x100], xmm0
mov dword [rsp + 0x2b8], 0
jmp 0x180053387
mov eax, dword [rsp + 0x2b8]
inc eax
mov dword [rsp + 0x2b8], eax
mov eax, dword [rsp + 0x2b8]
cmp eax, 0x32
jge 0x1800534cb
mov eax, dword [rsp + 0x1100]
test eax, eax
je 0x1800533b2
mov eax, dword [rsp + 0x1100]
mov dword [rsp + 0x4c0], eax
jmp 0x1800533bd
mov dword [rsp + 0x4c0], 1
cvtsi2ss xmm0, dword [rsp + 0x4c0]
movss xmm1, dword [rsp + 0x100]
addss xmm1, xmm0
movaps xmm0, xmm1
movss dword [rsp + 0x100], xmm0
mov eax, dword [rsp + 0x111c]
test eax, eax
je 0x1800533fa
mov eax, dword [rsp + 0x111c]
mov dword [rsp + 0x4c4], eax
jmp 0x180053405
mov dword [rsp + 0x4c4], 1
cvtsi2ss xmm0, dword [rsp + 0x4c4]
movss xmm1, dword [rsp + 0x100]
mulss xmm1, xmm0
movaps xmm0, xmm1
movss dword [rsp + 0x100], xmm0
mov eax, dword [rsp + 0x44]
test eax, eax
je 0x18005343c
mov eax, dword [rsp + 0x44]
mov dword [rsp + 0x4c8], eax
jmp 0x180053447
mov dword [rsp + 0x4c8], 1
cvtsi2ss xmm0, dword [rsp + 0x4c8]
movss xmm1, dword [rsp + 0x100]
subss xmm1, xmm0
movaps xmm0, xmm1
movss dword [rsp + 0x100], xmm0
movsd xmm0, qword [rsp + 0xa0]
ucomisd xmm0, qword [0x1801f9e60]
jp 0x18005347e
je 0x180053492
movsd xmm0, qword [rsp + 0xa0]
movsd qword [rsp + 0x938], xmm0
jmp 0x1800534a3
movsd xmm0, qword [0x1801f9e90]
movsd qword [rsp + 0x938], xmm0
movss xmm0, dword [rsp + 0x100]
cvtss2sd xmm0, xmm0
divsd xmm0, qword [rsp + 0x938]
cvtsd2ss xmm0, xmm0
movss dword [rsp + 0x100], xmm0
jmp 0x180053377
mov dword [rsp + 0x164], 0
mov eax, dword [rsp + 0x164]
cmp eax, 0x64
jge 0x18005355d
mov eax, dword [rsp + 0x164]
inc eax
mov dword [rsp + 0x164], eax
mov eax, dword [rsp + 0x111c]
test eax, eax
je 0x18005350d
mov eax, dword [rsp + 0x111c]
mov dword [rsp + 0x4cc], eax
jmp 0x180053518
mov dword [rsp + 0x4cc], 1
mov eax, dword [rsp + 0x44]
test eax, eax
je 0x18005352d
mov eax, dword [rsp + 0x44]
mov dword [rsp + 0x4d0], eax
jmp 0x180053538
mov dword [rsp + 0x4d0], 1
mov eax, dword [rsp + 0x1100]
imul eax, dword [rsp + 0x4cc]
cdq
idiv dword [rsp + 0x4d0]
mov eax, edx
mov dword [rsp + 0x1100], eax
jmp 0x1800534d6
lea rax, [rsp + 0x1100]
mov qword [rsp + 0x940], rax
cmp qword [rsp + 0x940], 0
je 0x180053588
lea rax, [rsp + 0x111c]
mov qword [rsp + 0x940], rax
mov dword [rsp + 0x2bc], 0
mov dword [rsp + 0x1b4], 0
jmp 0x1800535b0
mov eax, dword [rsp + 0x1b4]
inc eax
mov dword [rsp + 0x1b4], eax
mov eax, dword [rsp + 0x1b4]
cmp eax, 0x32
jge 0x18005364a
mov eax, dword [rsp + 0x1b4]
test eax, eax
je 0x1800535db
mov eax, dword [rsp + 0x1b4]
mov dword [rsp + 0x4d4], eax
jmp 0x1800535e6
mov dword [rsp + 0x4d4], 1
mov eax, dword [rsp + 0x2bc]
imul eax, dword [rsp + 0x4d4]
mov ecx, dword [rsp + 0x164]
add eax, ecx
mov dword [rsp + 0x2bc], eax
mov eax, dword [rsp + 0x1b4]
test eax, eax
je 0x18005362c
mov eax, dword [rsp + 0x2bc]
mov ecx, dword [rsp + 0x1b4]
cdq
idiv ecx
mov eax, edx
mov dword [rsp + 0x4d8], eax
jmp 0x180053637
mov dword [rsp + 0x4d8], 0
mov eax, dword [rsp + 0x4d8]
mov dword [rsp + 0x164], eax
jmp 0x1800535a0
mov dword [rsp + 0x2c0], 0x7b
mov dword [rsp + 0x2c4], 0x1c8
mov dword [rsp + 0x2c8], 0x315
mov eax, dword [rsp + 0x2c4]
mov ecx, dword [rsp + 0x2c8]
add eax, ecx
mov dword [rsp + 0x2c0], eax
mov eax, dword [rsp + 0x2c0]
mov ecx, dword [rsp + 0x2c8]
sub eax, ecx
mov dword [rsp + 0x2c4], eax
mov eax, dword [rsp + 0x2c0]
mov ecx, dword [rsp + 0x2c4]
imul eax, ecx
mov dword [rsp + 0x2c8], eax
movsd xmm0, qword [0x1801f9e98]
movsd qword [rsp + 0x760], xmm0
movsd xmm0, qword [str._np]
movsd qword [rsp + 0x768], xmm0
movsd xmm0, qword [0x1801f9eb8]
movsd qword [rsp + 0x680], xmm0
movsd xmm0, qword [rsp + 0x680]
ucomisd xmm0, qword [0x1801f9e60]
jp 0x1800536f9
je 0x18005370d
movsd xmm0, qword [rsp + 0x680]
movsd qword [rsp + 0x948], xmm0
jmp 0x18005371e
movsd xmm0, qword [0x1801f9e90]
movsd qword [rsp + 0x948], xmm0
movsd xmm0, qword [rsp + 0x768]
divsd xmm0, qword [rsp + 0x948]
movsd qword [rsp + 0x760], xmm0
movsd xmm0, qword [rsp + 0x680]
movsd xmm1, qword [rsp + 0x760]
mulsd xmm0, xmm1
movsd qword [rsp + 0x768], xmm0
movsd xmm0, qword [rsp + 0x760]
movsd xmm1, qword [rsp + 0x768]
addsd xmm0, xmm1
movsd qword [rsp + 0x680], xmm0
movss xmm0, dword [0x1801f9e6c]
movss dword [rsp + 0x2cc], xmm0
movss xmm0, dword [0x1801f9ea8]
movss dword [rsp + 0x2d0], xmm0
movss xmm0, dword [0x1801f9ec0]
movss dword [rsp + 0x268], xmm0
movss xmm0, dword [rsp + 0x2d0]
movss xmm1, dword [rsp + 0x268]
subss xmm0, xmm1
movss dword [rsp + 0x2cc], xmm0
movss xmm0, dword [rsp + 0x268]
ucomiss xmm0, dword [0x1801f9e5c]
jp 0x1800537dd
je 0x1800537fe
movss xmm0, dword [rsp + 0x268]
movss xmm1, dword [rsp + 0x2cc]
divss xmm0, xmm1
movss dword [rsp + 0x4dc], xmm0
jmp 0x18005380f
movss xmm0, dword [0x1801f9e68]
movss dword [rsp + 0x4dc], xmm0
movss xmm0, dword [rsp + 0x4dc]
movss dword [rsp + 0x2d0], xmm0
movss xmm0, dword [rsp + 0x2cc]
movss xmm1, dword [rsp + 0x2d0]
mulss xmm0, xmm1
movss dword [rsp + 0x268], xmm0
mov byte [rsp + 0x55], 0x61
mov byte [rsp + 0x54], 0x62
mov byte [rsp + 0x56], 0x63
movzx eax, byte [rsp + 0x54]
movsx eax, al
movzx ecx, byte [rsp + 0x55]
movsx ecx, cl
add ecx, eax
mov eax, ecx
mov byte [rsp + 0x55], al
movzx eax, byte [rsp + 0x56]
movsx eax, al
movzx ecx, byte [rsp + 0x54]
movsx ecx, cl
add ecx, eax
mov eax, ecx
mov byte [rsp + 0x54], al
movzx eax, byte [rsp + 0x55]
movsx eax, al
movzx ecx, byte [rsp + 0x56]
movsx ecx, cl
add ecx, eax
mov eax, ecx
mov byte [rsp + 0x56], al
mov qword [rsp + 0x770], 0x123
mov qword [rsp + 0x778], 0x456
mov qword [rsp + 0x708], 0x789
mov rax, qword [rsp + 0x778]
mov rcx, qword [rsp + 0x708]
add rax, rcx
mov qword [rsp + 0x770], rax
mov rax, qword [rsp + 0x770]
mov rcx, qword [rsp + 0x708]
sub rax, rcx
mov qword [rsp + 0x778], rax
mov rax, qword [rsp + 0x770]
mov rcx, qword [rsp + 0x778]
imul rax, rcx
mov qword [rsp + 0x708], rax
mov dword [rsp + 0x2d8], 1
mov dword [rsp + 0x2d4], 2
mov dword [rsp + 0x2dc], 3
mov eax, dword [rsp + 0x2d8]
mov ecx, dword [rsp + 0x2d4]
add eax, ecx
mov dword [rsp + 0x2d8], eax
mov eax, dword [rsp + 0x2d4]
mov ecx, dword [rsp + 0x2dc]
add eax, ecx
mov dword [rsp + 0x2d4], eax
mov eax, dword [rsp + 0x2dc]
mov ecx, dword [rsp + 0x2d8]
add eax, ecx
mov dword [rsp + 0x2dc], eax
movsd xmm0, qword [0x1801f9e78]
movsd qword [rsp + 0x790], xmm0
movsd xmm0, qword [0x1801f9e80]
movsd qword [rsp + 0x788], xmm0
movsd xmm0, qword [0x1801f9e88]
movsd qword [rsp + 0x798], xmm0
movsd xmm0, qword [rsp + 0x790]
movsd xmm1, qword [rsp + 0x788]
addsd xmm0, xmm1
movsd qword [rsp + 0x790], xmm0
movsd xmm0, qword [rsp + 0x788]
movsd xmm1, qword [rsp + 0x798]
addsd xmm0, xmm1
movsd qword [rsp + 0x788], xmm0
movsd xmm0, qword [rsp + 0x798]
movsd xmm1, qword [rsp + 0x790]
addsd xmm0, xmm1
movsd qword [rsp + 0x798], xmm0
mov byte [rsp + 0x58], 0x61
mov byte [rsp + 0x57], 0x62
mov byte [rsp + 0x59], 0x63
movzx eax, byte [rsp + 0x57]
movsx eax, al
movzx ecx, byte [rsp + 0x58]
movsx ecx, cl
add ecx, eax
mov eax, ecx
mov byte [rsp + 0x58], al
movzx eax, byte [rsp + 0x59]
movsx eax, al
movzx ecx, byte [rsp + 0x57]
movsx ecx, cl
add ecx, eax
mov eax, ecx
mov byte [rsp + 0x57], al
movzx eax, byte [rsp + 0x58]
movsx eax, al
movzx ecx, byte [rsp + 0x59]
movsx ecx, cl
add ecx, eax
mov eax, ecx
mov byte [rsp + 0x59], al
mov dword [rsp + 0x1f4], 0
jmp 0x180053a77
mov eax, dword [rsp + 0x1f4]
inc eax
mov dword [rsp + 0x1f4], eax
mov eax, dword [rsp + 0x1f4]
cmp eax, 0xa
jge 0x180053ae5
mov eax, dword [rsp + 0x1f4]
inc eax
cdq
mov ecx, 0xa
idiv ecx
mov eax, edx
cdqe
mov qword [rsp + 0xb50], rax
mov ecx, dword [rsp + 0x1f4]
add ecx, 2
mov eax, ecx
cdq
mov ecx, 0xa
idiv ecx
mov eax, edx
cdqe
mov rcx, qword [rsp + 0xb50]
mov ecx, dword [rsp + rcx*4 + 0xba0]
mov eax, dword [rsp + rax*4 + 0xba0]
add ecx, eax
mov eax, ecx
mov ecx, dword [rsp + 0x1f4]
movsxd rcx, ecx
mov dword [rsp + rcx*4 + 0xba0], eax
jmp 0x180053a67
mov eax, dword [rsp + 0x1100]
mov ecx, dword [rsp + 0x111c]
cmp eax, ecx
je 0x180053b02
mov eax, dword [rsp + 0x44]
mov dword [rsp + 0x1100], eax
mov eax, dword [rsp + 0x111c]
mov ecx, dword [rsp + 0x44]
cmp eax, ecx
je 0x180053b25
movsd xmm0, qword [rsp + 0xa0]
cvttsd2si eax, xmm0
mov dword [rsp + 0x111c], eax
mov eax, dword [rsp + 0x44]
cvtsi2sd xmm0, eax
movsd xmm1, qword [rsp + 0xa0]
ucomisd xmm0, xmm1
jp 0x180053b3e
je 0x180053b4f
movsd xmm0, qword [rsp + 0xc0]
cvttsd2si eax, xmm0
mov dword [rsp + 0x44], eax
movsd xmm0, qword [rsp + 0xa0]
movsd xmm1, qword [rsp + 0xc0]
ucomisd xmm0, xmm1
jp 0x180053b69
je 0x180053b7b
movsd xmm0, qword [rsp + 0xb8]
movsd qword [rsp + 0xa0], xmm0
movsd xmm0, qword [rsp + 0xc0]
movsd xmm1, qword [rsp + 0xb8]
ucomisd xmm0, xmm1
jp 0x180053b95
je 0x180053baa
movzx eax, byte [rsp + 0x21]
movsx eax, al
cvtsi2sd xmm0, eax
movsd qword [rsp + 0xc0], xmm0
movsd xmm0, qword [rsp + 0xb8]
movzx eax, byte [rsp + 0x21]
movsx eax, al
cvtsi2sd xmm1, eax
ucomisd xmm0, xmm1
jp 0x180053bc7
je 0x180053bdc
movzx eax, byte [rsp + 0x28]
movsx eax, al
cvtsi2sd xmm0, eax
movsd qword [rsp + 0xb8], xmm0
movzx eax, byte [rsp + 0x21]
movsx eax, al
movzx ecx, byte [rsp + 0x28]
movsx ecx, cl
cmp eax, ecx
je 0x180053bf9
movzx eax, byte [rsp + 0x2f]
mov byte [rsp + 0x21], al
movzx eax, byte [rsp + 0x28]
movsx eax, al
movzx ecx, byte [rsp + 0x2f]
movsx ecx, cl
cmp eax, ecx
je 0x180053c18
mov eax, dword [rsp + 0x1100]
mov byte [rsp + 0x28], al
mov dword [rsp + 0x2e0], 0
jmp 0x180053c35
mov eax, dword [rsp + 0x2e0]
inc eax
mov dword [rsp + 0x2e0], eax
mov eax, dword [rsp + 0x2e0]
cmp eax, 0x32
jge 0x180053d3a
mov eax, dword [rsp + 0x1100]
mov ecx, dword [rsp + 0x111c]
add eax, ecx
mov dword [rsp + 0x1100], eax
mov eax, dword [rsp + 0x111c]
mov ecx, dword [rsp + 0x44]
add eax, ecx
mov dword [rsp + 0x111c], eax
mov eax, dword [rsp + 0x44]
cvtsi2sd xmm0, eax
movsd xmm1, qword [rsp + 0xa0]
addsd xmm0, xmm1
cvttsd2si eax, xmm0
mov dword [rsp + 0x44], eax
movsd xmm0, qword [rsp + 0xa0]
movsd xmm1, qword [rsp + 0xc0]
addsd xmm0, xmm1
movsd qword [rsp + 0xa0], xmm0
movsd xmm0, qword [rsp + 0xc0]
movsd xmm1, qword [rsp + 0xb8]
addsd xmm0, xmm1
movsd qword [rsp + 0xc0], xmm0
movzx eax, byte [rsp + 0x21]
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [rsp + 0xb8]
addsd xmm1, xmm0
movaps xmm0, xmm1
movsd qword [rsp + 0xb8], xmm0
movzx eax, byte [rsp + 0x28]
movsx eax, al
movzx ecx, byte [rsp + 0x21]
movsx ecx, cl
add ecx, eax
mov eax, ecx
mov byte [rsp + 0x21], al
movzx eax, byte [rsp + 0x2f]
movsx eax, al
movzx ecx, byte [rsp + 0x28]
movsx ecx, cl
add ecx, eax
mov eax, ecx
mov byte [rsp + 0x28], al
movzx eax, byte [rsp + 0x2f]
movsx eax, al
mov ecx, dword [rsp + 0x1100]
add eax, ecx
mov byte [rsp + 0x2f], al
jmp 0x180053c25
mov qword [rsp + 0x7a0], 0x12345678
mov rax, qword [rsp + 0x7a0]
test rax, rax
je 0x180053d6b
mov rax, qword [rsp + 0x7a0]
mov ecx, 0x87654321
add rax, rcx
mov qword [rsp + 0x7a0], rax
mov dword [rsp + 0x2e4], 0
jmp 0x180053d88
mov eax, dword [rsp + 0x2e4]
inc eax
mov dword [rsp + 0x2e4], eax
mov eax, dword [rsp + 0x2e4]
cmp eax, 0x32
jge 0x180053def
mov eax, dword [rsp + 0x1100]
cdqe
mov rcx, qword [rsp + 0x1e0]
xor rcx, rax
mov rax, rcx
mov qword [rsp + 0x1e0], rax
mov eax, dword [rsp + 0x1100]
cdqe
mov rcx, qword [rsp + 0x1e0]
xor rax, rcx
mov dword [rsp + 0x1100], eax
mov eax, dword [rsp + 0x1100]
cdqe
mov rcx, qword [rsp + 0x1e0]
xor rcx, rax
mov rax, rcx
mov qword [rsp + 0x1e0], rax
jmp 0x180053d78
mov dword [rsp + 0x23c], 0
jmp 0x180053e0c
mov eax, dword [rsp + 0x23c]
inc eax
mov dword [rsp + 0x23c], eax
mov eax, dword [rsp + 0x23c]
cmp eax, 0xa
jge 0x180053e52
mov eax, dword [rsp + 0x23c]
inc eax
cdq
mov ecx, 0xa
idiv ecx
mov eax, edx
cdqe
movsd xmm0, qword [rsp + rax*8 + 0xd90]
mulsd xmm0, qword [0x1801f9ea0]
mov eax, dword [rsp + 0x23c]
cdqe
movsd qword [rsp + rax*8 + 0xd90], xmm0
jmp 0x180053dfc
movss xmm0, dword [0x1801f9e70]
movss dword [rsp + 0x104], xmm0
mov dword [rsp + 0x2e8], 0
jmp 0x180053e80
mov eax, dword [rsp + 0x2e8]
inc eax
mov dword [rsp + 0x2e8], eax
mov eax, dword [rsp + 0x2e8]
cmp eax, 0x32
jge 0x180053fc4
mov eax, dword [rsp + 0x1100]
test eax, eax
je 0x180053eab
mov eax, dword [rsp + 0x1100]
mov dword [rsp + 0x4e0], eax
jmp 0x180053eb6
mov dword [rsp + 0x4e0], 1
cvtsi2ss xmm0, dword [rsp + 0x4e0]
movss xmm1, dword [rsp + 0x104]
addss xmm1, xmm0
movaps xmm0, xmm1
movss dword [rsp + 0x104], xmm0
mov eax, dword [rsp + 0x111c]
test eax, eax
je 0x180053ef3
mov eax, dword [rsp + 0x111c]
mov dword [rsp + 0x4e4], eax
jmp 0x180053efe
mov dword [rsp + 0x4e4], 1
cvtsi2ss xmm0, dword [rsp + 0x4e4]
movss xmm1, dword [rsp + 0x104]
mulss xmm1, xmm0
movaps xmm0, xmm1
movss dword [rsp + 0x104], xmm0
mov eax, dword [rsp + 0x44]
test eax, eax
je 0x180053f35
mov eax, dword [rsp + 0x44]
mov dword [rsp + 0x4e8], eax
jmp 0x180053f40
mov dword [rsp + 0x4e8], 1
cvtsi2ss xmm0, dword [rsp + 0x4e8]
movss xmm1, dword [rsp + 0x104]
subss xmm1, xmm0
movaps xmm0, xmm1
movss dword [rsp + 0x104], xmm0
movsd xmm0, qword [rsp + 0xa0]
ucomisd xmm0, qword [0x1801f9e60]
jp 0x180053f77
je 0x180053f8b
movsd xmm0, qword [rsp + 0xa0]
movsd qword [rsp + 0x950], xmm0
jmp 0x180053f9c
movsd xmm0, qword [0x1801f9e90]
movsd qword [rsp + 0x950], xmm0
movss xmm0, dword [rsp + 0x104]
cvtss2sd xmm0, xmm0
divsd xmm0, qword [rsp + 0x950]
cvtsd2ss xmm0, xmm0
movss dword [rsp + 0x104], xmm0
jmp 0x180053e70
mov dword [rsp + 0x2ec], 0
mov eax, dword [rsp + 0x2ec]
cmp eax, 0x64
jge 0x180054056
mov eax, dword [rsp + 0x2ec]
inc eax
mov dword [rsp + 0x2ec], eax
mov eax, dword [rsp + 0x111c]
test eax, eax
je 0x180054006
mov eax, dword [rsp + 0x111c]
mov dword [rsp + 0x4ec], eax
jmp 0x180054011
mov dword [rsp + 0x4ec], 1
mov eax, dword [rsp + 0x44]
test eax, eax
je 0x180054026
mov eax, dword [rsp + 0x44]
mov dword [rsp + 0x4f0], eax
jmp 0x180054031
mov dword [rsp + 0x4f0], 1
mov eax, dword [rsp + 0x1100]
imul eax, dword [rsp + 0x4ec]
cdq
idiv dword [rsp + 0x4f0]
mov eax, edx
mov dword [rsp + 0x1100], eax
jmp 0x180053fcf
lea rax, [rsp + 0x1100]
mov qword [rsp + 0x958], rax
cmp qword [rsp + 0x958], 0
je 0x180054081
lea rax, [rsp + 0x111c]
mov qword [rsp + 0x958], rax
mov dword [rsp + 0x2f0], 0
mov dword [rsp + 0x160], 0
jmp 0x1800540a9
mov eax, dword [rsp + 0x160]
inc eax
mov dword [rsp + 0x160], eax
mov eax, dword [rsp + 0x160]
cmp eax, 0x32
jge 0x180054143
mov eax, dword [rsp + 0x160]
test eax, eax
je 0x1800540d4
mov eax, dword [rsp + 0x160]
mov dword [rsp + 0x4f4], eax
jmp 0x1800540df
mov dword [rsp + 0x4f4], 1
mov eax, dword [rsp + 0x2f0]
imul eax, dword [rsp + 0x4f4]
mov ecx, dword [rsp + 0x164]
add eax, ecx
mov dword [rsp + 0x2f0], eax
mov eax, dword [rsp + 0x160]
test eax, eax
je 0x180054125
mov eax, dword [rsp + 0x2f0]
mov ecx, dword [rsp + 0x160]
cdq
idiv ecx
mov eax, edx
mov dword [rsp + 0x4f8], eax
jmp 0x180054130
mov dword [rsp + 0x4f8], 0
mov eax, dword [rsp + 0x4f8]
mov dword [rsp + 0x164], eax
jmp 0x180054099
lea rcx, [rsp + 0x1168]
call fcn.180046980
nop
mov rcx, qword [rsp + 0x12d8]
call fcn.180044350
mov qword [rsp + 0xb58], rax
mov eax, dword [rsp + 0x4fc]
or eax, 1
mov dword [rsp + 0x4fc], eax
mov dword [rsp + 0x1108], 1
mov dword [rsp + 0x1120], 2
mov dword [rsp + 0x48], 3
mov dword [rsp + 0x2f4], 0
jmp 0x1800541b2
mov eax, dword [rsp + 0x2f4]
inc eax
mov dword [rsp + 0x2f4], eax
mov eax, dword [rsp + 0x2f4]
cmp eax, 0xa
jge 0x1800541fc
mov eax, dword [rsp + 0x1108]
mov ecx, dword [rsp + 0x1120]
add eax, ecx
mov dword [rsp + 0x1108], eax
mov eax, dword [rsp + 0x1120]
mov ecx, dword [rsp + 0x48]
add eax, ecx
mov dword [rsp + 0x1120], eax
mov eax, dword [rsp + 0x48]
mov ecx, dword [rsp + 0x1108]
add eax, ecx
mov dword [rsp + 0x48], eax
jmp 0x1800541a2
movsd xmm0, qword [0x1801f9e78]
movsd qword [rsp + 0x98], xmm0
movsd xmm0, qword [0x1801f9e80]
movsd qword [rsp + 0xf0], xmm0
movsd xmm0, qword [0x1801f9e88]
movsd qword [rsp + 0xe8], xmm0
mov dword [rsp + 0x2f8], 0
jmp 0x18005424c
mov eax, dword [rsp + 0x2f8]
inc eax
mov dword [rsp + 0x2f8], eax
mov eax, dword [rsp + 0x2f8]
cmp eax, 0xa
jge 0x1800542b7
movsd xmm0, qword [rsp + 0x98]
movsd xmm1, qword [rsp + 0xf0]
addsd xmm0, xmm1
movsd qword [rsp + 0x98], xmm0
movsd xmm0, qword [rsp + 0xf0]
movsd xmm1, qword [rsp + 0xe8]
addsd xmm0, xmm1
movsd qword [rsp + 0xf0], xmm0
movsd xmm0, qword [rsp + 0xe8]
movsd xmm1, qword [rsp + 0x98]
addsd xmm0, xmm1
movsd qword [rsp + 0xe8], xmm0
jmp 0x18005423c
mov byte [rsp + 0x22], 0x61
mov byte [rsp + 0x29], 0x62
mov byte [rsp + 0x30], 0x63
mov dword [rsp + 0x2fc], 0
jmp 0x1800542e3
mov eax, dword [rsp + 0x2fc]
inc eax
mov dword [rsp + 0x2fc], eax
mov eax, dword [rsp + 0x2fc]
cmp eax, 0xa
jge 0x180054339
movzx eax, byte [rsp + 0x29]
movsx eax, al
movzx ecx, byte [rsp + 0x22]
movsx ecx, cl
add ecx, eax
mov eax, ecx
mov byte [rsp + 0x22], al
movzx eax, byte [rsp + 0x30]
movsx eax, al
movzx ecx, byte [rsp + 0x29]
movsx ecx, cl
add ecx, eax
mov eax, ecx
mov byte [rsp + 0x29], al
movzx eax, byte [rsp + 0x22]
movsx eax, al
movzx ecx, byte [rsp + 0x30]
movsx ecx, cl
add ecx, eax
mov eax, ecx
mov byte [rsp + 0x30], al
jmp 0x1800542d3
mov dword [rsp + 0xa30], 0
mov dword [rsp + 0xa34], 1
mov dword [rsp + 0xa38], 2
mov dword [rsp + 0xa3c], 3
mov dword [rsp + 0xa40], 4
mov dword [rsp + 0xa44], 5
mov dword [rsp + 0xa48], 6
mov dword [rsp + 0xa4c], 7
mov dword [rsp + 0xa50], 8
mov dword [rsp + 0xa54], 9
mov dword [rsp + 0x1f8], 0
jmp 0x1800543c4
mov eax, dword [rsp + 0x1f8]
inc eax
mov dword [rsp + 0x1f8], eax
mov eax, dword [rsp + 0x1f8]
cmp eax, 0xa
jge 0x180054432
mov eax, dword [rsp + 0x1f8]
inc eax
cdq
mov ecx, 0xa
idiv ecx
mov eax, edx
cdqe
mov qword [rsp + 0xb20], rax
mov ecx, dword [rsp + 0x1f8]
add ecx, 2
mov eax, ecx
cdq
mov ecx, 0xa
idiv ecx
mov eax, edx
cdqe
mov rcx, qword [rsp + 0xb20]
mov ecx, dword [rsp + rcx*4 + 0xa30]
mov eax, dword [rsp + rax*4 + 0xa30]
add ecx, eax
mov eax, ecx
mov ecx, dword [rsp + 0x1f8]
movsxd rcx, ecx
mov dword [rsp + rcx*4 + 0xa30], eax
jmp 0x1800543b4
mov eax, dword [rsp + 0x1108]
mov ecx, dword [rsp + 0x1120]
cmp eax, ecx
je 0x18005444f
mov eax, dword [rsp + 0x48]
mov dword [rsp + 0x1108], eax
mov eax, dword [rsp + 0x1120]
mov ecx, dword [rsp + 0x48]
cmp eax, ecx
je 0x180054472
movsd xmm0, qword [rsp + 0x98]
cvttsd2si eax, xmm0
mov dword [rsp + 0x1120], eax
mov eax, dword [rsp + 0x48]
cvtsi2sd xmm0, eax
movsd xmm1, qword [rsp + 0x98]
ucomisd xmm0, xmm1
jp 0x18005448b
je 0x18005449c
movsd xmm0, qword [rsp + 0xf0]
cvttsd2si eax, xmm0
mov dword [rsp + 0x48], eax
movsd xmm0, qword [rsp + 0x98]
movsd xmm1, qword [rsp + 0xf0]
ucomisd xmm0, xmm1
jp 0x1800544b6
je 0x1800544c8
movsd xmm0, qword [rsp + 0xe8]
movsd qword [rsp + 0x98], xmm0
movsd xmm0, qword [rsp + 0xf0]
movsd xmm1, qword [rsp + 0xe8]
ucomisd xmm0, xmm1
jp 0x1800544e2
je 0x1800544f7
movzx eax, byte [rsp + 0x22]
movsx eax, al
cvtsi2sd xmm0, eax
movsd qword [rsp + 0xf0], xmm0
movsd xmm0, qword [rsp + 0xe8]
movzx eax, byte [rsp + 0x22]
movsx eax, al
cvtsi2sd xmm1, eax
ucomisd xmm0, xmm1
jp 0x180054514
je 0x180054529
movzx eax, byte [rsp + 0x29]
movsx eax, al
cvtsi2sd xmm0, eax
movsd qword [rsp + 0xe8], xmm0
movzx eax, byte [rsp + 0x22]
movsx eax, al
movzx ecx, byte [rsp + 0x29]
movsx ecx, cl
cmp eax, ecx
je 0x180054546
movzx eax, byte [rsp + 0x30]
mov byte [rsp + 0x22], al
mov dword [rsp + 0x300], 0
jmp 0x180054563
mov eax, dword [rsp + 0x300]
inc eax
mov dword [rsp + 0x300], eax
mov eax, dword [rsp + 0x300]
cmp eax, 0x32
jge 0x180054668
mov eax, dword [rsp + 0x1108]
mov ecx, dword [rsp + 0x1120]
add eax, ecx
mov dword [rsp + 0x1108], eax
mov eax, dword [rsp + 0x1120]
mov ecx, dword [rsp + 0x48]
add eax, ecx
mov dword [rsp + 0x1120], eax
mov eax, dword [rsp + 0x48]
cvtsi2sd xmm0, eax
movsd xmm1, qword [rsp + 0x98]
addsd xmm0, xmm1
cvttsd2si eax, xmm0
mov dword [rsp + 0x48], eax
movsd xmm0, qword [rsp + 0x98]
movsd xmm1, qword [rsp + 0xf0]
addsd xmm0, xmm1
movsd qword [rsp + 0x98], xmm0
movsd xmm0, qword [rsp + 0xf0]
movsd xmm1, qword [rsp + 0xe8]
addsd xmm0, xmm1
movsd qword [rsp + 0xf0], xmm0
movzx eax, byte [rsp + 0x22]
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [rsp + 0xe8]
addsd xmm1, xmm0
movaps xmm0, xmm1
movsd qword [rsp + 0xe8], xmm0
movzx eax, byte [rsp + 0x29]
movsx eax, al
movzx ecx, byte [rsp + 0x22]
movsx ecx, cl
add ecx, eax
mov eax, ecx
mov byte [rsp + 0x22], al
movzx eax, byte [rsp + 0x30]
movsx eax, al
movzx ecx, byte [rsp + 0x29]
movsx ecx, cl
add ecx, eax
mov eax, ecx
mov byte [rsp + 0x29], al
movzx eax, byte [rsp + 0x30]
movsx eax, al
mov ecx, dword [rsp + 0x1108]
add eax, ecx
mov byte [rsp + 0x30], al
jmp 0x180054553
lea rdx, [0x1801f8d80]
lea rcx, [rsp + 0x1188]
call fcn.180043c60
mov qword [rsp + 0x208], 0x12345678
mov rax, qword [rsp + 0x208]
test rax, rax
je 0x1800546ad
mov rax, qword [rsp + 0x208]
mov ecx, 0x87654321
add rax, rcx
mov qword [rsp + 0x208], rax
mov dword [rsp + 0x304], 0
jmp 0x1800546ca