Function at 0x10037f90
Capabilities:
Print debug messages

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x1015672c
mov eax, dword fs:[0]
push eax
sub esp, 0x108
mov eax, dword [0x101a4494]
xor eax, ebp
mov dword [ebp - 0x10], eax
push ebx
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov dword [ebp - 0x7c], ecx
mov ebx, dword [ebp + 8]
lea eax, [ebp - 0x114]
push 0x98
push 0
push eax
mov dword [ebp - 0x78], ebx
call fcn.1012e610
add esp, 0xc
lea ecx, [ebp - 0x71]
call fcn.10036020
lea ecx, [ebp - 0x114]
mov esi, eax
call fcn.100090f0
mov edi, eax
push esi
push edi
mov dword [ebp - 4], 0
call fcn.100086f0
push str.Geeks::CPopWndMgr::ShowSummaryWindow
push edi
call fcn.1000e150
push str.prepare_create_UI_wnd
push edi
call fcn.100086f0
add esp, 0x18
cmp dword [0x101aa314], 0
mov dword [ebp - 4], 1
je 0x10038063
lea eax, [ebp - 0x114]
push eax
call fcn.10008a90
add esp, 4
lea eax, [ebp - 0x28]
lea ecx, [ebp - 0x110]
push eax
call fcn.1000d2e0
cmp dword [ebp - 0x14], 8
lea eax, [ebp - 0x28]
cmovae eax, dword [ebp - 0x28]
push eax
call dword [sym.imp.KERNEL32.dll_OutputDebugStringW]
lea ecx, [ebp - 0x28]
call fcn.100098e0
lea ecx, [ebp - 0x114]
call fcn.10009fa0
mov dword [ebp - 4], 0xffffffff
test ebx, ebx
je 0x10038216
push ebx
call dword [sym.imp.USER32.dll_IsIconic]
mov esi, dword [sym.imp.USER32.dll_IsWindowVisible]
test eax, eax
jne 0x10038099
push ebx
call esi
test eax, eax
jne 0x10038158
push 0x5dc
call dword [sym.imp.KERNEL32.dll_Sleep]
push ebx
call esi
test eax, eax
jne 0x10038158
push 0x98
push eax
lea eax, [ebp - 0x114]
push eax
call fcn.1012e610
add esp, 0xc
lea ecx, [ebp - 0x71]
call fcn.10035e60
lea ecx, [ebp - 0x71]
mov esi, eax
call fcn.100361e0
lea ecx, [ebp - 0x114]
mov edi, eax
call fcn.100090f0
mov ebx, eax
push esi
push ebx
mov dword [ebp - 4], 2
call fcn.100086f0
push edi
push ebx
call fcn.100086f0
add esp, 0x10
call dword [sym.imp.KERNEL32.dll_GetLastError]
push eax
mov ecx, ebx
call fcn.1000f570
push str.Iconic:
push ebx
call fcn.100086f0
mov esi, dword [ebp - 0x78]
add esp, 8
push esi
call dword [sym.imp.USER32.dll_IsIconic]
push eax
mov ecx, ebx
call fcn.10009d00
push str.Hide:
push ebx
call fcn.100086f0
add esp, 8
push esi
call dword [sym.imp.USER32.dll_IsWindowVisible]
push eax
mov ecx, ebx
call fcn.10009d00
lea ecx, [ebp - 0x114]
call fcn.10009a70
jmp 0x10038456
push 0x98
lea eax, [ebp - 0x114]
push 0
push eax
call fcn.1012e610
add esp, 0xc
lea ecx, [ebp - 0x71]
call fcn.10035740
lea ecx, [ebp - 0x71]
mov esi, eax
call fcn.100362c0
lea ecx, [ebp - 0x114]
mov edi, eax
call fcn.100090f0
mov ebx, eax
push esi
push ebx
mov dword [ebp - 4], 3
call fcn.100086f0
push str._ShowSummaryWindow_CPopWndMgr_Geeks__QAEHPAUHWND_____Z
push ebx
call fcn.1000e150
push edi
push ebx
call fcn.100086f0
mov esi, dword [ebp - 0x78]
add esp, 0x18
mov ecx, ebx
push esi
call fcn.10016100
cmp dword [0x101aa314], 0
mov dword [ebp - 4], 4
je 0x10038206
lea eax, [ebp - 0x114]
push eax
call fcn.10008a90
add esp, 4
lea eax, [ebp - 0x28]
lea ecx, [ebp - 0x110]
push eax
call fcn.1000d2e0
cmp dword [ebp - 0x14], 8
lea eax, [ebp - 0x28]
cmovae eax, dword [ebp - 0x28]
push eax
mov eax, dword [sym.imp.KERNEL32.dll_OutputDebugStringW]
call eax
lea ecx, [ebp - 0x28]
call fcn.100098e0
lea ecx, [ebp - 0x114]
call fcn.10009fa0
jmp 0x100382c7
push 0x98
lea eax, [ebp - 0x114]
push 0
push eax
call fcn.1012e610
add esp, 0xc
lea ecx, [ebp - 0x71]
call fcn.10035580
lea ecx, [ebp - 0x71]
mov esi, eax
call fcn.10035ca0
lea ecx, [ebp - 0x114]
mov ebx, eax
call fcn.100090f0
mov edi, eax
push esi
push edi
mov dword [ebp - 4], 5
call fcn.100086f0
push str._ShowSummaryWindow_CPopWndMgr_Geeks__QAEHPAUHWND_____Z
push edi
call fcn.1000e150
push ebx
push edi
call fcn.100086f0
add esp, 0x18
cmp dword [0x101aa314], 0
mov dword [ebp - 4], 6
je 0x100382b9
lea eax, [ebp - 0x114]
push eax
call fcn.10008a90
add esp, 4
lea eax, [ebp - 0x28]
lea ecx, [ebp - 0x110]
push eax
call fcn.1000d2e0
cmp dword [ebp - 0x14], 8
lea eax, [ebp - 0x28]
cmovae eax, dword [ebp - 0x28]
push eax
mov eax, dword [sym.imp.KERNEL32.dll_OutputDebugStringW]
call eax
lea ecx, [ebp - 0x28]
call fcn.100098e0
lea ecx, [ebp - 0x114]
call fcn.10009fa0
mov esi, dword [ebp - 0x78]
mov dword [ebp - 4], 0xffffffff
call fcn.10036a80
push 0
push 0x1016184c
lea ecx, [ebp - 0x70]
mov dword [ebp - 0x60], 0
mov ebx, eax
mov dword [ebp - 0x5c], 0xf
mov byte [ebp - 0x70], 0
call fcn.1000bb20
xor eax, eax
mov dword [ebp - 4], 7
push eax
push 0x10161b24
lea ecx, [ebp - 0x58]
mov dword [ebp - 0x48], 0
mov dword [ebp - 0x44], 7
mov word [ebp - 0x58], ax
call fcn.1000bc10
xor eax, eax
mov byte [ebp - 4], 8
push eax
push 0x10161b24
lea ecx, [ebp - 0x40]
mov dword [ebp - 0x30], 0
mov dword [ebp - 0x2c], 7
mov word [ebp - 0x40], ax
call fcn.1000bc10
lea eax, [ebp - 0x70]
push eax
push 0
lea eax, [ebp - 0x58]
push eax
lea eax, [ebp - 0x40]
push eax
push 0
push 0x1002
sub esp, 0x28
mov edi, esp
mov dword [ebp - 0x78], edi
mov dword [edi + 0x24], 0
mov ecx, dword [ebp - 0x7c]
mov byte [ebp - 4], 0xa
mov ecx, dword [ecx + 0x84]
test ecx, ecx
je 0x10038382
mov eax, dword [ecx]
push edi
call dword [eax]
mov dword [edi + 0x24], eax
push esi
mov ecx, ebx
mov byte [ebp - 4], 9
call fcn.1004ebf0
mov edx, dword [ebp - 0x2c]
cmp edx, 8
jb 0x100383c8
mov ecx, dword [ebp - 0x40]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x100383be
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10038476
push edx
push ecx
call fcn.100f4a6f
add esp, 8
mov edx, dword [ebp - 0x44]
xor eax, eax
mov dword [ebp - 0x30], 0
mov dword [ebp - 0x2c], 7
mov word [ebp - 0x40], ax
cmp edx, 8
jb 0x10038412
mov ecx, dword [ebp - 0x58]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x10038408
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1003847b
push edx
push ecx
call fcn.100f4a6f
add esp, 8
mov edx, dword [ebp - 0x5c]
xor eax, eax
mov dword [ebp - 0x48], 0
mov dword [ebp - 0x44], 7
mov word [ebp - 0x58], ax
cmp edx, 0x10
jb 0x10038456
mov ecx, dword [ebp - 0x70]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x1003844c
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10038480
push edx
push ecx
call fcn.100f4a6f
add esp, 8
xor eax, eax
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.100f4dc3
mov esp, ebp
pop ebp
ret 4
call fcn.10131c3f
call fcn.10131c3f
call fcn.10131c3f
int3