Function at 0x1400479b4
Capabilities:
Resume thread

Disassembly:
mov rax, rsp
push rsi
push rdi
push r13
push r14
push r15
sub rsp, 0x280
mov qword [rsp + 0x90], 0xfffffffffffffffe
mov qword [rax + 0x18], rbx
mov qword [rax + 0x20], rbp
movaps xmmword [rax - 0x38], xmm6
movaps xmmword [rax - 0x48], xmm7
movaps xmmword [rax - 0x58], xmm8
movaps xmmword [rax - 0x68], xmm9
movaps xmmword [rax - 0x78], xmm10
movaps xmmword [rax - 0x88], xmm11
movaps xmmword [rax - 0x98], xmm12
movaps xmmword [rax - 0xa8], xmm13
movaps xmmword [rax - 0xb8], xmm14
movaps xmmword [rax - 0xc8], xmm15
mov rdi, rcx
mov eax, dword [rcx + 0xf0]
cmp rdx, rax
jne 0x1400488b1
xor ecx, ecx
call fcn.14002d144
mov qword [rsp + 0x2b0], rax
and qword [rsp + 0x28], 0
lea rax, vtable.CPen.0
mov qword [rsp + 0x20], rax
and qword [rsp + 0x38], 0
lea rax, vtable.CBrush.0
mov qword [rsp + 0x30], rax
mov rdx, rdi
lea rcx, [rsp + 0x40]
call fcn.140008bb8
nop
lea rdx, [rsp + 0x2b0]
lea rcx, [rsp + 0x68]
call fcn.14002d1a4
or r13d, 0xffffffff
mov ebp, r13d
test eax, eax
cmove ebp, dword [rsp + 0x68]
lea rdx, [rsp + 0x2b0]
lea rcx, [rsp + 0x68]
call fcn.14002d1a4
mov ecx, r13d
test eax, eax
cmove ecx, dword [rsp + 0x6c]
movd xmm1, ebp
cvtdq2pd xmm1, xmm1
movsd xmm6, qword [0x140058620]
divsd xmm1, xmm6
movd xmm0, ecx
cvtdq2pd xmm0, xmm0
addsd xmm1, xmm0
cvtsd2ss xmm10, xmm1
lea rdx, [rsp + 0x2b0]
lea rcx, [rsp + 0x68]
call fcn.14002d1a4
mov ecx, r13d
test eax, eax
cmove ecx, dword [rsp + 0x70]
unpcklps xmm10, xmm10
cvtps2pd xmm1, xmm10
divsd xmm1, xmm6
movd xmm0, ecx
cvtdq2pd xmm0, xmm0
addsd xmm1, xmm0
cvtsd2ss xmm8, xmm1
movss xmm2, dword [0x140058618]
comiss xmm8, xmm2
jbe 0x140047b20
xorps xmm0, xmm0
subss xmm0, xmm2
addss xmm8, xmm0
movss xmm9, dword [0x140058614]
mulss xmm8, xmm9
mov dword [rdi + 0xf4], 0x67
mov dword [rdi + 0xf8], 0x66
movss xmm0, dword [rdi + 0x10c]
mov esi, pe_nt_image_headers64
lea r14d, [rsi + 0xa]
lea r15d, [rsi + 3]
movss xmm15, dword [0x140058610]
movss xmm14, dword [0x14005860c]
movss xmm13, dword [0x140058608]
movss xmm12, dword [0x140058604]
movss xmm11, dword [0x140058600]
comiss xmm9, xmm0
jbe 0x140047b8e
mov eax, esi
jmp 0x140047bf4
comiss xmm11, xmm0
jbe 0x140047b99
mov eax, r15d
jmp 0x140047bf4
comiss xmm12, xmm0
jbe 0x140047ba4
mov eax, r14d
jmp 0x140047bf4
comiss xmm13, xmm0
jbe 0x140047bb1
mov eax, 0xf7
jmp 0x140047bf4
movss xmm1, dword [0x1400585fc]
comiss xmm1, xmm0
jbe 0x140047bc5
mov eax, 0xf8
jmp 0x140047bf4
comiss xmm14, xmm0
jbe 0x140047bd2
mov eax, 0xf4
jmp 0x140047bf4
comiss xmm15, xmm0
jbe 0x140047bdd
mov eax, r14d
jmp 0x140047bf4
movss xmm1, dword [0x1400585f8]
comiss xmm1, xmm0
jbe 0x140047bef
mov eax, r15d
jmp 0x140047bf4
mov eax, 0xe6
movzx edx, al
mov ebx, edx
shl ebx, 8
mov eax, edx
shl eax, 0x10
or ebx, eax
or ebx, edx
mov r8d, ebx
mov edx, 4
xor ecx, ecx
call qword [sym.imp.GDI32.dll_CreatePen]
mov rdx, rax
lea rcx, [rsp + 0x20]
call fcn.140008e6c
mov ecx, ebx
call qword [sym.imp.GDI32.dll_CreateSolidBrush]
mov rdx, rax
lea rcx, [rsp + 0x30]
call fcn.140008e6c
lea rdx, [rsp + 0x30]
lea rcx, [rsp + 0x40]
call fcn.140008f94
lea rdx, [rsp + 0x20]
lea rcx, [rsp + 0x40]
call fcn.140008f94
movd xmm6, dword [rdi + 0x10c]
cvtps2pd xmm6, xmm6
mulsd xmm6, qword [0x1400585f0]
divsd xmm6, qword [0x1400585e8]
movapd xmm0, xmm6
call fcn.140042bc8
movsd xmm7, qword [0x1400585e0]
mulsd xmm0, xmm7
addsd xmm0, qword [0x1400585d8]
cvttsd2si eax, xmm0
mov dword [rdi + 0xfc], eax
movapd xmm0, xmm6
call fcn.140042ee4
mulsd xmm0, xmm7
movsd xmm1, qword [0x1400585d0]
subsd xmm1, xmm0
cvttsd2si eax, xmm1
mov dword [rdi + 0x100], eax
mov rax, qword [rdi + 0xf4]
mov r9, rax
shr r9, 0x20
mov r8d, eax
lea rdx, [rsp + 0x2b8]
lea rcx, [rsp + 0x40]
call fcn.140008758
mov r11, qword [rdi + 0xfc]
mov r8, r11
shr r8, 0x20
mov edx, r11d
lea rcx, [rsp + 0x40]
call fcn.1400081f0
lea rcx, [rsp + 0x20]
call fcn.140008eec
xor r8d, r8d
lea edx, [r8 + 4]
xor ecx, ecx
call qword [sym.imp.GDI32.dll_CreatePen]
mov rdx, rax
lea rcx, [rsp + 0x20]
call fcn.140008e6c
lea rdx, [rsp + 0x20]
lea rcx, [rsp + 0x40]
call fcn.140008f94
lea rcx, [rsp + 0x30]
call fcn.140008eec
xor ecx, ecx
call qword [sym.imp.GDI32.dll_CreateSolidBrush]
mov rdx, rax
lea rcx, [rsp + 0x30]
call fcn.140008e6c
lea rdx, [rsp + 0x30]
lea rcx, [rsp + 0x40]
call fcn.140008f94
unpcklps xmm8, xmm8
cvtps2pd xmm6, xmm8
mulsd xmm6, qword [0x1400585f0]
divsd xmm6, qword [0x1400585e8]
movapd xmm0, xmm6
call fcn.140042bc8
mulsd xmm0, xmm7
addsd xmm0, qword [0x1400585d8]
cvttsd2si eax, xmm0
mov dword [rdi + 0xfc], eax
movapd xmm0, xmm6
call fcn.140042ee4
mulsd xmm0, xmm7
movsd xmm1, qword [0x1400585d0]
subsd xmm1, xmm0
cvttsd2si eax, xmm1
mov dword [rdi + 0x100], eax
mov rax, qword [rdi + 0xf4]
mov r9, rax
shr r9, 0x20
mov r8d, eax
lea rdx, [rsp + 0x2b8]
lea rcx, [rsp + 0x40]
call fcn.140008758
mov r11, qword [rdi + 0xfc]
mov r8, r11
shr r8, 0x20
mov edx, r11d
lea rcx, [rsp + 0x40]
call fcn.1400081f0
movss xmm0, dword [rdi + 0x108]
comiss xmm9, xmm0
jbe 0x140047e11
mov ebx, esi
movss xmm9, dword [0x1400585fc]
jmp 0x140047e94
comiss xmm11, xmm0
jbe 0x140047e25
mov ebx, r15d
movss xmm9, dword [0x1400585fc]
jmp 0x140047e94
comiss xmm12, xmm0
jbe 0x140047e39
mov ebx, r14d
movss xmm9, dword [0x1400585fc]
jmp 0x140047e94
comiss xmm13, xmm0
jbe 0x140047e4f
mov ebx, 0xf7
movss xmm9, dword [0x1400585fc]
jmp 0x140047e94
movss xmm9, dword [0x1400585fc]
comiss xmm9, xmm0
jbe 0x140047e65
mov ebx, 0xf8
jmp 0x140047e94
comiss xmm14, xmm0
jbe 0x140047e72
mov ebx, 0xf4
jmp 0x140047e94
comiss xmm15, xmm0
jbe 0x140047e7d
mov ebx, r14d
jmp 0x140047e94
movss xmm1, dword [0x1400585f8]
comiss xmm1, xmm0
jbe 0x140047e8f
mov ebx, r15d
jmp 0x140047e94
mov ebx, 0xe6
lea rcx, [rsp + 0x30]
call fcn.140008eec
movzx r11d, bl
mov ebx, r11d
shl ebx, 8
mov eax, r11d
shl eax, 0x10
or ebx, eax
or ebx, r11d
mov ecx, ebx
call qword [sym.imp.GDI32.dll_CreateSolidBrush]
mov rdx, rax
lea rcx, [rsp + 0x30]
call fcn.140008e6c
lea rdx, [rsp + 0x30]
lea rcx, [rsp + 0x40]
call fcn.140008f94
lea rcx, [rsp + 0x20]
call fcn.140008eec
mov r8d, ebx
mov ebx, 4
mov edx, ebx
xor ecx, ecx
call qword [sym.imp.GDI32.dll_CreatePen]
mov rdx, rax
lea rcx, [rsp + 0x20]
call fcn.140008e6c
lea rdx, [rsp + 0x20]
lea rcx, [rsp + 0x40]
call fcn.140008f94
movd xmm6, dword [rdi + 0x108]
cvtps2pd xmm6, xmm6
movsd xmm12, qword [0x1400585f0]
mulsd xmm6, xmm12
movsd xmm13, qword [0x1400585e8]
divsd xmm6, xmm13
movapd xmm0, xmm6
call fcn.140042bc8
movsd xmm7, qword [0x1400585c8]
mulsd xmm0, xmm7
movsd xmm14, qword [0x1400585d8]
addsd xmm0, xmm14
cvttsd2si eax, xmm0
mov dword [rdi + 0xfc], eax
movapd xmm0, xmm6
call fcn.140042ee4
mulsd xmm0, xmm7
movsd xmm11, qword [0x1400585d0]
movapd xmm1, xmm11
subsd xmm1, xmm0
cvttsd2si eax, xmm1
mov dword [rdi + 0x100], eax
mov rax, qword [rdi + 0xf4]
mov r9, rax
shr r9, 0x20
mov r8d, eax
lea rdx, [rsp + 0x2b8]
lea rcx, [rsp + 0x40]
call fcn.140008758
mov r11, qword [rdi + 0xfc]
mov r8, r11
shr r8, 0x20
mov edx, r11d
lea rcx, [rsp + 0x40]
call fcn.1400081f0
lea rcx, [rsp + 0x30]
call fcn.140008eec
xor ecx, ecx
call qword [sym.imp.GDI32.dll_CreateSolidBrush]
mov rdx, rax
lea rcx, [rsp + 0x30]
call fcn.140008e6c
lea rdx, [rsp + 0x30]
lea rcx, [rsp + 0x40]
call fcn.140008f94
lea rcx, [rsp + 0x20]
call fcn.140008eec
xor r8d, r8d
mov edx, ebx
xor ecx, ecx
call qword [sym.imp.GDI32.dll_CreatePen]
mov rdx, rax
lea rcx, [rsp + 0x20]
call fcn.140008e6c
lea rdx, [rsp + 0x20]
lea rcx, [rsp + 0x40]
call fcn.140008f94
unpcklps xmm10, xmm10
cvtps2pd xmm6, xmm10
mulsd xmm6, xmm12
divsd xmm6, xmm13
movapd xmm0, xmm6
call fcn.140042bc8
mulsd xmm0, xmm7
addsd xmm0, xmm14
cvttsd2si eax, xmm0
mov dword [rdi + 0xfc], eax
movapd xmm0, xmm6
call fcn.140042ee4
mulsd xmm0, xmm7
movapd xmm1, xmm11
subsd xmm1, xmm0
cvttsd2si eax, xmm1
mov dword [rdi + 0x100], eax
mov rax, qword [rdi + 0xf4]
mov r9, rax
shr r9, 0x20
mov r8d, eax
lea rdx, [rsp + 0x2b8]
lea rcx, [rsp + 0x40]
call fcn.140008758
mov r11, qword [rdi + 0xfc]
mov r8, r11
shr r8, 0x20
mov edx, r11d
lea rcx, [rsp + 0x40]
call fcn.1400081f0
mov ecx, dword [rdi + 0x104]
add ecx, 0x1e
mov r8d, 0x88888889
mov eax, r8d
imul ecx
add edx, ecx
sar edx, 5
mov eax, edx
shr eax, 0x1f
add edx, eax
imul edx, edx, 0x3c
sub ecx, edx
mov dword [rdi + 0x104], ecx
add ebp, 0x1e
mov eax, r8d
imul ebp
add edx, ebp
sar edx, 5
mov eax, edx
shr eax, 0x1f
add edx, eax
imul edx, edx, 0x3c
sub ebp, edx
cmp ecx, 5
jge 0x140048104
mov ebx, esi
jmp 0x140048152
cmp ecx, 0xa
jge 0x14004810e
mov ebx, r15d
jmp 0x140048152
cmp ecx, 0xf
jge 0x140048118
mov ebx, r14d
jmp 0x140048152
cmp ecx, 0x14
jge 0x140048124
mov ebx, 0xf7
jmp 0x140048152
cmp ecx, 0x1e
jge 0x140048130
mov ebx, 0xf8
jmp 0x140048152
cmp ecx, 0x23
jge 0x14004813c
mov ebx, 0xf4
jmp 0x140048152
cmp ecx, 0x28
jge 0x140048146
mov ebx, r14d
jmp 0x140048152
mov ebx, 0xe6
cmp ecx, 0x2f
cmovl ebx, r15d
lea rcx, [rsp + 0x20]
call fcn.140008eec
movzx r11d, bl
mov r8d, r11d
shl r8d, 8
mov eax, r11d
shl eax, 0x10
or r8d, eax
or r8d, r11d
mov ebx, 2
mov edx, ebx
lea ecx, [rbx + 2]
call qword [sym.imp.GDI32.dll_CreatePen]
mov rdx, rax
lea rcx, [rsp + 0x20]
call fcn.140008e6c
lea rdx, [rsp + 0x20]
lea rcx, [rsp + 0x40]
call fcn.140008f94
movd xmm6, dword [rdi + 0x104]
cvtdq2pd xmm6, xmm6
mulsd xmm6, xmm12
divsd xmm6, xmm13
movapd xmm0, xmm6
call fcn.140042bc8
movsd xmm7, qword [0x1400585c0]
mulsd xmm0, xmm7
addsd xmm0, xmm14
cvttsd2si eax, xmm0
mov dword [rdi + 0xfc], eax
movapd xmm0, xmm6
call fcn.140042ee4
mulsd xmm0, xmm7
movapd xmm1, xmm11
subsd xmm1, xmm0
cvttsd2si eax, xmm1
mov dword [rdi + 0x100], eax
mov rax, qword [rdi + 0xf4]
mov r9, rax
shr r9, 0x20
mov r8d, eax
lea rdx, [rsp + 0x2b8]
lea rcx, [rsp + 0x40]
call fcn.140008758
mov r11, qword [rdi + 0xfc]
mov r8, r11
shr r8, 0x20
mov edx, r11d
lea rcx, [rsp + 0x40]
call fcn.1400081f0
lea rcx, [rsp + 0x20]
call fcn.140008eec
mov r8d, 0xff
mov edx, ebx
lea ecx, [rbx + 2]
call qword [sym.imp.GDI32.dll_CreatePen]
mov rdx, rax
lea rcx, [rsp + 0x20]
call fcn.140008e6c
lea rdx, [rsp + 0x20]
lea rcx, [rsp + 0x40]
call fcn.140008f94
movd xmm6, ebp
cvtdq2pd xmm6, xmm6
mulsd xmm6, xmm12
divsd xmm6, xmm13
movapd xmm0, xmm6
call fcn.140042bc8
mulsd xmm0, xmm7
addsd xmm0, xmm14
cvttsd2si eax, xmm0
mov dword [rdi + 0xfc], eax
movapd xmm0, xmm6
call fcn.140042ee4
mulsd xmm0, xmm7
movapd xmm1, xmm11
subsd xmm1, xmm0
cvttsd2si eax, xmm1
mov dword [rdi + 0x100], eax
mov rax, qword [rdi + 0xf4]
mov r9, rax
shr r9, 0x20
mov r8d, eax
lea rdx, [rsp + 0x2b8]
lea rcx, [rsp + 0x40]
call fcn.140008758
mov r11, qword [rdi + 0xfc]
mov r8, r11
shr r8, 0x20
mov edx, r11d
lea rcx, [rsp + 0x40]
call fcn.1400081f0
mov r11d, dword [rdi + 0x104]
add r11d, 0x1e
mov r8d, 0x88888889
mov eax, r8d
imul r11d
add edx, r11d
sar edx, 5
mov ecx, edx
shr ecx, 0x1f
add edx, ecx
imul edx, edx, 0x3c
sub r11d, edx
mov dword [rdi + 0x104], r11d
add ebp, 0x1e
mov eax, r8d
imul ebp
add edx, ebp
sar edx, 5
mov eax, edx
shr eax, 0x1f
add edx, eax
imul edx, edx, 0x3c
sub ebp, edx
cmp r11d, 5
jl 0x14004839f
cmp r11d, 0xa
jge 0x140048355
mov esi, r15d
jmp 0x14004839f
cmp r11d, 0xf
jge 0x140048360
mov esi, r14d
jmp 0x14004839f
cmp r11d, 0x14
jge 0x14004836d
mov esi, 0xf7
jmp 0x14004839f
cmp r11d, 0x1e
jge 0x14004837a
mov esi, 0xf8
jmp 0x14004839f
cmp r11d, 0x23
jge 0x140048387
mov esi, 0xf4
jmp 0x14004839f
cmp r11d, 0x28
jge 0x140048392
mov esi, r14d
jmp 0x14004839f
mov esi, 0xe6
cmp r11d, 0x2f
cmovl esi, r15d
lea rcx, [rsp + 0x20]
call fcn.140008eec
movzx r11d, sil
mov r8d, r11d
shl r8d, 8
mov eax, r11d
shl eax, 0x10
or r8d, eax
or r8d, r11d
mov edx, ebx
mov esi, 4
mov ecx, esi
call qword [sym.imp.GDI32.dll_CreatePen]
mov rdx, rax
lea rcx, [rsp + 0x20]
call fcn.140008e6c
lea rdx, [rsp + 0x20]
lea rcx, [rsp + 0x40]
call fcn.140008f94
movd xmm6, dword [rdi + 0x104]
cvtdq2pd xmm6, xmm6
mulsd xmm6, xmm12
divsd xmm6, xmm13
movapd xmm0, xmm6
call fcn.140042bc8
movsd xmm7, qword [0x1400585b8]
mulsd xmm0, xmm7
addsd xmm0, xmm14
cvttsd2si eax, xmm0
mov dword [rdi + 0xfc], eax
movapd xmm0, xmm6
call fcn.140042ee4
mulsd xmm0, xmm7
movapd xmm1, xmm11
subsd xmm1, xmm0
cvttsd2si eax, xmm1
mov dword [rdi + 0x100], eax
mov rax, qword [rdi + 0xf4]
mov r9, rax
shr r9, 0x20
mov r8d, eax
lea rdx, [rsp + 0x2b8]
lea rcx, [rsp + 0x40]
call fcn.140008758
mov r11, qword [rdi + 0xfc]
mov r8, r11
shr r8, 0x20
mov edx, r11d
lea rcx, [rsp + 0x40]
call fcn.1400081f0
lea rcx, [rsp + 0x20]
call fcn.140008eec
mov r8d, 0xff
mov edx, ebx
mov ecx, esi
call qword [sym.imp.GDI32.dll_CreatePen]
mov rdx, rax
lea rcx, [rsp + 0x20]
call fcn.140008e6c
lea rdx, [rsp + 0x20]
lea rcx, [rsp + 0x40]
call fcn.140008f94
movd xmm6, ebp
cvtdq2pd xmm6, xmm6
mulsd xmm6, xmm12
divsd xmm6, xmm13
movapd xmm0, xmm6
call fcn.140042bc8
mulsd xmm0, xmm7
addsd xmm0, xmm14
cvttsd2si eax, xmm0
mov dword [rdi + 0xfc], eax
movapd xmm0, xmm6
call fcn.140042ee4
mulsd xmm0, xmm7
subsd xmm11, xmm0
cvttsd2si eax, xmm11
mov dword [rdi + 0x100], eax
mov rax, qword [rdi + 0xf4]
mov r9, rax
shr r9, 0x20
mov r8d, eax
lea rdx, [rsp + 0x2b8]
lea rcx, [rsp + 0x40]
call fcn.140008758
mov r11, qword [rdi + 0xfc]
mov r8, r11
shr r8, 0x20
mov edx, r11d
lea rcx, [rsp + 0x40]
call fcn.1400081f0
movss dword [rdi + 0x10c], xmm8
movss dword [rdi + 0x108], xmm10
mov dword [rdi + 0x104], ebp
mov rax, qword [rdi + 0xf4]
mov r8, rax
shr r8, 0x20
xor r9d, r9d
mov edx, eax
mov rcx, qword [rsp + 0x48]
call qword [sym.imp.GDI32.dll_SetPixel]
mov edx, dword [rdi + 0xf4]
lea r14d, [rsi - 3]
add edx, r14d
xor r9d, r9d
mov r8d, dword [rdi + 0xf8]
mov rcx, qword [rsp + 0x48]
call qword [sym.imp.GDI32.dll_SetPixel]
mov r8d, dword [rdi + 0xf8]
add r8d, r14d
xor r9d, r9d
mov edx, dword [rdi + 0xf4]
mov rcx, qword [rsp + 0x48]
call qword [sym.imp.GDI32.dll_SetPixel]
mov r8d, dword [rdi + 0xf8]
add r8d, r14d
mov edx, dword [rdi + 0xf4]
add edx, r14d
xor r9d, r9d
mov rcx, qword [rsp + 0x48]
call qword [sym.imp.GDI32.dll_SetPixel]
mov edx, dword [rdi + 0xf4]
sub edx, r14d
xor r9d, r9d
mov r8d, dword [rdi + 0xf8]
mov rcx, qword [rsp + 0x48]
call qword [sym.imp.GDI32.dll_SetPixel]
mov r8d, dword [rdi + 0xf8]
sub r8d, r14d
xor r9d, r9d
mov edx, dword [rdi + 0xf4]
mov rcx, qword [rsp + 0x48]
call qword [sym.imp.GDI32.dll_SetPixel]
mov r8d, dword [rdi + 0xf8]
sub r8d, r14d
mov edx, dword [rdi + 0xf4]
sub edx, r14d
xor r9d, r9d
mov rcx, qword [rsp + 0x48]
call qword [sym.imp.GDI32.dll_SetPixel]
xor esi, esi
cmp dword [rdi + 0x214], esi
jle 0x1400486db
lea rbx, [rdi + 0x128]
lea rdx, [rsp + 0x2b0]
lea rcx, [rsp + 0x68]
call fcn.14002d1a4
mov ecx, r13d
test eax, eax
cmove ecx, dword [rsp + 0x70]
cmp ecx, dword [rbx - 4]
jne 0x1400486b9
lea rdx, [rsp + 0x2b0]
lea rcx, [rsp + 0xe8]
call fcn.14002d1a4
mov ecx, r13d
test eax, eax
cmove ecx, dword [rsp + 0xec]
cmp ecx, dword [rbx]
jne 0x1400486b9
lea rdx, [rsp + 0x2b0]
lea rcx, [rsp + 0x1b0]
call fcn.14002d1a4
mov ecx, r13d
test eax, eax
cmove ecx, dword [rsp + 0x1b0]
cmp ecx, dword [rbx + 4]
je 0x1400486ca
add esi, r14d
add rbx, 0xc
cmp esi, dword [rdi + 0x214]
jge 0x1400486db
jmp 0x14004864b
mov rcx, qword [0x140d61708]
mov rcx, qword [rcx + 0x58]
call qword [sym.imp.KERNEL32.dll_ResumeThread]
xor esi, esi
cmp dword [rdi + 0x218], esi
jle 0x140048824
lea rbx, [rdi + 0x220]
lea rdx, [rsp + 0x2b0]
lea rcx, [rsp + 0x98]
call fcn.14002d1a4
test eax, eax
jne 0x140048717
mov eax, dword [rsp + 0xac]
add eax, 0x76c
jmp 0x140048719
xor eax, eax
cmp eax, dword [rbx - 4]
jne 0x1400487eb
lea rdx, [rsp + 0x2b0]
lea rcx, [rsp + 0x188]
call fcn.14002d1a4
test eax, eax
jne 0x140048746
mov eax, dword [rsp + 0x198]
inc eax
jmp 0x140048748
xor eax, eax
cmp eax, dword [rbx]
jne 0x1400487eb
lea rdx, [rsp + 0x2b0]
lea rcx, [rsp + 0x138]
call fcn.14002d1a4
xor ecx, ecx
test eax, eax
cmove ecx, dword [rsp + 0x144]
cmp ecx, dword [rbx + 4]
jne 0x1400487eb
lea rdx, [rsp + 0x2b0]
lea rcx, [rsp + 0xc0]
call fcn.14002d1a4
mov ecx, r13d
test eax, eax
cmove ecx, dword [rsp + 0xc8]
cmp ecx, dword [rbx + 8]
jne 0x1400487eb
lea rdx, [rsp + 0x2b0]
lea rcx, [rsp + 0x110]
call fcn.14002d1a4
mov ecx, r13d
test eax, eax
cmove ecx, dword [rsp + 0x114]
cmp ecx, dword [rbx + 0xc]
jne 0x1400487eb
lea rdx, [rsp + 0x2b0]
lea rcx, [rsp + 0x160]
call fcn.14002d1a4
mov ecx, r13d
test eax, eax
cmove ecx, dword [rsp + 0x160]
cmp ecx, dword [rbx + 0x10]
je 0x1400487ff
add esi, r14d
add rbx, 0x1c
cmp esi, dword [rdi + 0x218]
jge 0x140048824
jmp 0x1400486f0
movsxd rax, esi
imul rax, rax, 0x1c
mov eax, dword [rax + rdi + 0x234]
mov dword [0x140d6171c], eax
mov rcx, qword [0x140d61700]
mov rcx, qword [rcx + 0x58]
call qword [sym.imp.KERNEL32.dll_ResumeThread]
cmp byte [rdi + 0x120], 0
je 0x140048845
test ebp, ebp
jne 0x140048845
ucomiss xmm10, dword [0x140055660]
jp 0x140048845
jne 0x140048845
mov rcx, rdi
call fcn.1400494f8
cmp byte [rdi + 0x121], 0
je 0x14004886e
test ebp, ebp
jne 0x14004886e
ucomiss xmm10, dword [0x140055660]
jp 0x14004885e
je 0x140048866
ucomiss xmm10, xmm9
jp 0x14004886e
jne 0x14004886e
mov rcx, rdi
call fcn.1400494f8
xor edx, edx
mov rcx, rdi
call fcn.14000dd40
nop
lea rcx, [rsp + 0x40]
call fcn.140008c1c
nop
lea rax, vtable.CBrush.0
mov qword [rsp + 0x30], rax
lea rcx, [rsp + 0x30]
call fcn.1400014c8
nop
lea rax, vtable.CPen.0
mov qword [rsp + 0x20], rax
lea rcx, [rsp + 0x20]
call fcn.1400014c8
mov rcx, rdi
lea r11, [rsp + 0x280]
mov rbx, qword [r11 + 0x40]
mov rbp, qword [r11 + 0x48]
movaps xmm6, xmmword [r11 - 0x10]
movaps xmm7, xmmword [r11 - 0x20]
movaps xmm8, xmmword [r11 - 0x30]
movaps xmm9, xmmword [r11 - 0x40]
movaps xmm10, xmmword [r11 - 0x50]
movaps xmm11, xmmword [r11 - 0x60]
movaps xmm12, xmmword [r11 - 0x70]
movaps xmm13, xmmword [r11 - 0x80]
movaps xmm14, xmmword [r11 - 0x90]
movaps xmm15, xmmword [r11 - 0xa0]
mov rsp, r11
pop r15
pop r14
pop r13
pop rdi
pop rsi
jmp fcn.14000e5f8