Function at 0x1400a6570
Capabilities:
Read .ini file
Timestomp file

Disassembly:
push rbp
push rbx
push rsi
push rdi
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0x988]
sub rsp, 0xa88
mov rax, qword [0x1401f7280]
xor rax, rsp
mov qword [rbp + 0x970], rax
mov r12, qword [rbp + 0xa00]
xor r13d, r13d
or rdi, 0xffffffffffffffff
mov r15, r9
mov qword [rbp - 0x68], r9
mov dword [rbp - 0x80], r8d
mov qword [rbp], r12
mov r14, rdx
mov rbx, rcx
mov esi, r13d
mov rax, rdi
inc rax
cmp word [rdx + rax*2], si
jne 0x1400a65c6
test rax, rax
jne 0x1400a65f7
mov rcx, qword [rbp + 0x970]
xor rcx, rsp
call fcn.1400f9a80
add rsp, 0xa88
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbx
pop rbp
ret
mov edx, 0x7f02
xor ecx, ecx
call qword [sym.imp.USER32.dll_LoadCursorW]
mov rcx, rax
call qword [sym.imp.USER32.dll_SetCursor]
lea r9, [rbp - 0x60]
lea r8, [rbp + 0x30]
lea rdx, [rbp + 0x20]
mov rcx, rbx
mov qword [rsp + 0x28], r13
mov word [rbp + 0x250], r13w
mov dword [rbp - 0x5c], r13d
mov qword [rsp + 0x20], r13
call fcn.1400eb570
lea r13, [0x140208860]
lea rdx, str.Save_Quality
lea rcx, [0x140183aa8]
mov r9, r13
mov r8d, 0x50
call qword [sym.imp.KERNEL32.dll_GetPrivateProfileIntW]
lea rdx, str.Save_Compression
lea rcx, str.TIFF
mov r9, r13
xor r8d, r8d
mov dword [rbp - 0x50], eax
call qword [sym.imp.KERNEL32.dll_GetPrivateProfileIntW]
mov ecx, dword [rbp + 0x9f8]
mov r13d, eax
mov dword [rbp - 0x70], eax
mov eax, 1
test ecx, ecx
je 0x1400a66bd
dec ecx
je 0x1400a669a
dec ecx
jne 0x1400a66c4
mov dword [rbp - 0x5c], eax
jmp 0x1400a66c6
lea r9, [0x140208860]
lea rdx, str.SaveOldDate
lea rcx, [0x140185d68]
xor r8d, r8d
call qword [sym.imp.KERNEL32.dll_GetPrivateProfileIntW]
mov dword [rbp - 0x5c], eax
jmp 0x1400a66c6
xor eax, eax
mov dword [rbp - 0x5c], eax
jmp 0x1400a66c6
mov eax, esi
test r15, r15
je 0x1400a6734
test eax, eax
je 0x1400a6734
mov rcx, r15
call fcn.1400e7210
test eax, eax
je 0x1400a67d8
xor r9d, r9d
mov qword [rsp + 0x30], rsi
mov edx, 0x80000000
lea r8d, [r9 + 1]
mov rcx, r15
mov dword [rsp + 0x28], 0x80
mov dword [rsp + 0x20], 3
call qword [sym.imp.KERNEL32.dll_CreateFileW]
mov r15, rax
cmp rax, 0xffffffffffffffff
je 0x1400a67d8
lea r9, [rbp + 0x28]
lea r8, [rbp + 0x38]
lea rdx, [rbp + 0x18]
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_GetFileTime]
mov rcx, r15
call qword [sym.imp.KERNEL32.dll_CloseHandle]
xor r15d, r15d
lea rdx, [rbp + 0x40]
mov r8d, 8
mov rcx, r14
call fcn.1400ed200
lea rcx, [rbp + 0x40]
call fcn.1400f9670
lea rcx, [rbp + 0x40]
call fcn.1400f9f64
lea rcx, [rbp + 0x40]
mov rax, rdi
cmp word [rcx + rax*2 + 2], si
lea rax, [rax + 1]
jne 0x1400a6762
lea rax, [rax*2 - 2]
cmp rax, 0x208
jae 0x1400a7cc9
lea rcx, [rbp + 0x40]
mov word [rbp + rax + 0x40], r15w
call fcn.1400f9f64
mov edx, dword [rbp - 0x60]
lea r15, [0x140209d60]
lea r10, [0x14018c210]
lea r11, [0x14018c0f0]
cmp edx, 8
jge 0x1400a6829
xor r8d, r8d
lea r9, [rbp + 0x40]
mov ecx, r8d
nop dword [rax + rax]
movzx eax, word [r9 + rcx*2]
inc rcx
cmp ax, word [r10 + rcx*2 - 2]
jne 0x1400a67e4
cmp rcx, 4
jne 0x1400a67c0
jmp 0x1400a6806
xor r15d, r15d
mov dword [rbp - 0x5c], r15d
jmp 0x1400a6737
mov rcx, r8
lea r8, [rbp + 0x40]
nop dword [rax + rax]
movzx eax, word [r8 + rcx*2]
inc rcx
cmp ax, word [r11 + rcx*2 - 2]
jne 0x1400a6829
cmp rcx, 4
jne 0x1400a67f0
mov rcx, rbx
call fcn.14003e490
mov rsi, rax
test rax, rax
jne 0x1400a6826
mov r13d, dword [rbp - 0x80]
mov edi, eax
mov eax, 0x4cf
jmp 0x1400a7b0b
mov edx, dword [rbp - 0x60]
xor r12d, r12d
lea r8, [0x1401883a0]
lea r9, [0x14018c2b8]
lea r10, [0x14018be08]
cmp edx, 0x18
jge 0x1400a6967
cmp r13d, 6
jne 0x1400a687f
mov ecx, r12d
lea r9, [rbp + 0x40]
nop word [rax + rax]
movzx eax, word [r9 + rcx*2]
inc rcx
cmp ax, word [r8 + rcx*2 - 2]
jne 0x1400a6878
cmp rcx, 4
jne 0x1400a6860
jmp 0x1400a68ca
lea r9, [0x14018c2b8]
mov rcx, r12
lea r8, [rbp + 0x40]
nop word [rax + rax]
movzx eax, word [r8 + rcx*2]
inc rcx
cmp ax, word [r9 + rcx*2 - 2]
jne 0x1400a68a8
cmp rcx, 5
jne 0x1400a6890
jmp 0x1400a68ca
mov rcx, r12
lea r8, [rbp + 0x40]
nop
movzx eax, word [r8 + rcx*2]
inc rcx
cmp ax, word [r10 + rcx*2 - 2]
jne 0x1400a6967
cmp rcx, 4
jne 0x1400a68b0
mov rcx, rbx
mov r13d, 1
call qword [sym.imp.KERNEL32.dll_GlobalLock]
lea r8, [rbp + 0x40]
mov r15, rax
xor eax, eax
mov edx, eax
lea rax, [0x1401883a0]
nop dword [rax + rax]
movzx ecx, word [r8 + rdx*2]
inc rdx
cmp cx, word [rax + rdx*2 - 2]
jne 0x1400a691b
cmp rdx, 4
jne 0x1400a68f0
mov rcx, r15
call fcn.1400ed640
mov rcx, r15
mov r12d, eax
call fcn.1400ed5f0
mov r13d, eax
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_GlobalUnlock]
mov edx, dword [rbp - 0x60]
cmp edx, 8
jne 0x1400a6936
test r12d, r12d
je 0x1400a6936
test r13d, r13d
jne 0x1400a6972
mov rcx, rbx
call fcn.14003e440
mov rsi, rax
test rax, rax
jne 0x1400a695d
mov edi, eax
mov r13d, dword [rbp - 0x80]
mov eax, 0x4cf
lea r15, [0x140209d60]
jmp 0x1400a7b07
mov edx, dword [rbp - 0x60]
mov r13d, dword [rbp - 0x70]
xor r12d, r12d
cmp edx, 1
jle 0x1400a69fc
jmp 0x1400a6976
mov r13d, dword [rbp - 0x70]
lea eax, [r13 - 3]
xor r12d, r12d
cmp eax, 2
ja 0x1400a69a8
mov ecx, r12d
lea r9, [rbp + 0x40]
lea r8, [0x1401883a0]
movzx eax, word [r9 + rcx*2]
inc rcx
cmp ax, word [r8 + rcx*2 - 2]
jne 0x1400a69a8
cmp rcx, 4
jne 0x1400a6990
jmp 0x1400a69d6
mov rcx, r12
lea r8, [rbp + 0x40]
lea r11, [0x14018bf20]
nop word [rax + rax]
movzx eax, word [r8 + rcx*2]
inc rcx
cmp ax, word [r11 + rcx*2 - 2]
jne 0x1400a6a03
cmp rcx, 4
jne 0x1400a69c0
mov r9d, edi
mov r8d, edi
mov edx, 2
mov rcx, rbx
call fcn.14003f8c0
mov rsi, rax
test rax, rax
jne 0x1400a69f9
mov edi, r12d
jmp 0x1400a6948
mov edx, dword [rbp - 0x60]
lea r11, [0x14018bf20]
mov rcx, r12
lea r8, [rbp + 0x40]
lea r9, [0x1401878f8]
movzx eax, word [r8 + rcx*2]
inc rcx
cmp ax, word [r9 + rcx*2 - 2]
jne 0x1400a6c0f
cmp rcx, 4
jne 0x1400a6a11
cmp edx, 0x18
jne 0x1400a6a53
mov r9d, edi
mov r8d, edi
mov edx, 0x100
mov rcx, rbx
call fcn.14003f8c0
mov rsi, rax
test rax, rax
jne 0x1400a6a53
mov edi, r12d
jmp 0x1400a6948
lea r15, [0x140208860]
lea rdx, str.SaveInterlaced
lea rcx, str.MultiGIF
mov r9, r15
xor r8d, r8d
call qword [sym.imp.KERNEL32.dll_GetPrivateProfileIntW]
lea rdx, str.UsePalette
lea rcx, str.MultiGIF
mov r9, r15
mov r8d, 2
mov r13d, eax
call qword [sym.imp.KERNEL32.dll_GetPrivateProfileIntW]
lea r8, [rbp - 0x54]
lea rdx, [rbp - 0x6c]
lea rcx, [rbp - 0x70]
mov r15d, eax
call fcn.14001ea20
mov r12d, eax
test eax, eax
jne 0x1400a6ad5
lea r9, [0x140208860]
lea rdx, str.SaveTransparent
lea rcx, str.MultiGIF
xor r8d, r8d
call qword [sym.imp.KERNEL32.dll_GetPrivateProfileIntW]
test eax, eax
je 0x1400a6bdc
cmp r15d, 1
jne 0x1400a6b00
lea r9, [0x140208860]
lea rdx, str.Transparency
lea rcx, str.MultiGIF
xor r8d, r8d
call qword [sym.imp.KERNEL32.dll_GetPrivateProfileIntW]
mov edi, eax
jmp 0x1400a6bba
test r12d, r12d
je 0x1400a6b26
mov r9d, dword [rbp - 0x54]
mov r8d, dword [rbp - 0x6c]
mov edx, dword [rbp - 0x70]
test rsi, rsi
mov rcx, rbx
cmovne rcx, rsi
call fcn.1400a52d0
mov edi, eax
jmp 0x1400a6bba
cmp r15d, 2
jne 0x1400a6b56
movzx r9d, byte [0x1402094a2]
movzx r8d, byte [0x1402094a1]
movzx edx, byte [0x1402094a0]
test rsi, rsi
mov rcx, rbx
cmovne rcx, rsi
call fcn.1400a52d0
mov edi, eax
jmp 0x1400a6bba
test rsi, rsi
mov rax, rbx
cmovne rax, rsi
test rax, rax
je 0x1400a6bdc
movdqa xmm0, xmmword [0x14018a280]
mov qword [rbp - 0x28], rax
movdqu xmmword [rbp - 0x20], xmm0
call qword [sym.imp.USER32.dll_GetActiveWindow]
mov rcx, qword [0x1401fbba0]
mov r8, rax
lea rax, [rbp - 0x28]
lea r9, [0x1400abba0]
mov edx, 0x551
mov qword [rsp + 0x20], rax
call qword [sym.imp.USER32.dll_DialogBoxParamW]
mov eax, dword [rbp - 0x20]
mov edi, dword [rbp - 0x14]
mov dword [rbp - 0x70], eax
mov eax, dword [rbp - 0x1c]
mov dword [rbp - 0x6c], eax
mov eax, dword [rbp - 0x18]
mov dword [rbp - 0x54], eax
mov eax, dword [rbp - 0x60]
cmp edi, 0xf
jle 0x1400a6bcc
cmp eax, 4
jne 0x1400a6bcc
lea edi, [rax + 0xb]
jmp 0x1400a6bdc
cmp edi, 1
jle 0x1400a6bdc
cmp eax, 1
mov eax, 1
cmove edi, eax
lea rax, [rbp + 0x250]
test rsi, rsi
mov r9d, r13d
cmovne rbx, rsi
mov qword [rsp + 0x28], rax
mov r8d, 1
mov rdx, rbx
mov rcx, r14
mov dword [rsp + 0x20], edi
call fcn.140052540
xor r12d, r12d
jmp 0x1400a7ad6
mov rcx, r12
lea r8, [rbp + 0x40]
lea r9, [0x1401894a0]
nop dword [rax]
movzx eax, word [r8 + rcx*2]
inc rcx
cmp ax, word [r9 + rcx*2 - 2]
jne 0x1400a6c38
cmp rcx, 4
jne 0x1400a6c20
jmp 0x1400a6c6a
mov rcx, r12
lea r8, [rbp + 0x40]
lea r10, [0x140183aa8]
nop word [rax + rax]
movzx eax, word [r8 + rcx*2]
inc rcx
cmp ax, word [r10 + rcx*2 - 2]
jne 0x1400a7133
cmp rcx, 5
jne 0x1400a6c50
lea rdi, [0x140208860]
lea r13, [0x140183aa8]
lea rdx, str.Save_Progressive
mov r9, rdi
mov rcx, r13
xor r8d, r8d
call qword [sym.imp.KERNEL32.dll_GetPrivateProfileIntW]
lea rdx, str.Save_Grayscale
mov r9, rdi
xor r8d, r8d
mov rcx, r13
mov dword [rbp - 0x78], eax
call qword [sym.imp.KERNEL32.dll_GetPrivateProfileIntW]
lea rdx, str.NoSampling
mov r9, rdi
xor r8d, r8d
mov rcx, r13
mov dword [rbp - 0xc], eax
call qword [sym.imp.KERNEL32.dll_GetPrivateProfileIntW]
lea rdx, str.KeepExif
mov r9, rdi
mov r8d, 1
mov rcx, r13
mov dword [rbp - 0x70], eax
call qword [sym.imp.KERNEL32.dll_GetPrivateProfileIntW]
lea rdx, str.KeepXmp
mov r9, rdi
mov r8d, 1
mov rcx, r13
mov r15d, eax
call qword [sym.imp.KERNEL32.dll_GetPrivateProfileIntW]
lea rdx, str.KeepCom
mov r9, rdi
mov r8d, 1
mov rcx, r13
mov dword [rbp - 0x7c], eax
call qword [sym.imp.KERNEL32.dll_GetPrivateProfileIntW]
lea rdx, str.KeepIptc
mov r9, rdi
mov r8d, 1
mov rcx, r13
mov dword [rbp - 0x10], eax
call qword [sym.imp.KERNEL32.dll_GetPrivateProfileIntW]
lea rdx, str.ExifOrient
mov r9, rdi
mov r8d, 1
mov rcx, r13
mov dword [rbp - 8], eax
call qword [sym.imp.KERNEL32.dll_GetPrivateProfileIntW]
lea rdx, str.KeepQuality
mov r9, rdi
xor r8d, r8d
mov rcx, r13
mov dword [rbp + 0x10], eax
call qword [sym.imp.KERNEL32.dll_GetPrivateProfileIntW]
lea rdx, str.SetSize
mov r9, rdi
xor r8d, r8d
mov rcx, r13
mov dword [rbp - 0x38], eax
call qword [sym.imp.KERNEL32.dll_GetPrivateProfileIntW]
mov edx, 0x7f02
xor ecx, ecx
mov dword [rbp - 0x40], eax
xor eax, eax
mov dword [rbp - 0x58], r12d
mov dword [rbp - 0x54], r12d
mov dword [rbp - 0x3c], r12d
mov dword [rbp - 0x6c], r12d
mov r13d, eax
mov qword [rbp - 0x30], rax
mov qword [rbp - 0x48], r12
call qword [sym.imp.USER32.dll_LoadCursorW]
mov rcx, rax
call qword [sym.imp.USER32.dll_SetCursor]
mov edi, dword [rbp + 0x9f0]
cmp edi, 6
je 0x1400a6dd7
lea eax, [rdi - 0x4a]
cmp eax, 0x29
ja 0x1400a6dde
movabs rcx, 0x20100000c01
bt rcx, rax
jae 0x1400a6dde
mov eax, 1
jmp 0x1400a6de1
mov eax, r13d
mov r10, qword [rbp - 0x68]
test r10, r10
je 0x1400a6fb4
mov ecx, dword [rbp - 0x7c]
test r15d, r15d
jne 0x1400a6e0a
cmp dword [rbp - 0x10], r13d
jne 0x1400a6e0a
cmp dword [rbp - 8], r13d
jne 0x1400a6e0a
test ecx, ecx
je 0x1400a6fb4
test edi, edi
je 0x1400a6e16
test eax, eax
je 0x1400a6fb4
test r15d, r15d
jne 0x1400a6e23
test ecx, ecx
je 0x1400a6f3f
test edi, edi
jne 0x1400a6e8c
test r15d, r15d
je 0x1400a6e59
xor r15d, r15d
lea r8, [rbp - 0x74]
lea rdx, [rbp - 0x58]
mov r9d, 0xe1
mov rcx, r10
mov dword [rsp + 0x28], r15d
mov dword [rsp + 0x20], r15d
call fcn.1400dd930
mov r10, qword [rbp - 0x68]
mov qword [rbp - 0x48], rax
jmp 0x1400a6e5c
xor r15d, r15d
cmp dword [rbp - 0x7c], r13d
je 0x1400a6eb2
mov eax, 1
lea r8, [rbp - 0x74]
lea rdx, [rbp - 0x6c]
mov dword [rsp + 0x28], eax
mov r9d, 0xe1
mov rcx, r10
mov dword [rsp + 0x20], r15d
call fcn.1400dd930
mov qword [rbp - 0x30], rax
jmp 0x1400a6eb2
test r15d, r15d
je 0x1400a6eb2
test eax, eax
je 0x1400a6eb2
xor eax, eax
lea r8, [rbp - 0x58]
lea rdx, [rbp - 0x48]
xor r9d, r9d
mov rcx, r10
mov dword [rsp + 0x28], edi
mov dword [rsp + 0x20], eax
call fcn.1400ddcf0
cmp qword [rbp - 0x48], r13
je 0x1400a6f3b
lea rax, [rbp + 0xc]
lea r8, [rbp - 0x4c]
lea rdx, [rbp - 0x7c]
mov qword [rsp + 0x28], rax
lea rax, [rbp + 8]
xor r9d, r9d
mov rcx, rbx
mov qword [rsp + 0x20], rax
call fcn.1400eb570
mov eax, dword [rbp + 0xc]
mov edx, dword [rbp - 0x58]
mov rcx, qword [rbp - 0x48]
mov r9d, dword [rbp - 0x4c]
mov r8d, dword [rbp - 0x7c]
mov dword [rsp + 0x30], eax
mov eax, dword [rbp + 8]
add edx, 0xfffffff8
mov dword [rsp + 0x28], eax
mov eax, dword [rbp + 0x10]
add rcx, 8
mov dword [rsp + 0x20], eax
call fcn.1400ac310
mov eax, dword [rbp - 0x4c]
mov r9d, dword [rbp - 0x58]
mov r8, qword [rbp - 0x48]
mov rcx, qword [rbp - 0x68]
mov dword [rsp + 0x28], eax
mov eax, dword [rbp - 0x7c]
add r9d, 0xfffffff8
add r8, 8
mov rdx, rbx
mov dword [rsp + 0x20], eax
call fcn.1400abf90
mov r10, qword [rbp - 0x68]
cmp dword [rbp - 0x10], r13d
je 0x1400a6f6c
test edi, edi
jne 0x1400a6f6c
xor eax, eax
lea r8, [rbp - 0x74]
lea rdx, [rbp - 0x54]
mov dword [rsp + 0x28], eax
mov r9d, 0xfe
mov rcx, r10
mov dword [rsp + 0x20], eax
call fcn.1400dd930
mov r12, rax
cmp dword [rbp - 8], r13d
je 0x1400a7052
test edi, edi
jne 0x1400a7052
mov r15, qword [rbp - 0x68]
mov rcx, r15
call fcn.1400dcc80
test eax, eax
je 0x1400a6fb1
xor eax, eax
lea r8, [rbp - 0x74]
lea rdx, [rbp - 0x3c]
mov dword [rsp + 0x28], eax
mov r9d, 0xed
mov rcx, r15
mov dword [rsp + 0x20], eax
call fcn.1400dd930
mov r13, rax
mov r10, r15
cmp dword [rbp - 0x40], 0
je 0x1400a705b
lea r9, [0x140208860]
lea r8, [0x14018d298]
lea rdx, str.FileSize
lea rcx, [0x140183aa8]
call fcn.1400ee4b0
mov eax, dword [rbp - 0x3c]
mov rdi, qword [rbp - 0x30]
mulss xmm0, dword [0x140186e58]
mov r15d, dword [rbp - 0x78]
mov r9d, dword [rbp - 0xc]
mov dword [rsp + 0x68], eax
cvttss2si rcx, xmm0
mov eax, dword [rbp - 0x54]
mov qword [rsp + 0x60], r13
mov r8d, r15d
mov dword [rsp + 0x58], eax
mov eax, dword [rbp - 0x6c]
mov qword [rsp + 0x50], r12
mov dword [rsp + 0x48], eax
mov eax, dword [rbp - 0x58]
mov qword [rsp + 0x40], rdi
mov dword [rsp + 0x38], eax
mov rax, qword [rbp - 0x48]
mov rdx, rbx
mov qword [rsp + 0x30], rax
lea rax, [rbp + 0x250]
mov qword [rsp + 0x28], rax
mov eax, dword [rbp - 0x70]
mov dword [rsp + 0x20], eax
call fcn.1400a48e0
mov dword [rbp - 0x74], eax
mov dword [rbp - 0x50], eax
jmp 0x1400a7084
mov r10, qword [rbp - 0x68]
jmp 0x1400a6fb4
test edi, edi
jne 0x1400a707c
cmp dword [rbp - 0x38], edi
je 0x1400a707c
test r10, r10
je 0x1400a707c
lea r8, [rbp - 0x70]
lea rdx, [rbp - 0x50]
xor r9d, r9d
mov rcx, r10
call fcn.1400dc0d0
mov r15d, dword [rbp - 0x78]
mov rdi, qword [rbp - 0x30]
mov r8d, dword [rbp - 0x50]
xor eax, eax
mov r9d, r15d
mov qword [rsp + 0x78], rax
mov eax, dword [rbp - 0x3c]
mov rdx, rbx
mov dword [rsp + 0x70], eax
mov eax, dword [rbp - 0x54]
mov qword [rsp + 0x68], r13
mov dword [rsp + 0x60], eax
mov eax, dword [rbp - 0x6c]
mov qword [rsp + 0x58], r12
mov dword [rsp + 0x50], eax
mov eax, dword [rbp - 0x58]
mov qword [rsp + 0x48], rdi
mov dword [rsp + 0x40], eax
mov rax, qword [rbp - 0x48]
mov rcx, r14
mov qword [rsp + 0x38], rax
lea rax, [rbp + 0x250]
mov qword [rsp + 0x30], rax
mov eax, dword [rbp - 0x70]
mov dword [rsp + 0x28], eax
mov eax, dword [rbp - 0xc]
mov dword [rsp + 0x20], eax
call fcn.140055460
mov rcx, qword [rbp - 0x48]
mov edi, eax
test rcx, rcx
je 0x1400a70fb
call fcn.1400f97e8
test r12, r12
je 0x1400a7108
mov rcx, r12
call fcn.1400f97e8
test r13, r13
je 0x1400a7115
mov rcx, r13
call fcn.1400f97e8
mov edx, 0x7f00
xor ecx, ecx
call qword [sym.imp.USER32.dll_LoadCursorW]
mov rcx, rax
call qword [sym.imp.USER32.dll_SetCursor]
xor r12d, r12d
jmp 0x1400a7ad8
mov rcx, r12
lea r8, [rbp + 0x40]
lea r9, [0x140183370]
nop dword [rax]
nop word [rax + rax]
movzx eax, word [r8 + rcx*2]
inc rcx
cmp ax, word [r9 + rcx*2 - 2]
jne 0x1400a717d
cmp rcx, 4
jne 0x1400a7150
lea r8, [rbp + 0x250]
mov rdx, rbx
mov rcx, r14
call fcn.14001ae20
jmp 0x1400a7ad6
mov rcx, r12
lea r8, [rbp + 0x40]
lea r9, [0x14018ce88]
nop dword [rax + rax]
movzx eax, word [r8 + rcx*2]
inc rcx
cmp ax, word [r9 + rcx*2 - 2]
jne 0x1400a71ae
cmp rcx, 4
jne 0x1400a7190
mov r9d, ecx
jmp 0x1400a7ac4
mov rcx, r12
lea r8, [rbp + 0x40]
lea r15, [0x1401833a8]
nop dword [rax]
movzx eax, word [r8 + rcx*2]
inc rcx
cmp ax, word [r15 + rcx*2 - 2]
jne 0x1400a7337
cmp rcx, 4
jne 0x1400a71c0
lea r8d, [rcx + 2]
lea r13, [0x140208860]
lea rdx, str.CompressionLevel
mov rcx, r15
mov r9, r13
mov dword [rbp - 0x7c], edi
mov dword [rbp - 0x78], edi
mov dword [rbp - 0x74], edi
call qword [sym.imp.KERNEL32.dll_GetPrivateProfileIntW]
lea rdx, str.SavePNGTransp
mov r9, r13
xor r8d, r8d
mov rcx, r15
mov r12d, eax
call qword [sym.imp.KERNEL32.dll_GetPrivateProfileIntW]
lea rdx, str.SavePNGAlpha
mov r9, r13
xor r8d, r8d
mov rcx, r15
mov edi, eax
call qword [sym.imp.KERNEL32.dll_GetPrivateProfileIntW]
lea r9, [0x140208860]
lea rdx, str.PngOut
xor r8d, r8d
mov rcx, r15
mov r13d, eax
call qword [sym.imp.KERNEL32.dll_GetPrivateProfileIntW]
lea r9, [0x140208860]
lea rdx, str.PngWndColor
mov r8d, 1
mov rcx, r15
call qword [sym.imp.KERNEL32.dll_GetPrivateProfileIntW]
lea r8, [rbp - 0x7c]
lea rdx, [rbp - 0x78]
lea rcx, [rbp - 0x74]
mov r15d, eax
call fcn.14001ea20
test eax, eax
jne 0x1400a730a
test edi, edi
je 0x1400a730a
test r15d, r15d
je 0x1400a72b3
movzx r9d, byte [0x1402094a0]
movzx eax, byte [0x1402094a1]
movzx ecx, byte [0x1402094a2]
mov dword [rbp - 0x74], r9d
mov dword [rbp - 0x78], eax
mov dword [rbp - 0x7c], ecx
jmp 0x1400a7314
test rbx, rbx
je 0x1400a730a
movdqa xmm0, xmmword [0x14018a280]
mov qword [rbp - 0x28], rbx
movdqu xmmword [rbp - 0x20], xmm0
call qword [sym.imp.USER32.dll_GetActiveWindow]
mov rcx, qword [0x1401fbba0]
mov r8, rax
lea rax, [rbp - 0x28]
lea r9, [0x1400abba0]
mov edx, 0x551
mov qword [rsp + 0x20], rax
call qword [sym.imp.USER32.dll_DialogBoxParamW]
mov r9d, dword [rbp - 0x20]
mov eax, dword [rbp - 0x1c]
mov ecx, dword [rbp - 0x18]
mov dword [rbp - 0x74], r9d
mov dword [rbp - 0x78], eax
mov dword [rbp - 0x7c], ecx
jmp 0x1400a7314
mov r9d, dword [rbp - 0x74]
mov eax, dword [rbp - 0x78]
mov ecx, dword [rbp - 0x7c]
mov dword [rsp + 0x30], r13d
mov dword [rsp + 0x28], ecx
mov r8d, r12d
mov rcx, r14
mov rdx, rbx
mov dword [rsp + 0x20], eax
call fcn.140080940
xor r12d, r12d
jmp 0x1400a7ad6
mov rcx, r12
lea r8, [rbp + 0x40]
lea r9, [0x14018cf08]
nop word [rax + rax]
movzx eax, word [r8 + rcx*2]
inc rcx
cmp ax, word [r9 + rcx*2 - 2]
jne 0x1400a7389
cmp rcx, 4
jne 0x1400a7350
mov r8d, dword [rbp - 0x50]
lea r9, [rbp + 0x250]
mov rdx, rbx
mov rcx, r14
mov dword [rsp + 0x20], 0x3e
call fcn.14007e6a0
jmp 0x1400a7ad6
mov rcx, r12
lea r9, [rbp + 0x40]
lea r8, [0x1401883a0]
nop word [rax + rax]
movzx eax, word [r9 + rcx*2]
inc rcx
cmp ax, word [r8 + rcx*2 - 2]
jne 0x1400a73b8
cmp rcx, 4
jne 0x1400a73a0
jmp 0x1400a73ea
mov rcx, r12
lea r8, [rbp + 0x40]
lea r9, str.TIFF
nop word [rax + rax]
movzx eax, word [r8 + rcx*2]
inc rcx
cmp ax, word [r9 + rcx*2 - 2]
jne 0x1400a747a
cmp rcx, 5
jne 0x1400a73d0
lea rax, [rbp - 0x38]
lea r9, [rbp - 0x40]
lea rcx, [0x140208860]
xor r8d, r8d
xor edx, edx
mov qword [rsp + 0x20], rax
call fcn.1400ee190
cmp dword [0x1401fbbe0], 1
jle 0x1400a743b
cmp dword [rbp - 0x38], 0
je 0x1400a743b
cmp dword [rbp + 0x9f8], 2
jge 0x1400a743b
mov rdx, qword [rbp - 0x68]
test rsi, rsi
mov rcx, r14
cmovne rbx, rsi
mov r8, rbx
call fcn.1400ab350
jmp 0x1400a7ad6
mov r9d, dword [rbp - 0x50]
lea rax, [rbp + 0x250]
test rsi, rsi
cmovne rbx, rsi
lea r15, [0x140209d60]
mov r8d, r13d
mov qword [rsp + 0x30], r15
mov qword [rsp + 0x28], rax
mov eax, dword [rbp - 0x40]
mov rdx, rbx
mov rcx, r14
mov dword [rsp + 0x20], eax
call fcn.1400d4fe0
mov edi, eax
jmp 0x1400a7adf
mov rcx, r12
lea r8, [rbp + 0x40]
lea r9, [0x1401833d0]
nop dword [rax + rax]
movzx eax, word [r8 + rcx*2]
inc rcx
cmp ax, word [r9 + rcx*2 - 2]
jne 0x1400a75dc
cmp rcx, 4
jne 0x1400a7490
lea r15, [0x140208860]
lea rdx, str.SaveICOTransp
lea rcx, str.Others
xor r8d, r8d
mov r9, r15
mov dword [rbp - 0x7c], edi
mov dword [rbp - 0x78], edi
mov dword [rbp - 0x74], edi
call qword [sym.imp.KERNEL32.dll_GetPrivateProfileIntW]
lea rdx, str.IcoWndColor
lea rcx, str.Others
mov r9, r15
mov r8d, 1
mov edi, eax
call qword [sym.imp.KERNEL32.dll_GetPrivateProfileIntW]
lea r8, [rbp - 0x7c]
lea rdx, [rbp - 0x78]
lea rcx, [rbp - 0x74]
mov r15d, eax
call fcn.14001ea20
test eax, eax
jne 0x1400a75bd
test edi, edi
je 0x1400a75bd
test r15d, r15d
je 0x1400a7552
movzx eax, byte [0x1402094a2]
movzx r8d, byte [0x1402094a0]
movzx r9d, byte [0x1402094a1]
mov rdx, rbx
mov rcx, r14
mov dword [rbp - 0x74], r8d
mov dword [rbp - 0x78], r9d
mov dword [rbp - 0x7c], eax
mov dword [rsp + 0x20], eax
call fcn.14001d010
jmp 0x1400a7ad6
test rbx, rbx
je 0x1400a75bd
movdqa xmm0, xmmword [0x14018a280]
mov qword [rbp - 0x28], rbx
movdqu xmmword [rbp - 0x20], xmm0
call qword [sym.imp.USER32.dll_GetActiveWindow]
mov rcx, qword [0x1401fbba0]
mov r8, rax
lea rax, [rbp - 0x28]
lea r9, [0x1400abba0]
mov edx, 0x551
mov qword [rsp + 0x20], rax
call qword [sym.imp.USER32.dll_DialogBoxParamW]
mov eax, dword [rbp - 0x18]
mov r8d, dword [rbp - 0x20]
mov r9d, dword [rbp - 0x1c]
mov rdx, rbx
mov rcx, r14
mov dword [rbp - 0x74], r8d
mov dword [rbp - 0x7c], eax
mov dword [rsp + 0x20], eax
mov dword [rbp - 0x78], r9d
call fcn.14001d010
jmp 0x1400a7ad6
mov eax, dword [rbp - 0x7c]
mov r8d, dword [rbp - 0x74]
mov r9d, dword [rbp - 0x78]
mov rdx, rbx
mov rcx, r14
mov dword [rsp + 0x20], eax
call fcn.14001d010
jmp 0x1400a7ad6
mov rcx, r12
lea r8, [rbp + 0x40]
lea r9, [0x14018cec8]
nop word [rax + rax]
movzx eax, word [r8 + rcx*2]
inc rcx
cmp ax, word [r9 + rcx*2 - 2]
jne 0x1400a7635
cmp rcx, 4
jne 0x1400a75f0
lea rax, [rbp + 0x250]
lea r9d, [rcx + 0x56]
lea r8, [0x140208860]
mov qword [rsp + 0x28], rax
mov rdx, r14
mov rcx, rbx
mov dword [rsp + 0x20], 0x5000
call fcn.14007dbf0
jmp 0x1400a7ad6
mov rcx, r12
lea r8, [rbp + 0x40]
lea r9, [0x14018beb0]
nop dword [rax]
nop word [rax + rax]
movzx eax, word [r8 + rcx*2]
inc rcx
cmp ax, word [r9 + rcx*2 - 2]
jne 0x1400a769b
cmp rcx, 4
jne 0x1400a7650
lea rax, [rbp + 0x250]
lea r8, [0x140208860]
xor r9d, r9d
mov qword [rsp + 0x38], rax
mov dword [rsp + 0x30], r12d
mov rdx, r14
mov rcx, rbx
mov dword [rsp + 0x28], r12d
mov dword [rsp + 0x20], r12d
call fcn.14007e2f0
jmp 0x1400a7ad6
mov rcx, r12
lea r8, [rbp + 0x40]
lea r9, [0x14018bc10]
nop dword [rax]
movzx eax, word [r8 + rcx*2]
inc rcx
cmp ax, word [r9 + rcx*2 - 2]
jne 0x1400a770f
cmp rcx, 4
jne 0x1400a76b0
cmp edx, 0x18
jne 0x1400a76f8
cmp dword [0x1402094d4], 0x100
jne 0x1400a76f8
lea r8d, [rcx - 3]
mov edx, 0x100
mov rcx, rbx
call fcn.14009e180
mov rsi, rax
test rax, rax
jne 0x1400a76f8
mov edi, r12d
jmp 0x1400a6948
test rsi, rsi
mov rdx, r14
cmovne rbx, rsi
mov rcx, rbx
call fcn.1400733f0
jmp 0x1400a7ad6
mov rcx, r12
lea rdx, [rbp + 0x40]
lea r8, [0x14018c210]
nop dword [rax]
movzx eax, word [rdx + rcx*2]
inc rcx
cmp ax, word [r8 + rcx*2 - 2]
jne 0x1400a7753
cmp rcx, 4
jne 0x1400a7720
test rsi, rsi
lea r8, [rbp + 0x250]
mov rcx, r14
cmovne rbx, rsi
mov rdx, rbx
call fcn.1400b7ec0
jmp 0x1400a7ad6
mov rcx, r12
lea rdx, [rbp + 0x40]
nop word [rax + rax]
movzx eax, word [rdx + rcx*2]
inc rcx
cmp ax, word [r11 + rcx*2 - 2]
jne 0x1400a77ad
cmp rcx, 4
jne 0x1400a7760
lea r9, [0x140208860]
lea rdx, str.SaveAscii
lea rcx, [0x14018a230]
xor r8d, r8d
call qword [sym.imp.KERNEL32.dll_GetPrivateProfileIntW]
test rsi, rsi
mov rcx, r14
cmovne rbx, rsi
mov r8d, eax
mov rdx, rbx
call fcn.140081590
jmp 0x1400a7ad6
mov rcx, r12
lea rdx, [rbp + 0x40]
lea r8, [0x14018bfa8]
nop dword [rax + rax]
movzx eax, word [rdx + rcx*2]
inc rcx
cmp ax, word [r8 + rcx*2 - 2]
jne 0x1400a7806
cmp rcx, 4
jne 0x1400a77c0
lea r9, [0x140208860]
lea rdx, str.SaveAscii
lea rcx, [0x14018a230]
xor r8d, r8d
call qword [sym.imp.KERNEL32.dll_GetPrivateProfileIntW]
mov rdx, rbx
mov rcx, r14
mov r8d, eax
call fcn.1400825f0
jmp 0x1400a7ad6
mov rcx, r12
lea rdx, [rbp + 0x40]
lea r8, [0x14018c010]
nop dword [rax]
nop dword [rax + rax]
movzx eax, word [rdx + rcx*2]
inc rcx
cmp ax, word [r8 + rcx*2 - 2]
jne 0x1400a7866
cmp rcx, 4
jne 0x1400a7820
lea r9, [0x140208860]
lea rdx, str.SaveAscii
lea rcx, [0x14018a230]
xor r8d, r8d
call qword [sym.imp.KERNEL32.dll_GetPrivateProfileIntW]
mov rdx, rbx
mov rcx, r14
mov r8d, eax
call fcn.140083320
jmp 0x1400a7ad6
mov rcx, r12
lea rdx, [rbp + 0x40]
lea r8, [0x14018c0f0]
nop dword [rax]
nop dword [rax + rax]
movzx eax, word [rdx + rcx*2]
inc rcx
cmp ax, word [r8 + rcx*2 - 2]
jne 0x1400a78cf
cmp rcx, 4
jne 0x1400a7880
lea rax, [rbp + 0x250]
test rsi, rsi
mov rcx, r14
mov qword [rsp + 0x30], rax
cmovne rbx, rsi
lea rax, [0x140208860]
mov qword [rsp + 0x28], rax
xor r9d, r9d
xor r8d, r8d
mov rdx, rbx
mov dword [rsp + 0x20], r12d
call fcn.14007c950
jmp 0x1400a7ad6
mov rcx, r12
lea rdx, [rbp + 0x40]
lea r8, [0x14018bbd0]
nop dword [rax]
movzx eax, word [rdx + rcx*2]
inc rcx
cmp ax, word [r8 + rcx*2 - 2]
jne 0x1400a7930
cmp rcx, 4
jne 0x1400a78e0
mov rcx, qword [0x1401fbb00]
lea rax, [0x140208860]
xorps xmm0, xmm0
mov qword [rsp + 0x30], rax
lea r9, [rbp + 0x250]
mov r8, r14
movss dword [rsp + 0x28], xmm0
mov rdx, rbx
mov dword [rsp + 0x20], 0x40
call fcn.1400794d0
jmp 0x1400a7ad6
mov rdx, r12
lea r8, [rbp + 0x40]
lea rcx, [0x140183078]
nop
movzx eax, word [r8 + rdx*2]
inc rdx
cmp ax, word [rcx + rdx*2 - 2]
jne 0x1400a79fb
cmp rdx, 4
jne 0x1400a7940
mov eax, 1
lea r15, [0x140208860]
lea rdx, str.SaveAllPages
mov r9, r15
mov r8d, eax
mov edi, eax
call qword [sym.imp.KERNEL32.dll_GetPrivateProfileIntW]
mov ecx, dword [0x1401fbbe0]
cmp ecx, edi
jle 0x1400a7992
test eax, eax
je 0x1400a7992
cmp dword [rbp + 0x9f8], 3
cmovl edi, ecx
mov r13d, dword [rbp - 0x80]
mov r8, qword [rbp - 0x68]
lea rax, [rbp + 0x250]
mov qword [rsp + 0x60], rax
lea rax, [0x140209720]
mov r9d, edi
mov qword [rsp + 0x58], rax
mov eax, dword [0x1401f7120]
mov qword [rsp + 0x50], r15
mov dword [rsp + 0x48], r13d
mov dword [rsp + 0x40], r12d
mov qword [rsp + 0x38], r12
mov qword [rsp + 0x30], r12
mov dword [rsp + 0x28], eax
mov eax, dword [0x1401fbbe4]
mov rdx, r14
mov rcx, rbx
mov dword [rsp + 0x20], eax
call fcn.14007cd00
lea r15, [0x140209d60]
mov edi, eax
jmp 0x1400a7ae3
mov rcx, r12
lea rdx, [rbp + 0x40]
lea r8, [0x14018c2b8]
nop dword [rax]
movzx eax, word [rdx + rcx*2]
inc rcx
cmp ax, word [r8 + rcx*2 - 2]
jne 0x1400a7a90
cmp rcx, 5
jne 0x1400a7a10
test rsi, rsi
cmovne rbx, rsi
xor edx, edx
mov rcx, rbx
call fcn.1400439d0
mov eax, dword [rbp + 0x9f0]
mov r15, qword [rbp - 0x68]
mov dword [rsp + 0x58], eax
mov qword [rsp + 0x50], r15
mov dword [rsp + 0x48], 0x6e
lea rax, [rbp + 0x250]
lea r9, [0x140208860]
mov r8, r14
mov qword [rsp + 0x40], rax
mov dword [rsp + 0x38], edi
mov dword [rsp + 0x30], edi
xor edx, edx
mov rcx, rbx
mov dword [rsp + 0x28], edi
mov dword [rsp + 0x20], r12d
call fcn.140077340
xor edx, edx
mov rcx, rbx
mov edi, eax
call fcn.1400439d0
jmp 0x1400a7ad8
mov rcx, r12
lea rdx, [rbp + 0x40]
lea r8, [0x14018be08]
nop
movzx eax, word [rdx + rcx*2]
inc rcx
cmp ax, word [r8 + rcx*2 - 2]
jne 0x1400a7c27
cmp rcx, 4
jne 0x1400a7aa0
test rsi, rsi
lea r9d, [rcx + 0x62]
cmovne rbx, rsi
lea r8, [rbp + 0x250]
mov rdx, r14
mov rcx, rbx
call fcn.140077080
mov edi, eax
lea r15, [0x140209d60]
mov r13d, dword [rbp - 0x80]
test rsi, rsi
je 0x1400a7afa
mov rcx, rsi
call qword [sym.imp.KERNEL32.dll_GlobalUnlock]
mov rcx, rsi
call qword [sym.imp.KERNEL32.dll_GlobalFree]
test edi, edi
jne 0x1400a7bc9
mov eax, 0x4d0
mov r12, qword [rbp]
test r13d, r13d
je 0x1400a7b88
mov rcx, qword [0x1401fbba0]
lea r8, [rbp + 0x460]
mov r9d, 0x80
mov edx, eax
call qword [sym.imp.USER32.dll_LoadStringW]
lea rax, [rbp + 0x250]
lea r9, [rbp + 0x40]
mov qword [rsp + 0x28], rax
lea rax, [rbp + 0x460]
lea rdx, str._s_n_n_s__s_n_s
lea rcx, [rbp + 0x560]
mov r8, r14
mov qword [rsp + 0x20], rax
call fcn.1400f98c8
mov ecx, 1
call fcn.140059780
lea rdx, [rbp + 0x560]
mov r9d, 0x2040
mov rcx, rax
mov r8, r15
call qword [sym.imp.USER32.dll_MessageBoxW]
mov eax, edi
jmp 0x1400a65d4
test r12, r12
je 0x1400a7c20
lea rax, [rbp + 0x250]
lea rcx, [rbp + 0x250]
sub r12, rax
nop dword [rax]
nop word [rax + rax]
movzx eax, word [rcx]
lea rcx, [rcx + 2]
mov word [rcx + r12 - 2], ax
test ax, ax
jne 0x1400a7bb0
mov eax, edi
jmp 0x1400a65d4
mov eax, dword [rbp - 0x5c]
test eax, eax
je 0x1400a7c20
mov qword [rsp + 0x30], r12
xor r9d, r9d
xor r8d, r8d
mov edx, 0x40000000
mov rcx, r14
mov dword [rsp + 0x28], 0x80
mov dword [rsp + 0x20], 3
call qword [sym.imp.KERNEL32.dll_CreateFileW]
mov rbx, rax
cmp rax, 0xffffffffffffffff
je 0x1400a7c20
lea r9, [rbp + 0x28]
lea r8, [rbp + 0x38]
lea rdx, [rbp + 0x18]
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_SetFileTime]
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_CloseHandle]
mov eax, edi
jmp 0x1400a65d4
test rsi, rsi
je 0x1400a7c3e
mov rcx, rsi
call qword [sym.imp.KERNEL32.dll_GlobalUnlock]
mov rcx, rsi
call qword [sym.imp.KERNEL32.dll_GlobalFree]
mov r13d, dword [rbp - 0x80]
test r13d, r13d
je 0x1400a7cbf
mov rcx, qword [0x1401fbba0]
lea r8, [rbp + 0x460]
mov r9d, 0x80
mov edx, 0x4d1
call qword [sym.imp.USER32.dll_LoadStringW]
lea rax, [0x140181e34]
lea r9, [rbp + 0x40]
mov qword [rsp + 0x28], rax
lea rax, [rbp + 0x460]
lea rdx, str._s_n_n_s__s_n_s
lea rcx, [rbp + 0x560]
mov r8, r14
mov qword [rsp + 0x20], rax
call fcn.1400f98c8
mov ecx, 1
call fcn.140059780
lea r8, [0x140209d60]
lea rdx, [rbp + 0x560]
mov rcx, rax
mov r9d, 0x2040
call qword [sym.imp.USER32.dll_MessageBoxW]
mov eax, 1
jmp 0x1400a65d4
call fcn.1400f8f44
int3