Function at 0x140007c60
Capabilities:
Monitor clipboard content

Disassembly:
mov qword [rsp + 0x10], rbx
mov qword [rsp + 0x18], rbp
push rsi
push rdi
push r12
push r13
push r15
sub rsp, 0x100
mov rax, qword [0x140041040]
xor rax, rsp
mov qword [rsp + 0xf0], rax
call qword [sym.imp.KERNEL32.dll_FreeConsole]
xorps xmm0, xmm0
lea rax, [0x140005670]
xorps xmm1, xmm1
movdqa xmmword [rsp + 0x90], xmm0
xor r12d, r12d
movdqa xmmword [rsp + 0xa0], xmm1
xor ecx, ecx
mov qword [rsp + 0x78], rax
mov qword [rsp + 0x70], r12
mov qword [rsp + 0x80], r12
call qword [sym.imp.KERNEL32.dll_GetModuleHandleA]
lea r13, str.Microsoft
mov qword [rsp + 0x88], rax
mov qword [rsp + 0xb0], r13
call fcn.140002410
movsx esi, al
call fcn.140002400
movsx ebp, al
mov ebx, ebp
imul ebx, esi
call fcn.140002440
movsx r8d, byte [0x140041c61]
xor edx, edx
movsx ecx, byte [0x140041c60]
movsx edi, al
imul eax, ebx, 7
add eax, edi
add eax, r8d
div ecx
mov r8d, eax
movsx eax, byte [0x140041c63]
cmp r8d, eax
je 0x140007fe2
lea rcx, [rsp + 0x70]
call qword [sym.imp.USER32.dll_RegisterClassW]
mov ecx, r12d
xorps xmm2, xmm2
test ax, ax
movsx eax, byte [0x140041c62]
sete cl
xor edx, edx
movd xmm1, eax
movsx eax, byte [0x140041c64]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
lea eax, [rbx + rbx*4]
lea r10d, [rdi + rax*2]
cvtsi2sd xmm2, rcx
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm2
movsd qword [rsp + 0x60], xmm1
movsx eax, byte [0x140041c61]
movsx ecx, byte [0x140041c60]
add eax, r10d
div ecx
mov r8d, eax
movsx eax, byte [0x140041c63]
cmp r8d, eax
je 0x140007de6
call fcn.140002420
movsx edx, al
movsx eax, byte [0x140043d60]
imul edx, eax
lea r8d, [rdx + rdx*4]
call fcn.140002450
movsx ecx, al
sub r8d, ecx
call fcn.140002430
movsx ecx, al
add r8d, ecx
movsx ecx, byte [0x140041c64]
add ecx, r8d
je 0x140007de6
mov r9d, 0xa
jmp 0x140007e50
movsx eax, byte [0x140041c61]
xor edx, edx
movsx ecx, byte [0x140041c60]
add eax, edi
lea eax, [rax + rbx*2]
div ecx
mov r8d, eax
movsx eax, byte [0x140041c63]
cmp r8d, eax
je 0x140007e4b
movsx eax, byte [0x140041c61]
lea edx, [rbx + rbx*2]
movsx ecx, byte [0x140041c60]
add eax, edi
xorps xmm0, xmm0
lea eax, [rax + rdx*2]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x140041c63]
sub r8d, eax
mov eax, r8d
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x60]
cvttsd2si r9d, xmm0
jmp 0x140007e50
mov r9d, dword [rsp + 0x60]
movsx eax, byte [0x140041c61]
xor edx, edx
movsx ecx, byte [0x140041c60]
add eax, edi
lea eax, [rax + rbx*8]
div ecx
mov r8d, eax
movsx eax, byte [0x140041c63]
sub r8d, eax
imul r8d, r9d
test r8d, r8d
je 0x140007fe2
movsx r8d, byte [0x140041c61]
lea ecx, [rbx + rdi]
lea eax, [rcx + rbx*8]
xor edx, edx
movsx ecx, byte [0x140041c60]
add eax, r8d
div ecx
xorps xmm2, xmm2
xor edx, edx
mov r8d, eax
movsx eax, byte [0x140041c63]
sub r8d, eax
mov eax, r8d
cvtsi2sd xmm2, rax
movsx eax, byte [0x140041c62]
movd xmm1, eax
movsx eax, byte [0x140041c64]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm2
movsd qword [rsp + 0x60], xmm1
movsx eax, byte [0x140041c61]
movsx ecx, byte [0x140041c60]
add eax, r10d
div ecx
mov r8d, eax
movsx eax, byte [0x140041c63]
cmp r8d, eax
je 0x140007f45
call fcn.140002420
movsx edx, al
movsx eax, byte [0x140043d60]
imul edx, eax
lea r8d, [rdx + rdx*4]
call fcn.140002450
movsx ecx, al
sub r8d, ecx
call fcn.140002430
movsx ecx, al
add r8d, ecx
movsx ecx, byte [0x140041c64]
add ecx, r8d
jne 0x14000871e
call fcn.140002440
movsx edx, al
mov ecx, ebp
movsx eax, byte [0x140041c61]
imul ecx, esi
lea r8d, [rdx + rcx*2]
movsx ecx, byte [0x140041c60]
add eax, r8d
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x140041c63]
cmp r8d, eax
je 0x140007fd5
call fcn.140002410
movsx edx, al
call fcn.140002400
movsx ecx, al
imul edx, ecx
lea edx, [rdx + rdx*2]
call fcn.140002440
movsx ecx, al
xorps xmm0, xmm0
movsx eax, byte [0x140041c61]
lea r8d, [rcx + rdx*2]
movsx ecx, byte [0x140041c60]
add eax, r8d
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x140041c63]
sub r8d, eax
mov eax, r8d
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x60]
cvttsd2si eax, xmm0
jmp 0x140007fd9
mov eax, dword [rsp + 0x60]
cmp r12d, eax
jl 0x14000871e
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_GetModuleHandleA]
mov qword [rsp + 0x58], r12
xor r9d, r9d
mov qword [rsp + 0x50], rax
mov r8, r13
mov qword [rsp + 0x48], r12
mov rdx, r13
mov qword [rsp + 0x40], r12
xor ecx, ecx
mov dword [rsp + 0x38], r12d
mov dword [rsp + 0x30], r12d
mov dword [rsp + 0x28], r12d
mov dword [rsp + 0x20], r12d
call qword [sym.imp.USER32.dll_CreateWindowExW]
mov r15, rax
call fcn.140002410
movsx edx, al
call fcn.140002400
movsx ecx, al
imul edx, ecx
call fcn.140002440
movsx ecx, al
movsx eax, byte [0x140041c61]
lea r8d, [rcx + rdx*4]
movsx ecx, byte [0x140041c60]
add eax, r8d
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x140041c63]
cmp r8d, eax
je 0x140008394
movsx eax, byte [0x140041c62]
test r15, r15
movd xmm1, eax
movsx eax, byte [0x140041c64]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
mov rax, r12
cvtdq2pd xmm0, xmm0
sete al
addsd xmm0, xmm0
subsd xmm1, xmm0
xorps xmm0, xmm0
cvtsi2sd xmm0, rax
mulsd xmm1, xmm0
movsd qword [rsp + 0x60], xmm1
call fcn.140002410
movsx edx, al
call fcn.140002400
movsx ecx, al
imul edx, ecx
lea edx, [rdx + rdx*4]
call fcn.140002440
movsx ecx, al
movsx eax, byte [0x140041c61]
lea r10d, [rcx + rdx*2]
movsx ecx, byte [0x140041c60]
add eax, r10d
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x140041c63]
cmp r8d, eax
je 0x140008137
call fcn.140002420
movsx edx, al
movsx eax, byte [0x140043d60]
imul edx, eax
lea r8d, [rdx + rdx*4]
call fcn.140002450
movsx ecx, al
sub r8d, ecx
call fcn.140002430
movsx ecx, al
add r8d, ecx
movsx ecx, byte [0x140041c64]
add ecx, r8d
je 0x140008137
mov r9d, 0xa
jmp 0x1400081db
call fcn.140002410
movsx edx, al
call fcn.140002400
movsx ecx, al
imul edx, ecx
call fcn.140002440
movsx ecx, al
movsx eax, byte [0x140041c61]
lea r8d, [rcx + rdx*2]
movsx ecx, byte [0x140041c60]
add eax, r8d
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x140041c63]
cmp r8d, eax
je 0x1400081d6
call fcn.140002410
movsx edx, al
call fcn.140002400
movsx ecx, al
imul edx, ecx
lea edx, [rdx + rdx*2]
call fcn.140002440
movsx ecx, al
xorps xmm0, xmm0
movsx eax, byte [0x140041c61]
lea r8d, [rcx + rdx*2]
movsx ecx, byte [0x140041c60]
add eax, r8d
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x140041c63]
sub r8d, eax
mov eax, r8d
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x60]
cvttsd2si r9d, xmm0
jmp 0x1400081db
mov r9d, dword [rsp + 0x60]
call fcn.140002410
movsx edx, al
call fcn.140002400
movsx ecx, al
imul edx, ecx
lea r8d, [rdx + rdx*4]
call fcn.140002440
movsx ecx, al
xor edx, edx
movsx eax, byte [0x140041c61]
add r8d, ecx
movsx ecx, byte [0x140041c60]
add eax, r8d
div ecx
mov r8d, eax
movsx eax, byte [0x140041c63]
sub r8d, eax
imul r8d, r9d
test r8d, r8d
je 0x140008394
call fcn.140002410
movsx edx, al
call fcn.140002400
movsx ecx, al
imul edx, ecx
lea edx, [rdx + rdx*2]
call fcn.140002440
movsx ecx, al
xorps xmm2, xmm2
movsx eax, byte [0x140041c61]
lea r9d, [rcx + rdx*2]
movsx ecx, byte [0x140041c60]
add eax, r9d
xor edx, edx
div ecx
xor edx, edx
mov r8d, eax
movsx eax, byte [0x140041c63]
sub r8d, eax
mov eax, r8d
cvtsi2sd xmm2, rax
movsx eax, byte [0x140041c62]
movd xmm1, eax
movsx eax, byte [0x140041c64]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm2
movsd qword [rsp + 0x60], xmm1
movsx eax, byte [0x140041c61]
movsx ecx, byte [0x140041c60]
add eax, r10d
div ecx
mov r8d, eax
movsx eax, byte [0x140041c63]
cmp r8d, eax
je 0x14000830b
call fcn.140002420
movsx edx, al
movsx eax, byte [0x140043d60]
imul edx, eax
lea r8d, [rdx + rdx*4]
call fcn.140002450
movsx ecx, al
sub r8d, ecx
call fcn.140002430
movsx ecx, al
add r8d, ecx
movsx ecx, byte [0x140041c64]
add ecx, r8d
jne 0x14000871e
call fcn.140002410
movsx edx, al
call fcn.140002400
movsx ecx, al
imul edx, ecx
call fcn.140002440
movsx ecx, al
movsx eax, byte [0x140041c61]
lea r8d, [rcx + rdx*2]
movsx ecx, byte [0x140041c60]
add eax, r8d
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x140041c63]
cmp r8d, eax
je 0x140008387
movsx eax, byte [0x140041c61]
xor edx, edx
movsx ecx, byte [0x140041c60]
add eax, r9d
div ecx
xorps xmm0, xmm0
mov r8d, eax
movsx eax, byte [0x140041c63]
sub r8d, eax
mov eax, r8d
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x60]
cvttsd2si eax, xmm0
jmp 0x14000838b
mov eax, dword [rsp + 0x60]
cmp r12d, eax
jl 0x14000871e
call fcn.140002410
movsx r8d, al
call fcn.140002400
movsx ecx, al
imul r8d, ecx
call fcn.140002440
movsx ecx, al
xor edx, edx
movsx eax, byte [0x140041c61]
add r8d, ecx
movsx ecx, byte [0x140041c60]
add eax, r8d
div ecx
mov r8d, eax
movsx eax, byte [0x140041c63]
cmp r8d, eax
je 0x140008728
mov rcx, r15
call qword [sym.imp.USER32.dll_AddClipboardFormatListener]
mov rcx, r12
xorps xmm2, xmm2
test eax, eax
movsx eax, byte [0x140041c62]
sete cl
movd xmm1, eax
movsx eax, byte [0x140041c64]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
cvtsi2sd xmm2, rcx
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm2
movsd qword [rsp + 0x60], xmm1
call fcn.140002410
movsx edx, al
call fcn.140002400
movsx ecx, al
imul edx, ecx
lea edx, [rdx + rdx*4]
call fcn.140002440
movsx ecx, al
movsx eax, byte [0x140041c61]
lea edi, [rcx + rdx*2]
movsx ecx, byte [0x140041c60]
add eax, edi
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x140041c63]
cmp r8d, eax
je 0x1400084ac
call fcn.140002420
movsx edx, al
movsx eax, byte [0x140043d60]
imul edx, eax
lea r8d, [rdx + rdx*4]
call fcn.140002450
movsx ecx, al
sub r8d, ecx
call fcn.140002430
movsx ecx, al
add r8d, ecx
movsx ecx, byte [0x140041c64]
add ecx, r8d
je 0x1400084ac
mov r9d, 0xa
jmp 0x140008550
call fcn.140002410
movsx edx, al
call fcn.140002400
movsx ecx, al
imul edx, ecx
call fcn.140002440
movsx ecx, al
movsx eax, byte [0x140041c61]
lea r8d, [rcx + rdx*2]
movsx ecx, byte [0x140041c60]
add eax, r8d
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x140041c63]
cmp r8d, eax
je 0x14000854b
call fcn.140002410
movsx edx, al
call fcn.140002400
movsx ecx, al
imul edx, ecx
lea edx, [rdx + rdx*2]
call fcn.140002440
movsx ecx, al
xorps xmm0, xmm0
movsx eax, byte [0x140041c61]
lea r8d, [rcx + rdx*2]
movsx ecx, byte [0x140041c60]
add eax, r8d
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x140041c63]
sub r8d, eax
mov eax, r8d
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x60]
cvttsd2si r9d, xmm0
jmp 0x140008550
mov r9d, dword [rsp + 0x60]
call fcn.140002410
movsx edx, al
call fcn.140002400
movsx ecx, al
imul edx, ecx
lea edx, [rdx + rdx*2]
call fcn.140002440
movsx ecx, al
movsx eax, byte [0x140041c61]
lea ebx, [rcx + rdx*2]
movsx ecx, byte [0x140041c60]
add eax, ebx
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x140041c63]
sub r8d, eax
imul r8d, r9d
test r8d, r8d
je 0x140008728
mov rcx, r15
call qword [sym.imp.USER32.dll_DestroyWindow]
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_GetModuleHandleA]
mov rdx, rax
mov rcx, r13
call qword [sym.imp.USER32.dll_UnregisterClassW]
call fcn.140002410
movsx edx, al
call fcn.140002400
movsx ecx, al
imul edx, ecx
lea r8d, [rdx + rdx*2]
call fcn.140002440
movsx ecx, al
xor edx, edx
movsx eax, byte [0x140041c61]
add r8d, ecx
movsx ecx, byte [0x140041c60]
add eax, r8d
div ecx
xorps xmm2, xmm2
xor edx, edx
mov r8d, eax
movsx eax, byte [0x140041c63]
sub r8d, eax
mov eax, r8d
cvtsi2sd xmm2, rax
movsx eax, byte [0x140041c62]
movd xmm1, eax
movsx eax, byte [0x140041c64]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm2
movsd qword [rsp + 0x60], xmm1
movsx eax, byte [0x140041c61]
movsx ecx, byte [0x140041c60]
add eax, edi
div ecx
mov r8d, eax
movsx eax, byte [0x140041c63]
cmp r8d, eax
je 0x14000869a
call fcn.140002420
movsx edx, al
movsx eax, byte [0x140043d60]
imul edx, eax
lea r8d, [rdx + rdx*4]
call fcn.140002450
movsx ecx, al
sub r8d, ecx
call fcn.140002430
movsx ecx, al
add r8d, ecx
movsx ecx, byte [0x140041c64]
add ecx, r8d
jne 0x14000871e
call fcn.140002410
movsx edx, al
call fcn.140002400
movsx ecx, al
imul edx, ecx
call fcn.140002440
movsx ecx, al
movsx eax, byte [0x140041c61]
lea r8d, [rcx + rdx*2]
movsx ecx, byte [0x140041c60]
add eax, r8d
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x140041c63]
cmp r8d, eax
je 0x140008715
movsx eax, byte [0x140041c61]
xor edx, edx
movsx ecx, byte [0x140041c60]
add eax, ebx
div ecx
xorps xmm0, xmm0
mov r8d, eax
movsx eax, byte [0x140041c63]
sub r8d, eax
mov eax, r8d
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x60]
cvttsd2si eax, xmm0
jmp 0x140008719
mov eax, dword [rsp + 0x60]
cmp r12d, eax
jge 0x140008728
mov eax, 1
jmp 0x140008abc
mov qword [rsp + 0x130], r14
call fcn.140002400
movsx edx, al
call fcn.140002410
movsx ecx, al
imul edx, ecx
lea edx, [rdx + rdx*4]
call fcn.140002440
movsx ecx, al
lea r14d, [rcx + rdx*2]
call fcn.140002400
movsx ebx, al
call fcn.140002410
movsx ecx, al
imul ebx, ecx
call fcn.140002440
mov edi, dword [rsp + 0x60]
movsx esi, al
lea ebp, [rsi + rbx*8]
nop dword [rax]
nop dword [rax + rax]
xor r9d, r9d
lea rcx, [rsp + 0xc0]
xor r8d, r8d
xor edx, edx
call qword [sym.imp.USER32.dll_GetMessageA]
test eax, eax
je 0x1400087a9
cmp dword [rsp + 0xc8], 0x12
mov edx, 1
jne 0x1400087ac
mov rdx, r12
movsx eax, byte [0x140041c62]
movd xmm1, eax
movsx eax, byte [0x140041c64]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
xorps xmm0, xmm0
cvtsi2sd xmm0, rdx
xor edx, edx
mulsd xmm1, xmm0
movsd qword [rsp + 0x60], xmm1
movsx eax, byte [0x140041c61]
movsx ecx, byte [0x140041c60]
add eax, r14d
div ecx
mov r8d, eax
movsx eax, byte [0x140041c63]
cmp r8d, eax
je 0x140008847
call fcn.140002420
movsx edx, al
movsx eax, byte [0x140043d60]
imul edx, eax
lea r8d, [rdx + rdx*4]
call fcn.140002450
movsx ecx, al
sub r8d, ecx
call fcn.140002430
movsx ecx, al
add r8d, ecx
movsx ecx, byte [0x140041c64]
add ecx, r8d
je 0x140008847
mov edi, 0xa
jmp 0x1400088a9
movsx eax, byte [0x140041c61]
xor edx, edx
movsx ecx, byte [0x140041c60]
add eax, esi
lea eax, [rax + rbx*2]
div ecx
mov r8d, eax
movsx eax, byte [0x140041c63]
cmp r8d, eax
je 0x1400088a9
movsx eax, byte [0x140041c61]
lea edx, [rbx + rbx*2]
movsx ecx, byte [0x140041c60]
add eax, esi
xorps xmm0, xmm0
lea eax, [rax + rdx*2]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x140041c63]
sub r8d, eax
mov eax, r8d
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x60]
cvttsd2si edi, xmm0
movsx eax, byte [0x140041c61]
xor edx, edx
movsx ecx, byte [0x140041c60]
add eax, ebp
div ecx
mov r8d, eax
movsx eax, byte [0x140041c63]
sub r8d, eax
imul r8d, edi
test r8d, r8d
je 0x1400088f4
lea rcx, [rsp + 0xc0]
call qword [sym.imp.USER32.dll_TranslateMessage]
lea rcx, [rsp + 0xc0]
call qword [sym.imp.USER32.dll_DispatchMessageA]
jmp 0x140008780
mov rcx, r15
call qword [sym.imp.USER32.dll_RemoveClipboardFormatListener]
mov rcx, r15
call qword [sym.imp.USER32.dll_DestroyWindow]
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_GetModuleHandleA]
mov rdx, rax
mov rcx, r13
call qword [sym.imp.USER32.dll_UnregisterClassW]
call fcn.140002410
movsx edx, al
call fcn.140002400
movsx ecx, al
imul edx, ecx
lea r8d, [rdx + rdx*8]
call fcn.140002440
movsx ecx, al
xor edx, edx
movsx eax, byte [0x140041c61]
add r8d, ecx
movsx ecx, byte [0x140041c60]
add eax, r8d
div ecx
xorps xmm2, xmm2
mov r8d, eax
movsx eax, byte [0x140041c63]
sub r8d, eax
mov eax, r8d
cvtsi2sd xmm2, rax
movsx eax, byte [0x140041c62]
movd xmm1, eax
movsx eax, byte [0x140041c64]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm2
movsd qword [rsp + 0x60], xmm1
call fcn.140002410
movsx edx, al
call fcn.140002400
movsx ecx, al
imul edx, ecx
lea edx, [rdx + rdx*4]
call fcn.140002440
mov r14, qword [rsp + 0x130]
movsx ecx, al
movsx eax, byte [0x140041c61]
lea r8d, [rcx + rdx*2]
movsx ecx, byte [0x140041c60]
add eax, r8d
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x140041c63]
cmp r8d, eax
je 0x140008a26
call fcn.140002420
movsx edx, al
movsx eax, byte [0x140043d60]
imul edx, eax
lea r8d, [rdx + rdx*4]
call fcn.140002450
movsx ecx, al
sub r8d, ecx
call fcn.140002430
movsx ecx, al
add r8d, ecx
movsx ecx, byte [0x140041c64]
add ecx, r8d
je 0x140008a26
xor eax, eax
jmp 0x140008abc
call fcn.140002410
movsx edx, al
call fcn.140002400
movsx ecx, al
imul edx, ecx
call fcn.140002440
movsx ecx, al
movsx eax, byte [0x140041c61]
lea r8d, [rcx + rdx*2]
movsx ecx, byte [0x140041c60]
add eax, r8d
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x140041c63]
cmp r8d, eax
je 0x140008ab9
call fcn.140002410
movsx edx, al
call fcn.140002400
movsx ecx, al
imul edx, ecx
lea edx, [rdx + rdx*2]
call fcn.140002440
movsx ecx, al
xorps xmm0, xmm0
movsx eax, byte [0x140041c61]
lea r8d, [rcx + rdx*2]
movsx ecx, byte [0x140041c60]
add eax, r8d
xor edx, edx
div ecx
movsx ecx, byte [0x140041c63]
sub eax, ecx
mov ecx, eax
cvtsi2sd xmm0, rcx
mulsd xmm0, qword [rsp + 0x60]
mov eax, r12d
mov rcx, qword [rsp + 0xf0]
xor rcx, rsp
call fcn.140013c00
lea r11, [rsp + 0x100]
mov rbx, qword [r11 + 0x38]
mov rbp, qword [r11 + 0x40]
mov rsp, r11
pop r15
pop r13
pop r12
pop rdi
pop rsi
ret