Function at 0x438d81
Capabilities:
Hide graphical window

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x84
mov eax, dword [0x4c2f90]
xor eax, ebp
mov dword [ebp - 4], eax
push ebx
push esi
push edi
push 0x80
mov esi, ecx
call fcn.00476574
xor ebx, ebx
pop ecx
cmp eax, ebx
je 0x438db3
mov ecx, eax
call fcn.004476ed
jmp 0x438db5
xor eax, eax
mov dword [esi + 0x30], eax
call fcn.004415e0
mov ecx, eax
call fcn.0044126b
cmp dword [eax + 0x18], 8
jb 0x438dcf
mov eax, dword [eax + 4]
jmp 0x438dd2
add eax, 4
mov ecx, dword [esi + 0x30]
push eax
call fcn.00447417
lea eax, [ebp - 0x84]
push eax
mov dword [ebp - 0x84], ebx
call fcn.004029b4
mov ecx, eax
call fcn.00402bcf
push 0x78
call fcn.00476574
pop ecx
cmp eax, ebx
je 0x438e0c
push dword [esi + 0x30]
mov ecx, eax
call fcn.004525e0
jmp 0x438e0e
xor eax, eax
push 0x68
mov dword [esi + 0x34], eax
call fcn.00476574
pop ecx
cmp eax, ebx
je 0x438e29
push dword [esi + 0x30]
mov ecx, eax
call fcn.0044a85c
jmp 0x438e2b
xor eax, eax
push 0xbc
mov dword [esi + 0x38], eax
call fcn.00476574
pop ecx
cmp eax, ebx
je 0x438e49
push dword [esi + 0x30]
mov ecx, eax
call fcn.0043f95c
jmp 0x438e4b
xor eax, eax
mov dword [esi + 0x40], eax
mov eax, dword [esi + 0x34]
cmp eax, ebx
je 0x438e5a
add eax, 0x20
jmp 0x438e5c
xor eax, eax
mov ecx, dword [esi + 0x30]
push ebx
push eax
call fcn.00447732
mov eax, dword [esi + 0x38]
cmp eax, ebx
je 0x438e72
add eax, 0x20
jmp 0x438e74
xor eax, eax
mov ecx, dword [esi + 0x30]
push ebx
push eax
call fcn.00447732
mov eax, dword [esi + 0x40]
cmp eax, ebx
je 0x438e8a
add eax, 0x20
jmp 0x438e8c
xor eax, eax
mov ecx, dword [esi + 0x30]
push ebx
push eax
call fcn.00447732
mov ecx, dword [ebp - 0x84]
call fcn.004017e5
mov edi, eax
test edi, edi
jbe 0x438ede
mov ecx, dword [ebp - 0x84]
and dword [ebp - 0x80], 0
lea eax, [ebp - 0x80]
push eax
push ebx
call fcn.004017ef
mov eax, dword [ebp - 0x80]
test eax, eax
je 0x438ed9
cmp dword [eax + 0x20], 8
jb 0x438ecd
mov eax, dword [eax + 0xc]
jmp 0x438ed0
add eax, 0xc
mov ecx, dword [esi + 0x40]
push eax
call fcn.00441152
inc ebx
cmp ebx, edi
jb 0x438ea7
mov ecx, esi
call fcn.00436f49
push 0x50
call fcn.00476574
pop ecx
test eax, eax
je 0x438efc
mov ecx, eax
call fcn.0044e353
mov ebx, eax
jmp 0x438efe
xor ebx, ebx
push 0
mov byte [ebx + 0x4c], 1
call dword [sym.imp.USER32.dll_GetDesktopWindow]
push eax
mov ecx, ebx
call fcn.004389d3
mov edi, dword [sym.imp.USER32.dll_ShowWindow]
push 6
push dword [ebx + 4]
call edi
mov ecx, dword [esi + 0x30]
push 0
push dword [ebx + 4]
call fcn.00438bb0
mov eax, dword [esi + 0x30]
push 0
mov dword [esi + 0x44], ebx
push dword [eax + 4]
call edi
lea eax, [ebp - 0x79]
push eax
mov byte [ebp - 0x79], 0
call fcn.00403c1c
mov ecx, eax
call fcn.00403d0a
cmp byte [ebp - 0x79], 0
je 0x438fd1
push 0x50
call fcn.00476574
pop ecx
test eax, eax
je 0x438f6b
mov ecx, eax
call fcn.0044e353
mov dword [ebp - 0x80], eax
jmp 0x438f6f
and dword [ebp - 0x80], 0
mov eax, dword [esi + 0x30]
mov ecx, dword [ebp - 0x80]
push 0
push dword [eax + 4]
call fcn.004389d3
mov eax, dword [ebp - 0x80]
push 1
push dword [eax + 4]
call edi
push 0
push 0x4b28f8
push 1
push 2
push dword [esi + 0x30]
lea ecx, [ebp - 0x78]
call fcn.00448f43
mov eax, dword [ebp - 0x80]
push 0
push dword [eax + 4]
lea ecx, [ebp - 0x78]
call fcn.0043896f
cmp dword [ebp - 0xc], 0
jne 0x438fc9
mov ecx, dword [esi + 0x30]
push 0
call fcn.00447140
lea ecx, [ebp - 0x78]
call fcn.00448879
jmp 0x438fe9
lea ecx, [ebp - 0x78]
call fcn.00448879
mov eax, dword [esi + 0x30]
push 1
mov byte [eax + 0x24], 1
push dword [ebx + 4]
call edi
mov eax, dword [esi + 0x30]
push 1
push dword [eax + 4]
call edi
mov ecx, dword [ebp - 4]
pop edi
pop esi
xor ecx, ebp
xor eax, eax
pop ebx
call fcn.0047654a
leave
ret