Function at 0x100572f
Capabilities:
Terminate process

Disassembly:
sub esp, 0x10
lea eax, [esp]
push ebx
push ebp
push esi
push edi
push eax
push dword [esp + 0x28]
call dword [sym.imp.USER32.dll_GetWindowRect]
mov ebx, dword [sym.imp.MSVCP60.dll_bool___cdecl_std::operator_class_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char___const___char_const__]
mov edi, 0x10084c4
mov eax, dword [esp + 0x18]
mov ecx, dword [esp + 0x1c]
sub eax, dword [esp + 0x10]
sub ecx, dword [esp + 0x14]
push edi
push 0x1008630
mov word [0x10085c4], ax
mov word [0x100853c], cx
movzx eax, ax
mov dword [0x1008950], eax
call ebx
mov ebp, dword [sym.imp.MSVCP60.dll_bool___cdecl_std::operator__class_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char___const___char_const__]
pop ecx
test al, al
pop ecx
mov esi, 0x10084c0
je 0x10057ec
push edi
push 0x10085d0
call ebx
pop ecx
test al, al
pop ecx
je 0x10057ec
push esi
push 0x1008600
call ebx
pop ecx
test al, al
pop ecx
je 0x10057ec
push esi
push 0x1008610
call ebp
pop ecx
test al, al
pop ecx
je 0x10057ec
push edi
push 0x1008610
call ebp
pop ecx
test al, al
pop ecx
je 0x10057ec
push esi
call sub.MSVCRT.dll_strlen
pop ecx
push eax
push esi
mov ecx, 0x1008610
call dword [sym.imp.MSVCP60.dll_public:_class_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char______thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::assign_char_const___unsigned_int_]
push esi
push 0xcd
push dword [0x1008570]
call dword [sym.imp.USER32.dll_SetDlgItemTextA]
push edi
push 0x1008630
call ebx
pop ecx
test al, al
pop ecx
je 0x1005858
push edi
push 0x1008620
call ebx
pop ecx
test al, al
pop ecx
je 0x1005858
push esi
push 0x1008610
call ebx
pop ecx
test al, al
pop ecx
je 0x1005858
push esi
push 0x1008650
call ebp
pop ecx
test al, al
pop ecx
je 0x1005858
push edi
push 0x1008650
call ebp
pop ecx
test al, al
pop ecx
je 0x1005858
push esi
call sub.MSVCRT.dll_strlen
pop ecx
push eax
push esi
mov ecx, 0x1008650
call dword [sym.imp.MSVCP60.dll_public:_class_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char______thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::assign_char_const___unsigned_int_]
push esi
push 0xd1
push dword [0x1008570]
call dword [sym.imp.USER32.dll_SetDlgItemTextA]
push edi
push 0x1008650
call ebx
pop ecx
test al, al
pop ecx
je 0x10058c1
push edi
push 0x1008630
call ebx
pop ecx
test al, al
pop ecx
je 0x10058c1
push esi
push 0x1008640
call ebx
pop ecx
test al, al
pop ecx
je 0x10058c1
mov ebx, 0x1008610
push esi
push ebx
call ebp
pop ecx
test al, al
pop ecx
je 0x10058c1
push edi
push ebx
call ebp
pop ecx
test al, al
pop ecx
je 0x10058c1
push esi
call sub.MSVCRT.dll_strlen
pop ecx
push eax
push esi
mov ecx, 0x1008610
call dword [sym.imp.MSVCP60.dll_public:_class_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char______thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::assign_char_const___unsigned_int_]
push esi
push 0xcd
push dword [0x1008570]
call dword [sym.imp.USER32.dll_SetDlgItemTextA]
xor esi, esi
mov edi, dword [sym.imp.USER32.dll_CreateWindowExA]
push esi
push esi
push 0xca
mov ebp, 0x1008974
push dword [0x1008570]
mov ebx, str.BUTTON
push 0x1a
push 0x1c
push 4
push 0x24
push 0x50000000
push ebp
push ebx
push esi
call edi
push esi
push esi
push 0xcc
mov dword [0x1008590], eax
push dword [0x1008570]
push 0x1a
push 0x1c
push 0x22
push 4
push 0x50000000
push ebp
push ebx
push esi
call edi
mov dword [0x1008598], eax
lea eax, [esp + 0x10]
push eax
call dword [sym.imp.GDI32.dll_CreateRectRgnIndirect]
push 2
push eax
push dword [esp + 0x2c]
call dword [sym.imp.USER32.dll_GetDCEx]
mov edi, eax
movzx eax, word [0x100853c]
push eax
movzx eax, word [0x10085c4]
push eax
push edi
call dword [sym.imp.GDI32.dll_CreateCompatibleBitmap]
push edi
mov dword [0x100890c], eax
push dword [esp + 0x28]
call dword [sym.imp.USER32.dll_ReleaseDC]
mov eax, dword [0x10085c8]
mov edi, dword [sym.imp.USER32.dll_LoadImageA]
mov ebx, 0x2000
push ebx
push esi
push esi
push esi
push 0x68
push eax
call edi
push ebx
push esi
mov dword [0x1008924], eax
mov eax, dword [0x10085c8]
push esi
push esi
push 0x69
push eax
call edi
push ebx
push esi
mov dword [0x1008554], eax
mov eax, dword [0x10085c8]
push esi
push esi
push 0x67
push eax
call edi
cmp dword [0x1008924], esi
mov dword [0x1008540], eax
je 0x10059fe
cmp dword [0x1008554], esi
je 0x10059fe
cmp eax, esi
je 0x10059fe
mov ebx, dword [esp + 0x24]
xor edi, edi
cmp edi, esi
jne 0x10059c4
mov ebx, dword [0x1008924]
cmp edi, 1
jne 0x10059cf
mov ebx, dword [0x1008554]
cmp edi, 2
jne 0x10059da
mov ebx, dword [0x1008540]
lea eax, [edi + edi*2]
lea eax, [eax*8 + 0x1008678]
push eax
push 0x18
push ebx
call dword [sym.imp.GDI32.dll_GetObjectA]
inc edi
cmp edi, 3
jl 0x10059ba
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x10
ret 4
call fcn.0100308b
push esi
call dword [sym.imp.KERNEL32.dll_ExitProcess]