Function at 0x403770
Capabilities:
Check mutex on windows
Create process on windows
Get system information on windows
Hash data using sha1
Print debug messages
Read .ini file
Read file on windows
Schedule task via at
Write and execute a file
Write file on windows

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x412ca9
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
sub esp, 0xa00
mov eax, dword [ebp + 8]
mov ecx, dword [ebp + 0xc]
push ebx
push esi
push edi
mov dword [ebp - 0x10], esp
push 0x413aac
xor ebx, ebx
push ebx
mov byte [0x41a850], 1
mov dword [0x41a960], eax
mov dword [0x41a95c], ecx
call dword [sym.imp.MSVCR100.dll_setlocale]
add esp, 8
push 0x413ab0
push ebx
push ebx
call dword [sym.imp.KERNEL32.dll_CreateMutexW]
mov esi, eax
call dword [sym.imp.KERNEL32.dll_GetLastError]
cmp eax, 0xb7
jne 0x403807
push esi
call dword [sym.imp.KERNEL32.dll_CloseHandle]
push ebx
push 0x413ac0
push 0x413ac8
push ebx
call dword [sym.imp.USER32.dll_MessageBoxW]
xor eax, eax
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0x10
push 0x3f
lea edx, [ebp - 0x183]
push ebx
push edx
mov byte [ebp - 0x184], bl
call sub.MSVCR100.dll_memset
push 0x3f
lea eax, [ebp - 0x1c3]
push ebx
push eax
mov byte [ebp - 0x1c4], bl
call sub.MSVCR100.dll_memset
push 0x41368f
lea ecx, [ebp - 0x1f0]
push ecx
lea edx, [ebp - 0x2f4]
push edx
mov byte [ebp - 0x35], bl
call dword [sym.imp.libavd.dll_avd_getBinPath]
lea eax, [ebp - 0x2f4]
push eax
push str._suserid.dat
push 0x41a858
call dword [sym.imp.MSVCR100.dll_sprintf]
mov esi, dword [sym.imp.MSVCR100.dll_fopen]
add esp, 0x30
cmp byte [ebp - 0x184], bl
jne 0x40392c
push 0x41361c
push 0x41a858
call esi
mov edi, eax
add esp, 8
cmp edi, ebx
je 0x4038b3
push ebx
push ebx
push edi
call dword [sym.imp.MSVCR100.dll_fseek]
push edi
push 0x40
lea ecx, [ebp - 0x184]
push 1
push ecx
call dword [sym.imp.MSVCR100.dll_fread]
push edi
call dword [sym.imp.MSVCR100.dll_fclose]
add esp, 0x20
cmp byte [ebp - 0x184], bl
jne 0x40392c
lea edx, [ebp - 0x60]
push edx
mov byte [ebp - 0x35], 1
call dword [sym.imp.ole32.dll_CoCreateGuid]
mov eax, dword [ebp - 0x60]
mov ecx, dword [ebp - 0x5c]
mov edx, dword [ebp - 0x58]
mov dword [ebp - 0x4c], eax
mov eax, dword [ebp - 0x54]
mov dword [ebp - 0x48], ecx
mov dword [ebp - 0x40], eax
lea ecx, [ebp - 0x184]
lea eax, [ebp - 0x4c]
mov dword [ebp - 0x44], edx
call fcn.00403220
cmp byte [ebp - 0x184], bl
jne 0x40390c
lea ecx, [ebp - 0x184]
push str.uid9999999999
push ecx
call dword [sym.imp.MSVCR100.dll_sprintf]
add esp, 8
push 0x413948
push 0x41a858
call esi
add esp, 8
cmp eax, ebx
je 0x40392c
mov edi, eax
lea edx, [ebp - 0x184]
call fcn.004031e0
lea edx, [ebp - 0x2f4]
push edx
lea eax, [ebp - 0x3f8]
push str._suserseq.dat
push eax
call dword [sym.imp.MSVCR100.dll_sprintf]
lea ecx, [ebp - 0x3f8]
push 0x41361c
push ecx
call esi
mov edi, eax
add esp, 0x14
cmp edi, ebx
je 0x403981
push ebx
push ebx
push edi
call dword [sym.imp.MSVCR100.dll_fseek]
push edi
push 0x40
lea edx, [ebp - 0x1c4]
push 1
push edx
call dword [sym.imp.MSVCR100.dll_fread]
push edi
call dword [sym.imp.MSVCR100.dll_fclose]
add esp, 0x20
cmp byte [ebp - 0x1c4], bl
jne 0x4039d9
lea eax, [ebp - 0x3f8]
push 0x413948
push eax
call esi
mov edi, eax
add esp, 8
cmp edi, ebx
je 0x4039ba
push edi
push 1
push 1
push 0x413b1c
call dword [sym.imp.MSVCR100.dll_fwrite]
push edi
call dword [sym.imp.MSVCR100.dll_fclose]
add esp, 0x14
push 0x413b1c
lea ecx, [ebp - 0x1c4]
push 0x413b20
push ecx
call dword [sym.imp.MSVCR100.dll_sprintf]
add esp, 0xc
jmp 0x403a58
push 0xa
lea edx, [ebp - 0x1c4]
push ebx
push edx
call dword [sym.imp.MSVCR100.dll_strtol]
push 0x3f
lea edi, [eax + 1]
lea eax, [ebp - 0xfb]
push ebx
push eax
mov byte [ebp - 0xfc], bl
call sub.MSVCR100.dll_memset
push edi
lea ecx, [ebp - 0xfc]
push 0x413b20
push ecx
call dword [sym.imp.MSVCR100.dll_sprintf]
lea edx, [ebp - 0x3f8]
push 0x413948
push edx
call esi
mov edi, eax
add esp, 0x2c
cmp edi, ebx
je 0x403a58
lea eax, [ebp - 0xfc]
lea edx, [eax + 1]
mov cl, byte [eax]
inc eax
cmp cl, bl
jne 0x403a34
sub eax, edx
push edi
push eax
lea eax, [ebp - 0xfc]
push 1
push eax
call dword [sym.imp.MSVCR100.dll_fwrite]
push edi
call dword [sym.imp.MSVCR100.dll_fclose]
add esp, 0x14
mov eax, dword [ebp + 0x10]
mov dword [ebp - 0xb4], str.http:__115.182.8.200:7080_user_info_demu_version
mov byte [0x41a851], bl
mov ecx, str.firstRun
mov dx, word [eax]
cmp dx, word [ecx]
jne 0x403a96
cmp dx, bx
je 0x403a92
mov dx, word [eax + 2]
cmp dx, word [ecx + 2]
jne 0x403a96
add eax, 4
add ecx, 4
cmp dx, bx
jne 0x403a70
xor eax, eax
jmp 0x403a9b
sbb eax, eax
sbb eax, 0xffffffff
cmp eax, ebx
je 0x403aa4
cmp byte [ebp - 0x35], bl
je 0x403ac6
push ebx
push ebx
push ebx
lea ecx, [ebp - 0x184]
push ecx
push ebx
xor eax, eax
lea ecx, [ebp - 0x2f4]
call fcn.004033a0
add esp, 0x14
mov byte [0x41a851], 1
xor edx, edx
push 0x24
mov dword [ebp - 0x88], ebx
mov dword [ebp - 0x84], ebx
mov dword [ebp - 0x80], ebx
mov dword [ebp - 0x7c], ebx
mov dword [ebp - 0x78], ebx
mov byte [ebp - 0x74], bl
mov dword [ebp - 0x110], ebx
mov dword [ebp - 0x10c], ebx
mov word [ebp - 0x108], dx
mov dword [ebp - 0x124], 0x67452301
mov dword [ebp - 0x120], 0xefcdab89
mov dword [ebp - 0x11c], 0x98badcfe
mov dword [ebp - 0x118], 0x10325476
mov dword [ebp - 0x114], 0xc3d2e1f0
mov dword [ebp - 0xc4], ebx
mov dword [ebp - 0xc0], ebx
mov dword [ebp - 0x44], ebx
call dword [sym.imp.MSVCR100.dll_void____cdecl_operator_new_unsigned_int_]
mov edi, eax
add esp, 4
cmp edi, ebx
je 0x404da0
mov dword [edi], edi
mov dword [ebp - 0x48], edi
mov dword [edi + 4], edi
mov dword [ebp - 4], ebx
mov esi, 9
mov eax, str.res1.jpg
lea ecx, [ebp - 0x2c]
mov dword [ebp - 0x18], 0xf
mov dword [ebp - 0x1c], ebx
mov byte [ebp - 0x2c], bl
call fcn.004054d0
lea eax, [ebp - 0x2c]
mov byte [ebp - 4], 1
mov ecx, dword [edi + 4]
push eax
push ecx
push edi
call fcn.00406420
mov dword [edi + 4], eax
mov ecx, dword [eax + 4]
mov dword [ecx], eax
mov byte [ebp - 4], bl
cmp dword [ebp - 0x18], 0x10
mov dword [ebp - 0x44], 1
jb 0x403baa
mov edx, dword [ebp - 0x2c]
push edx
call dword [sym.imp.MSVCR100.dll_void___cdecl_operator_delete_void__]
add esp, 4
mov esi, 9
mov eax, str.res2.jpg
lea ecx, [ebp - 0x2c]
mov dword [ebp - 0x18], 0xf
mov dword [ebp - 0x1c], ebx
mov byte [ebp - 0x2c], bl
call fcn.004054d0
lea eax, [ebp - 0x2c]
mov byte [ebp - 4], 2
mov ecx, dword [edi + 4]
push eax
push ecx
push edi
call fcn.00406420
mov dword [edi + 4], eax
mov ecx, dword [eax + 4]
mov dword [ecx], eax
mov byte [ebp - 4], bl
cmp dword [ebp - 0x18], 0x10
mov dword [ebp - 0x44], 2
jb 0x403c00
mov edx, dword [ebp - 0x2c]
push edx
call dword [sym.imp.MSVCR100.dll_void___cdecl_operator_delete_void__]
add esp, 4
mov esi, 9
mov eax, str.res3.jpg
lea ecx, [ebp - 0x2c]
mov dword [ebp - 0x18], 0xf
mov dword [ebp - 0x1c], ebx
mov byte [ebp - 0x2c], bl
call fcn.004054d0
lea eax, [ebp - 0x2c]
mov byte [ebp - 4], 3
mov ecx, dword [edi + 4]
push eax
push ecx
push edi
call fcn.00406420
mov dword [edi + 4], eax
mov ecx, dword [eax + 4]
mov dword [ecx], eax
mov byte [ebp - 4], bl
cmp dword [ebp - 0x18], 0x10
mov dword [ebp - 0x44], 3
jb 0x403c56
mov edx, dword [ebp - 0x2c]
push edx
call dword [sym.imp.MSVCR100.dll_void___cdecl_operator_delete_void__]
add esp, 4
mov esi, 9
mov eax, str.res4.jpg
lea ecx, [ebp - 0x2c]
mov dword [ebp - 0x18], 0xf
mov dword [ebp - 0x1c], ebx
mov byte [ebp - 0x2c], bl
call fcn.004054d0
lea eax, [ebp - 0x2c]
mov byte [ebp - 4], 4
mov ecx, dword [edi + 4]
push eax
push ecx
push edi
call fcn.00406420
mov dword [edi + 4], eax
mov ecx, dword [eax + 4]
mov dword [ecx], eax
mov byte [ebp - 4], bl
cmp dword [ebp - 0x18], 0x10
mov dword [ebp - 0x44], 4
jb 0x403cac
mov edx, dword [ebp - 0x2c]
push edx
call dword [sym.imp.MSVCR100.dll_void___cdecl_operator_delete_void__]
add esp, 4
mov esi, 9
mov eax, str.res5.jpg
lea ecx, [ebp - 0x2c]
mov dword [ebp - 0x18], 0xf
mov dword [ebp - 0x1c], ebx
mov byte [ebp - 0x2c], bl
call fcn.004054d0
lea eax, [ebp - 0x2c]
mov byte [ebp - 4], 5
mov ecx, dword [edi + 4]
push eax
push ecx
push edi
call fcn.00406420
mov dword [edi + 4], eax
mov ecx, dword [eax + 4]
mov dword [ecx], eax
mov byte [ebp - 4], bl
cmp dword [ebp - 0x18], 0x10
mov dword [ebp - 0x44], 5
jb 0x403d02
mov edx, dword [ebp - 0x2c]
push edx
call dword [sym.imp.MSVCR100.dll_void___cdecl_operator_delete_void__]
add esp, 4
mov esi, 9
mov eax, str.res6.jpg
lea ecx, [ebp - 0x2c]
mov dword [ebp - 0x18], 0xf
mov dword [ebp - 0x1c], ebx
mov byte [ebp - 0x2c], bl
call fcn.004054d0
lea eax, [ebp - 0x2c]
mov byte [ebp - 4], 6
mov ecx, dword [edi + 4]
push eax
push ecx
push edi
call fcn.00406420
mov dword [edi + 4], eax
mov ecx, dword [eax + 4]
mov dword [ecx], eax
mov byte [ebp - 4], bl
cmp dword [ebp - 0x18], 0x10
mov dword [ebp - 0x44], 6
jb 0x403d58
mov edx, dword [ebp - 0x2c]
push edx
call dword [sym.imp.MSVCR100.dll_void___cdecl_operator_delete_void__]
add esp, 4
mov esi, 9
mov eax, str.res7.jpg
lea ecx, [ebp - 0x2c]
mov dword [ebp - 0x18], 0xf
mov dword [ebp - 0x1c], ebx
mov byte [ebp - 0x2c], bl
call fcn.004054d0
lea eax, [ebp - 0x2c]
mov byte [ebp - 4], 7
mov ecx, dword [edi + 4]
push eax
push ecx
push edi
call fcn.00406420
mov dword [edi + 4], eax
mov ecx, dword [eax + 4]
mov dword [ecx], eax
mov byte [ebp - 4], bl
cmp dword [ebp - 0x18], 0x10
mov dword [ebp - 0x44], 7
jb 0x403dae
mov edx, dword [ebp - 0x2c]
push edx
call dword [sym.imp.MSVCR100.dll_void___cdecl_operator_delete_void__]
add esp, 4
mov esi, 9
mov eax, str.res8.jpg
lea ecx, [ebp - 0x2c]
mov dword [ebp - 0x18], 0xf
mov dword [ebp - 0x1c], ebx
mov byte [ebp - 0x2c], bl
call fcn.004054d0
lea eax, [ebp - 0x2c]
mov byte [ebp - 4], 8
mov ecx, dword [edi + 4]
push eax
push ecx
push edi
call fcn.00406420
mov dword [edi + 4], eax
mov ecx, dword [eax + 4]
mov dword [ecx], eax
mov byte [ebp - 4], bl
cmp dword [ebp - 0x18], 0x10
mov dword [ebp - 0x44], 8
jb 0x403e04
mov edx, dword [ebp - 0x2c]
push edx
call dword [sym.imp.MSVCR100.dll_void___cdecl_operator_delete_void__]
add esp, 4
mov esi, 9
mov eax, str.res9.jpg
lea ecx, [ebp - 0x2c]
mov dword [ebp - 0x18], 0xf
mov dword [ebp - 0x1c], ebx
mov byte [ebp - 0x2c], bl
call fcn.004054d0
lea eax, [ebp - 0x2c]
mov byte [ebp - 4], 9
mov ecx, dword [edi + 4]
push eax
push ecx
push edi
call fcn.00406420
mov dword [edi + 4], eax
mov ecx, dword [eax + 4]
mov dword [ecx], eax
mov byte [ebp - 4], bl
cmp dword [ebp - 0x18], 0x10
mov dword [ebp - 0x44], esi
jb 0x403e56
mov edx, dword [ebp - 0x2c]
push edx
call dword [sym.imp.MSVCR100.dll_void___cdecl_operator_delete_void__]
add esp, 4
mov esi, 0xa
mov eax, str.res10.jpg
lea ecx, [ebp - 0x2c]
mov dword [ebp - 0x18], 0xf
mov dword [ebp - 0x1c], ebx
mov byte [ebp - 0x2c], bl
call fcn.004054d0
lea eax, [ebp - 0x2c]
mov byte [ebp - 4], 0xa
mov ecx, dword [edi + 4]
push eax
push ecx
push edi
call fcn.00406420
mov dword [edi + 4], eax
mov ecx, dword [eax + 4]
mov dword [ecx], eax
mov byte [ebp - 4], bl
cmp dword [ebp - 0x18], 0x10
mov dword [ebp - 0x44], esi
jb 0x403ea8
mov edx, dword [ebp - 0x2c]
push edx
call dword [sym.imp.MSVCR100.dll_void___cdecl_operator_delete_void__]
add esp, 4
mov esi, 0xe
mov eax, str.AxmlParser.dll
lea ecx, [ebp - 0x2c]
mov dword [ebp - 0x18], 0xf
mov dword [ebp - 0x1c], ebx
mov byte [ebp - 0x2c], bl
call fcn.004054d0
lea eax, [ebp - 0x2c]
mov byte [ebp - 4], 0xb
mov ecx, dword [edi + 4]
push eax
push ecx
push edi
call fcn.00406420
mov dword [edi + 4], eax
mov ecx, dword [eax + 4]
mov dword [ecx], eax
mov byte [ebp - 4], bl
cmp dword [ebp - 0x18], 0x10
mov dword [ebp - 0x44], 0xb
jb 0x403efe
mov edx, dword [ebp - 0x2c]
push edx
call dword [sym.imp.MSVCR100.dll_void___cdecl_operator_delete_void__]
add esp, 4
mov esi, 9
mov eax, 0x413c1c
lea ecx, [ebp - 0x2c]
mov dword [ebp - 0x18], 0xf
mov dword [ebp - 0x1c], ebx
mov byte [ebp - 0x2c], bl
call fcn.004054d0
lea eax, [ebp - 0x2c]
mov byte [ebp - 4], 0xc
mov ecx, dword [edi + 4]
push eax
push ecx
push edi
call fcn.00406420
mov dword [edi + 4], eax
mov ecx, dword [eax + 4]
mov dword [ecx], eax
mov byte [ebp - 4], bl
cmp dword [ebp - 0x18], 0x10
mov dword [ebp - 0x44], 0xc
jb 0x403f54
mov edx, dword [ebp - 0x2c]
push edx
call dword [sym.imp.MSVCR100.dll_void___cdecl_operator_delete_void__]
add esp, 4
mov esi, 0xa
mov eax, str.Vutils.dll
lea ecx, [ebp - 0x2c]
mov dword [ebp - 0x18], 0xf
mov dword [ebp - 0x1c], ebx
mov byte [ebp - 0x2c], bl
call fcn.004054d0
lea eax, [ebp - 0x2c]
mov byte [ebp - 4], 0xd
mov ecx, dword [edi + 4]
push eax
push ecx
push edi
call fcn.00406420
mov dword [edi + 4], eax
mov ecx, dword [eax + 4]
mov dword [ecx], eax
mov byte [ebp - 4], bl
cmp dword [ebp - 0x18], 0x10
mov dword [ebp - 0x44], 0xd
jb 0x403faa
mov edx, dword [ebp - 0x2c]
push edx
call dword [sym.imp.MSVCR100.dll_void___cdecl_operator_delete_void__]
add esp, 4
mov esi, 0x15
mov eax, str.libEGL_translator.dll
lea ecx, [ebp - 0x2c]
mov dword [ebp - 0x18], 0xf
mov dword [ebp - 0x1c], ebx
mov byte [ebp - 0x2c], bl
call fcn.004054d0
lea eax, [ebp - 0x2c]
mov byte [ebp - 4], 0xe
mov ecx, dword [edi + 4]
push eax
push ecx
push edi
call fcn.00406420
mov dword [edi + 4], eax
mov ecx, dword [eax + 4]
mov dword [ecx], eax
mov byte [ebp - 4], bl
cmp dword [ebp - 0x18], 0x10
mov dword [ebp - 0x44], 0xe
jb 0x404000
mov edx, dword [ebp - 0x2c]
push edx
call dword [sym.imp.MSVCR100.dll_void___cdecl_operator_delete_void__]
add esp, 4
mov esi, 0x19
mov eax, str.libGLES_CM_translator.dll
lea ecx, [ebp - 0x2c]
mov dword [ebp - 0x18], 0xf
mov dword [ebp - 0x1c], ebx
mov byte [ebp - 0x2c], bl
call fcn.004054d0
lea eax, [ebp - 0x2c]
mov byte [ebp - 4], 0xf
mov ecx, dword [edi + 4]
push eax
push ecx
push edi
call fcn.00406420
mov dword [edi + 4], eax
mov ecx, dword [eax + 4]
mov dword [ecx], eax
mov byte [ebp - 4], bl
cmp dword [ebp - 0x18], 0x10
mov dword [ebp - 0x44], 0xf
jb 0x404056
mov edx, dword [ebp - 0x2c]
push edx
call dword [sym.imp.MSVCR100.dll_void___cdecl_operator_delete_void__]
add esp, 4
mov esi, 0x19
mov eax, str.libGLES_V2_translator.dll
lea ecx, [ebp - 0x2c]
mov dword [ebp - 0x18], 0xf
mov dword [ebp - 0x1c], ebx
mov byte [ebp - 0x2c], bl
call fcn.004054d0
lea eax, [ebp - 0x2c]
mov byte [ebp - 4], 0x10
mov ecx, dword [edi + 4]
push eax
push ecx
push edi
call fcn.00406420
mov dword [edi + 4], eax
mov ecx, dword [eax + 4]
mov edx, 0x10
mov dword [ecx], eax
mov byte [ebp - 4], bl
mov dword [ebp - 0x44], edx
cmp dword [ebp - 0x18], edx
jb 0x4040ac
mov edx, dword [ebp - 0x2c]
push edx
call dword [sym.imp.MSVCR100.dll_void___cdecl_operator_delete_void__]
add esp, 4
mov esi, 0x13
mov eax, str.libOpenglRender.dll
lea ecx, [ebp - 0x2c]
mov dword [ebp - 0x18], 0xf
mov dword [ebp - 0x1c], ebx
mov byte [ebp - 0x2c], bl
call fcn.004054d0
lea eax, [ebp - 0x2c]
mov byte [ebp - 4], 0x11
mov ecx, dword [edi + 4]
push eax
push ecx
push edi
call fcn.00406420
mov dword [edi + 4], eax
mov ecx, dword [eax + 4]
mov dword [ecx], eax
mov byte [ebp - 4], bl
cmp dword [ebp - 0x18], 0x10
mov dword [ebp - 0x44], 0x11
jb 0x404102
mov edx, dword [ebp - 0x2c]
push edx
call dword [sym.imp.MSVCR100.dll_void___cdecl_operator_delete_void__]
add esp, 4
mov esi, 0xa
mov eax, 0x413c98
lea ecx, [ebp - 0x2c]
mov dword [ebp - 0x18], 0xf
mov dword [ebp - 0x1c], ebx
mov byte [ebp - 0x2c], bl
call fcn.004054d0
lea eax, [ebp - 0x2c]
mov byte [ebp - 4], 0x12
mov ecx, dword [edi + 4]
push eax
push ecx
push edi
call fcn.00406420
mov dword [edi + 4], eax
mov ecx, dword [eax + 4]
mov dword [ecx], eax
mov byte [ebp - 4], bl
cmp dword [ebp - 0x18], 0x10
mov dword [ebp - 0x44], 0x12
jb 0x404158
mov edx, dword [ebp - 0x2c]
push edx
call dword [sym.imp.MSVCR100.dll_void___cdecl_operator_delete_void__]
add esp, 4
mov esi, 0x19
mov eax, str.libmkyaffs2image_demu.dll
lea ecx, [ebp - 0x2c]
mov dword [ebp - 0x18], 0xf
mov dword [ebp - 0x1c], ebx
mov byte [ebp - 0x2c], bl
call fcn.004054d0
lea eax, [ebp - 0x2c]
mov byte [ebp - 4], 0x13
mov ecx, dword [edi + 4]
push eax
push ecx
push edi
call fcn.00406420
mov dword [edi + 4], eax
mov ecx, dword [eax + 4]
mov dword [ecx], eax
mov byte [ebp - 4], bl
cmp dword [ebp - 0x18], 0x10
mov dword [ebp - 0x44], 0x13
jb 0x4041ae
mov edx, dword [ebp - 0x2c]
push edx
call dword [sym.imp.MSVCR100.dll_void___cdecl_operator_delete_void__]
add esp, 4
mov esi, 0xa
mov eax, 0x413cc0
lea ecx, [ebp - 0x2c]
mov dword [ebp - 0x18], 0xf
mov dword [ebp - 0x1c], ebx
mov byte [ebp - 0x2c], bl
call fcn.004054d0
lea eax, [ebp - 0x2c]
mov byte [ebp - 4], 0x14
mov ecx, dword [edi + 4]
push eax
push ecx
push edi
call fcn.00406420
mov dword [edi + 4], eax
mov ecx, dword [eax + 4]
mov dword [ecx], eax
mov byte [ebp - 4], bl
cmp dword [ebp - 0x18], 0x10
mov dword [ebp - 0x44], 0x14
jb 0x404204
mov edx, dword [ebp - 0x2c]
push edx
call dword [sym.imp.MSVCR100.dll_void___cdecl_operator_delete_void__]
add esp, 4
mov esi, 0xc
mov eax, str.mksdcard.exe
lea ecx, [ebp - 0x2c]
mov dword [ebp - 0x18], 0xf
mov dword [ebp - 0x1c], ebx
mov byte [ebp - 0x2c], bl
call fcn.004054d0
lea eax, [ebp - 0x2c]
mov byte [ebp - 4], 0x15
mov ecx, dword [edi + 4]
push eax
push ecx
push edi
call fcn.00406420
mov dword [edi + 4], eax
mov ecx, dword [eax + 4]
mov dword [ecx], eax
mov byte [ebp - 4], bl
cmp dword [ebp - 0x18], 0x10
mov dword [ebp - 0x44], 0x15
jb 0x40425a
mov edx, dword [ebp - 0x2c]
push edx
call dword [sym.imp.MSVCR100.dll_void___cdecl_operator_delete_void__]
add esp, 4
mov esi, 0xb
mov eax, str.sysinfo.dll
lea ecx, [ebp - 0x2c]
mov dword [ebp - 0x18], 0xf
mov dword [ebp - 0x1c], ebx
mov byte [ebp - 0x2c], bl
call fcn.004054d0
lea eax, [ebp - 0x2c]
mov byte [ebp - 4], 0x16
mov ecx, dword [edi + 4]
push eax
push ecx
push edi
call fcn.00406420
mov dword [edi + 4], eax
mov ecx, dword [eax + 4]
mov dword [ecx], eax
mov byte [ebp - 4], bl
cmp dword [ebp - 0x18], 0x10
mov dword [ebp - 0x44], 0x16
jb 0x4042b0
mov edx, dword [ebp - 0x2c]
push edx
call dword [sym.imp.MSVCR100.dll_void___cdecl_operator_delete_void__]
add esp, 4
mov esi, 9
mov eax, 0x413ce8
lea ecx, [ebp - 0x2c]
mov dword [ebp - 0x18], 0xf
mov dword [ebp - 0x1c], ebx
mov byte [ebp - 0x2c], bl
call fcn.004054d0
lea eax, [ebp - 0x2c]
mov byte [ebp - 4], 0x17
mov ecx, dword [edi + 4]
push eax
push ecx
push edi
call fcn.00406420
mov dword [edi + 4], eax
mov ecx, dword [eax + 4]
mov dword [ecx], eax
mov byte [ebp - 4], bl
cmp dword [ebp - 0x18], 0x10
mov dword [ebp - 0x44], 0x17
jb 0x404306
mov edx, dword [ebp - 0x2c]
push edx
call dword [sym.imp.MSVCR100.dll_void___cdecl_operator_delete_void__]
add esp, 4
mov esi, 0x11
mov eax, str..._rom_system.svd
lea ecx, [ebp - 0x2c]
mov dword [ebp - 0x18], 0xf
mov dword [ebp - 0x1c], ebx
mov byte [ebp - 0x2c], bl
call fcn.004054d0
lea eax, [ebp - 0x2c]
lea edi, [ebp - 0x48]
mov byte [ebp - 4], 0x18
call fcn.00405270
mov byte [ebp - 4], bl
cmp dword [ebp - 0x18], 0x10
jb 0x40434a
mov eax, dword [ebp - 0x2c]
push eax
call dword [sym.imp.MSVCR100.dll_void___cdecl_operator_delete_void__]
add esp, 4
mov eax, dword [ebp - 0x48]
mov edi, dword [eax]
mov dword [ebp - 0x3c], edi
cmp edi, eax
je 0x4044d4
jmp 0x404363
mov edi, dword [ebp - 0x3c]
lea eax, [ebp - 0x2f4]
mov dword [ebp - 0x64], ebx
mov dword [ebp - 0x60], ebx
mov dword [ebp - 0x5c], ebx
mov dword [ebp - 0x58], ebx
mov dword [ebp - 0x54], ebx
mov byte [ebp - 0x50], bl
mov dword [ebp - 0x18], 0xf
mov dword [ebp - 0x1c], ebx
mov byte [ebp - 0x2c], bl
lea edx, [eax + 1]
jmp 0x404390
mov cl, byte [eax]
inc eax
cmp cl, bl
jne 0x404390
sub eax, edx
mov esi, eax
lea eax, [ebp - 0x2f4]
lea ecx, [ebp - 0x2c]
call fcn.004054d0
lea eax, [edi + 8]
lea edx, [ebp - 0x2c]
lea ecx, [ebp - 0xb0]
mov byte [ebp - 4], 0x19
call fcn.00405d30
mov byte [ebp - 4], 0x1a
cmp dword [eax + 0x14], 0x10
jb 0x4043ca
mov eax, dword [eax]
lea ecx, [ebp - 0x64]
push ecx
push eax
call fcn.004023b0
add esp, 8
cmp eax, 0xffffffff
mov esi, 0x10
sete byte [ebp - 0x35]
cmp dword [ebp - 0x9c], esi
jb 0x4043fb
mov edx, dword [ebp - 0xb0]
push edx
call dword [sym.imp.MSVCR100.dll_void___cdecl_operator_delete_void__]
add esp, 4
mov byte [ebp - 4], bl
mov dword [ebp - 0x9c], 0xf
mov dword [ebp - 0xa0], ebx
mov byte [ebp - 0xb0], bl
cmp dword [ebp - 0x18], esi
jb 0x404426
mov eax, dword [ebp - 0x2c]
push eax
call dword [sym.imp.MSVCR100.dll_void___cdecl_operator_delete_void__]
add esp, 4
cmp byte [ebp - 0x35], bl
je 0x40443e
push 0x30
push 0x413d08
push 0x413d10
push ebx
call dword [sym.imp.USER32.dll_MessageBoxW]
mov edi, 0x14
lea esi, [ebp - 0x64]
cmp dword [ebp - 0xc4], ebx
je 0x40445a
mov dword [ebp - 0xc0], 3
jmp 0x4044c3
cmp dword [ebp - 0xc0], ebx
jne 0x4044c3
mov eax, 1
sub edi, eax
cmp dword [ebp - 0xc0], ebx
jne 0x4044c3
movsx ecx, word [ebp - 0x108]
mov dl, byte [esi]
mov byte [ebp + ecx - 0x106], dl
add word [ebp - 0x108], ax
add dword [ebp - 0x110], 8
jne 0x40449f
add dword [ebp - 0x10c], eax
jne 0x40449f
mov dword [ebp - 0xc0], eax
cmp word [ebp - 0x108], 0x40
jne 0x4044bd
lea eax, [ebp - 0x124]
push eax
call fcn.00401d70
add esp, 4
mov eax, 1
add esi, eax
cmp edi, ebx
jne 0x404467
mov ecx, dword [ebp - 0x3c]
mov eax, dword [ecx]
mov dword [ebp - 0x3c], eax
cmp eax, dword [ebp - 0x48]
jne 0x404360
lea edi, [ebp - 0x88]
lea eax, [ebp - 0x124]
call fcn.00401c70
push ebx
call dword [sym.imp.ole32.dll_CoInitialize]
push ebx
push ebx
push ebx
push ebx
call dword [sym.imp.USER32.dll_DefWindowProcW]
lea edx, [ebp - 0xb8]
push edx
call fcn.004068b0
mov byte [ebp - 4], 0x1c
mov dword [ebp - 0x8c], ebx
mov dword [ebp - 0x3c], ebx
cmp dword [0x41b180], ebx
jne 0x40452f
call fcn.00406290
mov edx, dword [eax]
mov ecx, eax
mov eax, dword [edx + 0x28]
push 0x4138f8
call eax
mov dword [0x41b180], eax
lea ecx, [ebp - 0x94]
push ecx
mov dword [ebp - 0x94], 8
mov dword [ebp - 0x90], 4
call dword [sym.imp.COMCTL32.dll_InitCommonControlsEx]
call fcn.004067e0
movzx edx, byte [0x413e0c]
mov eax, dword [0x413dfc]
mov esi, dword [0x413e00]
mov edi, dword [0x413e04]
mov ecx, dword [0x413e08]
mov byte [ebp - 0x50], dl
mov edx, dword [0x413e10]
mov dword [ebp - 0x28], edx
mov edx, dword [0x413e14]
mov dword [ebp - 0x24], edx
mov edx, dword [0x413e18]
mov dword [ebp - 0x20], edx
mov edx, dword [0x413e1c]
mov dword [ebp - 0x1c], edx
mov edx, dword [0x413e20]
mov dword [ebp - 0x18], edx
movzx edx, byte [0x413e24]
push 0x10
mov byte [ebp - 0x14], dl
mov dword [ebp - 0x70], eax
mov dword [ebp - 0x6c], esi
mov dword [ebp - 0x9c], edi
mov dword [ebp - 0x98], ecx
mov dword [ebp - 0x58], ebx
call dword [sym.imp.MSVCR100.dll_void____cdecl_operator_new_unsigned_int_]
mov edi, eax
add esp, 4
cmp edi, ebx
je 0x404cd0
mov dword [edi], edi
mov dword [ebp - 0x5c], edi
mov dword [edi + 4], edi
push edi
push edi
lea esi, [ebp - 0x70]
mov byte [ebp - 4], 0x1d
call fcn.00405670
mov dword [edi + 4], eax
mov ecx, dword [eax + 4]
mov dword [ecx], eax
mov ecx, dword [edi + 4]
push ecx
push edi
lea esi, [ebp - 0x9c]
mov dword [ebp - 0x58], 1
call fcn.00405670
mov dword [edi + 4], eax
mov ecx, dword [eax + 4]
mov dword [ecx], eax
lea edx, [ebp - 0x2f4]
push edx
lea eax, [ebp - 0xa8]
push eax
lea ecx, [ebp - 0x5c]
push ecx
mov dword [ebp - 0x58], 2
call fcn.00402cb0
add esp, 0xc
mov eax, 0x14
lea ecx, [ebp - 0x28]
lea edx, [ebp - 0xa8]
cmp eax, 4
jb 0x404659
mov esi, dword [edx]
cmp esi, dword [ecx]
jne 0x40465f
sub eax, 4
add ecx, 4
add edx, 4
jmp 0x404643
mov byte [0x41a850], bl
call fcn.004027b0
test eax, eax
jne 0x404b28
cmp byte [0x41a850], bl
jne 0x404b28
mov eax, 1
cpuid
mov dword [0x41a970], eax
mov dword [0x41a96c], ebx
mov dword [0x41a968], ecx
mov dword [0x41a964], edx
test byte [0x41a968], 0x10
je 0x404b26
mov edi, dword [sym.imp.USER32.dll_MessageBoxW]
xor esi, esi
push esi
push 0x413e28
push 0x413e40
push esi
call edi
xor eax, eax
lea edx, [ebp - 0x34]
push edx
mov dword [ebp - 0x34], eax
mov dword [ebp - 0x30], eax
mov dword [ebp - 0x2c], eax
mov dword [ebp - 0x28], eax
mov dword [ebp - 0x24], eax
mov dword [ebp - 0x20], eax
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x18], eax
mov dword [ebp - 0x14], eax
call dword [sym.imp.KERNEL32.dll_GetNativeSystemInfo]
push 0x3c
lea eax, [ebp - 0xf8]
push esi
push eax
call sub.MSVCR100.dll_memset
push 0x206
lea edx, [ebp - 0x5fe]
xor ecx, ecx
push esi
push edx
mov dword [ebp - 0xf8], 0x3c
mov dword [ebp - 0xf4], 0x40
mov dword [ebp - 0xf0], esi
mov dword [ebp - 0xec], esi
mov dword [ebp - 0xe8], str.msiexec.exe
mov dword [ebp - 0xdc], esi
mov word [ebp - 0x600], cx
call sub.MSVCR100.dll_memset
add esp, 0x18
push 0x104
lea eax, [ebp - 0x808]
push eax
push esi
call dword [sym.imp.KERNEL32.dll_GetModuleFileNameW]
lea ecx, [ebp - 0x808]
push ecx
call dword [sym.imp.SHLWAPI.dll_PathRemoveFileSpecW]
cmp word [ebp - 0x34], 9
lea edx, [ebp - 0x808]
lea eax, [ebp - 0x600]
jne 0x404799
push str.cpu2.vtl
push edx
push str._i___s_s___qb
push 0x104
push eax
call dword [sym.imp.MSVCR100.dll_swprintf_s]
add esp, 0x14
lea ecx, [ebp - 0x600]
push ecx
call dword [sym.imp.KERNEL32.dll_OutputDebugStringW]
jmp 0x4047b3
push str.cpu1.vtl
push edx
push str._i___s_s___qb
push 0x104
push eax
call dword [sym.imp.MSVCR100.dll_swprintf_s]
add esp, 0x14
lea edx, [ebp - 0xf8]
lea ecx, [ebp - 0x600]
push edx
mov dword [ebp - 0xe4], ecx
call dword [sym.imp.SHELL32.dll_ShellExecuteExW]
cmp eax, esi
je 0x4047fd
mov eax, dword [ebp - 0xc0]
push 0x927c0
push eax
mov dword [ebp - 0x3c], 1
call dword [sym.imp.KERNEL32.dll_WaitForSingleObject]
cmp eax, 0x102
jne 0x404812
push esi
push 0x413f38
push 0x413f58
jmp 0x40480f
push esi
push 0x413fac
mov dword [ebp - 0x3c], 2
push 0x413fd8
push esi
call edi
mov ecx, dword [ebp - 0xc0]
push ecx
call dword [sym.imp.KERNEL32.dll_CloseHandle]
call fcn.004027b0
test eax, eax
jne 0x40485e
cmp byte [0x41a850], al
jne 0x40485e
mov eax, 1
cpuid
mov dword [0x41a970], eax
mov dword [0x41a96c], ebx
mov dword [0x41a968], ecx
mov dword [0x41a964], edx
test byte [0x41a968], 0x10
je 0x40485e
mov dword [ebp - 0x3c], 3
xor ebx, ebx
mov esi, dword [sym.imp.MSVCR100.dll_sprintf]
lea edx, [ebp - 0x2f4]
push edx
lea eax, [ebp - 0xa0c]
push str._supgrade.ini
push eax
call esi
lea ecx, [ebp - 0xa0c]
push ebx
push ecx
call dword [sym.imp.MSVCR100.dll__access]
add esp, 0x14
test eax, eax
jne 0x404a21
push 0x200
lea edx, [ebp - 0x808]
push ebx
push edx
mov dword [ebp - method.ConfigurationReader.virtual_0], vtable.ConfigurationReader.0
call sub.MSVCR100.dll_memset
lea eax, [ebp - 0xa0c]
push eax
lea ecx, [ebp - 0x808]
push 0x41368c
push ecx
mov dword [ebp - 0x608], 0x200
mov dword [ebp - 0x604], 0x21
call esi
mov byte [ebp - 4], 0x1e
push 0x1ff
lea edx, [ebp - 0x5f7]
push ebx
push edx
mov byte [ebp - 0x70], bl
mov dword [ebp - 0x6f], ebx
mov dword [ebp - 0x6b], ebx
mov byte [ebp - 0x67], bl
mov byte [ebp - 0x5f8], bl
call sub.MSVCR100.dll_memset
mov esi, dword [sym.imp.KERNEL32.dll_GetPrivateProfileStringA]
add esp, 0x24
lea eax, [ebp - 0x808]
push eax
push 0x104
lea ecx, [ebp - 0x70]
push ecx
push 0x41368f
push str.versionId
push str.demu
call esi
lea edx, [ebp - 0x808]
push edx
push 0x104
lea eax, [ebp - 0x5f8]
push eax
push 0x41368f
push 0x414054
push str.demu
call esi
lea ecx, [ebp - 0xa0]
push ecx
mov byte [ebp - 0xa0], bl
mov dword [ebp - 0x9f], ebx
mov dword [ebp - 0x9b], ebx
mov byte [ebp - 0x97], bl
call fcn.00403270
add esp, 4
cmp eax, ebx
je 0x404a1d
lea edx, [ebp - 0xa0]
push edx
lea eax, [ebp - 0x70]
push eax
call dword [sym.imp.MSVCR100.dll__stricmp]
add esp, 8
test eax, eax
jle 0x404a1d
push 0x44
push str.Hr_g
push str.X__W
push ebx
call edi
cmp eax, 6
jne 0x404a1d
push 0x3c
lea ecx, [ebp - 0xf8]
push ebx
push ecx
call sub.MSVCR100.dll_memset
add esp, 0xc
lea eax, [ebp - 0xf8]
lea edx, [ebp - 0x5f8]
push eax
mov dword [ebp - 0xf8], 0x3c
mov dword [ebp - 0xf4], 0x8040
mov dword [ebp - 0xf0], ebx
mov dword [ebp - 0xec], ebx
mov dword [ebp - 0xe8], edx
mov dword [ebp - 0xdc], 5
call dword [sym.imp.SHELL32.dll_ShellExecuteExA]
cmp eax, ebx
je 0x404a1d
mov eax, dword [ebp - 0xc0]
cmp eax, ebx
je 0x404a1d
cmp eax, 0xffffffff
je 0x404a1d
push eax
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov byte [ebp - 4], 0x1d
mov ecx, dword [ebp - 0x3c]
mov edx, dword [ebp - 0xb4]
push ecx
push edx
lea eax, [ebp - 0xa0c]
push eax
lea ecx, [ebp - 0x184]
push ecx
push 1
lea eax, [ebp - 0x1c4]
lea ecx, [ebp - 0x2f4]
call fcn.004033a0
add esp, 0x14
call fcn.00405cb0
mov ecx, dword [ebp + 0x14]
mov edx, dword [eax]
mov edx, dword [edx + 0x10]
push ecx
mov ecx, dword [ebp + 0x10]
push ecx
mov ecx, dword [ebp + 0xc]
push ecx
mov ecx, dword [ebp + 8]
push ecx
mov ecx, eax
call edx
call fcn.00405d70
mov edx, dword [eax]
mov ecx, eax
mov eax, dword [edx]
call eax
mov esi, dword [sym.imp.MSVCR100.dll_void____cdecl_operator_new___unsigned_int_]
push 0x18
call esi
add esp, 4
push 0x18
mov edi, eax
call esi
add esp, 4
push 0x30
mov dword [ebp + 8], eax
call esi
mov dword [edi + 0x14], ebx
mov dword [ebp - 0x3c], eax
mov eax, dword [ebp + 8]
mov ecx, dword [ebp - 0x3c]
mov dword [eax], ebx
add esp, 4
mov dword [eax + 4], ebx
mov dword [eax + 8], ebx
push 0x30
mov dword [eax + 0xc], ebx
push ebx
mov dword [eax + 0x10], ebx
push ecx
mov dword [eax + 0x14], ebx
call sub.MSVCR100.dll_memset
mov edx, dword [ebp - 0x88]
mov eax, dword [ebp - 0x84]
mov ecx, dword [ebp - 0x80]
mov dword [edi], edx
mov edx, dword [ebp - 0x7c]
mov dword [edi + 4], eax
mov eax, dword [ebp - 0x78]
mov dword [edi + 8], ecx
mov cl, byte [ebp - 0x74]
mov dword [edi + 0xc], edx
push 0x29
lea edx, [ebp - 0x1f0]
push ebx
mov dword [edi + 0x10], eax
push edx
mov byte [edi + 0x14], cl
call sub.MSVCR100.dll_memset
add esp, 0x18
xor esi, esi
mov edi, edi
cmp esi, 0x14
jge 0x404b33
movzx eax, byte [esi + 0x413520]
push eax
lea ecx, [ebp + esi*2 - 0x1f0]
push str._02x
push ecx
call dword [sym.imp.MSVCR100.dll_sprintf]
add esp, 0xc
inc esi
jmp 0x404b00
xor ebx, ebx
mov edi, dword [sym.imp.USER32.dll_MessageBoxW]
jmp 0x404860
lea ecx, [ebp - 0x578]
mov byte [ebp - 0x28], bl
mov dword [ebp - 0x27], ebx
mov dword [ebp - 0x23], ebx
mov dword [ebp - 0x1f], ebx
mov dword [ebp - 0x1b], ebx
mov dword [ebp - 0x17], ebx
mov word [ebp - 0x13], bx
mov byte [ebp - 0x11], bl
call fcn.00401730
lea edx, [ebp - 0x28]
push edx
lea eax, [ebp - 0x1f0]
call fcn.00401a10
push 1
lea eax, [ebp - 0x20]
lea esi, [ebp - 0x18]
call section..text
add esp, 8
mov ecx, 0x41a9f8
mov eax, 0x41a978
mov edx, 0x41a9f8
cmp eax, edx
jae 0x404b95
mov edx, dword [eax]
mov dword [ecx], edx
add ecx, 4
add eax, 4
jmp 0x404b80
push ebx
mov eax, esi
call section..text
add esp, 4
mov ecx, 0x41aa78
mov eax, 0x41a978
mov edx, 0x41a9f8
nop
cmp eax, edx
jae 0x404bc0
mov esi, dword [eax]
mov dword [ecx], esi
add ecx, 4
add eax, 4
jmp 0x404bb0
push ebx
lea eax, [ebp - 0x28]
call section..text
add esp, 4
mov dword [ebp + 0xc], ebx
nop
mov esi, 0x18
cmp dword [ebp + 0xc], esi
jae 0x404c54
mov eax, dword [ebp + 0xc]
mov edx, dword [eax + edi + 4]
mov ecx, dword [eax + edi]
mov dword [ebp - 0x24], edx
mov edx, dword [eax + edi + 0xc]
mov dword [ebp - 0x28], ecx
mov ecx, dword [eax + edi + 8]
mov dword [ebp - 0x1c], edx
mov edx, dword [eax + edi + 0x14]
mov dword [ebp - 0x20], ecx
mov ecx, dword [eax + edi + 0x10]
mov dword [ebp - 0x14], edx
lea esi, [ebp - 0x88]
lea edx, [ebp - 0x28]
mov dword [ebp - 0x18], ecx
call fcn.004017f0
mov eax, dword [ebp + 0xc]
mov ecx, dword [ebp + 8]
mov edx, dword [ebp - 0x88]
mov dword [eax + ecx], edx
mov edx, dword [ebp - 0x84]
mov dword [eax + ecx + 4], edx
mov edx, dword [ebp - 0x80]
mov dword [eax + ecx + 8], edx
mov edx, dword [ebp - 0x7c]
mov dword [eax + ecx + 0xc], edx
mov edx, dword [ebp - 0x78]
mov dword [eax + ecx + 0x10], edx
mov edx, dword [ebp - 0x74]
mov dword [eax + ecx + 0x14], edx
add eax, 0x18
mov dword [ebp + 0xc], eax
jmp 0x404bd0
lea ecx, [ebp - 0x578]
call fcn.00401790
mov edx, dword [ebp + 8]
lea eax, [esi + esi]
push eax
mov eax, esi
mov esi, dword [ebp - 0x3c]
mov ecx, esi
call fcn.00401b00
mov ecx, dword [ebp + 0x14]
mov edx, dword [ebp + 0x10]
push esi
push ecx
push edx
call fcn.004028c0
add esp, 0x10
push edi
mov edi, dword [sym.imp.MSVCR100.dll_void___cdecl_operator_delete___void__]
mov dword [ebp - 0x8c], eax
call edi
mov eax, dword [ebp + 8]
push eax
call edi
push esi
call edi
add esp, 0xc
call fcn.00405d70
mov edx, dword [eax]
mov ecx, eax
mov eax, dword [edx + 4]
call eax
call fcn.00405cb0
mov edx, dword [eax]
mov ecx, eax
mov eax, dword [edx + 0x14]
call eax
call fcn.00406740
lea esi, [ebp - 0x5c]
call fcn.00404f90
mov dword [ebp - 4], 0x1b
jmp 0x404d2e
lea ecx, [ebp - 0x90]
push ecx
lea ecx, [ebp - 0x13c]
mov dword [ebp - 0x90], ebx
call dword [sym.imp.MSVCR100.dll_public:_void___thiscall_std::exception::constructor_char_const__const_const__]
push 0x415c70
lea edx, [ebp - 0x13c]
push edx
mov dword [ebp - method.std::bad_alloc.virtual_0], vtable.std::bad_alloc.0
call sub.MSVCR100.dll__CxxThrowException
mov ecx, dword [ebp - 0x144]
push 0x10
push 0x414084
call fcn.004065e0
push eax
push 0
call dword [sym.imp.USER32.dll_MessageBoxW]
mov dword [ebp - 4], 0x1b
mov eax, 0x404d2c
ret
call dword [sym.imp.ole32.dll_CoUninitialize]
mov byte [ebp - 4], bl
mov ecx, dword [ebp - 0xb8]
cmp ecx, ebx
je 0x404d48
mov eax, dword [ecx]
mov edx, dword [eax + 0x40]
call edx
lea ebx, [ebp - 0x48]
call fcn.00405780
mov eax, dword [ebp - 0x48]
push eax
call dword [sym.imp.MSVCR100.dll_void___cdecl_operator_delete_void__]
mov ecx, dword [ebp - 0xc]
mov eax, dword [ebp - 0x8c]
add esp, 4
pop edi
pop esi
mov dword fs:[0], ecx
pop ebx
mov esp, ebp
pop ebp
ret 0x10
lea ecx, [ebp - 0xbc]
push ecx
lea ecx, [ebp - 0x130]
mov dword [ebp - 0xbc], ebx
call dword [sym.imp.MSVCR100.dll_public:_void___thiscall_std::exception::constructor_char_const__const_const__]
push 0x415c70
lea edx, [ebp - 0x130]
push edx
mov dword [ebp - method.std::bad_alloc.virtual_0], vtable.std::bad_alloc.0
call sub.MSVCR100.dll__CxxThrowException
int3