Function at 0x100511e0
Capabilities:
Write file on windows

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x10227829
mov eax, dword fs:[0]
push eax
mov eax, 0x314c
call fcn.101ba1f0
push ebx
push esi
push edi
push ecx
lea edi, [ebp - 0x3158]
mov ecx, 0xc53
mov eax, 0xcccccccc
rep stosd dword es:[edi], eax
pop ecx
mov eax, dword [0x10363590]
xor eax, ebp
mov dword [ebp - 0x10], eax
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov dword [ebp - 0x14], ecx
mov ecx, dword [ebp + 8]
call sym.opencv_highgui249d.dll_public:_int___thiscall_cv::Mat::channels_void_const
mov dword [ebp - 0x18], eax
mov eax, dword [ebp + 8]
mov ecx, dword [eax + 0xc]
mov dword [ebp - 0x1c], ecx
mov edx, dword [ebp + 8]
mov eax, dword [edx + 8]
mov dword [ebp - 0x20], eax
mov ecx, dword [ebp + 8]
call sym.opencv_highgui249d.dll_public:_int___thiscall_cv::Mat::depth_void_const
mov dword [ebp - 0x24], eax
cmp dword [ebp - 0x24], 0
je 0x10051264
cmp dword [ebp - 0x24], 2
je 0x10051264
xor al, al
jmp 0x10051b21
cmp dword [ebp - 0x24], 0
jne 0x10051276
mov dword [ebp - 0x314c], 1
jmp 0x10051280
mov dword [ebp - 0x314c], 2
mov ecx, dword [ebp - 0x314c]
mov dword [ebp - 0x28], ecx
mov edx, dword [ebp - 0x1c]
imul edx, dword [ebp - 0x18]
imul edx, dword [ebp - 0x28]
mov dword [ebp - 0x2c], edx
lea ecx, [ebp - 0x54]
call fcn.10001f37
mov dword [ebp - 4], 0
mov eax, dword [ebp - 0x14]
cmp dword [eax + 0x3c], 0
je 0x100512e8
mov ecx, dword [ebp - 0x14]
mov edx, dword [ecx + 0x3c]
push edx
lea ecx, [ebp - 0x54]
call fcn.1000180c
movzx eax, al
test eax, eax
jne 0x100512e6
mov byte [ebp - 0x3121], 0
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x54]
call fcn.1000124e
mov al, byte [ebp - 0x3121]
jmp 0x10051b21
jmp 0x10051318
mov ecx, dword [ebp + 0xc]
push ecx
mov edx, dword [ebp + 8]
push edx
mov ecx, dword [ebp - 0x14]
call fcn.1000131b
mov byte [ebp - 0x3122], al
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x54]
call fcn.1000124e
mov al, byte [ebp - 0x3122]
jmp 0x10051b21
mov eax, 0x2000
cdq
idiv dword [ebp - 0x2c]
mov dword [ebp - 0x5c], eax
cmp dword [ebp - 0x5c], 1
jge 0x10051331
mov dword [ebp - 0x5c], 1
mov eax, dword [ebp - 0x5c]
cmp eax, dword [ebp - 0x20]
jle 0x1005133f
mov ecx, dword [ebp - 0x20]
mov dword [ebp - 0x5c], ecx
mov edx, dword [ebp - 0x5c]
mov eax, dword [ebp - 0x20]
lea eax, [eax + edx - 1]
cdq
idiv dword [ebp - 0x5c]
mov dword [ebp - 0x64], eax
mov ecx, dword [ebp - 0x14]
cmp dword [ecx + 0x3c], 0
je 0x10051384
push 0x100
mov edx, dword [ebp - 0x2c]
imul edx, dword [ebp - 0x20]
mov eax, dword [ebp - 0x64]
lea ecx, [edx + eax*8 + 0x100]
push ecx
call fcn.1004f9a0
add esp, 8
push eax
mov edx, dword [ebp - 0x14]
mov ecx, dword [edx + 0x3c]
call fcn.10001cee
mov dword [ebp - 0x68], 0
mov eax, dword [ebp - 0x64]
push eax
lea ecx, [ebp - 0x10a4]
call fcn.100030fd
mov byte [ebp - 4], 1
mov ecx, dword [ebp - 0x64]
push ecx
lea ecx, [ebp - 0x20d4]
call fcn.1000218a
mov byte [ebp - 4], 2
mov edx, dword [ebp - 0x2c]
add edx, 0x20
push edx
lea ecx, [ebp - 0x30fc]
call fcn.1000336e
mov byte [ebp - 4], 3
lea ecx, [ebp - 0x30fc]
call fcn.10001f91
mov dword [ebp - 0x3104], eax
mov dword [ebp - 0x3108], 0
mov dword [ebp - 0x310c], 0
mov eax, dword [ebp - 0x28]
shl eax, 3
mov dword [ebp - 0x3110], eax
mov dword [ebp - 0x3114], 0
push 4
push 0x10249178
lea ecx, [ebp - 0x54]
call fcn.10001a8c
mov ecx, dword [ebp - 0x68]
push ecx
lea ecx, [ebp - 0x54]
call fcn.10001168
mov dword [ebp - 0x60], 0
jmp 0x1005142f
mov edx, dword [ebp - 0x60]
add edx, 1
mov dword [ebp - 0x60], edx
mov eax, dword [ebp - 0x60]
cmp eax, dword [ebp - 0x64]
jge 0x10051691
mov ecx, dword [ebp - 0x3114]
add ecx, dword [ebp - 0x5c]
mov dword [ebp - 0x3118], ecx
mov edx, dword [ebp - 0x3118]
cmp edx, dword [ebp - 0x20]
jle 0x1005145e
mov eax, dword [ebp - 0x20]
mov dword [ebp - 0x3118], eax
lea ecx, [ebp - 0x54]
call fcn.100020fe
mov esi, eax
lea ecx, [ebp - 0x10a4]
call fcn.10003062
mov ecx, dword [ebp - 0x60]
mov dword [eax + ecx*4], esi
jmp 0x1005148a
mov edx, dword [ebp - 0x3114]
add edx, 1
mov dword [ebp - 0x3114], edx
mov eax, dword [ebp - 0x3114]
cmp eax, dword [ebp - 0x3118]
jge 0x1005165f
cmp dword [ebp - 0x18], 3
jne 0x1005155b
cmp dword [ebp - 0x24], 0
jne 0x10051502
push 1
mov ecx, dword [ebp - 0x1c]
push ecx
call fcn.100015dc
add esp, 8
mov dword [ebp - 0x312c], eax
mov dword [ebp - 0x3128], edx
mov edx, dword [ebp - 0x3128]
push edx
mov eax, dword [ebp - 0x312c]
push eax
push 0
mov ecx, dword [ebp - 0x3104]
push ecx
push 0
mov ecx, dword [ebp + 8]
add ecx, 0x2c
call sym.opencv_highgui249d.dll_public:_unsigned_int___thiscall_cv::Mat::MStep::operator_unsigned_int_void_const
imul eax, dword [ebp - 0x3114]
mov edx, dword [ebp + 8]
add eax, dword [edx + 0x10]
push eax
call fcn.10002379
add esp, 0x18
jmp 0x10051556
push 1
mov eax, dword [ebp - 0x1c]
push eax
call fcn.100015dc
add esp, 8
mov dword [ebp - 0x3134], eax
mov dword [ebp - 0x3130], edx
mov ecx, dword [ebp - 0x3130]
push ecx
mov edx, dword [ebp - 0x3134]
push edx
push 0
mov eax, dword [ebp - 0x3104]
push eax
push 0
mov ecx, dword [ebp + 8]
add ecx, 0x2c
call sym.opencv_highgui249d.dll_public:_unsigned_int___thiscall_cv::Mat::MStep::operator_unsigned_int_void_const
imul eax, dword [ebp - 0x3114]
mov ecx, dword [ebp + 8]
add eax, dword [ecx + 0x10]
push eax
call fcn.100029b9
add esp, 0x18
jmp 0x10051615
cmp dword [ebp - 0x18], 4
jne 0x10051615
cmp dword [ebp - 0x24], 0
jne 0x100515c1
push 1
mov edx, dword [ebp - 0x1c]
push edx
call fcn.100015dc
add esp, 8
mov dword [ebp - 0x313c], eax
mov dword [ebp - 0x3138], edx
mov eax, dword [ebp - 0x3138]
push eax
mov ecx, dword [ebp - 0x313c]
push ecx
push 0
mov edx, dword [ebp - 0x3104]
push edx
push 0
mov ecx, dword [ebp + 8]
add ecx, 0x2c
call sym.opencv_highgui249d.dll_public:_unsigned_int___thiscall_cv::Mat::MStep::operator_unsigned_int_void_const
imul eax, dword [ebp - 0x3114]
mov ecx, dword [ebp + 8]
add eax, dword [ecx + 0x10]
push eax
call fcn.100014ce
add esp, 0x18
jmp 0x10051615
push 1
mov edx, dword [ebp - 0x1c]
push edx
call fcn.100015dc
add esp, 8
mov dword [ebp - 0x3144], eax
mov dword [ebp - 0x3140], edx
mov eax, dword [ebp - 0x3140]
push eax
mov ecx, dword [ebp - 0x3144]
push ecx
push 0
mov edx, dword [ebp - 0x3104]
push edx
push 0
mov ecx, dword [ebp + 8]
add ecx, 0x2c
call sym.opencv_highgui249d.dll_public:_unsigned_int___thiscall_cv::Mat::MStep::operator_unsigned_int_void_const
imul eax, dword [ebp - 0x3114]
mov ecx, dword [ebp + 8]
add eax, dword [ecx + 0x10]
push eax
call fcn.10002360
add esp, 0x18
cmp dword [ebp - 0x18], 1
jle 0x10051629
mov edx, dword [ebp - 0x3104]
mov dword [ebp - 0x3150], edx
jmp 0x10051647
mov ecx, dword [ebp + 8]
add ecx, 0x2c
call sym.opencv_highgui249d.dll_public:_unsigned_int___thiscall_cv::Mat::MStep::operator_unsigned_int_void_const
imul eax, dword [ebp - 0x3114]
mov ecx, dword [ebp + 8]
add eax, dword [ecx + 0x10]
mov dword [ebp - 0x3150], eax
mov edx, dword [ebp - 0x2c]
push edx
mov eax, dword [ebp - 0x3150]
push eax
lea ecx, [ebp - 0x54]
call fcn.10001a8c
jmp 0x1005147b
lea ecx, [ebp - 0x54]
call fcn.100020fe
mov esi, eax
lea ecx, [ebp - 0x10a4]
call fcn.10003062
mov ecx, dword [ebp - 0x60]
sub esi, dword [eax + ecx*4]
lea ecx, [ebp - 0x20d4]
call fcn.10002b2b
mov edx, dword [ebp - 0x60]
mov word [eax + edx*2], si
jmp 0x10051426
cmp dword [ebp - 0x64], 2
jle 0x10051729
lea ecx, [ebp - 0x54]
call fcn.100020fe
mov dword [ebp - 0x3108], eax
mov dword [ebp - 0x60], 0
jmp 0x100516bb
mov eax, dword [ebp - 0x60]
add eax, 1
mov dword [ebp - 0x60], eax
mov ecx, dword [ebp - 0x60]
cmp ecx, dword [ebp - 0x64]
jge 0x100516df
lea ecx, [ebp - 0x10a4]
call fcn.10003062
mov edx, dword [ebp - 0x60]
mov eax, dword [eax + edx*4]
push eax
lea ecx, [ebp - 0x54]
call fcn.10001168
jmp 0x100516b2
lea ecx, [ebp - 0x54]
call fcn.100020fe
mov dword [ebp - 0x310c], eax
mov dword [ebp - 0x60], 0
jmp 0x100516ff
mov ecx, dword [ebp - 0x60]
add ecx, 1
mov dword [ebp - 0x60], ecx
mov edx, dword [ebp - 0x60]
cmp edx, dword [ebp - 0x64]
jge 0x10051724
lea ecx, [ebp - 0x20d4]
call fcn.10002b2b
mov ecx, dword [ebp - 0x60]
movsx edx, word [eax + ecx*2]
push edx
lea ecx, [ebp - 0x54]
call fcn.10002888
jmp 0x100516f6
jmp 0x100517e7
cmp dword [ebp - 0x64], 2
jne 0x100517ae
lea ecx, [ebp - 0x54]
call fcn.100020fe
mov dword [ebp - 0x3108], eax
mov dword [ebp - 0x60], 0
jmp 0x1005174f
mov eax, dword [ebp - 0x60]
add eax, 1
mov dword [ebp - 0x60], eax
mov ecx, dword [ebp - 0x60]
cmp ecx, dword [ebp - 0x64]
jge 0x10051773
lea ecx, [ebp - 0x10a4]
call fcn.10003062
mov edx, dword [ebp - 0x60]
mov eax, dword [eax + edx*4]
push eax
lea ecx, [ebp - 0x54]
call fcn.10001168
jmp 0x10051746
lea ecx, [ebp - 0x20d4]
call fcn.10002b2b
mov ecx, 2
imul edx, ecx, 0
movsx esi, word [eax + edx]
lea ecx, [ebp - 0x20d4]
call fcn.10002b2b
mov ecx, 2
shl ecx, 0
movsx edx, word [eax + ecx]
shl edx, 0x10
add esi, edx
mov dword [ebp - 0x310c], esi
jmp 0x100517e7
lea ecx, [ebp - 0x10a4]
call fcn.10003062
mov ecx, 4
imul edx, ecx, 0
mov eax, dword [eax + edx]
mov dword [ebp - 0x3108], eax
lea ecx, [ebp - 0x20d4]
call fcn.10002b2b
mov ecx, 2
imul edx, ecx, 0
movsx eax, word [eax + edx]
mov dword [ebp - 0x310c], eax
cmp dword [ebp - 0x18], 1
jle 0x10051849
lea ecx, [ebp - 0x54]
call fcn.100020fe
mov dword [ebp - 0x311c], eax
mov ecx, dword [ebp - 0x3110]
push ecx
lea ecx, [ebp - 0x54]
call fcn.10002888
mov edx, dword [ebp - 0x3110]
push edx
lea ecx, [ebp - 0x54]
call fcn.10002888
mov eax, dword [ebp - 0x3110]
push eax
lea ecx, [ebp - 0x54]
call fcn.10002888
cmp dword [ebp - 0x18], 4
jne 0x1005183d
mov ecx, dword [ebp - 0x3110]
push ecx
lea ecx, [ebp - 0x54]
call fcn.10002888
mov edx, dword [ebp - 0x311c]
mov dword [ebp - 0x3110], edx
lea ecx, [ebp - 0x54]
call fcn.100020fe
mov dword [ebp - 0x68], eax
push 9
lea ecx, [ebp - 0x54]
call fcn.10002888
mov eax, dword [ebp - 0x1c]
push eax
push 1
push 4
push 0x100
lea ecx, [ebp - 0x54]
push ecx
mov ecx, dword [ebp - 0x14]
call fcn.10002126
mov edx, dword [ebp - 0x20]
push edx
push 1
push 4
push 0x101
lea eax, [ebp - 0x54]
push eax
mov ecx, dword [ebp - 0x14]
call fcn.10002126
mov ecx, dword [ebp - 0x3110]
push ecx
mov edx, dword [ebp - 0x18]
push edx
push 3
push 0x102
lea eax, [ebp - 0x54]
push eax
mov ecx, dword [ebp - 0x14]
call fcn.10002126
push 1
push 1
push 4
push 0x103
lea ecx, [ebp - 0x54]
push ecx
mov ecx, dword [ebp - 0x14]
call fcn.10002126
cmp dword [ebp - 0x18], 1
jle 0x100518d7
mov dword [ebp - 0x3154], 2
jmp 0x100518e1
mov dword [ebp - 0x3154], 1
mov edx, dword [ebp - 0x3154]
push edx
push 1
push 3
push 0x106
lea eax, [ebp - 0x54]
push eax
mov ecx, dword [ebp - 0x14]
call fcn.10002126
mov ecx, dword [ebp - 0x3108]
push ecx
mov edx, dword [ebp - 0x64]
push edx
push 4
push 0x111
lea eax, [ebp - 0x54]
push eax
mov ecx, dword [ebp - 0x14]
call fcn.10002126
mov ecx, dword [ebp - 0x18]
push ecx
push 1
push 3
push 0x115
lea edx, [ebp - 0x54]
push edx
mov ecx, dword [ebp - 0x14]
call fcn.10002126
mov eax, dword [ebp - 0x5c]
push eax
push 1
push 4
push 0x116
lea ecx, [ebp - 0x54]
push ecx
mov ecx, dword [ebp - 0x14]
call fcn.10002126
cmp dword [ebp - 0x64], 1
jle 0x1005195f
mov dword [ebp - 0x3158], 3
jmp 0x10051969
mov dword [ebp - 0x3158], 4
mov edx, dword [ebp - 0x310c]
push edx
mov eax, dword [ebp - 0x64]
push eax
mov ecx, dword [ebp - 0x3158]
push ecx
push 0x117
lea edx, [ebp - 0x54]
push edx
mov ecx, dword [ebp - 0x14]
call fcn.10002126
push 0
lea ecx, [ebp - 0x54]
call fcn.10001168
lea ecx, [ebp - 0x54]
call fcn.10002f09
mov eax, dword [ebp - 0x14]
cmp dword [eax + 0x3c], 0
je 0x100519fd
push 4
mov ecx, dword [ebp - 0x14]
mov ecx, dword [ecx + 0x3c]
call fcn.10002923
mov dl, byte [ebp - 0x68]
mov byte [eax], dl
mov ebx, dword [ebp - 0x68]
sar ebx, 8
push 5
mov eax, dword [ebp - 0x14]
mov ecx, dword [eax + 0x3c]
call fcn.10002923
mov byte [eax], bl
mov ebx, dword [ebp - 0x68]
sar ebx, 0x10
push 6
mov ecx, dword [ebp - 0x14]
mov ecx, dword [ecx + 0x3c]
call fcn.10002923
mov byte [eax], bl
mov ebx, dword [ebp - 0x68]
sar ebx, 0x18
push 7
mov edx, dword [ebp - 0x14]
mov ecx, dword [edx + 0x3c]
call fcn.10002923
mov byte [eax], bl
jmp 0x10051ad8
mov esi, esp
push 0x10249090
mov ecx, dword [ebp - 0x14]
add ecx, 0x20
call fcn.100030d0
push eax
call dword [sym.imp.MSVCR120D.dll_fopen]
add esp, 8
cmp esi, esp
call fcn.101b9ab0
mov dword [ebp - 0x3120], eax
mov eax, 1
imul ecx, eax, 0
mov edx, dword [ebp - 0x3104]
mov al, byte [ebp - 0x68]
mov byte [edx + ecx], al
mov ecx, dword [ebp - 0x68]
sar ecx, 8
mov edx, 1
shl edx, 0
mov eax, dword [ebp - 0x3104]
mov byte [eax + edx], cl
mov ecx, dword [ebp - 0x68]
sar ecx, 0x10
mov edx, 1
shl edx, 1
mov eax, dword [ebp - 0x3104]
mov byte [eax + edx], cl
mov ecx, dword [ebp - 0x68]
sar ecx, 0x18
mov edx, 1
imul eax, edx, 3
mov edx, dword [ebp - 0x3104]
mov byte [edx + eax], cl
mov esi, esp
push 0
push 4
mov eax, dword [ebp - 0x3120]
push eax
call dword [sym.imp.MSVCR120D.dll_fseek]
add esp, 0xc
cmp esi, esp
call fcn.101b9ab0
mov esi, esp
mov ecx, dword [ebp - 0x3120]
push ecx
push 4
push 1
mov edx, dword [ebp - 0x3104]
push edx
call dword [sym.imp.MSVCR120D.dll_fwrite]
add esp, 0x10
cmp esi, esp
call fcn.101b9ab0
mov esi, esp
mov eax, dword [ebp - 0x3120]
push eax
call dword [sym.imp.MSVCR120D.dll_fclose]
add esp, 4
cmp esi, esp
call fcn.101b9ab0
mov byte [ebp - 0x3145], 1
mov byte [ebp - 4], 2
lea ecx, [ebp - 0x30fc]
call fcn.10003238
mov byte [ebp - 4], 1
lea ecx, [ebp - 0x20d4]
call fcn.1000127b
mov byte [ebp - 4], 0
lea ecx, [ebp - 0x10a4]
call fcn.1000128a
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x54]
call fcn.1000124e
mov al, byte [ebp - 0x3145]
push edx
mov ecx, ebp
push eax
lea edx, [0x10051b60]
call fcn.101b9a50
pop eax
pop edx
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 0x10]
xor ecx, ebp
call fcn.101b9ae0
add esp, 0x3158
cmp ebp, esp
call fcn.101b9ab0
mov esp, ebp
pop ebp
ret 8