Function at 0x140047910
Capabilities:
Read file on windows
Timestomp file
Write file on windows

Disassembly:
push rbp
push rbx
push rsi
push rdi
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0x1b28]
mov eax, 0x1c28
call fcn.1401c2680
sub rsp, rax
mov rax, qword [0x1402a83b0]
xor rax, rsp
mov qword [rbp + 0x1b10], rax
mov r13, qword [rbp + 0x1b90]
xor eax, eax
mov rbx, rcx
movzx r14d, ax
mov r12d, eax
mov dword [rsp + 0x50], eax
mov eax, dword [0x14029cb50]
mov qword [rbp - 0x30], r8
mov r15d, edx
add dword [0x14029cb54], eax
mov dword [rbp - 0x20], edx
lea rcx, [rbp - 0x10]
xor edx, edx
mov r8d, 0x140
mov rdi, r9
mov qword [rbp - 0x28], r13
call fcn.1401c0040
lea rcx, [rbp + 0x250]
xor edx, edx
mov r8d, 0x300
call fcn.1401c0040
mov r9d, dword [0x1402aab70]
mov esi, 1
lea r10d, [rsi + 3]
lea r8d, [rsi + 1]
test r9d, r9d
jle 0x140047a70
mov edx, dword [0x1402aab74]
test edx, edx
jle 0x140047a70
mov eax, dword [0x14029cb6c]
lea ecx, [rsi + 0xf]
cmp eax, esi
jne 0x1400479d9
movzx ecx, si
jmp 0x1400479ee
cmp eax, 8
jg 0x1400479e4
movzx ecx, r8w
jmp 0x1400479ee
cmp eax, 0x20
jl 0x1400479ee
mov ecx, 0x20
mov dword [rsp + 0x20], edx
movzx edx, cx
lea rcx, [rbp - 0x80]
mov r8d, r10d
call fcn.140062fe0
xor r15d, r15d
test ax, ax
je 0x140047a67
mov eax, dword [rbp - 0x80]
lea r9, [rsp + 0x40]
lea r8, [rbp + 0x550]
mov dword [rbp + 0x558], eax
mov eax, dword [rbp - 0x7c]
lea rcx, [rbp - 0x80]
mov dword [rbp + 0x55c], eax
movzx eax, byte [0x14029cb60]
xor edx, edx
mov byte [rsp + 0x40], al
movzx eax, byte [0x14029cb64]
mov r14d, r15d
mov byte [rsp + 0x41], al
movzx eax, byte [0x14029cb68]
mov qword [rbp + 0x550], r15
mov byte [rsp + 0x42], al
mov byte [rsp + 0x43], r12b
call fcn.1401a3b50
jmp 0x140048436
movzx r14d, si
jmp 0x140048436
cmp dword [0x1402aab78], r12d
je 0x140047a97
lea rcx, [rbp - 0x80]
call fcn.14004b0b0
xor r15d, r15d
test ax, ax
jne 0x140048436
lea r14d, [r15 + 2]
jmp 0x140048436
lea rcx, [rbp - 0x10]
call fcn.140063a00
movsx eax, word [0x1402aaab0]
mov ecx, eax
and ecx, esi
test al, 2
je 0x140047ab3
bts ecx, 8
cmp word [0x1402aab00], r12w
je 0x140047ac1
bts ecx, 0x14
cmp word [0x1402aab08], r12w
je 0x140047af3
mov rax, qword [0x1402aaba0]
bts ecx, 0x1a
test rax, rax
je 0x140047af3
mov qword [rbp + 0xf0], rax
mov dword [rbp + 0x10a], 0x10001
mov word [rbp + 0x108], si
xor eax, eax
mov dword [rbp + 4], 0x1000
mov word [rbp], si
mov word [rbp - 0xc], ax
mov word [rbp - 0x10], ax
movzx eax, word [0x14029caf0]
mov word [rbp - 0xe], ax
movzx eax, byte [0x14029cb10]
mov byte [rbp + 0xbd], al
movzx eax, byte [0x14029cb0c]
mov byte [rbp + 0xbc], al
mov eax, dword [0x14029cb3c]
mov dword [rbp + 0xa8], eax
mov eax, dword [0x14029cb40]
mov dword [rbp + 0xac], eax
mov eax, dword [0x1402aab18]
mov dword [rbp + 0xb4], eax
movzx eax, word [0x1402aaaf4]
mov word [rbp + 0xb8], ax
movzx eax, word [0x14029cb28]
test ax, ax
jns 0x140047b77
mov dword [rbp + 0xb0], 8
jmp 0x140047b7e
mov word [rbp + 0xba], ax
movzx eax, byte [rbp + 0xc0]
bts ecx, 0x12
cmp byte [0x14029caf3], r12b
cmovne eax, esi
cmp dword [0x1402aab84], r12d
mov dword [rbp - 4], r15d
mov byte [rbp + 0xc0], al
mov dword [rbp - 8], ecx
mov r14d, 3
je 0x140047bc0
mov dword [rbp + 0x108], 0x10003
mov word [rbp + 0x10c], si
cmp byte [0x1402aaabf], r12b
movzx eax, byte [0x1402aab50]
movsd xmm0, qword [str.333333]
movsd xmm1, qword [0x14029cb90]
cvtpd2ps xmm0, xmm0
mov byte [rbp + 0xcb], al
movzx eax, byte [0x1402aab54]
mov byte [rbp + 0xcc], al
movzx eax, byte [0x1402aab58]
movss dword [rbp + 0xd4], xmm0
movsd xmm0, qword [0x14029cb78]
cvtpd2ps xmm1, xmm1
mov byte [rbp + 0xcd], al
movzx eax, byte [0x1402aab64]
mov byte [rbp + 0xc8], al
cvtpd2ps xmm0, xmm0
movss dword [rbp + 0xe8], xmm1
movss dword [rbp + 0xe4], xmm1
movsd xmm1, qword [0x14029cb80]
movss dword [rbp + 0xd8], xmm0
movsd xmm0, qword [0x14029cb88]
cvtpd2ps xmm0, xmm0
cvtpd2ps xmm1, xmm1
movss dword [rbp + 0xe0], xmm0
movss dword [rbp + 0xdc], xmm1
je 0x140047c70
bts ecx, 0xa
mov dword [rbp - 8], ecx
cmp byte [0x1402aaabe], r12b
je 0x140047c80
bts ecx, 0x15
mov dword [rbp - 8], ecx
cmp byte [0x1402aaabb], r12b
je 0x140047c99
or ecx, 0x800800
mov byte [rbp + 0xca], sil
mov dword [rbp - 8], ecx
cmp dword [0x1402aab30], r12d
jne 0x140047ca9
bts ecx, 0xf
mov dword [rbp - 8], ecx
movzx eax, word [0x14029cb18]
xor r15d, r15d
mov word [rbp + 0xc2], ax
test ax, ax
jg 0x140047cc7
mov word [rbp + 0xc2], r15w
mov rax, qword [0x1402aab48]
test rax, rax
je 0x140047ceb
lea rdx, [rbp + 0x118]
mov r8d, 0x400
mov rcx, rax
call fcn.140065430
mov ecx, dword [rbp - 8]
cmp word [0x1402aab04], r12w
mov qword [rbp - 0x50], r15
mov qword [rbp - 0x58], r15
je 0x140047d57
mov qword [rsp + 0x30], r15
xor r9d, r9d
xor r8d, r8d
mov edx, 0x80000000
mov rcx, rbx
mov dword [rsp + 0x28], 0x80
mov dword [rsp + 0x20], r14d
call qword [sym.imp.KERNEL32.dll_CreateFileA]
mov r14, rax
cmp rax, 0xffffffffffffffff
je 0x140047d54
lea r9, [rsp + 0x68]
lea r8, [rsp + 0x60]
lea rdx, [rsp + 0x58]
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_GetFileTime]
mov rcx, r14
mov r12d, esi
mov dword [rsp + 0x50], esi
call qword [sym.imp.KERNEL32.dll_CloseHandle]
mov ecx, dword [rbp - 8]
cmp dword [0x14029cb98], 0
jle 0x140047d9a
lea rdx, [rbp + 0x15b0]
mov rcx, rbx
call fcn.1401c3310
test eax, eax
jne 0x140047d97
xor ecx, ecx
call fcn.1401bf51c
imul ecx, dword [0x14029cb98], 0x15180
sub rax, qword [rbp + 0x15d0]
movsxd rdx, ecx
cmp rax, rdx
jl 0x1400497c1
mov ecx, dword [rbp - 8]
cmp dword [0x1402aaaa4], 0
jne 0x140047ef1
cmp word [0x1402aaac8], 0
jne 0x140047eff
cmp dword [0x1402aaacc], 0
jne 0x140048227
cmp dword [0x1402aab28], 0
jne 0x140048337
cmp dword [0x1402aabc4], 0
je 0x1400483bc
cmp word [0x1402aaac0], 0
jne 0x1400483bc
movzx edx, word [0x14029caf0]
lea r9, [rbp + 0x250]
mov r8d, 0x40000
mov rcx, rbx
call fcn.140064210
test ax, ax
jne 0x140047eee
mov r8, rdi
mov rax, rbx
sub r8, rbx
nop dword [rax + rax]
movzx edx, byte [rax]
movzx ecx, byte [rax + r8]
sub edx, ecx
jne 0x140047e33
inc rax
test ecx, ecx
jne 0x140047e20
test edx, edx
jne 0x140047eee
mov rcx, qword [rbp + 0x4f8]
lea rdx, [rbp + 0x560]
call fcn.140045150
lea rcx, [rbp + 0x560]
call fcn.14004ae60
lea rdx, [rbp + 0x560]
xor r9d, r9d
xor r8d, r8d
mov rcx, rbx
call fcn.140046250
lea rcx, [rbp + 0x560]
call fcn.140044f30
cmp word [0x1402aab04], 0
je 0x140047edd
test r12d, r12d
je 0x140047edd
mov qword [rsp + 0x30], r15
xor r9d, r9d
xor r8d, r8d
mov edx, 0x40000000
mov rcx, rbx
mov dword [rsp + 0x28], 0x80
mov dword [rsp + 0x20], 3
call qword [sym.imp.KERNEL32.dll_CreateFileA]
mov rbx, rax
cmp rax, 0xffffffffffffffff
je 0x140047edd
lea r9, [rsp + 0x68]
lea r8, [rsp + 0x60]
lea rdx, [rsp + 0x58]
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_SetFileTime]
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_CloseHandle]
lea rcx, [rbp + 0x250]
call fcn.140064240
jmp 0x1400497c1
mov ecx, dword [rbp - 8]
cmp word [0x1402aaac8], 0
je 0x14004821a
cmp byte [0x1402aaac6], 0
jne 0x140047f47
lea rdx, [rbp + 0x15b0]
mov rcx, rdi
call fcn.1401c3310
test eax, eax
jne 0x140047f47
or r12, 0xffffffffffffffff
mov r14d, 0x200
lea r9, [0x1401f468c]
xor edx, edx
mov rcx, rdi
mov r8d, r14d
mov dword [rsp + 0x20], r12d
call fcn.140049e10
movzx eax, r14w
jmp 0x1400497c5
mov rdx, rdi
mov rcx, rbx
call fcn.14005a590
mov rcx, rbx
test eax, eax
je 0x140048012
lea rdx, [0x140264ea4]
call fcn.1401be7e4
mov r14, rax
test rax, rax
je 0x140047ff4
lea rdx, [0x1401f6fd8]
mov rcx, rdi
call fcn.1401be7e4
mov r15, rax
test rax, rax
je 0x140047fe9
lea rcx, [rbp + 0x560]
mov r9, r14
mov r8d, 0x1000
mov rdx, rsi
call fcn.1401c1e14
test eax, eax
je 0x140047fe1
nop dword [rax + rax]
lea rcx, [rbp + 0x560]
movsxd rdx, eax
mov r9, r15
mov r8, rsi
call fcn.1401c24f8
lea rcx, [rbp + 0x560]
mov r9, r14
mov r8d, 0x1000
mov rdx, rsi
call fcn.1401c1e14
test eax, eax
jne 0x140047fb0
mov rcx, r15
call fcn.1401be6a4
mov rcx, r14
call fcn.1401be6a4
xor r15d, r15d
lea rdx, [rbp + 0x1600]
mov rcx, rdi
sub rdx, rdi
movzx eax, byte [rcx]
lea rcx, [rcx + 1]
mov byte [rcx + rdx - 1], al
test al, al
jne 0x140048001
jmp 0x14004802f
lea rdx, [rbp + 0x1600]
sub rdx, rbx
nop dword [rax]
movzx eax, byte [rcx]
lea rcx, [rcx + 1]
mov byte [rcx + rdx - 1], al
test al, al
jne 0x140048020
cmp word [0x1402aaac8], 6
jne 0x1400480e4
lea rcx, str.jpeg
call fcn.140064760
lea r9, [rbp + 0x250]
mov r8d, 0x40000
mov edx, eax
mov rcx, rbx
call fcn.140064210
test ax, ax
jne 0x1400480e4
lea rcx, str.jpeg
call fcn.140064760
movsx ecx, word [rbp + 0x258]
cmp ecx, eax
jne 0x1400480d8
mov rcx, qword [rbp + 0x4f8]
test rcx, rcx
je 0x1400480a2
lea rdx, [rsp + 0x48]
call fcn.14003ca80
test eax, eax
je 0x1400480a2
mov eax, dword [rsp + 0x48]
add eax, 0xfffffffe
cmp eax, 6
jbe 0x1400480d8
cmp word [0x1402aaab4], 0
jne 0x1400480c7
call fcn.1401be514
lea rdx, str.Lossless_transformation_of__s_:_NOT_NEEDED_n
mov r8, rbx
add rax, 0x60
mov rcx, rax
call fcn.1401be844
lea rcx, [rbp + 0x250]
call fcn.140064240
jmp 0x1400497c1
lea rcx, [rbp + 0x250]
call fcn.140064240
movzx edx, word [0x14029caf0]
lea r9, [rbp + 0x250]
lea rcx, [rbp + 0x1600]
xor r8d, r8d
call fcn.140064210
test ax, ax
jne 0x140048217
lea rcx, str.jpeg
call fcn.140064760
movsx ecx, word [rbp + 0x258]
cmp ecx, eax
jne 0x140048217
movzx edx, word [0x1402aaac8]
lea rcx, [rbp + 0x1600]
mov r8d, 7
call fcn.1401b5100
cmp word [0x1402aaab4], 0
movzx esi, ax
jne 0x14004817e
lea rcx, [0x1401f7dc0]
test ax, ax
lea rdi, str.FAILED
cmovne rdi, rcx
call fcn.1401be514
lea rdx, str.Lossless_transformation_of__s_:__s_n
add rax, 0x60
mov r9, rdi
mov r8, rbx
mov rcx, rax
call fcn.1401be844
test si, si
je 0x1400497c1
cmp byte [0x1402aaab7], 0
je 0x1400481a1
lea rcx, [rbp + 0x1600]
mov edx, 8
call fcn.1401b5ab0
cmp word [0x1402aab04], 0
je 0x1400497c1
test r12d, r12d
je 0x1400497c1
lea rcx, [rbp + 0x1600]
mov qword [rsp + 0x30], r15
xor r9d, r9d
mov edx, 0x40000000
xor r8d, r8d
mov dword [rsp + 0x28], 0x80
mov dword [rsp + 0x20], 3
call qword [sym.imp.KERNEL32.dll_CreateFileA]
test rax, rax
mov rbx, rax
je 0x1400497c1
lea r9, [rsp + 0x68]
lea r8, [rsp + 0x60]
lea rdx, [rsp + 0x58]
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_SetFileTime]
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_CloseHandle]
jmp 0x1400497c1
mov ecx, dword [rbp - 8]
cmp dword [0x1402aaacc], 0
je 0x14004832a
cmp dword [0x1402aaad8], 0
jle 0x14004832a
cmp dword [0x1402aaadc], 0
jle 0x14004832a
movzx edx, word [0x14029caf0]
lea r9, [rbp + 0x250]
xor r8d, r8d
mov rcx, rbx
call fcn.140064210
test ax, ax
jne 0x140048327
lea rcx, str.jpeg
call fcn.140064760
movsx ecx, word [rbp + 0x258]
cmp ecx, eax
jne 0x140048327
mov eax, dword [0x1402aaadc]
mov r9d, dword [0x1402aaad8]
mov r8d, dword [0x1402aaad4]
mov edx, dword [0x1402aaad0]
mov rcx, rbx
mov word [rsp + 0x28], si
mov dword [rsp + 0x20], eax
call fcn.1401b5000
cmp word [0x1402aaab4], 0
movzx esi, ax
jne 0x1400482e9
lea rcx, [0x1401f7dc0]
test ax, ax
lea rdi, str.FAILED
cmovne rdi, rcx
call fcn.1401be514
lea rdx, str.Lossless_cropping_of__s_:__s_n
add rax, 0x60
mov r9, rdi
mov r8, rbx
mov rcx, rax
call fcn.1401be844
test si, si
je 0x1400497c1
cmp byte [0x1402aaab7], 0
je 0x140048308
mov edx, 8
mov rcx, rbx
call fcn.1401b5ab0
cmp word [0x1402aab04], 0
je 0x1400497c1
test r12d, r12d
je 0x1400497c1
mov rcx, rbx
jmp 0x1400481bf
mov ecx, dword [rbp - 8]
cmp dword [0x1402aab28], 0
je 0x1400483bc
movzx edx, word [0x14029caf0]
lea r9, [rbp + 0x250]
xor r8d, r8d
mov rcx, rbx
call fcn.140064210
test ax, ax
jne 0x1400483b9
lea rcx, str.jpeg
call fcn.140064760
movsx ecx, word [rbp + 0x258]
cmp ecx, eax
jne 0x1400483b9
mov eax, dword [0x1402aab28]
mov edx, r15d
mov ecx, 0x10
test sil, al
cmovne edx, ecx
test al, 2
je 0x140048386
or edx, esi
test al, 4
je 0x14004838d
or edx, 0x40
test al, 8
je 0x140048394
or edx, 8
test cl, al
je 0x14004839b
or edx, 2
test al, 0x20
je 0x1400483a2
or edx, 4
test al, 0x40
je 0x1400483a9
or edx, 0x20
mov rcx, rbx
call fcn.1401b5ab0
test ax, ax
jmp 0x1400482ec
mov ecx, dword [rbp - 8]
mov edx, dword [0x1402aab68]
test edx, edx
jle 0x1400483e6
mov eax, dword [0x1402aab6c]
test eax, eax
jle 0x1400483e6
mov dword [rbp + 0x10], eax
bts ecx, 0xb
mov eax, 2
mov word [rbp + 0xa], ax
mov dword [rbp + 0xc], edx
mov dword [rbp - 8], ecx
cmp word [0x1402aaac0], 0
lea r9, [rbp + 0x250]
mov rcx, rbx
je 0x140048412
movzx edx, word [0x14029caf0]
mov r8d, 0x70000
call fcn.140064210
movzx r14d, ax
jmp 0x140048436
lea r8, [rbp - 0x10]
lea rdx, [rbp - 0x80]
call fcn.140065400
movzx r14d, ax
test ax, ax
jne 0x140048430
inc dword [0x1402aabb4]
jmp 0x140048436
inc dword [0x1402aabb8]
mov rcx, qword [rbp + 0x118]
test rcx, rcx
je 0x140048447
call fcn.1401be23c
mov rcx, qword [rbp + 0x4f8]
test rcx, rcx
je 0x140048466
lea r8, [rsp + 0x54]
lea rdx, [rsp + 0x4c]
call fcn.14003c760
test eax, eax
jne 0x140048487
cmp word [0x1402aaac0], 0
jne 0x1400484a3
mov rcx, qword [rbp - 0x48]
lea r8, [rsp + 0x54]
lea rdx, [rsp + 0x4c]
call fcn.14003c760
test eax, eax
je 0x1400484a3
mov eax, dword [rsp + 0x54]
mov ecx, dword [rsp + 0x4c]
mov word [rbp + 0x272], ax
mov word [rbp + 0x270], cx
mov dword [rbp - 0x64], eax
mov dword [rbp - 0x68], ecx
lea rcx, [rbp + 0x130]
call fcn.140063b00
movzx ecx, word [rbp + 0x258]
cmp word [0x14029caf4], 0xffff
cmovne cx, word [0x14029caf4]
mov eax, dword [rbp + 0x278]
mov word [rbp + 0x130], cx
mov rcx, qword [rbp - 0x30]
mov dword [rcx], eax
test r14w, r14w
je 0x140048526
cmp word [0x1402aaac0], 0
je 0x140048501
call fcn.1401be514
lea rdx, str._n_s_:_Failed_n
mov r8, rbx
lea rcx, [rax + 0x30]
call fcn.1401be844
mov eax, dword [rbp - 4]
lea r9, [rbp + 0x500]
mov edx, esi
movzx r8d, r14w
mov rcx, rbx
mov dword [rsp + 0x20], eax
call fcn.140049e10
or rax, 0xffffffffffffffff
jmp 0x1400497c5
cmp word [0x1402aaac0], 0
je 0x140048cbf
movzx ecx, word [rbp + 0x25a]
dec ecx
je 0x140048563
sub ecx, 0xf
je 0x14004855a
dec ecx
je 0x140048551
lea r14, str.Top_Left
jmp 0x14004856a
lea r14, str.Bottom_Right
jmp 0x14004856a
lea r14, str.Bottom_Left
jmp 0x14004856a
lea r14, str.Top_Right
movzx edi, word [rbp + 0x264]
movzx eax, word [rbp + 0x266]
imul edi, eax
call fcn.1401be514
lea rdx, str._n_s_:_Success_n
lea rcx, [rax + 0x30]
mov r8, rbx
call fcn.1401be844
movzx r8d, word [rbp + 0x274]
lea r9, [rbp + 0x4d8]
lea rcx, [rbp + 0x15b0]
mov edx, 0x40
call fcn.140064d90
call fcn.1401be514
lea r8, [rbp + 0x288]
lea rcx, [rax + 0x30]
lea rdx, str.____Format_______________:__s_n
call fcn.1401be844
movsx ecx, word [rbp + 0x258]
call fcn.140064ae0
mov rbx, rax
call fcn.1401be514
lea rdx, str.____Name_________________:__s_n
lea rcx, [rax + 0x30]
mov r8, rbx
call fcn.1401be844
call fcn.1401be514
lea r8, [rbp + 0x15b0]
lea rcx, [rax + 0x30]
lea rdx, str.____Compression__________:__s_n
call fcn.1401be844
call fcn.1401be514
mov r8d, dword [rbp + 0x25c]
lea rcx, [rax + 0x30]
lea rdx, str.____Width________________:__d_n
call fcn.1401be844
call fcn.1401be514
mov r8d, dword [rbp + 0x260]
lea rcx, [rax + 0x30]
lea rdx, str.____Height_______________:__d_n
call fcn.1401be844
movzx ebx, word [rbp + 0x266]
call fcn.1401be514
lea rcx, [rax + 0x30]
lea rdx, str.____Components_per_pixel_:__d_n
mov r8d, ebx
call fcn.1401be844
movzx ebx, word [rbp + 0x264]
call fcn.1401be514
lea rcx, [rax + 0x30]
lea rdx, str.____Bits_per_component___:__d_n
mov r8d, ebx
call fcn.1401be844
call fcn.1401be514
lea rdx, str.____Depth________________:__d_n
lea rcx, [rax + 0x30]
mov r8d, edi
call fcn.1401be844
mov eax, 0x18
cmp edi, eax
cmovge edi, eax
movzx ecx, dil
shl esi, cl
call fcn.1401be514
lea rdx, str._____colors_____________:__lu_n
lea rcx, [rax + 0x30]
mov r8d, esi
call fcn.1401be844
movzx ecx, word [rbp + 0x276]
call fcn.140064e60
mov rbx, rax
call fcn.1401be514
lea rdx, str.____Color_model__________:__s_n
lea rcx, [rax + 0x30]
mov r8, rbx
call fcn.1401be844
call fcn.1401be514
mov r8d, dword [rbp + 0x26c]
lea rcx, [rax + 0x30]
lea rdx, str.____Bytes_Per_Plane______:__d_n
call fcn.1401be844
call fcn.1401be514
lea rdx, str.____Orientation__________:__s_n
mov r8, r14
add rax, 0x30
mov rcx, rax
call fcn.1401be844
movzx eax, word [rbp + 0x270]
test ax, ax
je 0x140048752
movsx ebx, ax
call fcn.1401be514
lea rdx, str.____Xdpi_________________:__d_n
add rax, 0x30
mov r8d, ebx
mov rcx, rax
call fcn.1401be844
jmp 0x14004876a
call fcn.1401be514
lea rdx, str.____Xdpi_________________:_Not_set_n
add rax, 0x30
mov rcx, rax
call fcn.1401be844
movzx eax, word [rbp + 0x272]
test ax, ax
je 0x140048793
movsx ebx, ax
call fcn.1401be514
lea rdx, str.____Ydpi_________________:__d_n
lea rcx, [rax + 0x30]
mov r8d, ebx
call fcn.1401be844
jmp 0x1400487a8
call fcn.1401be514
lea rdx, str.____Ydpi_________________:_Not_set_n
lea rcx, [rax + 0x30]
call fcn.1401be844
call fcn.1401be514
mov r8d, dword [rbp + 0x278]
lea rdx, str.____Page_s_______________:__d_n
lea rcx, [rax + 0x30]
call fcn.1401be844
cmp qword [rbp + 0x2c8], 0
je 0x1400487ea
call fcn.1401be514
mov r8, qword [rbp + 0x2c8]
lea rdx, str.____Comment______________:__s_n
lea rcx, [rax + 0x30]
call fcn.1401be844
cmp dword [rbp + 0x2d0], 0
je 0x140048846
call fcn.1401be514
lea rdx, str.____Info:_n
lea rcx, [rax + 0x30]
call fcn.1401be844
cmp dword [rbp + 0x2d0], 0
mov edi, r15d
jle 0x140048846
lea rbx, [rbp + 0x2d8]
nop dword [rax + rax]
call fcn.1401be514
mov r8, qword [rbx]
lea rdx, str._______s_n
lea rcx, [rax + 0x30]
call fcn.1401be844
inc edi
lea rbx, [rbx + 8]
cmp edi, dword [rbp + 0x2d0]
jl 0x140048820
mov rcx, qword [rbp + 0x4f8]
test rcx, rcx
je 0x1400488f1
call fcn.1401be514
lea rdx, str.____Metadata_____________:__
lea rcx, [rax + 0x30]
call fcn.1401be844
mov rbx, qword [rbp + 0x4f8]
test rbx, rbx
je 0x1400488d5
mov eax, dword [rbx]
cmp eax, 2
jne 0x14004888c
call fcn.1401be514
lea rdx, str.IPTC
jmp 0x1400488c3
cmp eax, 1
jne 0x14004889f
call fcn.1401be514
lea rdx, [0x1401f83e0]
jmp 0x1400488c3
cmp eax, 4
jne 0x1400488b2
call fcn.1401be514
lea rdx, str.ICC
jmp 0x1400488c3
cmp eax, 3
jne 0x1400488cc
call fcn.1401be514
lea rdx, str.XMP
lea rcx, [rax + 0x30]
call fcn.1401be844
mov rbx, qword [rbx + 0x10]
test rbx, rbx
jne 0x140048877
call fcn.1401be514
lea rdx, [0x1401f83f8]
lea rcx, [rax + 0x30]
call fcn.1401be844
mov rcx, qword [rbp + 0x4f8]
call fcn.1400651d0
test rax, rax
je 0x140048930
lea rdx, [rbp + 0x1600]
mov r8d, 0x100
mov rcx, rax
call fcn.140064de0
test eax, eax
je 0x140048930
call fcn.1401be514
lea r8, [rbp + 0x1600]
lea rdx, str.____Color_Profile________:__s_n
lea rcx, [rax + 0x30]
call fcn.1401be844
cmp word [0x1402aaac0], 2
jne 0x140048ae9
mov rcx, qword [rbp + 0x4f8]
call fcn.14003c560
test al, al
je 0x140048a90
mov rcx, qword [rbp + 0x4f8]
call fcn.14003c320
mov rbx, rax
mov qword [rbp - 0x30], rax
test rax, rax
je 0x140048a90
call fcn.1401be514
lea rdx, str.EXIF:_n
lea rcx, [rax + 0x30]
call fcn.1401be844
cmp dword [rbx], 0
mov ecx, r15d
mov dword [rsp + 0x40], ecx
jle 0x140048a88
lea rdx, [0x140000000]
nop word [rax + rax]
mov r13, qword [rbx + 0x10]
mov eax, dword [r15 + r13]
dec eax
cmp eax, 0x1f
ja case.default.0x1400489c1
movzx eax, byte [rdx + rax + 0x49830]
mov ecx, dword [rdx + rax*4 + 0x49814]
add rcx, rdx
jmp rcx
lea rdi, str.Camera
jmp 0x1400489f7
lea rdi, str.Image
jmp 0x1400489f7
lea rdi, [0x1401f636c]
jmp 0x1400489f7
lea rdi, str.Thumbnail
jmp 0x1400489f7
lea rdi, [0x1401f6370]
jmp 0x1400489f7
lea rdi, str.Makernotes
call fcn.1401be514
lea rdx, str.___s:_n
mov r8, rdi
lea rcx, [rax + 0x30]
call fcn.1401be844
mov ecx, dword [rsp + 0x40]
xor eax, eax
mov r14d, eax
cmp dword [r15 + r13 + 4], eax
jle 0x140048a6c
mov edi, eax
mov rsi, qword [r15 + r13 + 0x10]
mov r12, qword [rdi + rsi + 0x20]
test r12, r12
je 0x140048a56
movzx ebx, word [rdi + rsi]
call fcn.1401be514
mov r8, qword [rdi + rsi + 8]
lea rcx, [rax + 0x30]
lea rdx, str.______20s__0x_04x_:__s_n
mov r9d, ebx
mov qword [rsp + 0x20], r12
call fcn.1401be844
inc r14d
add rdi, 0x28
cmp r14d, dword [r15 + r13 + 4]
jl 0x140048a21
mov ecx, dword [rsp + 0x40]
mov rbx, qword [rbp - 0x30]
inc ecx
add r15, 0x18
lea rdx, [0x140000000]
mov dword [rsp + 0x40], ecx
cmp ecx, dword [rbx]
jl 0x1400489a0
xor r15d, r15d
mov rcx, rbx
call fcn.14003c470
cmp word [0x1402aaac0], 2
jne 0x140048ae9
mov rcx, qword [rbp + 0x4f8]
call fcn.140044ee0
test al, al
je 0x140048ae9
call fcn.1401be514
lea rdx, str.IPTC:_n
add rax, 0x30
mov rcx, rax
call fcn.1401be844
mov rcx, qword [rbp + 0x4f8]
lea rdx, [0x14004b4a0]
xor r8d, r8d
call fcn.140044c40
lea rcx, [rbp + 0x250]
call fcn.140064240
jmp 0x1400497c1
mov rcx, qword [rbp + 0x4f8]
call fcn.140044ee0
test al, al
je 0x140048cae
mov rcx, qword [rbp + 0x4f8]
lea rdx, [rbp + 0x560]
call fcn.140045150
cmp dword [0x1402aabc4], 0
mov r12d, r15d
jle 0x140048ca2
lea r15, [0x1402aabe4]
mov r13d, 0xa100000
nop dword [rax]
cmp dword [r15 - 4], 0
jne 0x140048c8b
mov ebx, dword [r15]
cmp ebx, 0x100
jae 0x140048b66
mov eax, ebx
shl rax, 4
mov rdi, qword [rbp + rax + 0x560]
test rdi, rdi
je 0x140048b66
call fcn.1401be514
mov r9, rdi
jmp 0x140048c75
cmp ebx, 0x1b
ja 0x140048b71
bt r13d, ebx
jb 0x140048b7a
cmp ebx, 0x76
jne 0x140048c8b
cmp ebx, 0x14
jne 0x140048b8e
mov rdi, qword [rbp + 0x1568]
mov eax, dword [rbp + 0x1560]
jmp 0x140048bcc
cmp ebx, 0x19
jne 0x140048ba2
mov rdi, qword [rbp + 0x1578]
mov eax, dword [rbp + 0x1570]
jmp 0x140048bcc
cmp ebx, 0x1b
jne 0x140048bb6
mov rdi, qword [rbp + 0x1588]
mov eax, dword [rbp + 0x1580]
jmp 0x140048bcc
cmp ebx, 0x76
jne 0x140048c8b
mov rdi, qword [rbp + 0x1598]
mov eax, dword [rbp + 0x1590]
test rdi, rdi
je 0x140048c8b
xor ecx, ecx
mov byte [rbp + 0x1710], 0
movsxd rsi, eax
mov r11d, ecx
mov r10d, ecx
test eax, eax
jle 0x140048c69
lea r14d, [rax - 1]
movzx eax, word [0x1401f6f68]
nop word [rax + rax]
lea rdx, [rbp + 0x1710]
dec rdx
nop word [rax + rax]
cmp byte [rdx + 1], 0
lea rdx, [rdx + 1]
jne 0x140048c10
mov r9, qword [rdi + r10*8]
xor r8d, r8d
nop dword [rax]
nop word [rax + rax]
movzx ecx, byte [r9 + r8]
lea r8, [r8 + 1]
mov byte [rdx + r8 - 1], cl
test cl, cl
jne 0x140048c30
cmp r11d, r14d
je 0x140048c5e
lea rcx, [rbp + 0x1710]
dec rcx
cmp byte [rcx + 1], 0
lea rcx, [rcx + 1]
jne 0x140048c51
mov word [rcx], ax
inc r10
inc r11d
cmp r10, rsi
jl 0x140048c00
call fcn.1401be514
lea r9, [rbp + 0x1710]
add rax, 0x30
lea rdx, str.IPTC__d:__s_n
mov r8d, ebx
mov rcx, rax
call fcn.1401be844
inc r12d
add r15, 0x10
cmp r12d, dword [0x1402aabc4]
jl 0x140048b30
xor r15d, r15d
lea rcx, [rbp + 0x560]
call fcn.140044f30
lea rcx, [rbp + 0x250]
call fcn.140064240
jmp 0x1400497c1
cmp byte [0x14029caf2], 0
jne 0x140048cd1
lea rcx, [rbp - 0x48]
call fcn.140064c20
cmp byte [0x1402aaabb], 0
je 0x140048cff
mov qword [rsp + 0x30], r15
lea rdx, [rbp + 0x250]
lea rcx, [rbp - 0x80]
xor r9d, r9d
mov r8d, esi
mov qword [rsp + 0x28], r15
mov qword [rsp + 0x20], r15
call fcn.140051bd0
lea r8, [rbp + 0x250]
lea rcx, [rbp - 0x80]
mov rdx, rbx
call fcn.14004b660
cmp dword [0x1402aabc4], 0
mov dword [0x1402aabb0], eax
jle 0x140048d59
mov rcx, qword [rbp - 0x48]
lea rdx, [rbp + 0x560]
call fcn.140045150
lea rcx, [rbp + 0x560]
call fcn.14004ae60
lea rdx, [rbp + 0x560]
lea rcx, [rbp - 0x48]
call fcn.140044ac0
lea rcx, [rbp + 0x560]
call fcn.140044f30
cmp word [0x1402aaafc], 0
je 0x140048dbb
movsxd rax, dword [rbp - 0x68]
cmp eax, esi
jle 0x140048dbb
movsxd rcx, dword [rbp - 0x64]
cmp ecx, esi
jle 0x140048dbb
movsx r8, word [0x14029cb18]
mov r10, rax
movsxd rax, dword [rbp - 0x7c]
mov word [rsp + 0x20], r15w
imul rax, r8
dec rax
add rax, r10
cqo
idiv rcx
lea rcx, [rbp - 0x80]
mov r9, rax
movsxd rax, dword [rbp - 0x80]
imul rax, r8
dec rax
add rax, r10
cqo
idiv r10
xor edx, edx
mov r8, rax
call fcn.14006ad60
mov rcx, qword [rbp - 0x48]
test rcx, rcx
je 0x140049035
cmp byte [0x1402aaab7], 0
je 0x140048ddc
xor edx, edx
call fcn.14003df40
mov rcx, qword [rbp - 0x48]
test rcx, rcx
je 0x140049035
cmp byte [0x1402aaaba], 0
je 0x140049035
lea r8, [rsp + 0x70]
lea rdx, [rsp + 0x40]
call fcn.14003d810
test eax, eax
je 0x140049035
mov r8d, dword [rsp + 0x40]
mov r9d, dword [rsp + 0x70]
mov eax, dword [rbp - 0x7c]
mov ecx, dword [rbp - 0x80]
cmp r8d, r9d
jle 0x140048e25
cmp ecx, eax
jl 0x140048e2b
cmp r8d, r9d
jge 0x140048e3d
cmp ecx, eax
jle 0x140048e3d
mov eax, r8d
mov dword [rsp + 0x40], r9d
mov r8d, r9d
mov r9d, eax
mov dword [rsp + 0x70], eax
lea rdx, [rbp + 0x15b0]
lea rcx, [rbp - 0x80]
mov word [rsp + 0x28], r15w
mov dword [rsp + 0x20], esi
call fcn.1401a6210
test ax, ax
jne 0x140049035
movzx eax, word [rbp + 0x15bc]
cmp ax, si
jne 0x140048e74
mov r8d, 9
jmp 0x140048e80
cmp ax, 4
jne 0x140048e91
mov r8d, 0x13
lea rcx, [rbp + 0x15b0]
xor r9d, r9d
xor edx, edx
call fcn.1401b19c0
mov r12d, dword [rbp + 0x15b4]
mov r13d, dword [rbp + 0x15b8]
mov eax, r12d
imul eax, r13d
add eax, 0x1000
movsxd rcx, eax
call fcn.1401bee78
mov r15, rax
test rax, rax
je 0x140049025
movzx ecx, word [rbp + 0x15be]
mov edx, dword [rbp + 0x15b0]
mov eax, 0x50
mov word [rsp + 0x38], ax
lea rax, [rsp + 0x48]
mov r9d, r13d
mov qword [rsp + 0x30], rax
mov qword [rsp + 0x28], r15
mov word [rsp + 0x20], cx
mov rcx, qword [rbp + 0x15e0]
mov r8d, r12d
call fcn.14003ad70
cmp ax, si
jne 0x14004901d
cmp qword [rbp - 0x48], 0
je 0x14004900c
cmp byte [0x1402aaaba], 0
je 0x14004900c
cmp dword [0x1402aaaa4], 0
jne 0x14004900c
cmp word [0x1402aaac8], 0
jne 0x14004900c
cmp dword [0x1402aaacc], 0
jne 0x14004900c
cmp dword [0x1402aab28], 0
jne 0x14004900c
cmp dword [0x1402aabc4], 0
jne 0x14004900c
lea rcx, str.jpeg
call fcn.140064760
movsx ecx, word [rbp + 0x130]
cmp ecx, eax
jne 0x14004900c
mov r8, rdi
mov rax, rbx
sub r8, rbx
movzx edx, byte [rax]
movzx ecx, byte [rax + r8]
sub edx, ecx
jne 0x140048f96
inc rax
test ecx, ecx
jne 0x140048f83
test edx, edx
jne 0x14004900c
lea rcx, [rbp + 0x15b0]
call fcn.140064bc0
mov r8d, dword [rsp + 0x48]
mov rdx, r15
mov rcx, rbx
call fcn.14019bd90
mov rcx, r15
call fcn.1401be23c
xor r15d, r15d
cmp word [0x1402aab04], r15w
je 0x1400497c1
cmp dword [rsp + 0x50], r15d
je 0x1400497c1
mov qword [rsp + 0x30], r15
xor r9d, r9d
xor r8d, r8d
mov edx, 0x40000000
mov rcx, rdi
mov dword [rsp + 0x28], 0x80
mov dword [rsp + 0x20], 3
call qword [sym.imp.KERNEL32.dll_CreateFileA]
cmp rax, 0xffffffffffffffff
jmp 0x1400481e8
mov r8d, dword [rsp + 0x48]
lea rcx, [rbp - 0x48]
mov rdx, r15
call fcn.14003dd30
mov rcx, r15
call fcn.1401be23c
lea rcx, [rbp + 0x15b0]
call fcn.140064bc0
mov r13, qword [rbp - 0x28]
mov rdx, qword [0x1402aab98]
mov r8, qword [0x1402aaba0]
test rdx, rdx
jne 0x14004904d
test r8, r8
je 0x140049078
mov eax, dword [0x1402aab8c]
mov r9d, dword [0x1402aabac]
lea rcx, [rbp - 0x80]
mov dword [rsp + 0x28], eax
mov eax, dword [0x1402aaba8]
mov dword [rsp + 0x20], eax
call fcn.140063440
mov word [0x1402aab0c], si
or r12, 0xffffffffffffffff
cmp byte [0x1402aaac7], 0
jne 0x140049141
cmp qword [0x1402aab20], 0
je 0x1400490a1
cmp word [0x14029caf4], r12w
jne 0x140049141
movsx ecx, word [rbp + 0x130]
call fcn.140064730
test rax, rax
je 0x140049141
mov rcx, qword [0x1402aab20]
test rcx, rcx
je 0x1400490d7
mov rax, r12
cmp byte [rcx + rax + 1], 0
lea rax, [rax + 1]
jne 0x1400490c5
cmp byte [rax + rcx - 1], 0x25
je 0x1400490ec
mov edx, 0x2e
mov rcx, rdi
call fcn.1401c2968
test rax, rax
je 0x1400490ec
mov byte [rax], 0
lea rcx, [rdi - 1]
cmp byte [rcx + 1], 0
lea rcx, [rcx + 1]
jne 0x1400490f0
movzx eax, word [0x1401f8460]
mov word [rcx], ax
movsx ecx, word [rbp + 0x130]
call fcn.140064730
lea rcx, [rdi - 1]
mov r8, rax
nop word [rax + rax]
cmp byte [rcx + 1], 0
lea rcx, [rcx + 1]
jne 0x140049120
xor edx, edx
nop dword [rax]
movzx eax, byte [r8 + rdx]
lea rdx, [rdx + 1]
mov byte [rcx + rdx - 1], al
test al, al
jne 0x140049130
test rdi, rdi
je 0x14004917c
cmp byte [rdi], 0
je 0x14004917c
lea r9, [rbp - 0x28]
lea rdx, [rbp + 0x1600]
mov r8d, 0x104
mov rcx, rdi
call fcn.1400661a0
mov rax, qword [rbp - 0x28]
test rax, rax
je 0x140049170
mov byte [rax], 0
lea rcx, [rbp + 0x1600]
call fcn.14004b520
cmp word [0x1402aab0c], 0
je 0x140049190
or dword [rbp + 0x134], 0x2000000
test byte [0x1402aaab0], 2
je 0x1400491b1
call fcn.1401be514
lea rdx, [0x1401f8040]
add rax, 0x60
mov rcx, rax
call fcn.1401be844
mov rcx, qword [0x1402aab40]
test rcx, rcx
je 0x1400491e7
lea rdx, [rbp + 0x218]
mov r8d, 0x100
call fcn.140065430
movzx eax, byte [rbp + 0x204]
cmp qword [rbp + 0x218], 0
cmovne eax, esi
mov byte [rbp + 0x204], al
movzx ecx, word [0x14029caf8]
movzx eax, word [rbp - 0x74]
xor r15d, r15d
mov word [rbp + 0x1e8], r15w
movsx r15d, word [0x1402aaab8]
test cx, cx
js 0x14004920f
cmp ax, si
je 0x140049237
movzx ecx, word [0x14029cafc]
test cx, cx
js 0x140049221
cmp ax, 2
je 0x140049237
movzx ecx, word [0x14029cb00]
test cx, cx
js 0x14004923b
mov edx, 0x7f0
test dx, ax
je 0x14004923b
movsx r15d, cx
lea rcx, str.tiff
call fcn.140064760
movsx ecx, word [rbp + 0x130]
test r15d, r15d
js 0x14004927b
cmp ecx, eax
jne 0x14004926e
cmp r15d, 8
jne 0x14004926e
mov eax, 5
mov word [rbp + 0x1e8], ax
jmp case.0x1400492aa.3
mov word [rbp + 0x1e8], r15w
jmp case.0x1400492aa.3
cmp ecx, eax
jne case.0x1400492aa.3
cmp word [rbp - 0x74], si
jne 0x1400492d6
movzx eax, word [rbp + 0x274]
dec eax
cmp eax, 8
ja case.0x1400492aa.3
lea rcx, [0x140000000]
cdqe
mov eax, dword [rcx + rax*4 + 0x49850]
add rax, rcx
jmp rax
mov eax, 2
mov word [rbp + 0x1e8], ax
jmp case.0x1400492aa.3
mov eax, 6
mov word [rbp + 0x1e8], ax
jmp case.0x1400492aa.3
mov eax, 7
mov word [rbp + 0x1e8], ax
jmp case.0x1400492aa.3
movzx ecx, word [rbp + 0x274]
dec ecx
je case.0x1400492aa.1
dec ecx
je case.0x1400492aa.2
dec ecx
je case.0x1400492aa.7
dec ecx
jne case.0x1400492aa.3
mov eax, 4
mov word [rbp + 0x1e8], ax
jmp case.0x1400492aa.3
mov word [rbp + 0x1e8], si
movzx eax, word [0x14029cb04]
movzx ecx, word [rbp + 0x1f2]
mov word [rbp + 0x1ea], ax
movzx eax, word [0x14029cb08]
mov word [rbp + 0x1ec], ax
movzx eax, byte [0x1402aaae0]
mov byte [rbp + 0x1fe], al
movzx eax, byte [0x1402aaab6]
mov byte [rbp + 0x1ff], al
movzx eax, byte [0x1402aaab2]
mov byte [rbp + 0x201], al
movzx eax, byte [0x1402aaab3]
mov byte [rbp + 0x200], al
movzx eax, byte [0x1402aaae8]
mov byte [rbp + 0x202], al
movzx eax, byte [0x1402aab5c]
mov byte [rbp + 0x205], al
movzx eax, byte [0x1402aab60]
mov byte [rbp + 0x203], al
movzx eax, word [0x1402aaaf4]
mov word [rbp + 0x1e4], ax
movzx eax, word [0x14029cb28]
mov word [rbp + 0x1e6], ax
mov eax, dword [0x14029cb1c]
test eax, eax
cmovg cx, ax
mov eax, dword [0x14029cb20]
test eax, eax
mov word [rbp + 0x1f2], cx
movzx ecx, word [rbp + 0x1f0]
cmovg cx, ax
mov eax, dword [0x14029cb24]
test eax, eax
mov word [rbp + 0x1f0], cx
movzx ecx, word [rbp + 0x1f4]
cmovg cx, ax
mov eax, dword [0x1402aaaec]
test eax, eax
mov word [rbp + 0x1f4], cx
movzx ecx, word [rbp + 0x206]
cmovg cx, ax
mov eax, dword [0x1402aaaf0]
test eax, eax
mov word [rbp + 0x206], cx
mov ecx, dword [rbp + 0x208]
cmovne ecx, eax
movzx eax, byte [0x1402aaac2]
mov byte [rbp + 0x1fc], al
movzx eax, byte [0x1402aaac3]
mov dword [rbp + 0x208], ecx
mov byte [rbp + 0x1fd], al
movzx eax, word [0x14029cb18]
test ax, ax
jle 0x140049453
mov rcx, qword [rbp - 0x48]
movsx edx, ax
mov r8d, edx
mov dword [rbp - 0x64], edx
mov dword [rbp - 0x68], edx
call fcn.14003e050
movzx eax, word [0x1402aab10]
test ax, ax
je 0x14004946b
mov rcx, qword [rbp - 0x48]
movsx edx, ax
call fcn.14003e1b0
cmp word [rbp - 0x72], si
jne 0x1400494fe
movzx eax, word [0x14029cb2c]
cmp ax, 0xffff
je 0x140049488
mov word [rbp - 0x5e], ax
jmp 0x1400494fe
mov r9, qword [rbp - 0x58]
xor r15d, r15d
test r9, r9
je 0x140049501
movsx r10d, word [rbp - 0x60]
mov edx, r15d
test r10d, r10d
jle 0x140049501
movsx r11d, word [0x14029cb30]
movzx esi, word [0x14029cb34]
movzx r15d, word [0x14029cb38]
nop dword [rax + rax]
movsxd r8, edx
movzx eax, byte [r8 + r9]
cmp eax, r11d
jne 0x1400494f1
movzx ecx, byte [r8 + r9 + 0x100]
movzx eax, si
cmp cx, si
jne 0x1400494f1
movzx ecx, byte [r8 + r9 + 0x200]
movzx eax, r15w
cmp cx, r15w
je 0x1400494fa
inc edx
cmp edx, r10d
jl 0x1400494c0
jmp 0x1400494fe
mov word [rbp - 0x5e], dx
xor r15d, r15d
test r13, r13
je 0x140049522
lea r8, [rbp + 0x130]
lea rdx, [rbp - 0x80]
mov rcx, r13
call fcn.140063dc0
movzx r14d, ax
jmp 0x140049632
cmp dword [0x1402aab7c], 0
je 0x140049539
lea rcx, [rbp - 0x80]
call fcn.14004a1d0
jmp 0x140049632
cmp byte [0x1402aaac6], 0
mov rcx, rdi
jne 0x14004960b
lea rdx, [rbp + 0x15b0]
call fcn.1401c3310
test eax, eax
jne 0x1400495e4
lea edx, [rax + 0x2e]
mov rcx, rdi
call fcn.1401c2968
mov r9, rax
test rax, rax
je 0x1400495d1
lea r8, [rbp + 0x1710]
mov rdx, rdi
sub r8, rdi
nop dword [rax]
movzx ecx, byte [rdx]
lea rdx, [rdx + 1]
mov byte [rdx + r8 - 1], cl
test cl, cl
jne 0x140049580
sub rax, rdi
mov rdx, r9
mov byte [rbp + rax + 0x1710], cl
lea rcx, [rbp + 0x1710]
call fcn.14004aac0
lea rax, [rbp + 0x1710]
mov rdx, rdi
sub rdx, rax
lea rcx, [rbp + 0x1710]
nop dword [rax]
movzx eax, byte [rcx]
lea rcx, [rcx + 1]
mov byte [rcx + rdx - 1], al
test al, al
jne 0x1400495c0
jmp 0x1400495e4
lea rdx, [0x1401f468c]
lea rcx, [rbp + 0x1710]
call fcn.14004aac0
lea rdx, [0x140264ea4]
mov rcx, rdi
call fcn.1401be7e4
test rax, rax
je 0x140049608
mov rcx, rax
call fcn.1401be6a4
mov r14d, 0x200
jmp 0x140049632
mov rcx, rdi
lea r8, [rbp + 0x130]
lea rdx, [rbp - 0x80]
call fcn.1400658d0
movzx r14d, ax
test ax, ax
jne 0x14004962c
inc dword [0x1402aabbc]
jmp 0x140049632
inc dword [0x1402aabc0]
mov rcx, qword [rbp + 0x218]
test rcx, rcx
je 0x140049643
call fcn.1401be23c
lea rcx, [rbp - 0x80]
call fcn.140064bc0
lea rcx, [rbp + 0x250]
call fcn.140064240
test r13, r13
jne 0x1400497e8
test r14w, r14w
jne 0x1400497f2
cmp word [0x1402aab04], r14w
je 0x1400496cf
cmp dword [rsp + 0x50], r13d
je 0x1400496cf
mov qword [rsp + 0x30], r15
xor r9d, r9d
xor r8d, r8d
mov edx, 0x40000000
mov rcx, rdi
mov dword [rsp + 0x28], 0x80
mov dword [rsp + 0x20], 3
call qword [sym.imp.KERNEL32.dll_CreateFileA]
mov rsi, rax
cmp rax, 0xffffffffffffffff
je 0x1400496cf
lea r9, [rsp + 0x68]
lea r8, [rsp + 0x60]
lea rdx, [rsp + 0x58]
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_SetFileTime]
mov rcx, rsi
call qword [sym.imp.KERNEL32.dll_CloseHandle]
test byte [0x1402aaab0], 2
je 0x1400496f0
call fcn.1401be514
lea rdx, [0x1401f8040]
add rax, 0x60
mov rcx, rax
call fcn.1401be844
cmp dword [rbp + 0x1b98], 0
je 0x140049721
cmp word [0x1402aaab4], 0
jne 0x140049721
call fcn.1401be514
lea rdx, str.Conversion_of__s_into__s_OK_n
mov r9, rdi
add rax, 0x60
mov r8, rbx
mov rcx, rax
call fcn.1401be844
cmp word [0x1402aaabc], 0
je 0x14004979f
lea r9, [rsp + 0x44]
lea rdx, [rbp + 0x1710]
mov r8d, 0x104
mov rcx, rbx
call fcn.1400661a0
lea r9, [rsp + 0x44]
lea rdx, [rbp + 0x1600]
mov r8d, 0x104
mov rcx, rdi
call fcn.1400661a0
cmp word [0x1402aaabc], 0
je 0x14004979f
lea rdx, [rbp + 0x1600]
lea rcx, [rbp + 0x1710]
call fcn.14005a590
test eax, eax
je 0x14004979f
cmp word [0x1402aaae4], 0
je 0x140049797
mov rax, qword [rbp - 0x30]
mov eax, dword [rax]
dec eax
cmp dword [rbp - 0x20], eax
jne 0x14004979f
mov rcx, rbx
call fcn.1401c2588
cmp word [0x1402aaab0], 0
je 0x1400497c1
call fcn.1401be514
lea rdx, [0x1401f8040]
add rax, 0x60
mov rcx, rax
call fcn.1401be844
movzx eax, r15w
mov rcx, qword [rbp + 0x1b10]
xor rcx, rsp
call fcn.1401bd600
add rsp, 0x1c28
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbx
pop rbp
ret
test r14w, r14w
je 0x1400496cf
lea r9, [rbp + 0x500]
xor edx, edx
movzx r8d, r14w
mov rcx, rdi
mov dword [rsp + 0x20], r12d
call fcn.140049e10
movzx eax, r12w
jmp 0x1400497c5