Function at 0x1800983a0
Capabilities:
Accept command line arguments
Check for time delay via gettickcount

Disassembly:
mov rax, rsp
push rbp
push r14
push r15
lea rbp, [rsp - 0x80]
sub rsp, 0x180
mov qword [rsp + 0x58], 0xfffffffffffffffe
mov qword [rax + 8], rbx
mov qword [rax + 0x10], rsi
mov qword [rax + 0x20], rdi
mov rax, qword [0x1806c4cd8]
xor rax, rsp
mov qword [rbp + 0x78], rax
mov rsi, r8
mov rdi, rcx
call qword [sym.imp.KERNEL32.dll_GetTickCount]
lea rcx, [0x1801239a0]
call qword [sym.imp.KERNEL32.dll_SetUnhandledExceptionFilter]
call fcn.180132030
mov rbx, rax
mov qword [rsp + 0x40], rax
test rax, rax
je 0x180098411
mov rcx, qword [rax]
test rcx, rcx
je 0x180098411
call qword [sym.imp.KERNEL32.dll_EnterCriticalSection]
nop
cmp byte [rbx + 8], 0
jne 0x18009841f
mov byte [rbx + 8], 1
mov qword [rbx + 0x10], rdi
mov rcx, qword [rbx]
test rcx, rcx
je 0x18009842d
call qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
xor ebx, ebx
mov qword [rsp + 0x40], rbx
lea ecx, [rbx + 1]
call qword [sym.imp.KERNEL32.dll_SetErrorMode]
lea rcx, [rsp + 0x40]
call fcn.180115ea0
nop
mov dword [rsp + 0x60], 1
mov qword [rsp + 0x68], rbx
mov qword [rsp + 0x70], rbx
lea r8, [rsp + 0x30]
lea rdx, [rsp + 0x60]
lea rcx, [rsp + 0x48]
call qword [sym.imp.gdiplus.dll_GdiplusStartup]
test eax, eax
sete byte [rsp + 0x50]
cmp byte [rsp + 0x50], bl
jne 0x180098485
lea rdi, [rbx - 1]
jmp 0x18009895d
xor r9d, r9d
xor r8d, r8d
xor edx, edx
xor ecx, ecx
call qword [sym.imp.USER32.dll_DefWindowProcW]
mov dword [rsp + 0x30], 8
mov dword [rsp + 0x34], 0x7ff
lea rcx, [rsp + 0x30]
call qword [sym.imp.COMCTL32.dll_InitCommonControlsEx]
call fcn.180099520
mov rcx, rax
call fcn.180095930
call fcn.180132160
call fcn.180132200
nop
lea rax, vtable.WTL::CMessageFilter.0
mov qword [rbp - 0x80], rax
lea rax, vtable.WTL::CIdleHandler.0
mov qword [rbp - 0x78], rax
lea r14, vtable.RC::RCImagePrinterApp.1.0
mov qword [rbp - 0x80], r14
lea r15, vtable.RC::RCImagePrinterApp.0
mov qword [rbp - 0x78], r15
lea rax, [rbp - 0x70]
mov qword [rsp + 0x30], rax
lea rax, vtable.WTL::CMessageLoop.0
mov qword [rbp - 0x70], rax
mov qword [rbp - 0x68], rbx
mov qword [rbp - 0x60], 0
mov qword [rbp - 0x58], rbx
mov qword [rbp - 0x50], 0
mov qword [rbp - 0x18], rbx
lea rax, [rbp - 0x10]
mov qword [rsp + 0x30], rax
mov rdi, 0xffffffffffffffff
mov dword [rbp - 0x10], edi
mov byte [rbp - 0xc], 0
mov qword [rbp - 8], rbx
xorps xmm0, xmm0
movdqa xmmword [rbp], xmm0
movdqa xmmword [rbp + 0x10], xmm0
mov qword [rbp + 0x20], rbx
mov qword [rbp + 0x28], rbx
movdqa xmmword [rbp + 0x40], xmm0
movdqa xmm1, xmmword [0x180601b00]
movdqa xmmword [rbp + 0x40], xmm1
mov word [rbp + 0x30], bx
lea r8d, [rdi + 0x12]
lea rdx, str.RCPrinterFrameWnd
lea rcx, [rbp + 0x30]
call fcn.18007da60
nop
xorps xmm0, xmm0
movdqa xmmword [rbp + 0x60], xmm0
movdqa xmm1, xmmword [0x180601b00]
movdqa xmmword [rbp + 0x60], xmm1
mov word [rbp + 0x50], bx
lea r8d, [rdi + 0x3a]
lea rdx, str.RCPRINTER_INSTANCE_9923BBA4_B627_40A9_ADC7_46837CF89588
lea rcx, [rbp + 0x50]
call fcn.18007da60
nop
lea ecx, [rdi + 2]
call qword [sym.imp.KERNEL32.dll_SetErrorMode]
mov dword [rsp + 0x30], ebx
call qword [sym.imp.KERNEL32.dll_GetCommandLineW]
mov rcx, rax
lea rdx, [rsp + 0x30]
call qword [sym.imp.SHELL32.dll_CommandLineToArgvW]
test rax, rax
je 0x180098758
mov r8, rax
lea rdx, [rsp + 0x30]
lea rcx, [rbp - 0x80]
call fcn.180095ed0
test al, al
je 0x180098758
xorps xmm0, xmm0
movdqu xmmword [rsp + 0x70], xmm0
movdqa xmm1, xmmword [0x180601b00]
movdqu xmmword [rsp + 0x70], xmm1
mov word [rsp + 0x60], bx
nop dword [rax]
inc rdi
cmp word [rsi + rdi*2], 0
jne 0x180098610
mov r8, rdi
mov rdx, rsi
lea rcx, [rsp + 0x60]
call fcn.18007da60
nop
cmp qword [rbp - 0x18], 0
je 0x180098700
mov esi, 1
mov edi, ebx
nop dword [rax]
test esi, esi
je 0x18009867f
nop dword [rax]
nop dword [rax + rax]
mov dword [rsp + 0x20], ebx
xor r9d, r9d
xor r8d, r8d
xor edx, edx
lea rcx, [rbp - 0x48]
call qword [sym.imp.USER32.dll_PeekMessageW]
test eax, eax
jne 0x18009867f
mov edx, edi
lea rcx, [rbp - 0x70]
mov rax, qword [rbp - 0x70]
call qword [rax + 8]
inc edi
test eax, eax
jne 0x180098650
mov esi, ebx
xor r9d, r9d
xor r8d, r8d
xor edx, edx
lea rcx, [rbp - 0x48]
call qword [sym.imp.USER32.dll_GetMessageW]
cmp eax, 0xffffffff
je 0x180098640
test eax, eax
je 0x180098700
lea rdx, [rbp - 0x48]
lea rcx, [rbp - 0x70]
mov rax, qword [rbp - 0x70]
call qword [rax]
test eax, eax
jne 0x1800986c0
lea rcx, [rbp - 0x48]
call qword [sym.imp.USER32.dll_TranslateMessage]
lea rcx, [rbp - 0x48]
call qword [sym.imp.USER32.dll_DispatchMessageW]
mov eax, dword [rbp - 0x40]
sub eax, 0xf
je 0x1800986f0
sub eax, 0x91
je 0x1800986f0
sub eax, 0x78
je 0x1800986f0
cmp eax, 0xe8
je 0x1800986f0
mov ecx, 1
mov esi, ecx
mov eax, ebx
test ecx, ecx
cmove eax, edi
mov edi, eax
jmp 0x180098640
mov ecx, ebx
mov eax, ebx
test ebx, ebx
cmove eax, edi
mov edi, eax
jmp 0x180098640
mov rdx, qword [rsp + 0x78]
cmp rdx, 8
jb 0x180098745
lea rdx, [rdx*2 + 2]
mov rcx, qword [rsp + 0x60]
mov rax, rcx
cmp rdx, 0x1000
jb 0x180098740
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x180098740
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.180468ddc
movdqa xmm0, xmmword [0x180601b00]
movdqu xmmword [rsp + 0x70], xmm0
mov word [rsp + 0x60], bx
lea rcx, [rbp - 0x80]
call fcn.180097b10
nop
mov qword [rbp - 0x80], r14
mov qword [rbp - 0x78], r15
lea rcx, [rbp + 0x50]
call fcn.18007d9c0
nop
lea rcx, [rbp + 0x30]
call fcn.18007d9c0
nop
mov rdi, qword [rbp + 0x28]
test rdi, rdi
je 0x18009879d
mov rcx, rdi
call fcn.180122d10
mov edx, 0x58
mov rcx, rdi
call fcn.180468ddc
nop
mov rcx, qword [rbp + 0x20]
test rcx, rcx
je 0x1800987ad
mov rax, qword [rcx]
call qword [rax + 8]
nop
mov rcx, qword [rbp + 0x18]
test rcx, rcx
je 0x1800987ca
call qword [sym.imp.KERNEL32.dll_FreeLibrary]
mov rcx, qword [rbp + 0x18]
test eax, eax
cmovne rcx, rbx
mov qword [rbp + 0x18], rcx
lea rax, [rbp - 0x10]
mov qword [rsp + 0x30], rax
lea rcx, [rbp - 8]
call fcn.180098dc0
nop
mov rcx, qword [rbp - 0x18]
test rcx, rcx
je 0x1800987f2
mov rax, qword [rcx]
mov edx, 1
call qword [rax + 8]
nop
lea rcx, [rbp - 0x70]
call fcn.180095d10
call fcn.180099520
mov rsi, rax
mov r14, qword [0x1806d4c40]
add r14, 0x18
mov qword [rsp + 0x30], r14
mov byte [rsp + 0x38], 0
mov rcx, r14
call qword [sym.imp.KERNEL32.dll_EnterCriticalSection]
mov byte [rsp + 0x38], 1
mov rcx, qword [rsi + 0x60]
mov rdi, rcx
test rcx, rcx
je 0x180098848
cmp dword [rcx + 8], 0
jle 0x180098848
mov rcx, qword [rcx]
mov rcx, qword [rcx]
call qword [sym.imp.USER32.dll_DestroyWindow]
mov rdi, qword [rsi + 0x60]
test rdi, rdi
je 0x180098873
mov rcx, qword [rdi]
test rcx, rcx
je 0x18009885e
call qword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_free]
mov qword [rdi], rbx
mov qword [rdi + 8], 0
mov edx, reloc.WS2_32.dll_recv
mov rcx, rdi
call fcn.180468ddc
mov qword [rsi + 0x60], rbx
mov rcx, r14
call qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
mov byte [rsp + 0x38], 0
mov rdi, qword [rsi + 0x58]
test rdi, rdi
je 0x1800988c2
mov rcx, qword [rdi]
test rcx, rcx
je 0x18009889f
call qword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_free]
mov qword [rdi], rbx
mov rcx, qword [rdi + 8]
test rcx, rcx
je 0x1800988b2
call qword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_free]
mov qword [rdi + 8], rbx
mov dword [rdi + 0x10], ebx
mov edx, 0x18
mov rcx, rdi
call fcn.180468ddc
mov rdi, qword [rsi + 0x48]
test rdi, rdi
je 0x1800988f3
cmp qword [rdi], 0
je 0x1800988f3
mov rcx, qword [rdi + 0x20]
test rcx, rcx
je 0x1800988e0
mov rax, qword [rcx]
call qword [rax + reloc.WS2_32.dll_recv]
mov qword [rdi + 0x20], rbx
xor ecx, ecx
call qword [rdi + 0x40]
add rdi, 0x48
cmp qword [rdi], 0
jne 0x1800988d1
mov rdi, qword [0x18075e2c0]
mov rdx, qword [0x18075e2c8]
cmp rdi, rdx
jae 0x180098923
mov rax, qword [rdi]
test rax, rax
je 0x18009891a
xor ecx, ecx
call qword [rax + 0x38]
mov rdx, qword [0x18075e2c8]
add rdi, 8
cmp rdi, rdx
jb 0x180098906
mov rcx, rsi
call fcn.180092440
call qword [sym.imp.KERNEL32.dll_GetTickCount]
mov edi, ebx
call fcn.180132160
mov rbx, qword [rax]
cmp byte [rbx], 0
je 0x18009895d
call fcn.1802dea10
mov rdx, rbx
mov rcx, rax
call fcn.1802ded10
xor edx, edx
mov rcx, rbx
call fcn.1802d52f0
mov byte [rbx], 0
cmp byte [rsp + 0x50], 0
je 0x180098970
mov rcx, qword [rsp + 0x48]
call qword [sym.imp.gdiplus.dll_GdiplusShutdown]
nop
lea rcx, [rsp + 0x40]
call fcn.180115fc0
mov eax, edi
mov rcx, qword [rbp + 0x78]
xor rcx, rsp
call fcn.1804688c0
lea r11, [rsp + 0x180]
mov rbx, qword [r11 + 0x20]
mov rsi, qword [r11 + 0x28]
mov rdi, qword [r11 + 0x38]
mov rsp, r11
pop r15
pop r14
pop rbp
ret
jmp 0x1800983a0