Function at 0x407e00
Capabilities:
Hide graphical window

Disassembly:
mov eax, dword [0x4eb878]
sub esp, 0xb8
test eax, eax
push ebx
push ebp
push esi
push edi
mov ebx, ecx
jne 0x407e22
pop edi
pop esi
pop ebp
xor eax, eax
pop ebx
add esp, 0xb8
ret
mov eax, dword [ebx + 8]
push 1
push eax
call dword [sym.imp.USER32.dll_KillTimer]
mov ecx, dword [ebx + 0x208]
push 0
push 0
call fcn.0045fcf0
push 0
mov ecx, ebx
call fcn.0041a080
mov ecx, ebx
call fcn.00420450
mov ecx, ebx
call fcn.00420600
push 0x7f02
push 0
call dword [sym.imp.USER32.dll_LoadCursorA]
push eax
call dword [sym.imp.USER32.dll_SetCursor]
mov ecx, ebx
mov dword [esp + 0x1c], eax
call fcn.00420700
mov eax, dword [ebx + 0x40c]
test eax, eax
je 0x407e84
mov ecx, ebx
call fcn.00417060
mov edx, dword [ebx + 0x200]
mov ebp, dword [sym.imp.USER32.dll_LoadStringA]
lea ecx, [esp + 0x58]
push 0x50
push ecx
push 0xa2
push edx
call ebp
mov ecx, dword [ebx + 8]
mov edx, dword [ebx + 0x200]
lea eax, [esp + 0x58]
push 0
push eax
push ecx
push edx
call fcn.004539e0
mov edi, dword [sym.imp.USER32.dll_GetDlgItem]
add esp, 0x10
mov esi, eax
push 0x208
push esi
mov dword [esp + 0x28], esi
call edi
push 0x1fb
push esi
mov dword [esp + 0x18], eax
call edi
push 5
push esi
mov edi, eax
call dword [sym.imp.USER32.dll_ShowWindow]
push esi
call dword [sym.imp.USER32.dll_UpdateWindow]
mov ecx, dword [ebx + 0x200]
lea eax, [esp + 0x58]
push 0x50
push eax
push 0x9e
push ecx
call ebp
lea edx, [esp + 0x58]
push edx
push 0x1fb
push esi
call dword [sym.imp.USER32.dll_SetDlgItemTextA]
lea eax, [esp + 0x58]
push eax
push edi
call dword [sym.imp.USER32.dll_SetWindowTextA]
mov eax, dword [0x4eb878]
test eax, eax
je case.0x408011.1005
mov eax, dword [ebx + 0x998]
test eax, eax
jne 0x408081
mov edi, dword [sym.imp.USER32.dll_LoadCursorA]
lea ebp, [ebx + 0x9a0]
push 0x7f02
push 0
mov dword [ebp], 0
mov dword [ebx + 0x9a4], 5
mov dword [ebx + 0x9a8], 0x6a
mov dword [esp + 0x1c], 0x204
call edi
push eax
call dword [sym.imp.USER32.dll_SetCursor]
lea ecx, [esp + 0x14]
push ebp
push ecx
call dword [0x4eb860]
push 0x7f00
push 0
mov ebp, eax
call edi
push eax
call dword [sym.imp.USER32.dll_SetCursor]
test bp, bp
je 0x408077
mov edi, dword [ebx + 8]
mov ecx, dword [ebx + 0x200]
movsx eax, bp
cmp eax, 0xfffffc0d
jg 0x408001
je 0x407ffa
add eax, 0x403
cmp eax, 0xe
ja case.0x408011.1005
xor edx, edx
mov dl, byte [eax + 0x4084dc]
jmp dword [edx*4 + 0x4084c0]
mov eax, 0x217
jmp 0x408040
mov eax, 0x21a
jmp 0x408040
mov eax, 0x21b
jmp 0x408040
mov eax, 0x21c
jmp 0x408040
mov eax, 0x21d
jmp 0x408040
mov eax, 0x21e
jmp 0x408040
mov eax, 0x219
jmp 0x408040
test eax, eax
jg case.0x408011.1005
je 0x40803b
add eax, 0x3ee
cmp eax, 6
ja case.0x408011.1005
jmp dword [eax*4 + 0x4084ec]
mov eax, 0x213
jmp 0x408040
mov eax, 0x214
jmp 0x408040
mov eax, 0x215
jmp 0x408040
mov eax, 0x216
jmp 0x408040
mov eax, 0x218
jmp 0x408040
mov eax, 0x212
push 0
push 0xa2
push eax
push edi
push ecx
call fcn.0044adc0
add esp, 0x14
push esi
call dword [sym.imp.USER32.dll_DestroyWindow]
mov ecx, dword [ebx + 0x20]
lea eax, [ebx + 0x20c]
push eax
push ecx
call dword [sym.imp.USER32.dll_SetWindowTextA]
pop edi
pop esi
pop ebp
xor eax, eax
pop ebx
add esp, 0xb8
ret
mov dword [ebx + 0x998], 1
mov edx, dword [esp + 0x10]
mov ebp, dword [sym.imp.USER32.dll_SendMessageA]
push 0
push 0x32
push 0x402
push edx
call ebp
push esi
call dword [sym.imp.USER32.dll_UpdateWindow]
lea ecx, [esp + 0xa8]
lea edx, [esp + 0x28]
lea eax, [ebx + 0x9a0]
push ecx
push edx
push eax
call dword [0x4eb86c]
mov edi, eax
test di, di
je 0x40814d
mov eax, dword [0x4eb878]
test eax, eax
je 0x4080ed
mov eax, dword [ebx + 0x998]
test eax, eax
je 0x4080ed
lea eax, [ebx + 0x9a0]
mov dword [ebx + 0x998], 0
push eax
call dword [0x4eb864]
push esi
call dword [sym.imp.USER32.dll_DestroyWindow]
mov ecx, dword [ebx + 8]
mov esi, dword [ebx + 0x200]
movsx eax, di
cmp eax, 0xfffffc0d
jg 0x40812a
je 0x4082b6
add eax, 0x403
cmp eax, 0xe
ja case.0x4082cd.1005
xor edx, edx
mov dl, byte [eax + 0x408524]
jmp dword [edx*4 + 0x408508]
test eax, eax
jg case.0x4082cd.1005
je 0x4082f7
add eax, 0x3ee
cmp eax, 6
ja case.0x4082cd.1005
jmp dword [eax*4 + 0x408534]
mov eax, dword [esp + 0x10]
push 0
push 0x64
push 0x402
push eax
call ebp
mov ecx, ebx
call fcn.00422100
mov ecx, dword [ebx + 0xc]
push 0
push 0
push 0xb
push ecx
mov dword [ebx + 0x994], 1
call ebp
mov edx, dword [ebx + 0xc]
push 0
push 0
push 0x1009
push edx
call ebp
push 1
mov ecx, ebx
call fcn.0041ca90
mov eax, dword [ebx + 0x4a0]
test eax, eax
je 0x4081ce
mov eax, dword [ebx + 0x498]
xor ebp, ebp
test eax, eax
jle 0x4081ce
cmp ebp, eax
jge 0x4081c3
test ebp, ebp
jl 0x4081c3
mov eax, dword [ebx + 0x494]
mov ecx, dword [eax + ebp*4]
test ecx, ecx
je 0x4081c3
mov edx, dword [ecx]
push 1
call dword [edx]
mov eax, dword [ebx + 0x498]
inc ebp
cmp ebp, eax
jl 0x4081ac
mov eax, dword [ebx + 0x494]
push eax
call fcn.004be975
push 0x80
call fcn.004be967
mov dword [ebx + 0x494], eax
mov dword [ebx + 0x498], 0
movsx eax, word [esp + 0x48]
mov dword [ebx + 0x49c], 0x1f
mov dword [ebx + 0x4a4], 0x40
lea ecx, [eax + eax*4]
shl ecx, 2
push ecx
call fcn.004be967
add esp, 0xc
mov ebp, eax
lea eax, [ebx + 0x9a0]
mov dword [esp + 0x18], ebp
push ebp
push eax
call dword [0x4eb85c]
mov edi, eax
test di, di
je 0x40831b
cmp di, 0xfc18
je 0x40831b
lea eax, [ebx + 0x9a0]
push eax
call dword [0x4eb864]
push esi
call dword [sym.imp.USER32.dll_DestroyWindow]
mov ecx, dword [ebx + 8]
mov esi, dword [ebx + 0x200]
movsx eax, di
cmp eax, 0xfffffc0d
jg 0x4082bd
je 0x4082b6
add eax, 0x403
cmp eax, 0xe
ja case.0x4082cd.1005
xor edx, edx
mov dl, byte [eax + 0x40856c]
jmp dword [edx*4 + 0x408550]
mov eax, 0x217
jmp 0x4082fc
mov eax, 0x21a
jmp 0x4082fc
mov eax, 0x21b
jmp 0x4082fc
mov eax, 0x21c
jmp 0x4082fc
mov eax, 0x21d
jmp 0x4082fc
mov eax, 0x21e
jmp 0x4082fc
mov eax, 0x219
jmp 0x4082fc
test eax, eax
jg case.0x4082cd.1005
je 0x4082f7
add eax, 0x3ee
cmp eax, 6
ja case.0x4082cd.1005
jmp dword [eax*4 + 0x40857c]
mov eax, 0x213
jmp 0x4082fc
mov eax, 0x214
jmp 0x4082fc
mov eax, 0x215
jmp 0x4082fc
mov eax, 0x216
jmp 0x4082fc
mov eax, 0x218
jmp 0x4082fc
mov eax, 0x212
push 0
push 0xa2
push eax
push ecx
push esi
call fcn.0044adc0
add esp, 0x14
pop edi
pop esi
pop ebp
xor eax, eax
pop ebx
add esp, 0xb8
ret
xor edi, edi
cmp word [esp + 0x40], di
jle 0x408434
mov dword [esp + 0x10], ebp
push 0x70
call fcn.004be967
add esp, 4
test eax, eax
je 0x40834c
mov ecx, dword [esp + 0x10]
push 0
push ecx
mov ecx, eax
call fcn.00423d40
mov ebp, eax
jmp 0x40834e
xor ebp, ebp
mov edx, dword [esp + 0x10]
inc edi
mov ecx, ebp
mov dword [esp + 0x24], edi
mov eax, dword [edx + 0x10]
mov dword [ebp + 0x3c], 0xff
cdq
mov dword [ebp + 0x20], eax
mov dword [ebp + 0x24], edx
mov dword [ebp + 0x64], edi
call fcn.004241e0
test ebp, ebp
je 0x408418
mov eax, dword [ebx + 0x49c]
mov edx, dword [ebx + 0x498]
lea ecx, [eax + 1]
cmp edx, ecx
jne 0x4083fc
add eax, dword [ebx + 0x4a4]
lea edx, [eax*4 + 4]
push edx
call fcn.004be967
mov ecx, dword [ebx + 0x49c]
mov esi, dword [ebx + 0x494]
mov edi, eax
mov dword [esp + 0x18], eax
lea ecx, [ecx*4 + 4]
mov edx, ecx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
mov eax, dword [ebx + 0x494]
push eax
call fcn.004be975
mov edx, dword [ebx + 0x4a4]
mov eax, dword [ebx + 0x49c]
mov ecx, dword [esp + 0x1c]
mov edi, dword [esp + 0x2c]
mov esi, dword [esp + 0x28]
add esp, 8
add eax, edx
mov dword [ebx + 0x494], ecx
mov dword [ebx + 0x49c], eax
mov eax, dword [ebx + 0x498]
mov ecx, dword [ebx + 0x494]
mov dword [ecx + eax*4], ebp
mov eax, dword [ebx + 0x498]
inc eax
mov dword [ebx + 0x498], eax
movsx edx, word [esp + 0x40]
mov ecx, dword [esp + 0x10]
add ecx, 0x14
cmp edi, edx
mov dword [esp + 0x10], ecx
jl 0x40832c
mov ebp, dword [esp + 0x18]
push ebp
call fcn.004be975
add esp, 4
xor edi, edi
mov ecx, ebx
push edi
call fcn.0041b210
push edi
mov ecx, ebx
call fcn.00418010
mov eax, dword [ebx + 0xc]
push eax
call dword [sym.imp.USER32.dll_UpdateWindow]
push edi
push 0x4e95
mov ecx, ebx
call fcn.0041ca50
mov ecx, dword [str._KDC210_]
lea ebp, [ebx + 0x20c]
push ecx
push ebp
call dword [sym.imp.KERNEL32.dll_lstrcpyA]
mov edx, dword [ebx + 0x20]
push ebp
push edx
call dword [sym.imp.USER32.dll_SetWindowTextA]
mov eax, dword [esp + 0x1c]
push eax
call dword [sym.imp.USER32.dll_SetCursor]
push esi
mov dword [ebx + 0x428], edi
call dword [sym.imp.USER32.dll_DestroyWindow]
mov ecx, ebx
mov dword [ebx + 0x98c], edi
mov dword [ebx + 0x990], edi
call fcn.00418f50
pop edi
pop esi
pop ebp
mov eax, 1
pop ebx
add esp, 0xb8
ret