Function at 0x1001a030
Capabilities:
Delete file
Write file on windows

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x1022419e
mov eax, dword fs:[0]
push eax
sub esp, 0x268
push esi
push edi
lea edi, [ebp - 0x274]
mov ecx, 0x9a
mov eax, 0xcccccccc
rep stosd dword es:[edi], eax
mov eax, dword [0x10363590]
xor eax, ebp
mov dword [ebp - 0x10], eax
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov eax, dword [ebp + 8]
cmp dword [eax + 0x10], 0
je 0x1001a08c
mov ecx, dword [ebp + 8]
call sym.opencv_highgui249d.dll_public:_bool___thiscall_cv::Mat::isContinuous_void_const
movzx ecx, al
test ecx, ecx
je 0x1001a08c
jmp 0x1001a159
push 0x10242a10
lea ecx, [ebp - 0xb0]
call fcn.10002991
mov dword [ebp - 4], 0
push str.cv::imdecode_
lea ecx, [ebp - 0xcc]
call fcn.10002991
mov byte [ebp - 4], 1
push str.buf.data__buf.isContinuous__
lea ecx, [ebp - 0xe8]
call fcn.10002991
mov byte [ebp - 4], 2
push 0x133
lea edx, [ebp - 0xb0]
push edx
lea eax, [ebp - 0xcc]
push eax
lea ecx, [ebp - 0xe8]
push ecx
push 0xffffff29
lea ecx, [ebp - 0x94]
call sub.opencv_core249d.dll_public:_void___thiscall_cv::Exception::constructor_int__class_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char___const___class_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char___const___class_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char___const___int_
mov dword [ebp - 0x23c], eax
mov edx, dword [ebp - 0x23c]
mov dword [ebp - 0x240], edx
mov byte [ebp - 4], 3
mov eax, dword [ebp - 0x240]
push eax
call sub.opencv_core249d.dll_void___cdecl_cv::error_class_cv::Exception_const__
add esp, 4
mov byte [ebp - 4], 2
lea ecx, [ebp - 0x94]
call sub.opencv_core249d.dll_public_virtual:_void___thiscall_cv::Exception::destructor_void_
mov byte [ebp - 4], 1
lea ecx, [ebp - 0xe8]
call fcn.1000321f
mov byte [ebp - 4], 0
lea ecx, [ebp - 0xcc]
call fcn.1000321f
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0xb0]
call fcn.1000321f
mov dword [ebp - 0xf0], 0
mov dword [ebp - 0xfc], 0
lea ecx, [ebp - 0x13c]
call sym.opencv_highgui249d.dll_public:_void___thiscall_cv::Mat::constructor_void_
mov dword [ebp - 4], 4
lea ecx, [ebp - 0x13c]
mov dword [ebp - 0x144], ecx
lea ecx, [ebp - 0x164]
call fcn.10002cd9
mov byte [ebp - 4], 5
mov edx, dword [ebp + 8]
push edx
lea eax, [ebp - 0x174]
push eax
call fcn.10019520
add esp, 8
mov byte [ebp - 4], 6
lea ecx, [ebp - 0x174]
call fcn.10003189
movzx ecx, al
test ecx, ecx
je 0x1001a208
mov dword [ebp - 0x228], 0
mov byte [ebp - 4], 5
lea ecx, [ebp - 0x174]
call fcn.10002e14
mov byte [ebp - 4], 4
lea ecx, [ebp - 0x164]
call fcn.1000321f
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x13c]
call sym.opencv_highgui249d.dll_public:_void___thiscall_cv::Mat::destructor_void_
mov eax, dword [ebp - 0x228]
jmp 0x1001a7ce
lea ecx, [ebp - 0x174]
call fcn.100031fc
mov dword [ebp - 0x244], eax
mov esi, esp
mov edx, dword [ebp + 8]
push edx
mov eax, dword [ebp - 0x244]
mov edx, dword [eax]
mov ecx, dword [ebp - 0x244]
mov eax, dword [edx + 8]
call eax
cmp esi, esp
call fcn.101b9ab0
movzx ecx, al
test ecx, ecx
jne 0x1001a39f
push 0
lea edx, [ebp - 0x194]
push edx
call sub.opencv_core249d.dll_class_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char_____cdecl_cv::tempfile_char_const__
add esp, 8
mov dword [ebp - 0x248], eax
mov eax, dword [ebp - 0x248]
mov dword [ebp - 0x24c], eax
mov byte [ebp - 4], 7
mov ecx, dword [ebp - 0x24c]
push ecx
lea ecx, [ebp - 0x164]
call fcn.100028b5
mov byte [ebp - 4], 6
lea ecx, [ebp - 0x194]
call fcn.1000321f
mov esi, esp
push 0x10242944
lea ecx, [ebp - 0x164]
call fcn.100030d0
push eax
call dword [sym.imp.MSVCR120D.dll_fopen]
add esp, 8
cmp esi, esp
call fcn.101b9ab0
mov dword [ebp - 0x198], eax
cmp dword [ebp - 0x198], 0
jne 0x1001a303
mov dword [ebp - 0x22c], 0
mov byte [ebp - 4], 5
lea ecx, [ebp - 0x174]
call fcn.10002e14
mov byte [ebp - 4], 4
lea ecx, [ebp - 0x164]
call fcn.1000321f
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x13c]
call sym.opencv_highgui249d.dll_public:_void___thiscall_cv::Mat::destructor_void_
mov eax, dword [ebp - 0x22c]
jmp 0x1001a7ce
mov edx, dword [ebp + 8]
mov eax, dword [ebp + 8]
mov esi, dword [edx + 0xc]
imul esi, dword [eax + 8]
mov ecx, dword [ebp + 8]
call sym.opencv_highgui249d.dll_public:_unsigned_int___thiscall_cv::Mat::elemSize_void_const
imul esi, eax
mov dword [ebp - 0x19c], esi
mov esi, esp
mov ecx, dword [ebp - 0x198]
push ecx
mov edx, dword [ebp - 0x19c]
push edx
push 1
mov eax, 1
imul ecx, eax, 0
mov edx, dword [ebp + 8]
add ecx, dword [edx + 0x10]
push ecx
call dword [sym.imp.MSVCR120D.dll_fwrite]
add esp, 0x10
cmp esi, esp
call fcn.101b9ab0
mov esi, esp
mov eax, dword [ebp - 0x198]
push eax
call dword [sym.imp.MSVCR120D.dll_fclose]
add esp, 4
cmp esi, esp
call fcn.101b9ab0
lea ecx, [ebp - 0x174]
call fcn.100031fc
mov dword [ebp - 0x250], eax
mov esi, esp
lea ecx, [ebp - 0x164]
push ecx
mov edx, dword [ebp - 0x250]
mov eax, dword [edx]
mov ecx, dword [ebp - 0x250]
mov edx, dword [eax + 0xc]
call edx
cmp esi, esp
call fcn.101b9ab0
lea ecx, [ebp - 0x174]
call fcn.100031fc
mov dword [ebp - 0x254], eax
mov eax, dword [ebp - 0x254]
mov edx, dword [eax]
mov esi, esp
mov ecx, dword [ebp - 0x254]
mov eax, dword [edx + 0x10]
call eax
cmp esi, esp
call fcn.101b9ab0
movzx ecx, al
test ecx, ecx
jne 0x1001a448
lea ecx, [ebp - 0x164]
call fcn.10002d38
movzx edx, al
test edx, edx
jne 0x1001a403
lea ecx, [ebp - 0x164]
call fcn.100030d0
mov esi, esp
push eax
call dword [sym.imp.MSVCR120D.dll_remove]
add esp, 4
cmp esi, esp
call fcn.101b9ab0
mov dword [ebp - 0x230], 0
mov byte [ebp - 4], 5
lea ecx, [ebp - 0x174]
call fcn.10002e14
mov byte [ebp - 4], 4
lea ecx, [ebp - 0x164]
call fcn.1000321f
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x13c]
call sym.opencv_highgui249d.dll_public:_void___thiscall_cv::Mat::destructor_void_
mov eax, dword [ebp - 0x230]
jmp 0x1001a7ce
lea ecx, [ebp - 0x174]
call fcn.100031fc
mov ecx, eax
call fcn.10002969
mov dword [ebp - 0x1a8], eax
lea ecx, [ebp - 0x174]
call fcn.100031fc
mov ecx, eax
call fcn.10001960
mov dword [ebp - 0x1a4], eax
lea ecx, [ebp - 0x174]
call fcn.100031fc
mov dword [ebp - 0x258], eax
mov eax, dword [ebp - 0x258]
mov edx, dword [eax]
mov esi, esp
mov ecx, dword [ebp - 0x258]
mov eax, dword [edx + 4]
call eax
cmp esi, esp
call fcn.101b9ab0
mov dword [ebp - 0x1b0], eax
cmp dword [ebp + 0xc], 0xffffffff
je 0x1001a521
mov ecx, dword [ebp + 0xc]
and ecx, 2
jne 0x1001a4d1
mov edx, dword [ebp - 0x1b0]
and edx, 0xff8
sar edx, 3
shl edx, 3
mov dword [ebp - 0x1b0], edx
mov eax, dword [ebp + 0xc]
and eax, 1
jne 0x1001a4f8
mov ecx, dword [ebp + 0xc]
and ecx, 4
je 0x1001a50f
mov edx, dword [ebp - 0x1b0]
and edx, 0xff8
sar edx, 3
add edx, 1
cmp edx, 1
jle 0x1001a50f
mov eax, dword [ebp - 0x1b0]
and eax, 7
and eax, 7
add eax, 0x10
mov dword [ebp - 0x1b0], eax
jmp 0x1001a521
mov ecx, dword [ebp - 0x1b0]
and ecx, 7
and ecx, 7
mov dword [ebp - 0x1b0], ecx
cmp dword [ebp + 0x10], 0
je 0x1001a531
cmp dword [ebp + 0x10], 2
jne 0x1001a5da
cmp dword [ebp + 0x10], 0
jne 0x1001a5af
mov edx, dword [ebp - 0x1b0]
push edx
mov eax, dword [ebp - 0x1a8]
push eax
mov ecx, dword [ebp - 0x1a4]
push ecx
call sub.opencv_core249d.dll_cvCreateMat
add esp, 0xc
mov dword [ebp - 0xfc], eax
push 0
push 1
push 0
mov edx, dword [ebp - 0xfc]
push edx
lea eax, [ebp - 0x1e8]
push eax
call sub.opencv_core249d.dll_class_cv::Mat___cdecl_cv::cvarrToMat_void_const___bool__bool__int_
add esp, 0x14
mov dword [ebp - 0x25c], eax
mov ecx, dword [ebp - 0x25c]
mov dword [ebp - 0x260], ecx
mov byte [ebp - 4], 8
mov edx, dword [ebp - 0x260]
push edx
lea ecx, [ebp - 0x13c]
call sym.opencv_highgui249d.dll_public:_class_cv::Mat____thiscall_cv::Mat::operator_class_cv::Mat_const__
mov byte [ebp - 4], 6
lea ecx, [ebp - 0x1e8]
call sym.opencv_highgui249d.dll_public:_void___thiscall_cv::Mat::destructor_void_
jmp 0x1001a5d5
mov eax, dword [ebp - 0x1b0]
push eax
mov ecx, dword [ebp - 0x1a8]
push ecx
mov edx, dword [ebp - 0x1a4]
push edx
mov ecx, dword [ebp + 0x14]
call sym.opencv_highgui249d.dll_public:_void___thiscall_cv::Mat::create_int__int__int_
mov eax, dword [ebp + 0x14]
mov dword [ebp - 0x144], eax
jmp 0x1001a66c
mov ecx, dword [ebp - 0x1b0]
and ecx, 0xff8
sar ecx, 3
add ecx, 1
push ecx
mov edx, dword [ebp - 0x1b0]
push edx
call fcn.10002be9
add esp, 4
push eax
mov eax, dword [ebp - 0x1a4]
push eax
mov ecx, dword [ebp - 0x1a8]
push ecx
call sub.opencv_core249d.dll_cvCreateImage
add esp, 0x10
mov dword [ebp - 0xf0], eax
push 0
push 1
push 0
mov edx, dword [ebp - 0xf0]
push edx
lea eax, [ebp - 0x220]
push eax
call sub.opencv_core249d.dll_class_cv::Mat___cdecl_cv::cvarrToMat_void_const___bool__bool__int_
add esp, 0x14
mov dword [ebp - 0x264], eax
mov ecx, dword [ebp - 0x264]
mov dword [ebp - 0x268], ecx
mov byte [ebp - 4], 9
mov edx, dword [ebp - 0x268]
push edx
lea ecx, [ebp - 0x13c]
call sym.opencv_highgui249d.dll_public:_class_cv::Mat____thiscall_cv::Mat::operator_class_cv::Mat_const__
mov byte [ebp - 4], 6
lea ecx, [ebp - 0x220]
call sym.opencv_highgui249d.dll_public:_void___thiscall_cv::Mat::destructor_void_
lea ecx, [ebp - 0x174]
call fcn.100031fc
mov dword [ebp - 0x26c], eax
mov esi, esp
mov eax, dword [ebp - 0x144]
push eax
mov ecx, dword [ebp - 0x26c]
mov edx, dword [ecx]
mov ecx, dword [ebp - 0x26c]
mov eax, dword [edx + 0x14]
call eax
cmp esi, esp
call fcn.101b9ab0
mov byte [ebp - 0x221], al
lea ecx, [ebp - 0x164]
call fcn.10002d38
movzx ecx, al
test ecx, ecx
jne 0x1001a6d6
lea ecx, [ebp - 0x164]
call fcn.100030d0
mov esi, esp
push eax
call dword [sym.imp.MSVCR120D.dll_remove]
add esp, 4
cmp esi, esp
call fcn.101b9ab0
movzx edx, byte [ebp - 0x221]
test edx, edx
jne 0x1001a74f
lea eax, [ebp - 0xf0]
push eax
call sub.opencv_core249d.dll_cvReleaseImage
add esp, 4
lea ecx, [ebp - 0xfc]
push ecx
call sub.opencv_core249d.dll_cvReleaseMat
add esp, 4
cmp dword [ebp + 0x14], 0
je 0x1001a70d
mov ecx, dword [ebp + 0x14]
call sym.opencv_highgui249d.dll_public:_void___thiscall_cv::Mat::release_void_
mov dword [ebp - 0x234], 0
mov byte [ebp - 4], 5
lea ecx, [ebp - 0x174]
call fcn.10002e14
mov byte [ebp - 4], 4
lea ecx, [ebp - 0x164]
call fcn.1000321f
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x13c]
call sym.opencv_highgui249d.dll_public:_void___thiscall_cv::Mat::destructor_void_
mov eax, dword [ebp - 0x234]
jmp 0x1001a7ce
cmp dword [ebp + 0x10], 0
jne 0x1001a763
mov edx, dword [ebp - 0xfc]
mov dword [ebp - 0x270], edx
jmp 0x1001a78c
cmp dword [ebp + 0x10], 1
jne 0x1001a777
mov eax, dword [ebp - 0xf0]
mov dword [ebp - 0x274], eax
jmp 0x1001a780
mov ecx, dword [ebp + 0x14]
mov dword [ebp - 0x274], ecx
mov edx, dword [ebp - 0x274]
mov dword [ebp - 0x270], edx
mov eax, dword [ebp - 0x270]
mov dword [ebp - 0x238], eax
mov byte [ebp - 4], 5
lea ecx, [ebp - 0x174]
call fcn.10002e14
mov byte [ebp - 4], 4
lea ecx, [ebp - 0x164]
call fcn.1000321f
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x13c]
call sym.opencv_highgui249d.dll_public:_void___thiscall_cv::Mat::destructor_void_
mov eax, dword [ebp - 0x238]
push edx
mov ecx, ebp
push eax
lea edx, [0x1001a808]
call fcn.101b9a50
pop eax
pop edx
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
mov ecx, dword [ebp - 0x10]
xor ecx, ebp
call fcn.101b9ae0
add esp, 0x274
cmp ebp, esp
call fcn.101b9ab0
mov esp, ebp
pop ebp
ret