Function at 0x45d154
Capabilities:
Hide graphical window

Disassembly:
push ebp
lea ebp, [esp - 0x97c]
sub esp, 0x9fc
mov eax, dword [0x488548]
xor eax, ebp
mov dword [ebp + 0x978], eax
cmp dword [0x48a22c], 2
jl 0x45d43d
push ebx
push esi
push edi
push dword [0x489764]
call fcn.0045bddd
mov esi, dword [0x489768]
mov ebx, dword [0x48a240]
mov edi, dword [ebx + 0x10]
push esi
mov dword [ebp - 0x40], eax
call fcn.0045bda2
mov dword [ebp - 0x2c], eax
test eax, eax
jle 0x45d1b2
imul eax, eax, 0x3c
mov esi, dword [eax + ebx + 0x10]
jmp 0x45d1e9
je 0x45d43a
push esi
call fcn.0045bd78
mov esi, eax
test esi, esi
jge 0x45d1dc
cmp dword [0x48a230], 2
jge 0x45d1d2
xor esi, esi
inc esi
jmp 0x45d1dc
mov esi, dword [ebx + 0x4c]
mov dword [ebp - 0x2c], 1
cmp esi, edi
jne 0x45d1e9
xor eax, eax
test edi, edi
sete al
mov esi, eax
mov dword [ebx + 0x10], esi
mov eax, dword [0x48a23c]
mov ebx, edi
imul ebx, ebx, 0x18
cmp dword [ebp - 0x2c], 0
mov ecx, dword [ebx + eax]
mov dword [ebp - 0x48], ebx
mov dword [ebp - 0x44], ecx
jl 0x45d217
mov eax, dword [ebp - 0x2c]
mov ecx, dword [0x48a240]
imul eax, eax, 0x3c
mov dword [eax + ecx + 0x10], edi
jmp 0x45d234
mov edi, dword [sym.imp.USER32.dll_ShowWindow]
mov edx, esi
imul edx, edx, 0x18
mov eax, dword [edx + eax]
push 0
push ecx
mov dword [ebp - 0x30], eax
call edi
push 1
push dword [ebp - 0x30]
call edi
xor eax, eax
cmp dword [ebp - 0x2c], eax
jle 0x45d30e
test dword [0x4870dc], 0x80000
je 0x45d30e
push eax
mov eax, dword [0x48a23c]
push dword [ebx + eax]
call fcn.0045b501
imul esi, esi, 0x18
push dword [ebp - 0x2c]
mov edi, eax
mov eax, dword [0x48a23c]
push dword [esi + eax]
call fcn.0045b501
mov dword [ebp - 0x38], eax
test edi, edi
jl 0x45d3fb
test eax, eax
jl 0x45d3fb
mov esi, dword [sym.imp.USER32.dll_SendMessageW]
push 9
pop eax
mov dword [ebp - 0x80], eax
mov dword [ebp - 0x64], eax
mov eax, 0x268
mov dword [ebp - 0x70], eax
mov dword [ebp - 0x54], eax
lea eax, [ebp - 0x28]
mov dword [ebp - 0x58], eax
lea eax, [ebp + 0x4a8]
mov dword [ebp - 0x74], eax
lea eax, [ebp - 0x64]
push eax
mov eax, dword [0x48a240]
push edi
mov ebx, 0x133c
push ebx
push dword [eax + 0x18]
call esi
mov eax, dword [ebp - 0x2c]
imul eax, eax, 0x3c
lea ecx, [ebp - 0x80]
push ecx
push dword [ebp - 0x38]
mov ecx, dword [0x48a240]
push ebx
push dword [eax + ecx + 0x18]
mov dword [ebp - 0x30], eax
call esi
lea eax, [ebp - 0x80]
push eax
mov eax, dword [0x48a240]
push edi
lea edi, [ebx + 1]
push edi
push dword [eax + 0x18]
call esi
mov ecx, dword [ebp - 0x30]
lea eax, [ebp - 0x64]
push eax
push dword [ebp - 0x38]
mov eax, dword [0x48a240]
push edi
push dword [ecx + eax + 0x18]
call esi
jmp 0x45d3fb
cmp dword [0x48a234], eax
mov dword [ebp - 0x34], eax
jle 0x45d3fb
imul esi, esi, 0x18
mov ebx, 0x133c
mov dword [ebp - 0x3c], esi
mov esi, dword [sym.imp.USER32.dll_SendMessageW]
mov dword [ebp - 0x2c], eax
lea edi, [ebx + 1]
push dword [ebp - 0x34]
mov eax, dword [0x48a23c]
mov ecx, dword [ebp - 0x48]
push dword [ecx + eax]
call fcn.0045b501
push dword [ebp - 0x34]
mov ecx, dword [ebp - 0x3c]
mov dword [ebp - 0x30], eax
mov eax, dword [0x48a23c]
push dword [ecx + eax]
call fcn.0045b501
cmp dword [ebp - 0x30], 0
mov dword [ebp - 0x38], eax
jl 0x45d3e5
test eax, eax
jl 0x45d3e5
mov ecx, dword [ebp - 0x2c]
push 9
pop eax
mov dword [ebp - 0x80], eax
mov dword [ebp - 0x64], eax
mov eax, 0x258
mov dword [ebp - 0x70], eax
mov dword [ebp - 0x54], eax
lea eax, [ebp - 0x28]
mov dword [ebp - 0x58], eax
lea eax, [ebp + 0x4a8]
mov dword [ebp - 0x74], eax
lea eax, [ebp - 0x64]
push eax
push dword [ebp - 0x30]
mov eax, dword [0x48a240]
push ebx
push dword [ecx + eax + 0x18]
call esi
mov ecx, dword [ebp - 0x2c]
lea eax, [ebp - 0x80]
push eax
push dword [ebp - 0x38]
mov eax, dword [0x48a240]
push ebx
push dword [ecx + eax + 0x18]
call esi
mov ecx, dword [ebp - 0x2c]
lea eax, [ebp - 0x80]
push eax
push dword [ebp - 0x30]
mov eax, dword [0x48a240]
push edi
push dword [ecx + eax + 0x18]
call esi
mov ecx, dword [ebp - 0x2c]
lea eax, [ebp - 0x64]
push eax
push dword [ebp - 0x38]
mov eax, dword [0x48a240]
push edi
push dword [ecx + eax + 0x18]
call esi
inc dword [ebp - 0x34]
mov eax, dword [ebp - 0x34]
add dword [ebp - 0x2c], 0x3c
cmp eax, dword [0x48a234]
jl 0x45d334
mov eax, dword [ebp - 0x44]
push 0xfffffffffffffffe
mov dword [0x489768], eax
mov dword [0x488538], 0x4802dc
call fcn.00460142
mov eax, dword [ebp - 0x40]
test eax, eax
jl 0x45d43a
mov ecx, dword [0x48a240]
imul eax, eax, 0x3c
mov eax, dword [eax + ecx + 0x10]
mov ecx, dword [0x48a23c]
imul eax, eax, 0x18
push dword [eax + ecx]
call dword [sym.imp.USER32.dll_SetFocus]
pop edi
pop esi
pop ebx
mov ecx, dword [ebp + 0x978]
xor ecx, ebp
call fcn.0046890b
add ebp, 0x97c
leave
ret