Function at 0x14007fc98
Capabilities:
Read file on windows

Disassembly:
push rbp
push rbx
push rsi
push rdi
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0x1c8]
sub rsp, 0x2c8
mov rax, qword [0x1400a3ac8]
xor rax, rsp
mov qword [rbp + 0x1b8], rax
mov r15, qword [rbp + 0x230]
xor edi, edi
mov r13, r8
mov qword [rbp - 0x68], r8
mov r14, rdx
mov qword [rsp + 0x70], rcx
mov r12, rcx
mov qword [rbp - 0x78], r15
xorps xmm0, xmm0
mov qword [rsp + 0x40], rdi
lea r8d, [rdi + 0x5c]
mov qword [rsp + 0x68], rdi
xor edx, edx
mov qword [rsp + 0x60], rdi
lea rcx, [rbp + 0x80]
mov rsi, r9
mov ebx, edi
movups xmmword [rbp + 0x60], xmm0
call sub.msvcrt.dll_memset
mov qword [rsp + 0x78], rdi
mov rcx, qword [str._0_n_]
lea rax, str._0_n_
cmp rcx, rax
je 0x14007fd48
test byte [rcx + 0x1c], 2
je 0x14007fd48
cmp byte [rcx + 0x19], 5
jb 0x14007fd48
mov rcx, qword [rcx + 0x10]
lea edx, [rdi + 0xb]
lea r8, [0x140096b38]
call fcn.14000459c
xor eax, eax
mov qword [rbp + 0x70], rdi
mov dword [rsp + 0x54], eax
lea rcx, [r13 + 8]
xorps xmm0, xmm0
mov qword [rbp + 0x78], rdi
mov rax, r13
mov dword [rsp + 0x4c], edi
neg rax
movups xmmword [rbp - 0x48], xmm0
sbb rax, rax
xor edx, edx
and rax, rcx
lea rcx, [rbp - 0x20]
mov qword [rbp - 0x70], rax
xor eax, eax
movups xmmword [rbp - 0x38], xmm0
mov dword [rbp - 0x28], eax
lea r8d, [rax + 0x7c]
call sub.msvcrt.dll_memset
xor eax, eax
xor r9d, r9d
mov qword [rsp + 0x30], rax
mov edx, 0x80000000
mov dword [rsp + 0x28], 0x80
mov rcx, rsi
mov dword [rsp + 0x20], 3
lea r8d, [rax + 1]
call qword [sym.imp.KERNEL32.dll_CreateFileW]
nop dword [rax + rax]
mov qword [rsp + 0x58], rax
cmp rax, 0xffffffffffffffff
jne 0x14007fe1e
mov rcx, qword [str._0_n_]
lea rax, str._0_n_
cmp rcx, rax
je 0x14007fe09
test byte [rcx + 0x1c], 2
je 0x14007fe09
cmp byte [rcx + 0x19], 2
jb 0x14007fe09
mov rcx, qword [rcx + 0x10]
lea r8, [0x140096b38]
xor r14d, r14d
mov edx, 0xc
mov r9, rsi
mov dword [rsp + 0x20], r14d
call fcn.140004880
call qword [sym.imp.KERNEL32.dll_GetLastError]
nop dword [rax + rax]
mov ebx, eax
mov esi, edi
jmp 0x140080c81
xor esi, esi
lea r9, [rsp + 0x48]
lea rdx, [rbp - 0x48]
mov qword [rsp + 0x20], rsi
mov rcx, rax
lea r8d, [rsi + 0x24]
call qword [sym.imp.KERNEL32.dll_ReadFile]
nop dword [rax + rax]
test eax, eax
jne 0x14007fe89
call qword [sym.imp.KERNEL32.dll_GetLastError]
nop dword [rax + rax]
mov ebx, eax
mov rcx, qword [str._0_n_]
lea rax, str._0_n_
cmp rcx, rax
je 0x140080c4a
test byte [rcx + 0x1c], 2
je 0x140080c4a
cmp byte [rcx + 0x19], 2
jb 0x140080c4a
lea edx, [rsi + 0xd]
mov r9d, ebx
jmp 0x140080c3a
cmp dword [rsp + 0x48], 0x24
jne 0x140080c0e
mov rax, qword [str.FAXCOVER_VER005w]
cmp rax, qword [rbp - 0x48]
jne 0x140080c0e
mov rax, qword [0x1400a6938]
cmp rax, qword [rbp - 0x40]
jne 0x140080c0e
mov eax, dword [0x1400a6940]
cmp eax, dword [rbp - 0x38]
jne 0x140080c0e
mov ecx, dword [rbp - 0x34]
call qword [sym.imp.msvcrt.dll_malloc]
nop dword [rax + rax]
mov qword [rbp - 0x80], rax
test rax, rax
jne 0x14007ff1b
lea r15d, [rax + 8]
mov ebx, r15d
mov rcx, qword [str._0_n_]
lea rax, str._0_n_
cmp rcx, rax
je 0x140080c4a
test byte [rcx + 0x1c], 2
je 0x140080c4a
cmp byte [rcx + 0x19], 2
jb 0x140080c4a
lea edx, [r15 + 7]
mov r9d, r15d
jmp 0x140080c3a
mov r8d, dword [rbp - 0x34]
lea r9, [rsp + 0x48]
mov rcx, qword [rsp + 0x58]
mov rdx, rax
mov qword [rsp + 0x20], rsi
call qword [sym.imp.KERNEL32.dll_ReadFile]
nop dword [rax + rax]
test eax, eax
je 0x140080bcb
mov eax, dword [rsp + 0x48]
cmp dword [rbp - 0x34], eax
jne 0x140080bcb
mov r15d, 8
test r12, r12
je 0x1400803f6
mov rcx, r14
call qword [sym.imp.GDI32.dll_CreateRectRgnIndirect]
nop dword [rax + rax]
mov qword [rsp + 0x78], rax
test rax, rax
jne 0x14007ffcf
call qword [sym.imp.KERNEL32.dll_GetLastError]
nop dword [rax + rax]
mov ebx, eax
mov rcx, qword [str._0_n_]
lea rax, str._0_n_
cmp rcx, rax
je 0x1400808d7
test byte [rcx + 0x1c], 2
je 0x1400808d7
cmp byte [rcx + 0x19], 2
jb 0x1400808d7
lea edx, [r15 + 9]
mov r9d, ebx
mov rcx, qword [rcx + 0x10]
lea r8, [0x140096b38]
call fcn.140004994
jmp 0x1400808d7
mov rdx, rax
mov rcx, r12
call qword [sym.imp.GDI32.dll_SelectClipRgn]
nop dword [rax + rax]
test eax, eax
jne 0x14008001b
lea ebx, [rax + 0x1f]
mov rcx, qword [str._0_n_]
lea rax, str._0_n_
cmp rcx, rax
je 0x1400808d7
test byte [rcx + 0x1c], 2
je 0x1400808d7
cmp byte [rcx + 0x19], 2
jb 0x1400808d7
lea edx, [rbx - 0xd]
xor r9d, r9d
jmp 0x14007ffba
mov rcx, r12
call qword [sym.imp.GDI32.dll_SaveDC]
nop dword [rax + rax]
mov dword [rsp + 0x54], eax
test eax, eax
jne 0x140080075
call qword [sym.imp.KERNEL32.dll_GetLastError]
nop dword [rax + rax]
mov ebx, eax
mov rcx, qword [str._0_n_]
lea rax, str._0_n_
cmp rcx, rax
je 0x1400808d7
test byte [rcx + 0x1c], 2
je 0x1400808d7
cmp byte [rcx + 0x19], 2
jb 0x1400808d7
mov edx, 0x13
jmp 0x14007ffb7
mov ecx, dword [rbp - 0x34]
test ecx, ecx
jne 0x1400800c2
lea ebx, [rcx + 0x12]
mov rcx, qword [str._0_n_]
lea rax, str._0_n_
cmp rcx, rax
je 0x1400808d7
test byte [rcx + 0x1c], 2
je 0x1400808d7
cmp byte [rcx + 0x19], 2
jb 0x1400808d7
mov rcx, qword [rcx + 0x10]
lea edx, [rbx + 2]
lea r8, [0x140096b38]
call fcn.14000459c
jmp 0x1400808d7
mov rdx, qword [rbp - 0x80]
call qword [sym.imp.GDI32.dll_SetEnhMetaFileBits]
nop dword [rax + rax]
mov qword [rsp + 0x40], rax
mov rsi, rax
test rax, rax
jne 0x140080120
call qword [sym.imp.KERNEL32.dll_GetLastError]
nop dword [rax + rax]
mov ebx, eax
mov rcx, qword [str._0_n_]
lea rax, str._0_n_
cmp rcx, rax
je 0x1400808d7
test byte [rcx + 0x1c], 2
je 0x1400808d7
cmp byte [rcx + 0x19], 2
jb 0x1400808d7
lea edx, [rsi + 0x15]
jmp 0x14007ffb7
lea r8, [rbp + 0x140]
mov edx, 0x6c
mov rcx, rsi
call qword [sym.imp.GDI32.dll_GetEnhMetaFileHeader]
nop dword [rax + rax]
test eax, eax
jne 0x140080195
call qword [sym.imp.KERNEL32.dll_GetLastError]
nop dword [rax + rax]
mov ebx, eax
mov rcx, qword [str._0_n_]
lea rax, str._0_n_
cmp rcx, rax
je 0x140080884
test byte [rcx + 0x1c], 2
je 0x140080884
cmp byte [rcx + 0x19], 2
jb 0x140080884
mov edx, 0x16
mov rcx, qword [rcx + 0x10]
lea r8, [0x140096b38]
mov r9d, ebx
call fcn.140004994
jmp 0x140080884
mov r8, r14
mov rdx, rsi
mov rcx, r12
call qword [sym.imp.GDI32.dll_PlayEnhMetaFile]
nop dword [rax + rax]
test eax, eax
jne 0x1400801ee
call qword [sym.imp.KERNEL32.dll_GetLastError]
nop dword [rax + rax]
mov ebx, eax
mov rcx, qword [str._0_n_]
lea rax, str._0_n_
cmp rcx, rax
je 0x140080884
test byte [rcx + 0x1c], 2
je 0x140080884
cmp byte [rcx + 0x19], 2
jb 0x140080884
mov edx, 0x17
jmp 0x14008017d
xor edx, edx
mov rcx, r12
call qword [sym.imp.GDI32.dll_RestoreDC]
nop dword [rax + rax]
mov edx, 1
mov rcx, r12
call qword [sym.imp.GDI32.dll_SetBkMode]
nop dword [rax + rax]
mov ecx, 0xffffffff
cmp eax, ecx
jne 0x14008025f
call qword [sym.imp.KERNEL32.dll_GetLastError]
nop dword [rax + rax]
mov ebx, eax
mov rcx, qword [str._0_n_]
lea rax, str._0_n_
cmp rcx, rax
je 0x140080884
test byte [rcx + 0x1c], 2
je 0x140080884
cmp byte [rcx + 0x19], 2
jb 0x140080884
mov edx, 0x18
jmp 0x14008017d
mov edx, r15d
mov rcx, r12
call qword [sym.imp.GDI32.dll_SetMapMode]
nop dword [rax + rax]
test eax, eax
jne 0x1400802b8
call qword [sym.imp.KERNEL32.dll_GetLastError]
nop dword [rax + rax]
mov ebx, eax
mov rcx, qword [str._0_n_]
lea rax, str._0_n_
cmp rcx, rax
je 0x140080884
test byte [rcx + 0x1c], 2
je 0x140080884
cmp byte [rcx + 0x19], 2
jb 0x140080884
mov edx, 0x19
jmp 0x14008017d
mov r8d, dword [rbp - 0x28]
lea r9, [rbp - 0x60]
mov edx, dword [rbp - 0x2c]
neg r8d
mov rcx, r12
call qword [sym.imp.GDI32.dll_SetWindowExtEx]
nop dword [rax + rax]
test eax, eax
jne 0x14008031c
call qword [sym.imp.KERNEL32.dll_GetLastError]
nop dword [rax + rax]
mov ebx, eax
mov rcx, qword [str._0_n_]
lea rax, str._0_n_
cmp rcx, rax
je 0x140080884
test byte [rcx + 0x1c], 2
je 0x140080884
cmp byte [rcx + 0x19], 2
jb 0x140080884
mov edx, 0x1a
jmp 0x14008017d
mov r8d, dword [r14 + 0xc]
lea r9, [rbp - 0x58]
mov edx, dword [r14 + 8]
mov rcx, r12
sub r8d, dword [r14 + 4]
sub edx, dword [r14]
call qword [sym.imp.GDI32.dll_SetViewportExtEx]
nop dword [rax + rax]
test eax, eax
jne 0x140080385
call qword [sym.imp.KERNEL32.dll_GetLastError]
nop dword [rax + rax]
mov ebx, eax
mov rcx, qword [str._0_n_]
lea rax, str._0_n_
cmp rcx, rax
je 0x140080884
test byte [rcx + 0x1c], 2
je 0x140080884
cmp byte [rcx + 0x19], 2
jb 0x140080884
mov edx, 0x1b
jmp 0x14008017d
mov eax, dword [rbp - 0x28]
lea r9, [rbp - 0x50]
cdq
mov rcx, r12
sub eax, edx
sar eax, 1
mov r8d, eax
mov eax, dword [rbp - 0x2c]
cdq
sub eax, edx
sar eax, 1
neg eax
mov edx, eax
call qword [sym.imp.GDI32.dll_SetWindowOrgEx]
nop dword [rax + rax]
test eax, eax
jne 0x1400803f9
call qword [sym.imp.KERNEL32.dll_GetLastError]
nop dword [rax + rax]
mov ebx, eax
mov rcx, qword [str._0_n_]
lea rax, str._0_n_
cmp rcx, rax
je 0x140080884
test byte [rcx + 0x1c], 2
je 0x140080884
cmp byte [rcx + 0x19], 2
jb 0x140080884
mov edx, 0x1c
jmp 0x14008017d
mov rsi, rbx
mov ecx, 0x40
call qword [sym.imp.msvcrt.dll_malloc]
nop dword [rax + rax]
mov qword [rsp + 0x68], rax
mov r14, rax
test rax, rax
jne 0x140080461
mov ebx, r15d
mov rcx, qword [str._0_n_]
lea rax, str._0_n_
cmp rcx, rax
je 0x14008087f
test byte [rcx + 0x1c], 2
je 0x14008087f
cmp byte [rcx + 0x19], 2
jb 0x14008087f
mov rcx, qword [rcx + 0x10]
lea edx, [r14 + 0x1d]
mov r9d, r15d
lea r8, [0x140096b38]
call fcn.140004994
jmp 0x14008087f
mov esi, edi
mov dword [rsp + 0x50], edi
cmp dword [rbp - 0x30], edi
jle 0x1400807c3
mov rcx, qword [rsp + 0x58]
lea r9, [rsp + 0x48]
mov r8d, 0x7c
mov qword [rsp + 0x20], rdi
lea rdx, [rbp - 0x20]
call qword [sym.imp.KERNEL32.dll_ReadFile]
nop dword [rax + rax]
test eax, eax
je 0x140080b71
cmp dword [rsp + 0x48], 0x7c
jne 0x140080b71
mov r8d, dword [rbp + 0x58]
lea eax, [r8 + 1]
cmp eax, r8d
jb 0x140080b27
mov edi, eax
mov eax, 0xffffffff
add rdi, rdi
cmp rdi, rax
ja 0x140080b25
test edi, edi
js 0x140080b25
cmp edi, 0x40
jle 0x140080500
movsxd rdx, edi
mov rcx, r14
call qword [sym.imp.msvcrt.dll_realloc]
nop dword [rax + rax]
test rax, rax
je 0x140080833
mov r8d, dword [rbp + 0x58]
mov r14, rax
mov qword [rsp + 0x68], rax
mov rcx, qword [rsp + 0x58]
lea r9, [rsp + 0x48]
xor edi, edi
mov rdx, r14
mov qword [rsp + 0x20], rdi
call qword [sym.imp.KERNEL32.dll_ReadFile]
nop dword [rax + rax]
test eax, eax
je 0x140080ae2
mov eax, dword [rbp + 0x58]
cmp dword [rsp + 0x48], eax
jne 0x140080ae2
mov rdi, qword [rsp + 0x60]
xor esi, esi
shr rax, 1
mov word [r14 + rax*2], si
test rdi, rdi
je 0x140080558
mov rcx, rdi
call fcn.14006a328
mov edi, esi
mov qword [rsp + 0x60], rsi
test r14, r14
je 0x140080576
mov rcx, r14
call fcn.14006bd20
mov qword [rsp + 0x60], rax
mov rdi, rax
test rax, rax
je 0x1400808ec
test r12, r12
je 0x1400805b7
mov r9d, dword [rbp - 0x14]
mov eax, r9d
mov edx, dword [rbp - 0x1c]
cmp edx, r9d
mov r8d, dword [rbp - 0x18]
mov ecx, dword [rbp - 0x20]
cmovg eax, edx
cmp ecx, r8d
mov dword [rbp + 0x64], eax
mov eax, r8d
cmovl eax, ecx
cmp edx, r9d
mov dword [rbp + 0x60], eax
cmovl r9d, edx
cmp ecx, r8d
mov dword [rbp + 0x6c], r9d
cmovg r8d, ecx
mov dword [rbp + 0x68], r8d
movzx edx, word [rbp + 0x54]
xor r9d, r9d
test dx, dx
je 0x140080681
mov eax, r9d
lea ecx, [r9 + 1]
lea r8, [0x140096af8]
cmp dx, word [r8 + rsi*2]
je 0x1400805ed
inc eax
inc rsi
add ecx, ecx
cmp eax, 0x1d
jb 0x1400805ce
mov rsi, r9
jmp 0x140080603
test r13, r13
je 0x1400805fc
mov rax, qword [rbp - 0x70]
mov rsi, qword [rax + rsi*8]
jmp 0x1400805ff
mov rsi, r9
or dword [rsp + 0x4c], ecx
mov eax, 0x80f
cmp dx, ax
jne 0x140080681
test r12, r12
je 0x140080681
movaps xmm0, xmmword [rbp + 0x60]
lea rdx, [rbp + 0x70]
mov r8d, 2
movdqa xmmword [rbp + 0x70], xmm0
mov rcx, r12
call qword [sym.imp.GDI32.dll_LPtoDP]
nop dword [rax + rax]
lea rdx, [rbp + 0x80]
lea rcx, [rbp - 8]
call fcn.14007f518
mov ebx, eax
test eax, eax
jne 0x14008092e
lea edx, [rax + 0x5a]
mov rcx, r12
call qword [sym.imp.GDI32.dll_GetDeviceCaps]
nop dword [rax + rax]
mov ecx, dword [rbp + 0x80]
lea r8d, [rbx + 0x64]
mov edx, eax
call qword [sym.imp.KERNEL32.dll_MulDiv]
nop dword [rax + rax]
mov dword [rbp + 0x80], eax
xor r9d, r9d
cmp word [rdi], r9w
cmovne rsi, rdi
xor edi, edi
test r12, r12
je 0x1400807b0
test rsi, rsi
je 0x1400807b0
mov edx, dword [rbp - 0x10]
mov rcx, r12
call qword [sym.imp.GDI32.dll_SetTextColor]
nop dword [rax + rax]
mov r13d, eax
mov eax, 0xffffffff
cmp r13d, eax
je 0x140080a8c
lea rdx, [rbp + 0xe0]
lea rcx, [rbp - 8]
call fcn.14007f518
mov ebx, eax
test eax, eax
jne 0x140080a5a
lea rcx, [rbp + 0xe0]
call qword [sym.imp.GDI32.dll_CreateFontIndirectW]
nop dword [rax + rax]
mov rdi, rax
test rax, rax
je 0x140080a1a
mov rdx, rax
mov rcx, r12
call qword [sym.imp.GDI32.dll_SelectObject]
nop dword [rax + rax]
mov r12, rax
xor eax, eax
test r12, r12
je 0x1400809d7
mov r14d, eax
cmp word [rbp + 0x54], ax
je 0x14008073a
mov rdx, rsi
mov ecx, 0x800
call fcn.1400712f0
test eax, eax
mov ecx, 0x20000
cmovne r14d, ecx
mov eax, dword [rbp - 0xc]
lea r9, [rbp + 0x60]
mov rcx, qword [rsp + 0x70]
or eax, r14d
or eax, 0x810
or r8d, 0xffffffff
mov rdx, rsi
mov dword [rsp + 0x20], eax
call qword [sym.imp.USER32.dll_DrawTextW]
nop dword [rax + rax]
test eax, eax
je 0x140080976
mov rdx, r12
mov r12, qword [rsp + 0x70]
mov rcx, r12
call qword [sym.imp.GDI32.dll_SelectObject]
nop dword [rax + rax]
mov edx, r13d
mov rcx, r12
call qword [sym.imp.GDI32.dll_SetTextColor]
nop dword [rax + rax]
mov rcx, rdi
call qword [sym.imp.GDI32.dll_DeleteObject]
nop dword [rax + rax]
mov r13, qword [rbp - 0x68]
xor edi, edi
mov r14, qword [rsp + 0x68]
mov esi, dword [rsp + 0x50]
inc esi
mov dword [rsp + 0x50], esi
cmp esi, dword [rbp - 0x30]
jl 0x140080470
mov rcx, qword [rsp + 0x58]
lea r9, [rsp + 0x48]
mov r8d, 6
mov qword [rsp + 0x20], rdi
lea rdx, [rbp + 0x1b0]
call qword [sym.imp.KERNEL32.dll_ReadFile]
nop dword [rax + rax]
test eax, eax
je 0x1400807fc
cmp dword [rsp + 0x48], 6
je 0x14008087a
xor edi, edi
call qword [sym.imp.KERNEL32.dll_GetLastError]
nop dword [rax + rax]
mov ebx, eax
mov rcx, qword [str._0_n_]
lea rax, str._0_n_
cmp rcx, rax
je 0x14008087a
test byte [rcx + 0x1c], 2
je 0x14008087a
cmp byte [rcx + 0x19], 2
jb 0x14008087a
mov edx, 0x2c
jmp 0x140080aca
mov ebx, r15d
mov rcx, qword [str._0_n_]
lea rax, str._0_n_
cmp rcx, rax
je 0x140080876
test byte [rcx + 0x1c], 2
je 0x140080876
cmp byte [rcx + 0x19], 2
jb 0x140080876
mov rcx, qword [rcx + 0x10]
lea r8, [0x140096b38]
mov edx, 0x20
mov dword [rsp + 0x28], r15d
mov r9d, esi
mov dword [rsp + 0x20], edi
call fcn.140041aac
xor edx, edx
mov edi, edx
mov rsi, qword [rsp + 0x40]
test rsi, rsi
je 0x140080893
mov rcx, rsi
call qword [sym.imp.GDI32.dll_DeleteEnhMetaFile]
nop dword [rax + rax]
mov rax, qword [rsp + 0x60]
test rax, rax
je 0x1400808a5
mov rcx, rax
call fcn.14006a328
test rdi, rdi
je 0x1400808b9
mov rcx, rdi
call qword [sym.imp.GDI32.dll_DeleteObject]
nop dword [rax + rax]
mov rax, qword [rsp + 0x68]
test rax, rax
je 0x1400808d2
mov rcx, rax
call qword [sym.imp.msvcrt.dll_free]
nop dword [rax + rax]
mov r12, qword [rsp + 0x70]
mov rcx, qword [rbp - 0x80]
call qword [sym.imp.msvcrt.dll_free]
nop dword [rax + rax]
jmp 0x140080c4a
mov ebx, r15d
mov rcx, qword [str._0_n_]
lea rax, str._0_n_
cmp rcx, rax
je 0x140080926
test byte [rcx + 0x1c], 2
je 0x140080926
cmp byte [rcx + 0x19], 2
jb 0x140080926
mov rcx, qword [rcx + 0x10]
lea r8, [0x140096b38]
mov edx, 0x22
mov r9d, r15d
call fcn.140004994
mov rdi, rsi
jmp 0x14008087a
mov rcx, qword [str._0_n_]
lea rax, str._0_n_
cmp rcx, rax
je 0x140080876
test byte [rcx + 0x1c], 2
je 0x140080876
cmp byte [rcx + 0x19], 2
jb 0x140080876
mov rcx, qword [rcx + 0x10]
lea r8, [0x140096b38]
mov edx, 0x23
mov r9d, ebx
call fcn.140004994
jmp 0x140080876
call qword [sym.imp.KERNEL32.dll_GetLastError]
nop dword [rax + rax]
mov ebx, eax
mov rcx, qword [str._0_n_]
lea rax, str._0_n_
cmp rcx, rax
je 0x14008087a
test byte [rcx + 0x1c], 2
je 0x14008087a
cmp byte [rcx + 0x19], 2
jb 0x14008087a
mov r9d, dword [rsp + 0x50]
lea r8, [0x140096b38]
mov rcx, qword [rcx + 0x10]
mov edx, 0x2b
mov dword [rsp + 0x28], ebx
mov qword [rsp + 0x20], rsi
call fcn.14003794c
jmp 0x14008087a
call qword [sym.imp.KERNEL32.dll_GetLastError]
nop dword [rax + rax]
mov ebx, eax
mov rcx, qword [str._0_n_]
lea rax, str._0_n_
cmp rcx, rax
je 0x14008087a
test byte [rcx + 0x1c], 2
je 0x14008087a
cmp byte [rcx + 0x19], 2
jb 0x14008087a
mov edx, 0x27
jmp 0x140080aca
call qword [sym.imp.KERNEL32.dll_GetLastError]
nop dword [rax + rax]
mov ebx, eax
mov rcx, qword [str._0_n_]
lea rax, str._0_n_
cmp rcx, rax
je 0x14008087a
test byte [rcx + 0x1c], 2
je 0x14008087a
cmp byte [rcx + 0x19], 2
jb 0x14008087a
mov edx, 0x26
jmp 0x140080aca
mov rcx, qword [str._0_n_]
lea rax, str._0_n_
cmp rcx, rax
je 0x14008087a
test byte [rcx + 0x1c], 2
je 0x14008087a
cmp byte [rcx + 0x19], 2
jb 0x14008087a
mov edx, 0x25
jmp 0x140080aca
call qword [sym.imp.KERNEL32.dll_GetLastError]
nop dword [rax + rax]
mov ebx, eax
mov rcx, qword [str._0_n_]
lea rax, str._0_n_
cmp rcx, rax
je 0x14008087a
test byte [rcx + 0x1c], 2
je 0x14008087a
cmp byte [rcx + 0x19], 2
jb 0x14008087a
mov edx, 0x24
mov rcx, qword [rcx + 0x10]
lea r8, [0x140096b38]
mov r9d, ebx
call fcn.140004994
jmp 0x14008087a
call qword [sym.imp.KERNEL32.dll_GetLastError]
nop dword [rax + rax]
mov ebx, eax
mov rcx, qword [str._0_n_]
lea rax, str._0_n_
cmp rcx, rax
je 0x14008087a
test byte [rcx + 0x1c], 2
je 0x14008087a
cmp byte [rcx + 0x19], 2
jb 0x14008087a
mov edx, 0x21
jmp 0x140080baf
xor edi, edi
mov ebx, 0x216
mov rcx, qword [str._0_n_]
lea rax, str._0_n_
cmp rcx, rax
je 0x14008087a
test byte [rcx + 0x1c], 2
je 0x14008087a
cmp byte [rcx + 0x19], 2
jb 0x14008087a
mov rcx, qword [rcx + 0x10]
lea r8, [0x140096b38]
mov edx, 0x1f
call fcn.14000459c
jmp 0x14008087a
call qword [sym.imp.KERNEL32.dll_GetLastError]
nop dword [rax + rax]
mov ebx, eax
mov rcx, qword [str._0_n_]
lea rax, str._0_n_
cmp rcx, rax
je 0x14008087a
test byte [rcx + 0x1c], 2
je 0x14008087a
cmp byte [rcx + 0x19], 2
jb 0x14008087a
mov edx, 0x1e
mov rcx, qword [rcx + 0x10]
lea r8, [0x140096b38]
mov r9d, esi
mov dword [rsp + 0x20], ebx
call fcn.140023bdc
jmp 0x14008087a
call qword [sym.imp.KERNEL32.dll_GetLastError]
nop dword [rax + rax]
mov ebx, eax
mov rcx, qword [str._0_n_]
lea rax, str._0_n_
cmp rcx, rax
je 0x1400808d7
test byte [rcx + 0x1c], 2
je 0x1400808d7
cmp byte [rcx + 0x19], 2
jb 0x1400808d7
mov edx, 0x10
jmp 0x14007ffb7
mov r9d, 0xb
mov ebx, r9d
mov rcx, qword [str._0_n_]
lea rax, str._0_n_
cmp rcx, rax
je 0x140080c4a
test byte [rcx + 0x1c], 2
je 0x140080c4a
cmp byte [rcx + 0x19], 2
jb 0x140080c4a
lea edx, [r9 + 3]
mov rcx, qword [rcx + 0x10]
lea r8, [0x140096b38]
call fcn.140004994
mov rcx, qword [rsp + 0x58]
mov esi, dword [rsp + 0x4c]
mov rdi, qword [rsp + 0x78]
call qword [sym.imp.KERNEL32.dll_CloseHandle]
nop dword [rax + rax]
mov eax, dword [rsp + 0x54]
test eax, eax
je 0x140080c7d
mov edx, eax
mov rcx, r12
call qword [sym.imp.GDI32.dll_RestoreDC]
nop dword [rax + rax]
mov r15, qword [rbp - 0x78]
test ebx, ebx
jne 0x140080d03
test r15, r15
je 0x140080d03
movzx eax, word [rbp + 0x1b2]
movaps xmm0, xmmword [rbp + 0x70]
movaps xmm1, xmmword [rbp + 0x90]
movdqu xmmword [r15 + 4], xmm0
mov word [r15 + 0x16], ax
movaps xmm0, xmmword [rbp + 0x80]
movzx eax, word [rbp + 0x1b4]
movups xmmword [r15 + 0x18], xmm0
mov word [r15 + 0x14], ax
movaps xmm0, xmmword [rbp + 0xa0]
mov eax, dword [rbp + 0xd8]
movups xmmword [r15 + 0x28], xmm1
mov dword [r15], esi
movaps xmm1, xmmword [rbp + 0xb0]
movups xmmword [r15 + 0x38], xmm0
movaps xmm0, xmmword [rbp + 0xc0]
movups xmmword [r15 + 0x48], xmm1
movsd xmm1, qword [rbp + 0xd0]
movups xmmword [r15 + 0x58], xmm0
movsd qword [r15 + 0x68], xmm1
mov dword [r15 + 0x70], eax
test rdi, rdi
je 0x140080d17
mov rcx, rdi
call qword [sym.imp.GDI32.dll_DeleteObject]
nop dword [rax + rax]
mov eax, ebx
mov rcx, qword [rbp + 0x1b8]
xor rcx, rsp
call fcn.140001b10
add rsp, 0x2c8
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbx
pop rbp
ret