Function at 0x140068310
Capabilities:
Terminate process

Disassembly:
push r15
push r14
push r13
push r12
push rbp
push rdi
push rsi
push rbx
sub rsp, 0x68
mov dword [rcx], 9
lea rbx, [rsp + 0x20]
mov rsi, rcx
mov r14d, edx
call sub.SDL2.dll_SDL_GetModState
test al, 3
setne byte [rsi + 0xd]
call sub.SDL2.dll_SDL_GetModState
mov rbp, qword [0x1401216e0]
mov rdi, qword [0x1401216d0]
test al, 0xc0
setne byte [rsi + 0xc]
mov r13, qword [0x140121030]
xor r12d, r12d
nop
mov rcx, rbx
call sub.SDL2.dll_SDL_PollEvent
test eax, eax
je 0x1400684ea
mov eax, dword [rsp + 0x20]
cmp eax, 0x100
je 0x1400688ef
cmp eax, 0x200
je 0x140068580
cmp eax, 0x300
jne 0x140068400
mov eax, dword [rsp + 0x34]
cmp eax, 0x4000004b
je 0x1400686f8
cmp eax, 0x4000004e
je 0x140068650
lea edx, [rax - 0x40000044]
cmp edx, 1
jbe 0x1400686c0
cmp eax, 0xd
je 0x140068630
cmp eax, 0x40000058
mov dword [rsi + 4], 0xffffffff
jg 0x1400688b6
cmp eax, 0x40000045
jle 0x1400685a0
lea edx, [rax - 0x40000046]
cmp edx, 0x12
ja case.0x1400683fd.1073741895
lea rcx, [0x140120090]
movsxd rdx, dword [rcx + rdx*4]
add rdx, rcx
jmp rdx
cmp eax, 0x303
jne 0x140068500
movsx r15d, byte [rsp + 0x2c]
test r15b, r15b
js 0x140068360
test r14b, r14b
jne 0x1400684da
mov rcx, qword [0x1401d83e8]
test rcx, rcx
je 0x140068455
lea rdx, [0x1401d8400]
xor eax, eax
jmp 0x140068449
add rax, 1
cmp rax, rcx
je 0x140068455
cmp byte [rdx + rax*2], r15b
jne 0x140068440
movsx r15d, byte [rdx + rax*2 + 1]
cmp r15b, 0x3d
je 0x140068852
cmp r15b, 0x2b
je 0x140068852
cmp r15b, 0x2d
jne 0x1400684da
mov rax, qword [0x140121030]
mov edx, 1
mov byte [rax], 0
mov rax, qword [0x1401216d0]
mov eax, dword [rax]
lea eax, [rax + rax*4]
add eax, eax
cmp eax, 0x15
jle 0x1400684a4
movsxd rdx, eax
sar eax, 0x1f
imul rdx, rdx, 0x2e8ba2e9
sar rdx, 0x21
sub edx, eax
mov rax, qword [0x1401216e0]
mov ecx, 1
mov eax, dword [rax]
lea eax, [rax + rax*4]
add eax, eax
cmp eax, 0x15
jle 0x1400684cf
movsxd rcx, eax
sar eax, 0x1f
imul rcx, rcx, 0x2e8ba2e9
sar rcx, 0x21
sub ecx, eax
call fcn.14006af50
mov r15d, 0x2d
mov dword [rsi], 0
mov dword [rsi + 4], r15d
mov r12d, 1
mov eax, r12d
add rsp, 0x68
pop rbx
pop rsi
pop rdi
pop rbp
pop r12
pop r13
pop r14
pop r15
ret
lea edx, [rax - 0x401]
cmp edx, 1
ja 0x1400685d0
movzx edx, byte [rsp + 0x30]
mov ecx, edx
and ecx, 0xfffffffd
cmp cl, 1
jne 0x140068360
cmp eax, 0x401
je 0x1400687d9
xor eax, eax
cmp dl, 1
setne al
lea eax, [rax + rax*2 + 1]
mov rdi, qword [0x1401216e0]
mov dword [rsi], eax
mov r12d, 1
imul eax, dword [rsp + 0x34], 0x64
cdq
idiv dword [rdi]
mov rdi, qword [0x1401216d0]
mov ecx, eax
imul eax, dword [rsp + 0x38], 0x22
movd xmm0, ecx
cdq
idiv dword [rdi]
movd xmm2, eax
punpckldq xmm0, xmm2
movq qword [rsi + 4], xmm0
jmp 0x1400684ea
cmp byte [rsp + 0x2c], 5
jne 0x140068360
mov edx, dword [rsp + 0x34]
mov ecx, dword [rsp + 0x30]
call fcn.14006af50
jmp 0x140068360
cmp eax, 9
je 0x1400687d0
cmp eax, 0x1b
jne 0x1400685ba
mov dword [rsi + 4], 0x1b
jmp 0x140068798
cmp eax, 8
jne case.default.0x140068788
mov dword [rsi + 4], 0x7f
jmp 0x140068798
cmp eax, 0x400
jne 0x140068360
imul eax, dword [rsp + 0x34], 0x64
cdq
idiv dword [rbp]
mov ecx, eax
imul eax, dword [rsp + 0x38], 0x22
movd xmm0, ecx
cdq
idiv dword [rdi]
cmp dword [0x1401d83c4], ecx
movd xmm1, eax
punpckldq xmm0, xmm1
je 0x1400686e0
mov dword [rsi], 5
mov r12d, 1
movq qword [rsi + 4], xmm0
mov dword [0x1401d83c4], ecx
mov dword [0x1401d83c0], eax
jmp 0x140068360
call sub.SDL2.dll_SDL_GetModState
test ah, 3
jne 0x1400686c0
mov dword [rsi + 4], 0xa
jmp 0x140068798
mov rax, qword [0x140121030]
mov edx, 1
mov byte [rax], 0
mov rax, qword [0x1401216d0]
mov eax, dword [rax]
lea eax, [rax + rax*4]
add eax, eax
cmp eax, 0x15
jle 0x140068685
movsxd rdx, eax
sar eax, 0x1f
imul rdx, rdx, 0x2e8ba2e9
sar rdx, 0x21
sub edx, eax
mov rax, qword [0x1401216e0]
mov ecx, 1
mov eax, dword [rax]
lea eax, [rax + rax*4]
add eax, eax
cmp eax, 0x15
jle 0x1400686b0
movsxd rcx, eax
sar eax, 0x1f
imul rcx, rcx, 0x2e8ba2e9
sar rcx, 0x21
sub ecx, eax
call fcn.14006af50
jmp 0x140068360
cmp byte [r13], 0
mov edx, 0xffffffff
mov ecx, 0xffffffff
sete byte [r13]
jmp 0x1400686b0
cmp dword [0x1401d83c0], eax
jne 0x140068606
jmp 0x140068360
mov rax, qword [0x1401216d0]
mov edx, dword [rax]
mov rax, qword [0x1401216e0]
mov r8d, dword [rax]
lea eax, [rdx + rdx*4]
lea ecx, [rdx + rax*2]
add edx, 1
movsxd rax, ecx
sar ecx, 0x1f
imul rax, rax, 0x66666667
sar rax, 0x22
sub eax, ecx
cmp eax, edx
cmovge edx, eax
lea eax, [r8 + r8*4]
lea eax, [r8 + rax*2]
add r8d, 1
movsxd rcx, eax
sar eax, 0x1f
imul rcx, rcx, 0x66666667
sar rcx, 0x22
sub ecx, eax
cmp ecx, r8d
cmovl ecx, r8d
call fcn.14006af50
jmp 0x140068360
cmp word [rsi + 0xc], 0
je 0x140068360
lea edx, [rax - 0x40000059]
cmp edx, 9
ja case.default.0x140068788
lea rcx, [0x1401200dc]
movsxd rax, dword [rcx + rdx*4]
add rax, rcx
jmp rax
mov dword [rsi + 4], 0xf701
nop dword [rax]
mov dword [rsi], 0
jmp 0x1400684e4
mov dword [rsi + 4], 0xf702
jmp 0x140068798
mov dword [rsi + 4], 0xf703
jmp 0x140068798
mov dword [rsi + 4], 0x2c
jmp 0x140068798
mov dword [rsi + 4], 0xf700
jmp 0x140068798
mov dword [rsi + 4], 9
jmp 0x140068798
xor eax, eax
cmp dl, 1
setne al
add eax, 2
jmp 0x140068539
mov dword [rsi + 4], 0x30
jmp 0x140068798
mov dword [rsi + 4], 0x31
jmp 0x140068798
mov dword [rsi + 4], 0x32
jmp 0x140068798
mov dword [rsi + 4], 0x33
jmp 0x140068798
mov dword [rsi + 4], 0x34
jmp 0x140068798
mov dword [rsi + 4], 0x35
jmp 0x140068798
mov dword [rsi + 4], 0x36
jmp 0x140068798
mov dword [rsi + 4], 0x37
jmp 0x140068798
mov dword [rsi + 4], 0x38
jmp 0x140068798
mov dword [rsi + 4], 0x39
jmp 0x140068798
mov rax, qword [0x1401216d0]
mov edx, dword [rax]
mov rax, qword [0x1401216e0]
mov ecx, dword [rax]
lea eax, [rdx + rdx*4]
lea r8d, [rdx + rax*2]
add edx, 1
movsxd rax, r8d
sar r8d, 0x1f
imul rax, rax, 0x66666667
sar rax, 0x22
sub eax, r8d
cmp eax, edx
cmovge edx, eax
lea eax, [rcx + rcx*4]
lea r8d, [rcx + rax*2]
add ecx, 1
movsxd rax, r8d
sar r8d, 0x1f
imul rax, rax, 0x66666667
sar rax, 0x22
sub eax, r8d
cmp eax, ecx
cmovge ecx, eax
call fcn.14006af50
jmp 0x1400684da
cmp word [rsi + 0xc], 0
jne 0x14006876b
cmp byte [rsi + 0xc], 0
je 0x140068360
lea edx, [rax - 0x61]
cmp edx, 0x19
ja 0x140068360
cmp byte [rsi + 0xd], 0
mov dword [rsi + 4], eax
je 0x140068798
sub eax, 0x20
mov dword [rsi + 4], eax
jmp 0x140068798
call sub.SDL2.dll_SDL_Quit
call fcn.1400341b0
mov ecx, eax
call sub.api_ms_win_crt_runtime_l1_1_0.dll_exit
nop
nop word cs:[rax + rax]
nop dword [rax]
push rsi
push rbx
sub rsp, 0x28
mov ebx, ecx
mov esi, edx
call fcn.14006a600
call sub.SDL2.dll_SDL_GetTicks
sub eax, dword [0x1401d83c8]
mov ecx, ebx
sub ecx, eax
test cx, cx
jle 0x14006893b
movzx ecx, cx
call sub.SDL2.dll_SDL_Delay
call sub.SDL2.dll_SDL_GetTicks
mov dword [0x1401d83c8], eax
mov eax, dword [0x1401d83d0]
cmp eax, 9
je 0x140068970
test sil, sil
jne 0x14006895b
cmp eax, 5
je 0x140068970
mov eax, 1
add rsp, 0x28
pop rbx
pop rsi
ret
lea rcx, [0x1401d83d0]
xor edx, edx
call fcn.140068310
test al, al
je 0x140068960
mov edx, dword [0x1401d83d0]
xor eax, eax
cmp edx, 9
je 0x140068960
test sil, sil
setne al
cmp edx, 5
setne dl
or eax, edx
add rsp, 0x28
pop rbx
pop rsi
ret