Function at 0x411ab0
Capabilities:
Terminate thread

Disassembly:
push 0xffffffffffffffff
push 0x4d4211
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
sub esp, 0xc
push ebx
push esi
push edi
mov edi, ecx
mov dword [esp + 0xc], edi
mov dword [edi], vtable.CCannotPlayUpload.0
xor ebx, ebx
mov dword [esp + 0x20], ebx
mov eax, dword [edi + 0x240]
cmp eax, ebx
je 0x411afc
push ebx
push eax
call dword [sym.imp.KERNEL32.dll_TerminateThread]
mov eax, dword [edi + 0x240]
push eax
call dword [sym.imp.KERNEL32.dll_CloseHandle]
lea esi, [edi + 0x238]
push ebp
mov dword [esp + 0x14], esi
mov dword [esi], vtable.CGdiObject.0
mov ecx, esi
mov byte [esp + 0x24], 7
call sub.MFC42.DLL_CGdiObject::DeleteObject
lea ecx, [edi + 0x234]
mov dword [esi], vtable.CObject.0
mov byte [esp + 0x24], 5
call sub.MFC42.DLL_CString::CString
lea ecx, [edi + 0x230]
mov byte [esp + 0x24], 4
call sub.MFC42.DLL_CString::CString
lea ecx, [edi + 0x1f0]
mov byte [esp + 0x24], 3
call sub.MFC42.DLL_CEdit::CEdit
lea esi, [edi + 0x144]
mov dword [esp + 0x14], esi
lea ebp, [esi + 0xa0]
mov dword [esp + 0x18], ebp
mov dword [ebp], vtable.CGdiObject.0
mov ecx, ebp
mov byte [esp + 0x24], 0xa
call sub.MFC42.DLL_CGdiObject::DeleteObject
lea ecx, [esi + 0x60]
mov dword [ebp], vtable.CObject.0
mov byte [esp + 0x24], 8
call sub.MFC42.DLL_CAnimateCtrl::CAnimateCtrl
mov ecx, esi
mov byte [esp + 0x24], 2
call fcn.004ceab0
lea esi, [edi + 0x64]
mov dword [esp + 0x18], esi
push 1
lea ecx, [esi + 0xd0]
mov byte [esp + 0x28], 0x17
call dword [sym.imp.MSVCP60.dll_private:_void___thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::_Tidy_bool_]
push 1
lea ecx, [esi + 0xc0]
mov byte [esp + 0x28], 0x16
call dword [sym.imp.MSVCP60.dll_private:_void___thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::_Tidy_bool_]
push 1
lea ecx, [esi + 0xb0]
mov byte [esp + 0x28], 0x15
call dword [sym.imp.MSVCP60.dll_private:_void___thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::_Tidy_bool_]
push 1
lea ecx, [esi + 0xa0]
mov byte [esp + 0x28], 0x14
call dword [sym.imp.MSVCP60.dll_private:_void___thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::_Tidy_bool_]
push 1
lea ecx, [esi + 0x90]
mov byte [esp + 0x28], 0x13
call dword [sym.imp.MSVCP60.dll_private:_void___thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::_Tidy_bool_]
push 1
lea ecx, [esi + 0x80]
mov byte [esp + 0x28], 0x12
call dword [sym.imp.MSVCP60.dll_private:_void___thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::_Tidy_bool_]
push 1
lea ecx, [esi + 0x70]
mov byte [esp + 0x28], 0x11
call dword [sym.imp.MSVCP60.dll_private:_void___thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::_Tidy_bool_]
mov byte [esp + 0x24], 0x10
push 1
lea ecx, [esi + 0x60]
call dword [sym.imp.MSVCP60.dll_private:_void___thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::_Tidy_bool_]
push 1
lea ecx, [esi + 0x50]
mov byte [esp + 0x28], 0xf
call dword [sym.imp.MSVCP60.dll_private:_void___thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::_Tidy_bool_]
push 1
lea ecx, [esi + 0x40]
mov byte [esp + 0x28], 0xe
call dword [sym.imp.MSVCP60.dll_private:_void___thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::_Tidy_bool_]
push 1
lea ecx, [esi + 0x30]
mov byte [esp + 0x28], 0xd
call dword [sym.imp.MSVCP60.dll_private:_void___thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::_Tidy_bool_]
mov eax, dword [esi + 0x24]
pop ebp
cmp eax, ebx
je 0x411c84
lea ecx, [eax - 1]
mov al, byte [eax - 1]
cmp al, bl
je 0x411c7b
cmp al, 0xff
je 0x411c7b
dec al
mov byte [ecx], al
jmp 0x411c84
push ecx
call sub.MFC42.DLL_operatordelete
add esp, 4
mov dword [esi + 0x24], ebx
mov dword [esi + 0x28], ebx
mov dword [esi + 0x2c], ebx
mov eax, dword [esi + 0x14]
cmp eax, ebx
je 0x411cb1
lea ecx, [eax - 1]
mov al, byte [eax - 1]
cmp al, bl
je 0x411ca8
cmp al, 0xff
je 0x411ca8
dec al
mov byte [ecx], al
jmp 0x411cb1
push ecx
call sub.MFC42.DLL_operatordelete
add esp, 4
mov dword [esi + 0x14], ebx
mov dword [esi + 0x18], ebx
mov dword [esi + 0x1c], ebx
mov eax, dword [esi + 4]
cmp eax, ebx
je 0x411cde
lea ecx, [eax - 1]
mov al, byte [eax - 1]
cmp al, bl
je 0x411cd5
cmp al, 0xff
je 0x411cd5
dec al
mov byte [ecx], al
jmp 0x411cde
push ecx
call sub.MFC42.DLL_operatordelete
add esp, 4
lea ecx, [edi + 0x60]
mov dword [esi + 4], ebx
mov dword [esi + 8], ebx
mov dword [esi + 0xc], ebx
mov byte [esp + 0x20], bl
call sub.MFC42.DLL_CString::CString
mov ecx, edi
mov dword [esp + 0x20], 0xffffffff
call fcn.004ceab0
mov ecx, dword [esp + 0x18]
pop edi
pop esi
pop ebx
mov dword fs:[0], ecx
add esp, 0x18
ret