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

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x10], rsi
push rdi
sub rsp, 0x30
mov eax, 0x201
mov rdi, r9
mov rsi, r8
mov rbx, rcx
cmp edx, eax
ja 0x1400ca0e6
je 0x1400ca0c1
cmp edx, 0x2c
ja 0x1400ca008
je 0x1400c9ff4
mov eax, edx
sub eax, 5
je 0x1400c9fd7
sub eax, 0xa
je 0x1400c9fb8
sub eax, 1
je 0x1400c9fad
sub eax, 4
je 0x1400c9fa0
sub eax, 0xc
je 0x1400c9f56
cmp eax, 0xb
jne 0x1400ca26c
mov rax, qword [rcx]
mov r8, r9
mov rdx, rsi
call qword [rax + 0xd8]
jmp 0x1400ca37f
mov rcx, qword [rcx + 0x48]
test rcx, rcx
je 0x1400c9f7f
call qword [sym.imp.USER32.dll_SetCursor]
movabs rax, 1
mov rbx, qword [rsp + 0x40]
mov rsi, qword [rsp + 0x48]
add rsp, 0x30
pop rdi
ret
mov r10, qword [rbx]
mov rax, r9
movzx r8d, di
shr rax, 0x10
mov rdx, rsi
mov rcx, rbx
movzx r9d, ax
call qword [r10 + 0x80]
jmp 0x1400c9fa9
mov rax, qword [rcx]
mov rdx, r8
call qword [rax + 0x40]
cdqe
jmp 0x1400c9f6f
mov rax, qword [rcx]
call qword [rax + 0x38]
jmp 0x1400ca37f
test byte [rcx + 0x60], 2
je 0x1400c9fcc
mov rcx, qword [rcx + 0x20]
call fcn.1400c9eb4
jmp 0x1400ca37f
mov rax, qword [rcx]
call qword [rax + 0x28]
jmp 0x1400ca37f
mov r10, qword [rcx]
mov rax, r9
movzx r8d, di
shr rax, 0x10
mov edx, esi
movzx r9d, ax
call qword [r10 + 0x78]
jmp 0x1400ca37f
mov rax, qword [rcx]
mov r8, r9
mov rdx, rsi
call qword [rax + 0xc0]
jmp 0x1400ca37f
mov eax, edx
sub eax, 0x83
je 0x1400ca0ae
sub eax, 1
je 0x1400ca08b
sub eax, 1
je 0x1400ca067
sub eax, 0x8e
je 0x1400ca056
cmp eax, 0xed
jne 0x1400ca26c
movsx eax, r9w
shr rdi, 0x10
mov edx, esi
mov dword [rsp + 0x20], eax
movsx eax, di
mov dword [rsp + 0x24], eax
mov rax, qword [rcx]
mov r8, qword [rsp + 0x20]
call qword [rax + 0x48]
jmp 0x1400ca37f
mov rax, qword [rcx]
mov rdx, r8
call qword [rax + 0x88]
jmp 0x1400ca37f
mov rax, qword [rcx]
call qword [rax + 0xa8]
mov r11, qword [rbx]
mov rcx, qword [rbx + 0x20]
mov r9, rdi
mov r8, rsi
mov edx, 0x85
call qword [r11 + 8]
jmp 0x1400ca37f
movsx eax, r9w
shr rdi, 0x10
mov dword [rsp + 0x20], eax
movsx eax, di
mov dword [rsp + 0x24], eax
mov rax, qword [rcx]
mov rdx, qword [rsp + 0x20]
call qword [rax + 0x70]
jmp 0x1400c9f6f
mov rax, qword [rcx]
mov r8, r9
mov edx, esi
call qword [rax + 0xc8]
jmp 0x1400ca37f
movsx eax, r9w
shr rdi, 0x10
mov edx, esi
mov dword [rsp + 0x20], eax
movsx eax, di
mov dword [rsp + 0x24], eax
mov rax, qword [rcx]
mov r8, qword [rsp + 0x20]
call qword [rax + 0x50]
jmp 0x1400ca37f
mov eax, 0x44c
cmp edx, eax
ja 0x1400ca249
je 0x1400ca227
mov eax, edx
sub eax, 0x202
je 0x1400ca202
sub eax, 2
je 0x1400ca1dd
sub eax, 1
je 0x1400ca1b8
sub eax, 0x243
je 0x1400ca1a7
cmp eax, 1
jne 0x1400ca26c
mov rsi, qword [rcx + 0x20]
mov rcx, rsi
call qword [sym.imp.USER32.dll_GetDC]
mov rcx, qword [rbx + 0x20]
and dword [rsp + 0x20], 0
and dword [rsp + 0x24], 0
and dword [rsp + 0x28], 0
and dword [rsp + 0x2c], 0
lea rdx, [rsp + 0x20]
mov rdi, rax
call qword [sym.imp.USER32.dll_GetClientRect]
mov ecx, dword [rsp + 0x24]
mov eax, dword [rsp + 0x2c]
add eax, ecx
mov rcx, rdi
cdq
sub eax, edx
mov edx, dword [rsp + 0x20]
sar eax, 1
mov r8d, eax
mov eax, dword [rsp + 0x28]
add eax, edx
cdq
sub eax, edx
sar eax, 1
mov edx, eax
call qword [sym.imp.GDI32.dll_GetPixel]
movsxd rbx, eax
test rdi, rdi
je 0x1400ca19f
mov rdx, rdi
mov rcx, rsi
call qword [sym.imp.USER32.dll_ReleaseDC]
mov rax, rbx
jmp 0x1400c9f6f
mov rax, qword [rcx]
mov rdx, r8
call qword [rax + 0xe0]
jmp 0x1400c9fa9
movsx eax, r9w
shr rdi, 0x10
mov edx, esi
mov dword [rsp + 0x20], eax
movsx eax, di
mov dword [rsp + 0x24], eax
mov rax, qword [rcx]
mov r8, qword [rsp + 0x20]
call qword [rax + 0x68]
jmp 0x1400ca37f
movsx eax, r9w
shr rdi, 0x10
mov edx, esi
mov dword [rsp + 0x20], eax
movsx eax, di
mov dword [rsp + 0x24], eax
mov rax, qword [rcx]
mov r8, qword [rsp + 0x20]
call qword [rax + 0x60]
jmp 0x1400ca37f
movsx eax, r9w
shr rdi, 0x10
mov edx, esi
mov dword [rsp + 0x20], eax
movsx eax, di
mov dword [rsp + 0x24], eax
mov rax, qword [rcx]
mov r8, qword [rsp + 0x20]
call qword [rax + 0x58]
jmp 0x1400ca37f
and qword [0x14011b150], 0
mov rcx, qword [rcx + 0x20]
xor r9d, r9d
xor r8d, r8d
mov edx, 0x2a3
call qword [sym.imp.USER32.dll_SendMessageW]
jmp 0x1400ca37f
mov eax, edx
sub eax, 0x459
je 0x1400ca386
sub eax, 2
je 0x1400ca2c9
sub eax, 0xb7be
je 0x1400ca297
sub eax, 0x12
je 0x1400ca286
cmp eax, 1
je 0x1400ca275
mov rax, qword [rcx]
mov rcx, qword [rcx + 0x20]
jmp 0x1400ca2c1
mov rax, qword [rcx]
mov rdx, r9
call qword [rax + 0xb8]
jmp 0x1400ca37f
mov rax, qword [rcx]
mov rdx, r9
call qword [rax + 0xd0]
jmp 0x1400ca37f
mov rax, qword [rcx]
mov r8d, r9d
mov rdx, rsi
call qword [rax + 0x98]
test rax, rax
jne 0x1400c9f6f
mov rax, qword [rbx]
mov rcx, qword [rbx + 0x20]
mov r9, rdi
mov r8, rsi
mov edx, 0xbc19
call qword [rax + 8]
jmp 0x1400c9f6f
cmp r8, rcx
je 0x1400ca2de
lea rax, [0x140119fa0]
cmp r8, rax
jne 0x1400ca37f
cmp byte [rcx + 0x45], 2
jne 0x1400ca2f8
cmp qword [rcx + 0xc0], 0
jne 0x1400ca2f8
mov edx, 0x10000000
call fcn.1400d261c
cmp byte [rbx + 0x45], 2
jne 0x1400ca30a
mov rsi, qword [rbx + 0xc0]
test rsi, rsi
jne 0x1400ca30d
mov rsi, rbx
cmp qword [rdi], 0xfffffffffbd3e280
jl 0x1400ca324
pxor xmm0, xmm0
cvtsi2ss xmm0, qword [rdi]
movss dword [rsi + 0x34], xmm0
mov rcx, 0xffffffff80000000
cmp qword [rdi + 8], rcx
je 0x1400ca337
mov eax, dword [rdi + 8]
mov dword [rsi + 0x38], eax
cmp qword [rdi + 0x10], rcx
je 0x1400ca343
mov eax, dword [rdi + 0x10]
mov dword [rsi + 0x3c], eax
cmp qword [rdi + 0x18], rcx
je 0x1400ca34f
mov eax, dword [rdi + 0x18]
mov dword [rsi + 0x40], eax
mov rdx, qword [rdi + 0x20]
test rdx, rdx
je 0x1400ca362
mov rcx, qword [rsi + 0x20]
call qword [sym.imp.USER32.dll_SetWindowTextW]
cmp qword [rdi + 0x28], 0
jle 0x1400ca36f
mov al, byte [rdi + 0x28]
mov byte [rsi + 0x44], al
mov rcx, qword [rsi + 0x20]
xor edx, edx
lea r8d, [rdx + 1]
call qword [sym.imp.USER32.dll_InvalidateRect]
xor eax, eax
jmp 0x1400c9f6f
cmp r8, rcx
jne 0x1400c9f65
mov rdx, r9
call fcn.1400c9e7c
jmp 0x1400c9f6f