Function at 0x140009808
Capabilities:
Create thread

Disassembly:
mov qword [rsp + 8], rcx
push rbx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0x68
mov rdi, qword [rcx]
xor ebp, ebp
mov rsi, qword [rcx + 8]
mov r13, rcx
mov eax, dword [0x140274d4c]
mov ebx, ebp
mov qword [rsp + 0xb8], rdi
mov qword [rsp + 0xc0], rsi
lea r14d, [rbp + 1]
test eax, eax
je 0x140009879
mov r15d, 0xc8
cmp ebx, r15d
jge 0x140009871
mov ecx, 0x32
add ebx, r14d
call qword [sym.imp.KERNEL32.dll_Sleep]
mov eax, dword [0x140274d4c]
test eax, eax
jne 0x14000984f
cmp ebx, r15d
jl 0x140009879
test eax, eax
jne 0x140009c49
cmp dword [0x140274d78], ebp
mov dword [0x140274d4c], r14d
mov dword [0x140272120], ebp
mov dword [0x140274d58], ebp
jne 0x1400098b1
mov ecx, 0xfffffff5
call qword [sym.imp.KERNEL32.dll_GetStdHandle]
mov ecx, 0xfffffff6
call qword [sym.imp.KERNEL32.dll_GetStdHandle]
mov qword [0x140272128], rax
call fcn.14000af3c
test ax, ax
je 0x140009c49
mov rdx, rsi
mov rcx, rdi
call fcn.140009474
cmp dword [0x140274d78], ebp
jne 0x1400098f5
mov qword [rsp + 0x28], rbp
lea r8, [0x1400096fc]
mov r9, r13
mov dword [rsp + 0x20], ebp
xor edx, edx
mov dword [0x140272120], ebp
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_CreateThread]
mov eax, dword [0x140274d88]
test eax, eax
jle 0x140009937
mov rcx, qword [0x140274d70]
mov r8d, eax
mov r10d, dword [0x140274d90]
test r10d, r10d
jle 0x14000992e
mov rdx, rbp
mov r9, r10
mov rax, qword [rcx]
mov dword [rdx + rax], 0xff
lea rdx, [rdx + 8]
sub r9, r14
jne 0x14000991b
add rcx, 8
sub r8, r14
jne 0x140009910
mov rdx, rsi
mov rcx, rdi
call fcn.14000882c
mov ecx, 0x64
call qword [sym.imp.KERNEL32.dll_Sleep]
cmp dword [0x140272120], ebp
jne 0x140009b93
mov eax, dword [0x140274d88]
test eax, eax
jle 0x140009999
mov rcx, qword [0x140274d70]
mov r8d, eax
mov r10d, dword [0x140274d90]
test r10d, r10d
jle 0x140009990
mov rdx, rbp
mov r9, r10
mov rax, qword [rcx]
lea rdx, [rdx + 8]
mov byte [rax + rdx - 4], bpl
sub r9, r14
jne 0x14000997f
add rcx, 8
sub r8, r14
jne 0x140009974
mov r8, rsi
mov rdx, rdi
mov ecx, r14d
call fcn.1400089dc
cmp dword [0x140272120], ebp
jne 0x140009b93
lea rdx, [rsp + 0x50]
lea rcx, [rsp + 0xc8]
call fcn.14000abc4
cmp eax, r14d
je 0x140009b8c
cmp dword [0x140274d88], ebp
mov ebx, ebp
mov r12, qword [rsp + 0xc8]
jle 0x140009b25
mov r13, qword [rsp + 0xb8]
mov r15, rbp
cmp dword [0x140274d90], ebp
mov edi, ebp
jle 0x140009afa
mov r14, rbp
mov esi, dword [0x140274d60]
mov ebp, dword [0x140274d84]
imul esi, ebx
imul ebp, edi
cmp dword [0x140272120], 0
jne 0x140009af4
cmp dword [0x140274d58], 0
je 0x140009a3c
mov ecx, 0x32
call qword [sym.imp.KERNEL32.dll_Sleep]
cmp dword [0x140272120], 0
je 0x140009a1f
cmp dword [0x140272120], 0
jne 0x140009af4
mov eax, dword [0x140272130]
cmp dword [0x140272134], eax
jne 0x140009af4
mov rax, qword [0x140274d70]
mov r8, qword [r15 + rax]
mov al, byte [r8 + r14 + 4]
dec al
test al, 0xfd
je 0x140009ae2
mov dword [rsp + 0x30], edi
lea r9, [rsp + 0x48]
mov dword [rsp + 0x28], ebx
lea r8, [rsp + 0x40]
mov edx, esi
mov qword [rsp + 0x20], r12
mov ecx, ebp
call fcn.14000a86c
cmp eax, 1
je 0x140009ae2
mov rsi, qword [rsp + 0x40]
test rsi, rsi
je 0x140009ae2
cmp dword [0x140272120], 0
jne 0x140009ae2
mov r8, qword [rsp + 0xc0]
mov rcx, rsi
mov edx, dword [rsp + 0x48]
call r13
cmp eax, 0xfffffffc
je 0x140009ad0
test eax, eax
jne 0x140009ada
mov dword [0x140274d58], 1
jmp 0x140009ada
mov dword [0x140272120], 1
mov rcx, rsi
call fcn.140174cc8
inc edi
add r14, 8
cmp edi, dword [0x140274d90]
jl 0x140009a00
xor ebp, ebp
lea r14d, [rbp + 1]
add ebx, r14d
add r15, 8
cmp ebx, dword [0x140274d88]
jl 0x1400099ef
mov r13, qword [rsp + 0xb0]
mov rdi, qword [rsp + 0xb8]
mov rsi, qword [rsp + 0xc0]
test r12, r12
je 0x140009b32
mov rcx, r12
call fcn.140174cc8
cmp dword [0x140272120], ebp
mov ebx, dword [0x140274d6c]
mov qword [rsp + 0xc8], rbp
mov qword [rsp + 0x50], rbp
jne 0x140009b93
test ebx, ebx
jle 0x14000994d
cmp ebx, 0x32
jle 0x140009b6a
sub ebx, 0x32
mov ecx, 0x32
call qword [sym.imp.KERNEL32.dll_Sleep]
jmp 0x140009b74
mov ecx, ebx
call qword [sym.imp.KERNEL32.dll_Sleep]
mov ebx, ebp
mov edx, r14d
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_SleepEx]
cmp dword [0x140272120], ebp
je 0x140009b4d
jmp 0x14000994d
mov dword [0x140272120], r14d
cmp qword [0x140274d70], rbp
je 0x140009bdb
cmp dword [0x140274d88], ebp
mov ebx, ebp
jle 0x140009bc8
mov rdi, rbp
mov rcx, qword [0x140274d70]
mov rcx, qword [rdi + rcx]
call fcn.140174cc8
add ebx, r14d
lea rdi, [rdi + 8]
cmp ebx, dword [0x140274d88]
jl 0x140009ba9
mov rcx, qword [0x140274d70]
call fcn.140174cc8
mov qword [0x140274d70], rbp
mov rcx, qword [0x140274da8]
test rcx, rcx
je 0x140009bec
call fcn.140174cc8
mov rcx, qword [0x140274e50]
mov dword [0x140274da4], ebp
mov qword [0x140274da8], rbp
call qword [sym.imp.gdiplus.dll_GdiplusShutdown]
mov rcx, qword [0x140274de0]
call qword [sym.imp.GDI32.dll_DeleteDC]
mov rcx, qword [0x140274e48]
call qword [sym.imp.GDI32.dll_DeleteObject]
mov rdx, qword [0x140274db0]
test rdx, rdx
je 0x140009c34
xor ecx, ecx
call qword [sym.imp.USER32.dll_ReleaseDC]
mov rcx, r13
mov qword [0x140274db0], rbp
mov dword [0x140274d4c], ebp
call fcn.140174cc8
xor eax, eax
add rsp, 0x68
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
pop rbx
ret