Function at 0x14005b0d0
Capabilities:
Capture screenshot

Disassembly:
mov qword [rsp + 8], rcx
push rbp
push rbx
push rsi
push rdi
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0xa8]
sub rsp, 0x1a8
mov rax, qword [0x1401179f0]
xor r12d, r12d
cmp byte [rcx + 1], 1
mov ebx, r12d
mov edi, r9d
mov qword [rbp - 0x18], rax
cmova rbx, qword [0x1401179f8]
mov esi, r8d
mov qword [rbp - 0x10], rbx
mov r14d, edx
mov r13, rcx
test rax, rax
je 0x14005b139
xor r9d, r9d
mov byte [rsp + 0x20], 1
xor edx, edx
lea r8, [r12 - 1]
mov rcx, rax
call fcn.1400c3f40
test rbx, rbx
je 0x14005b154
xor r9d, r9d
mov byte [rsp + 0x20], 1
xor edx, edx
mov rcx, rbx
lea r8, [r9 - 1]
call fcn.1400c3f40
xor r8d, r8d
mov qword [rbp - 0x78], r12
lea rdx, [rbp - 0x74]
lea rcx, [rbp - 0x78]
call fcn.1400c0800
mov eax, dword [rbp - 0x74]
mov edx, 0x2e
mov rbx, qword [rbp - 0x78]
add esi, eax
add dword [rbp + 0x110], eax
add r14d, ebx
mov dword [rbp + 0x100], esi
add edi, ebx
mov rsi, qword [rbp + 0x118]
mov r15d, r12d
mov dword [rbp + 0xf8], r14d
mov rcx, rsi
mov r14d, 0xffffffff
mov dword [rbp + 0x108], edi
mov dword [rsp + 0x5c], r12d
mov dword [rsp + 0x58], r14d
mov dword [rsp + 0x64], r12d
call qword [sym.imp.VCRUNTIME140.dll_wcsrchr]
mov rdi, rax
test rax, rax
je 0x14005b220
add rdi, 2
lea rdx, [0x1400fd9e0]
mov rcx, rdi
call qword [sym.imp.api_ms_win_crt_string_l1_1_0.dll__wcsicmp]
test eax, eax
je 0x14005b204
lea rdx, [0x1400fd9e8]
mov rcx, rdi
call qword [sym.imp.api_ms_win_crt_string_l1_1_0.dll__wcsicmp]
test eax, eax
je 0x14005b204
lea rdx, [0x1400fd9f0]
mov rcx, rdi
call qword [sym.imp.api_ms_win_crt_string_l1_1_0.dll__wcsicmp]
test eax, eax
jne 0x14005b220
mov ecx, gethostbyname
call qword [sym.imp.USER32.dll_GetSystemMetrics]
mov ecx, gethostbyname
mov r15d, eax
call qword [sym.imp.USER32.dll_GetSystemMetrics]
mov r12d, eax
mov rdi, rsi
movzx eax, word [rdi]
cmp ax, 0x20
je 0x14005b232
cmp ax, 9
jne 0x14005b238
add rdi, 2
jmp 0x14005b223
cmp ax, 0x2a
jne 0x14005b42f
movzx ecx, word [rdi + 2]
add rdi, 2
call qword [sym.imp.api_ms_win_crt_string_l1_1_0.dll_towupper]
movzx eax, ax
cmp eax, 0x48
je 0x14005b3b0
cmp eax, 0x57
je 0x14005b3a2
mov r8d, 4
lea rdx, str.Icon
mov rcx, rdi
call qword [sym.imp.api_ms_win_crt_string_l1_1_0.dll__wcsnicmp]
test eax, eax
jne 0x14005b294
add rdi, 8
mov rcx, rdi
call fcn.140014ec0
mov dword [rsp + 0x64], eax
jmp 0x14005b3bc
mov r8d, 5
lea rdx, str.Trans
mov rcx, rdi
call qword [sym.imp.api_ms_win_crt_string_l1_1_0.dll__wcsnicmp]
test eax, eax
jne 0x14005b378
add rdi, 0xa
lea r8d, [rax + 0x1f]
mov rdx, rdi
lea rcx, [rbp + 0x60]
call qword [sym.imp.api_ms_win_crt_string_l1_1_0.dll_wcsncpy]
movzx edx, word [rbp + 0x60]
lea r8, [rbp + 0x60]
xor r10d, r10d
mov word [rbp + 0x9e], r10w
test dx, dx
je 0x14005b32b
mov r9d, SafeArrayAllocDescriptor
nop word [rax + rax]
lea rcx, [0x1400f6270]
movzx eax, r9w
nop dword [rax + rax]
cmp dx, ax
je 0x14005b322
movzx eax, word [rcx + 2]
add rcx, 2
test ax, ax
jne 0x14005b300
movzx edx, word [r8 + 2]
add r8, 2
test dx, dx
jne 0x14005b2f0
jmp 0x14005b32b
test r8, r8
je 0x14005b32b
mov word [r8], r10w
lea rcx, [rbp + 0x60]
call fcn.1400c05c0
mov edx, eax
cmp eax, 0xffffffff
jne 0x14005b354
xor edx, edx
lea rcx, [rbp + 0x60]
lea r8d, [rdx + 0x10]
call qword [sym.imp.api_ms_win_crt_convert_l1_1_0.dll_wcstol]
mov r14d, eax
mov dword [rsp + 0x58], eax
jmp 0x14005b3bc
shr eax, 0x10
movzx ecx, al
movzx r14d, dx
and r14d, 0xffffff00
movzx eax, dl
shl eax, 0x10
or r14d, ecx
or r14d, eax
mov dword [rsp + 0x58], r14d
jmp 0x14005b3bc
mov rcx, rdi
call fcn.140014ec0
mov dword [rsp + 0x5c], eax
test eax, eax
jns 0x14005b390
xor eax, eax
mov dword [rsp + 0x5c], eax
jmp 0x14005b3bc
cmp eax, 0xff
jle 0x14005b3bc
mov ecx, 0xff
mov dword [rsp + 0x5c], ecx
jmp 0x14005b3bc
lea rcx, [rdi + 2]
call fcn.140014ec0
mov r15d, eax
jmp 0x14005b3bc
lea rcx, [rdi + 2]
call fcn.140014ec0
mov r12d, eax
test rdi, rdi
je 0x14005b4a0
movzx edx, word [rdi]
test dx, dx
je 0x14005b4a0
lea rcx, [0x1400f6270]
mov eax, SafeArrayAllocDescriptor
nop dword [rax]
cmp dx, ax
je 0x14005b404
movzx eax, word [rcx + 2]
add rcx, 2
test ax, ax
jne 0x14005b3e0
movzx edx, word [rdi + 2]
add rdi, 2
test dx, dx
jne 0x14005b3d1
jmp 0x14005b4a0
lea rsi, [rdi + 2]
mov rdi, rsi
nop dword [rax + rax]
movzx eax, word [rdi]
cmp ax, 0x20
je 0x14005b41f
cmp ax, 9
jne 0x14005b425
add rdi, 2
jmp 0x14005b410
cmp ax, 0x2a
je 0x14005b242
lea rax, [rsp + 0x50]
mov r13d, r14d
xor r14d, r14d
lea r9, [rbp - 0x70]
mov qword [rsp + 0x38], r14
mov r8d, r12d
mov qword [rsp + 0x30], rax
mov edx, r15d
mov eax, dword [rsp + 0x64]
mov rcx, rsi
mov byte [rsp + 0x28], r14b
mov dword [rsp + 0x20], eax
call fcn.1400c0930
mov qword [rbp - 0x40], rax
mov rdi, rax
test rax, rax
je 0x14005b499
xor ecx, ecx
call qword [sym.imp.USER32.dll_GetDC]
mov qword [rbp - 0x60], rax
mov rsi, rax
test rax, rax
jne 0x14005b4e0
cmp byte [rsp + 0x50], r14b
jne 0x14005b499
cmp dword [rbp - 0x70], 1
mov rcx, rdi
jne 0x14005b4d8
call qword [sym.imp.USER32.dll_DestroyIcon]
mov r13, qword [rbp + 0xf0]
mov rax, qword [0x140112060]
lea rdx, [0x1400f62d4]
test byte [rax + 0x140], 1
jne 0x14005be05
mov rcx, qword [0x1401156c0]
xor r9d, r9d
mov byte [rsp + 0x20], 1
lea r8, [r9 - 1]
call fcn.1400c3f40
jmp 0x14005be17
call qword [sym.imp.GDI32.dll_DeleteObject]
jmp 0x14005b499
cmp dword [rbp - 0x70], 1
mov r15, r14
mov qword [rbp - 0x80], r14
mov r12, r14
mov qword [rbp - 0x38], r14
mov qword [rsp + 0x70], r14
mov qword [rbp - 0x58], r14
mov qword [rbp - 0x20], r14
jne 0x14005b6a0
lea rdx, [rbp + 0x18]
mov rcx, rdi
call qword [sym.imp.USER32.dll_GetIconInfo]
test eax, eax
je 0x14005b558
mov rcx, qword [rbp + 0x28]
lea rax, [rbp + 0x118]
mov dword [rsp + 0x28], 1
lea r9, [rsp + 0x68]
lea r8, [rsp + 0x60]
mov qword [rsp + 0x20], rax
mov rdx, rsi
call fcn.14005a270
mov rcx, qword [rbp + 0x30]
mov qword [rbp - 0x58], rax
call qword [sym.imp.GDI32.dll_DeleteObject]
mov rcx, qword [rbp + 0x28]
call qword [sym.imp.GDI32.dll_DeleteObject]
xor ecx, ecx
call qword [sym.imp.USER32.dll_GetDC]
mov rcx, rax
mov r15, rax
call qword [sym.imp.GDI32.dll_CreateCompatibleDC]
mov rsi, rax
test rax, rax
je 0x14005b670
lea rdx, [rbp + 0x38]
mov rcx, rdi
call qword [sym.imp.USER32.dll_GetIconInfo]
test eax, eax
je 0x14005b667
mov rcx, qword [rbp + 0x50]
lea r8, [rbp - 8]
mov edx, SafeArrayAllocDescriptor
call qword [sym.imp.GDI32.dll_GetObjectW]
test eax, eax
je 0x14005b653
mov r8d, dword [rbp]
mov rcx, r15
mov edx, dword [rbp - 4]
call qword [sym.imp.GDI32.dll_CreateCompatibleBitmap]
mov r14, rax
test rax, rax
je 0x14005b653
mov rdx, rax
mov rcx, rsi
call qword [sym.imp.GDI32.dll_SelectObject]
mov r12, rax
test rax, rax
je 0x14005b653
mov ecx, dword [rbp - 4]
xor eax, eax
mov dword [rbp - 0x28], ecx
mov ecx, dword [rbp]
mov dword [rbp - 0x24], ecx
mov ecx, 0xff000000
mov qword [rbp - 0x30], rax
call qword [sym.imp.GDI32.dll_CreateSolidBrush]
lea rdx, [rbp - 0x30]
mov rcx, rsi
mov r8, rax
mov rdi, rax
call qword [sym.imp.USER32.dll_FillRect]
mov rcx, rdi
call qword [sym.imp.GDI32.dll_DeleteObject]
mov rdi, qword [rbp - 0x40]
xor eax, eax
mov dword [rsp + 0x40], 3
mov r9, rdi
mov qword [rsp + 0x38], rax
xor r8d, r8d
mov dword [rsp + 0x30], eax
xor edx, edx
mov eax, dword [rbp]
mov rcx, rsi
mov dword [rsp + 0x28], eax
mov eax, dword [rbp - 4]
mov dword [rsp + 0x20], eax
call qword [sym.imp.USER32.dll_DrawIconEx]
mov rdx, r12
mov rcx, rsi
call qword [sym.imp.GDI32.dll_SelectObject]
mov rcx, qword [rbp + 0x50]
call qword [sym.imp.GDI32.dll_DeleteObject]
mov rcx, qword [rbp + 0x48]
call qword [sym.imp.GDI32.dll_DeleteObject]
mov rcx, rsi
call qword [sym.imp.GDI32.dll_DeleteDC]
mov rdx, r15
xor ecx, ecx
call qword [sym.imp.USER32.dll_ReleaseDC]
mov rcx, rdi
call qword [sym.imp.USER32.dll_DestroyIcon]
mov qword [rbp - 0x40], r14
mov rdi, r14
test r14, r14
je 0x14005b499
mov r12, qword [rbp - 0x58]
mov r15, qword [rbp - 0x80]
mov rsi, qword [rbp - 0x60]
lea rax, [rbp + 0x118]
mov dword [rsp + 0x28], 8
lea r9, [rsp + 0x68]
mov qword [rsp + 0x20], rax
lea r8, [rsp + 0x60]
mov rdx, rsi
mov rcx, rdi
call fcn.14005a270
mov qword [rsp + 0x78], rax
mov r14, rax
test rax, rax
je 0x14005bcd8
mov esi, dword [rbp + 0x110]
sub esi, dword [rbp + 0x100]
mov edi, dword [rbp + 0x108]
inc esi
mov rcx, qword [rbp - 0x60]
sub edi, dword [rbp + 0xf8]
call qword [sym.imp.GDI32.dll_CreateCompatibleDC]
mov qword [rbp - 0x80], rax
mov r15, rax
test rax, rax
je 0x14005bcd8
mov rcx, qword [rbp - 0x60]
lea edx, [rdi + 1]
mov r8d, esi
call qword [sym.imp.GDI32.dll_CreateCompatibleBitmap]
mov qword [rbp - 0x38], rax
test rax, rax
je 0x14005bcd8
mov rdx, rax
mov rcx, r15
call qword [sym.imp.GDI32.dll_SelectObject]
mov qword [rbp - 0x20], rax
test rax, rax
je 0x14005bcd8
mov eax, dword [rbp + 0x100]
lea r9d, [rdi + 1]
mov dword [rsp + 0x40], 0xcc0020
xor r8d, r8d
mov dword [rsp + 0x38], eax
xor edx, edx
mov eax, dword [rbp + 0xf8]
mov rcx, r15
mov dword [rsp + 0x30], eax
mov rax, qword [rbp - 0x60]
mov qword [rsp + 0x28], rax
mov dword [rsp + 0x20], esi
call qword [sym.imp.GDI32.dll_BitBlt]
test eax, eax
je 0x14005bcd8
mov rcx, qword [rbp - 0x38]
lea rax, [rbp + 0x110]
mov dword [rsp + 0x28], 8
lea r9, [rsp + 0x64]
lea r8, [rsp + 0x54]
mov qword [rsp + 0x20], rax
mov rdx, r15
call fcn.14005a270
mov qword [rsp + 0x70], rax
mov rdi, rax
test rax, rax
je 0x14005bcd8
mov r11d, dword [rsp + 0x60]
mov edx, r11d
imul edx, dword [rsp + 0x68]
mov r8d, dword [rsp + 0x54]
mov esi, r8d
imul esi, dword [rsp + 0x64]
cmp byte [rbp + 0x118], 0
movsxd r9, edx
mov qword [rbp - 0x68], r9
mov dword [rbp - 0x48], esi
movsxd r15, esi
jne 0x14005b7ff
cmp byte [rbp + 0x110], 0
je 0x14005b97f
mov r14d, r13d
and r14d, 0xf8f8f8
cmp r13d, 0xffffffff
cmove r14d, r13d
xor r10d, r10d
mov dword [rsp + 0x58], r14d
mov r8d, r10d
test esi, esi
jle 0x14005b8a1
cmp esi, 0x10
jb 0x14005b8a1
mov ecx, esi
and ecx, 0x8000000f
jge 0x14005b83a
dec ecx
or ecx, 0xfffffff0
inc ecx
movdqa xmm2, xmmword [0x140103470]
mov eax, esi
sub eax, ecx
mov rcx, r10
movsxd r9, eax
lea rax, [rdi + 0x20]
movdqu xmm0, xmmword [rax - 0x20]
lea rax, [rax + 0x40]
add r8d, 0x10
movdqa xmm1, xmm2
add rcx, 0x10
pand xmm0, xmm2
movdqu xmmword [rax - 0x60], xmm0
movdqu xmm0, xmmword [rax - 0x50]
pand xmm1, xmm0
movdqu xmmword [rax - 0x50], xmm1
movdqu xmm0, xmmword [rax - 0x40]
pand xmm0, xmm2
movdqu xmmword [rax - 0x40], xmm0
movdqu xmm0, xmmword [rax - 0x30]
pand xmm0, xmm2
movdqu xmmword [rax - 0x30], xmm0
cmp rcx, r9
jl 0x14005b850
mov r9, qword [rbp - 0x68]
movsxd rax, r8d
cmp rax, r15
jge 0x14005b8bf
nop dword [rax]
and dword [rdi + rax*4], 0xf8f8f8
inc rax
cmp rax, r15
jl 0x14005b8b0
mov ecx, r10d
test edx, edx
jle 0x14005b94e
cmp edx, 0x10
jb 0x14005b94e
mov eax, edx
and eax, 0x8000000f
jge 0x14005b8e3
dec eax
or eax, 0xfffffff0
inc eax
movdqa xmm2, xmmword [0x140103470]
sub edx, eax
movsxd r8, edx
mov rdx, r10
mov r10, qword [rsp + 0x78]
lea rax, [r10 + 0x20]
nop dword [rax]
movdqu xmm0, xmmword [rax - 0x20]
lea rax, [rax + 0x40]
add ecx, 0x10
movdqa xmm1, xmm2
add rdx, 0x10
pand xmm0, xmm2
movdqu xmmword [rax - 0x60], xmm0
movdqu xmm0, xmmword [rax - 0x50]
pand xmm1, xmm0
movdqu xmmword [rax - 0x50], xmm1
movdqu xmm0, xmmword [rax - 0x40]
pand xmm0, xmm2
movdqu xmmword [rax - 0x40], xmm0
movdqu xmm0, xmmword [rax - 0x30]
pand xmm0, xmm2
movdqu xmmword [rax - 0x30], xmm0
cmp rdx, r8
jl 0x14005b900
jmp 0x14005b953
mov r10, qword [rsp + 0x78]
movsxd rax, ecx
cmp rax, r9
jge 0x14005b975
nop dword [rax + rax]
and dword [r10 + rax*4], 0xf8f8f8
inc rax
cmp rax, r9
jl 0x14005b960
mov dword [rsp + 0x58], r14d
mov r14, qword [rsp + 0x78]
mov r8d, dword [rsp + 0x54]
test r9, r9
jle 0x14005b99d
lea rax, [r14 + 3]
mov rcx, r9
nop dword [rax + rax]
mov byte [rax], 0
lea rax, [rax + 4]
sub rcx, 1
jne 0x14005b990
mov r10d, dword [rsp + 0x5c]
cmp r10d, 1
jge 0x14005baed
test esi, esi
jle 0x14005b9cd
lea rax, [rdi + 3]
mov rcx, r15
nop word [rax + rax]
mov byte [rax], 0
lea rax, [rax + 4]
sub rcx, 1
jne 0x14005b9c0
xor r10d, r10d
mov dword [rbp + 0x108], r10d
mov r13d, r10d
test esi, esi
jle 0x14005bcb4
mov r14d, dword [r14]
mov esi, r10d
mov r9d, dword [rsp + 0x58]
nop dword [rax]
cmp dword [rdi + rsi*4], r14d
je 0x14005ba0b
test r12, r12
je 0x14005ba02
cmp dword [r12], 0
jne 0x14005ba0b
cmp r14d, r9d
jne 0x14005bacd
mov ecx, dword [rsp + 0x64]
mov eax, r13d
cdq
idiv r8d
sub ecx, eax
cmp dword [rsp + 0x68], ecx
jg 0x14005bacd
mov eax, r8d
sub eax, edx
cmp r11d, eax
jg 0x14005bacd
cmp qword [rbp - 0x68], 0
mov al, 1
mov r8d, r10d
mov r11, r10
mov ecx, r13d
jle 0x14005bcf6
mov rdi, qword [rsp + 0x78]
mov r10d, r13d
sub rdi, r12
mov byte [rbp + 0x110], al
mov rdx, r12
nop word [rax + rax]
mov rbx, qword [rsp + 0x70]
mov r9d, dword [rdi + rdx]
movsxd rax, ecx
cmp dword [rbx + rax*4], r9d
mov rbx, qword [rbp - 0x78]
je 0x14005ba87
test r12, r12
je 0x14005ba80
cmp dword [rdx], 0
jne 0x14005ba87
cmp r9d, dword [rsp + 0x58]
jne 0x14005babb
inc r8d
cmp r8d, dword [rsp + 0x60]
jge 0x14005ba95
inc ecx
jmp 0x14005baa2
xor eax, eax
add r10d, dword [rsp + 0x54]
mov r8d, eax
mov ecx, r10d
inc r11
add rdx, 4
cmp r11, qword [rbp - 0x68]
jl 0x14005ba60
movzx esi, byte [rbp + 0x110]
jmp 0x14005bcf9
mov r9d, dword [rsp + 0x58]
xor r10d, r10d
mov r11d, dword [rsp + 0x60]
mov rdi, qword [rsp + 0x70]
inc r13d
inc rsi
mov dword [rbp + 0x108], r13d
cmp rsi, r15
jge 0x14005bcb4
mov r8d, dword [rsp + 0x54]
jmp 0x14005b9f0
xor edi, edi
mov dword [rbp + 0x108], edi
mov r13d, edi
test esi, esi
jle 0x14005bcb4
mov ecx, dword [rsp + 0x64]
mov eax, r13d
cdq
idiv r8d
sub ecx, eax
cmp dword [rsp + 0x68], ecx
jg 0x14005bc9c
mov eax, r8d
sub eax, edx
cmp r11d, eax
jg 0x14005bc9c
mov r11d, edi
mov r12, rdi
mov edi, r13d
mov sil, 1
test r9, r9
jle 0x14005bcf9
mov rax, qword [rbp - 0x58]
sub rax, r14
mov byte [rbp + 0x110], sil
mov qword [rbp - 0x30], rax
mov rsi, r14
nop
mov r15d, dword [rsi]
xor ebx, ebx
mov r9d, ebx
mov r14d, ebx
mov edx, r15d
movzx r8d, r15w
shr edx, 0x10
shr r8w, 8
movzx eax, dl
sub al, r10b
movzx ecx, dl
movzx eax, al
cmp r10d, ecx
cmovle r9d, eax
movzx eax, r8b
sub al, r10b
mov dword [rbp + 0x118], r9d
movzx eax, al
movzx r9d, r8b
cmp r10d, r9d
cmovle r14d, eax
movzx eax, r15b
sub al, r10b
mov dword [rbp - 0x50], r14d
movzx eax, al
movzx r14d, r15b
cmp r10d, r14d
cmovle ebx, eax
mov eax, 0xff
sub eax, ecx
mov dword [rbp - 0x4c], ebx
mov rbx, qword [rbp - 0x78]
cmp r10d, eax
jle 0x14005bbc9
mov r10b, 0xff
jmp 0x14005bbcc
add r10b, dl
mov ecx, dword [rsp + 0x5c]
mov eax, 0xff
sub eax, r9d
cmp ecx, eax
jle 0x14005bbe1
mov r9b, 0xff
jmp 0x14005bbe5
lea r9d, [r8 + rcx]
mov eax, 0xff
sub eax, r14d
cmp ecx, eax
jle 0x14005bbf5
mov cl, 0xff
jmp 0x14005bbf8
add cl, r15b
mov r14, qword [rsp + 0x70]
movsxd rax, edi
mov edx, dword [r14 + rax*4]
mov r8d, edx
movzx eax, dx
shr r8d, 0x10
shr ax, 8
cmp r8b, byte [rbp + 0x118]
jb 0x14005bc33
cmp r8b, r10b
ja 0x14005bc33
cmp al, byte [rbp - 0x50]
jb 0x14005bc33
cmp al, r9b
ja 0x14005bc33
cmp dl, byte [rbp - 0x4c]
jb 0x14005bc33
cmp dl, cl
jbe 0x14005bc4b
cmp qword [rbp - 0x58], 0
je 0x14005bc44
mov rax, qword [rbp - 0x30]
cmp dword [rax + rsi], 0
jne 0x14005bc4b
cmp r15d, dword [rsp + 0x58]
jne 0x14005bc7d
inc r11d
cmp r11d, dword [rsp + 0x60]
jge 0x14005bc59
inc edi
jmp 0x14005bc66
xor eax, eax
add r13d, dword [rsp + 0x54]
mov r11d, eax
mov edi, r13d
inc r12
add rsi, 4
cmp r12, qword [rbp - 0x68]
jge 0x14005bce3
mov r10d, dword [rsp + 0x5c]
jmp 0x14005bb50
mov r10d, dword [rsp + 0x5c]
xor edi, edi
mov r13d, dword [rbp + 0x108]
mov r8d, dword [rsp + 0x54]
mov r9, qword [rbp - 0x68]
mov r11d, dword [rsp + 0x60]
mov esi, dword [rbp - 0x48]
mov r14, qword [rsp + 0x78]
inc r13d
mov dword [rbp + 0x108], r13d
cmp r13d, esi
jl 0x14005bb00
mov rcx, qword [0x1401156c0]
lea rdx, [0x1400f5d6c]
xor r9d, r9d
mov byte [rsp + 0x20], 1
lea r8, [r9 - 1]
call fcn.1400c3f40
xor sil, sil
jmp 0x14005bcf9
mov edi, dword [rbp + 0xf8]
xor sil, sil
jmp 0x14005bd03
mov edi, dword [rbp + 0x108]
movzx esi, byte [rbp + 0x110]
mov r15, qword [rbp - 0x80]
jmp 0x14005bd08
movzx esi, al
mov r15, qword [rbp - 0x80]
mov edi, dword [rbp + 0x108]
mov r14, qword [rsp + 0x70]
mov rdx, qword [rbp - 0x60]
xor ecx, ecx
call qword [sym.imp.USER32.dll_ReleaseDC]
cmp byte [rsp + 0x50], 0
jne 0x14005bd25
mov rcx, qword [rbp - 0x40]
call qword [sym.imp.GDI32.dll_DeleteObject]
test r15, r15
je 0x14005bd48
mov rax, qword [rbp - 0x20]
test rax, rax
je 0x14005bd3f
mov rdx, rax
mov rcx, r15
call qword [sym.imp.GDI32.dll_SelectObject]
mov rcx, r15
call qword [sym.imp.GDI32.dll_DeleteDC]
mov rax, qword [rbp - 0x38]
test rax, rax
je 0x14005bd5a
mov rcx, rax
call qword [sym.imp.GDI32.dll_DeleteObject]
mov rax, qword [rsp + 0x78]
test rax, rax
je 0x14005bd6d
mov rcx, rax
call qword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_free]
mov rax, qword [rbp - 0x58]
test rax, rax
je 0x14005bd7f
mov rcx, rax
call qword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_free]
test r14, r14
je 0x14005b499
mov rcx, r14
call qword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_free]
test sil, sil
jne 0x14005bd9d
mov eax, 1
jmp 0x14005be17
mov rcx, qword [rbp - 0x18]
mov esi, dword [rsp + 0x54]
test rcx, rcx
je 0x14005bdc2
mov eax, edi
mov r8b, reloc.OLEAUT32.dll_SafeArrayGetElement
cdq
idiv esi
sub edx, ebx
add edx, dword [rbp + 0xf8]
movsxd rdx, edx
call fcn.140001470
mov rcx, qword [rbp - 0x10]
test rcx, rcx
je 0x14005bde4
mov eax, edi
mov r8b, reloc.OLEAUT32.dll_SafeArrayGetElement
cdq
idiv esi
sub eax, dword [rbp - 0x74]
add eax, dword [rbp + 0x100]
movsxd rdx, eax
call fcn.140001470
mov rcx, qword [0x1401156c0]
lea rdx, [0x1400e0714]
xor r9d, r9d
mov byte [rsp + 0x20], 1
lea r8, [r9 - 1]
call fcn.1400c3f40
jmp 0x14005be17
lea r9, [0x1400e0684]
xor r8d, r8d
mov rcx, r13
call fcn.14004d4a0
add rsp, 0x1a8
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbx
pop rbp
ret