Function at 0x41e56c
Capabilities:
Accept command line arguments
Hide graphical window

Disassembly:
push ebp
mov ebp, esp
mov ecx, 0x10
push 0
push 0
dec ecx
jne 0x41e574
push ecx
push ebx
push esi
push edi
mov eax, 0x41b26c
call fcn.0040a350
xor eax, eax
push ebp
push 0x41ed30
push dword fs:[eax]
mov dword fs:[eax], esp
xor eax, eax
mov dword [0x460c4c], eax
xor edi, edi
xor eax, eax
mov dword [0x460c78], eax
call fcn.0041b00c
or al, byte [0x41ed40]
call fcn.0041b01c
xor eax, eax
mov dword [0x460c74], eax
call sub.comctl32.dll_InitCommonControls
mov eax, 0x460c6c
call fcn.00405e8c
call fcn.0040b7c4
mov esi, eax
push 0xa
mov ecx, 0x41ed44
mov edx, dword [0x45e598]
mov eax, esi
call fcn.0040b7d0
mov eax, esi
call fcn.0040b55c
test eax, eax
jne 0x41e609
mov eax, 2
call fcn.0041ad28
mov eax, esi
call fcn.0040ad28
jmp 0x41ecd5
call fcn.0040b7c4
mov dword [0x460c50], eax
mov edx, dword [0x460c50]
mov eax, esi
call fcn.0041a7a8
test al, al
jne 0x41e644
mov eax, 3
call fcn.0041ad28
mov eax, dword [0x460c50]
call fcn.0040ad28
mov eax, esi
call fcn.0040ad28
jmp 0x41ecd5
call fcn.0040b870
mov ebx, eax
mov eax, ebx
xor ecx, ecx
mov edx, dword [0x460c50]
call fcn.0040b9fc
mov eax, esi
call fcn.0040ad28
mov eax, dword [0x460c50]
call fcn.0040ad28
lea ecx, [ebp - 0x18]
mov eax, ebx
xor edx, edx
call main
cmp dword [ebp - 0x18], 0
jne 0x41e693
mov eax, 4
call fcn.0041ad28
mov eax, ebx
call fcn.0040ad28
jmp 0x41ecd5
lea ecx, [ebp - 0x1c]
mov eax, ebx
mov edx, 1
call main
mov edx, dword [ebp - 0x1c]
mov eax, 0x460c54
call fcn.00406154
lea ecx, [ebp - 0x20]
mov eax, ebx
mov edx, 0xb
call main
mov eax, dword [ebp - 0x20]
mov edx, 0x41ed58
call fcn.00406838
je 0x41e76d
lea ecx, [ebp - 0x24]
mov eax, ebx
mov edx, 0xb
call main
mov eax, dword [ebp - 0x24]
call fcn.00406524
push eax
call sub.user32.dll_RegisterWindowMessageW
mov dword [0x460c7c], eax
lea ecx, [ebp - 0x28]
mov eax, ebx
mov edx, 0xb
call main
mov eax, dword [ebp - 0x28]
call fcn.00406524
mov ecx, eax
or edx, 0xffffffff
xor eax, eax
call fcn.0040acf0
mov dword [0x460c78], eax
cmp dword [0x460c78], 0
je 0x41e730
call sub.kernel32.dll_GetLastError_2
cmp eax, 0xb7
jne 0x41e76d
call sub.kernel32.dll_GetCommandLineW_1
mov esi, eax
push esi
call sub.kernel32.dll_GlobalAddAtomW
mov edi, eax
movzx eax, di
push eax
mov eax, esi
call fcn.00406264
push eax
mov eax, dword [0x460c7c]
push eax
push 0xffff
call sub.user32.dll_SendMessageW
push edi
call sub.kernel32.dll_GlobalDeleteAtom
mov eax, ebx
call fcn.0040ad28
jmp 0x41ecd5
lea ecx, [ebp - 0x2c]
mov eax, ebx
mov edx, 0xa
call main
mov eax, dword [ebp - 0x2c]
mov edx, 0x41ed58
call fcn.00406838
je 0x41e7cf
lea ecx, [ebp - 0x30]
mov eax, ebx
mov edx, 0xa
call main
mov edx, dword [ebp - 0x30]
mov eax, 0x45aa90
call fcn.00406154
push 0x41aec0
mov edx, 0x41ed5c
xor ecx, ecx
mov eax, dword [0x45e598]
call fcn.0040abc8
mov dword [0x460c4c], eax
push 1
mov eax, dword [0x460c4c]
push eax
call sub.user32.dll_ShowWindow
lea ecx, [ebp - 0x34]
mov eax, ebx
mov edx, 2
call main
mov edx, dword [ebp - 0x34]
mov eax, 0x460c5c
call fcn.00406154
lea ecx, [ebp - 0x38]
mov eax, ebx
mov edx, 3
call main
mov edx, dword [ebp - 0x38]
mov eax, 0x460c58
call fcn.00406154
lea edx, [ebp - 0x40]
xor eax, eax
call fcn.0040b114
mov eax, dword [ebp - 0x40]
lea ecx, [ebp - 0x3c]
mov edx, 0x41ed70
call fcn.0040b398
mov edx, dword [ebp - 0x3c]
mov eax, 0x460c60
call fcn.00406154
mov eax, dword [0x460c60]
call fcn.0041b154
mov byte [0x460c68], al
cmp byte [0x460c68], 0
jne 0x41e8ef
lea eax, [ebp - 0x44]
mov ecx, dword [0x460c5c]
mov edx, 0x41ed84
call fcn.00406700
mov edx, dword [ebp - 0x44]
mov eax, 0x80000002
call fcn.0040b414
mov esi, eax
test esi, esi
je 0x41e8ef
lea ecx, [ebp - 0x48]
mov edx, 0x41edb8
mov eax, esi
call fcn.0040b4d4
mov edx, dword [ebp - 0x48]
mov eax, 0x460c6c
call fcn.00406154
mov eax, dword [0x460c6c]
call fcn.0040b22c
test al, al
je 0x41e8ef
mov byte [0x460c68], 1
mov edx, 0x41edd4
mov eax, esi
call fcn.0040b444
mov dword [0x460c70], eax
mov eax, esi
call fcn.0040b53c
cmp dword [0x460c70], 0x6d60
jge 0x41e8d6
mov eax, 0x460c6c
call fcn.00405e8c
mov byte [0x460c68], 0
mov eax, dword [0x460c58]
call fcn.0040b00c
cmp eax, dword [0x460c70]
jne 0x41e8ef
mov byte [0x460c68], 1
cmp dword [0x460c4c], 0
je 0x41e902
mov eax, 0xa
call fcn.0041af48
cmp byte [0x460c68], 0
jne 0x41e969
lea ecx, [ebp - 0x4c]
mov eax, ebx
mov edx, 9
call main
mov eax, dword [ebp - 0x4c]
push eax
lea edx, [ebp - 0x58]
xor eax, eax
call fcn.0040b114
mov eax, dword [ebp - 0x58]
lea edx, [ebp - 0x54]
call fcn.0040b318
mov eax, dword [ebp - 0x54]
lea edx, [ebp - 0x50]
call fcn.0040b300
mov edx, dword [ebp - 0x50]
mov eax, 0x460c60
pop ecx
call fcn.00406700
mov eax, dword [0x460c60]
call fcn.0040b22c
test al, al
je 0x41e969
mov eax, dword [0x460c60]
call fcn.0041b154
mov byte [0x460c68], al
cmp byte [0x460c68], 0
jne 0x41eac3
call fcn.0040b7c4
mov edx, dword [0x45ab7c]
mov dword [edx], eax
call fcn.0041ab04
test al, al
jne 0x41e9a2
mov eax, 6
call fcn.0041ad28
mov eax, ebx
call fcn.0040ad28
jmp 0x41ecd5
lea edx, [ebp - 0x5c]
mov eax, 0x41edf0
call fcn.0041b044
mov eax, dword [ebp - 0x5c]
call fcn.0040647c
push eax
call fcn.0041a76c
call fcn.0041a78c
test eax, eax
jne 0x41e9dc
mov eax, 5
call fcn.0041ad28
mov eax, ebx
call fcn.0040ad28
jmp 0x41ecd5
call fcn.0040b7c4
mov esi, eax
mov eax, esi
call fcn.0041a918
mov edi, eax
test edi, edi
jne 0x41ea0d
mov eax, esi
call fcn.0040ad28
mov eax, ebx
call fcn.0040ad28
mov eax, 0xa
call fcn.0041ad28
jmp 0x41ecd5
mov eax, edi
and eax, 0xf
test eax, eax
jbe 0x41ea19
inc edi
jmp 0x41ea0d
lea ecx, [ebp - 0x60]
mov eax, ebx
mov edx, 9
call main
mov eax, dword [ebp - 0x60]
push eax
lea edx, [ebp - 0x6c]
xor eax, eax
call fcn.0040b114
mov eax, dword [ebp - 0x6c]
lea edx, [ebp - 0x68]
call fcn.0040b318
mov eax, dword [ebp - 0x68]
lea edx, [ebp - 0x64]
call fcn.0040b300
mov edx, dword [ebp - 0x64]
mov eax, 0x460c60
pop ecx
call fcn.00406700
mov eax, esi
call fcn.0040b55c
push eax
mov eax, dword [esi + 0x3c]
push eax
push 0
push 0
push 2
push 0
push 1
push 0x40000000
mov eax, dword [0x460c60]
call fcn.00406524
push eax
call fcn.0041a738
test eax, eax
jne 0x41eaa6
mov eax, esi
call fcn.0040ad28
mov eax, ebx
call fcn.0040ad28
mov eax, 0xa
call fcn.0041ad28
jmp 0x41ecd5
push eax
call sub.kernel32.dll_CloseHandle_1
mov eax, 0x460c6c
mov edx, dword [0x460c60]
call fcn.00406154
mov byte [0x460c68], 1
cmp dword [0x460c4c], 0
je 0x41ead6
mov eax, 0x19
call fcn.0041af48
cmp byte [0x460c68], 0
je 0x41ecce
push 0x41ee24
lea edx, [ebp - 0x70]
xor eax, eax
call fcn.0040b114
push dword [ebp - 0x70]
push 0x41ee3c
mov eax, 0x460c64
mov edx, 3
call fcn.00406788
call fcn.0040b1a0
test eax, eax
jle 0x41ebb7
mov dword [ebp - 0x14], eax
mov esi, 1
lea edx, [ebp - 0x74]
mov eax, esi
call fcn.0040b114
cmp dword [ebp - 0x74], 0
je 0x41ebad
lea edx, [ebp - 0x78]
mov eax, esi
call fcn.0040b114
mov edx, dword [ebp - 0x78]
mov ecx, 1
mov eax, 0x41ee4c
call fcn.00406914
test eax, eax
jle 0x41eb76
push 0x41ee3c
lea edx, [ebp - 0x7c]
mov eax, esi
call fcn.0040b114
push dword [ebp - 0x7c]
push 0x41ee3c
mov eax, 0x460c60
mov edx, 3
call fcn.00406788
jmp 0x41eb8d
lea edx, [ebp - 0x80]
mov eax, esi
call fcn.0040b114
mov edx, dword [ebp - 0x80]
mov eax, 0x460c60
call fcn.00406154
push dword [0x460c64]
push 0x41ee4c
push dword [0x460c60]
mov eax, 0x460c64
mov edx, 3
call fcn.00406788
inc esi
dec dword [ebp - 0x14]
jne 0x41eb1e
cmp dword [0x460c74], 0
jne 0x41ebd4
mov edx, 0x8000
mov eax, dword [0x460c6c]
call fcn.0041af88
mov dword [0x460c74], eax
cmp dword [0x460c74], 0
jne 0x41ebec
mov eax, 8
call fcn.0041ad28
jmp 0x41ecd5
cmp dword [0x460c4c], 0
je 0x41ebff
mov eax, 0x28
call fcn.0041af48
push 0x41ee50
mov eax, dword [0x460c74]
push eax
call fcn.0040aa14
mov esi, eax
mov dword [0x45aa94], esi
test esi, esi
jne 0x41ec42
mov eax, 8
call fcn.0041ad28
cmp dword [0x460c74], 0
je 0x41ecd5
mov eax, dword [0x460c74]
push eax
call sub.kernel32.dll_FreeLibrary_2
jmp 0x41ecd5
push 0x41ee3c
lea edx, [ebp - 0x84]
xor eax, eax
call fcn.0040b114
push dword [ebp - 0x84]
push 0x41ee3c
push dword [0x460c64]
mov eax, 0x460c64
mov edx, 4
call fcn.00406788
push edi
mov eax, dword [0x45e598]
push eax
mov eax, dword [0x460c4c]
push eax
mov eax, dword [0x460c64]
call fcn.00406524
push eax
call dword [0x45aa94]
xor eax, eax
mov dword [0x45aa94], eax
cmp dword [0x460c74], 0
je 0x41ecad
mov eax, dword [0x460c74]
push eax
call sub.kernel32.dll_FreeLibrary_2
push 0
mov eax, dword [0x460c4c]
push eax
call sub.user32.dll_ShowWindow
cmp dword [0x460c4c], 0
je 0x41ecce
mov eax, dword [0x460c4c]
push eax
call sub.user32.dll_DestroyWindow
mov eax, ebx
call fcn.0040ad28
cmp dword [0x460c4c], 0
je 0x41ece9
mov eax, dword [0x460c4c]
push eax
call sub.user32.dll_DestroyWindow
cmp dword [0x460c78], 0
je 0x41ecfd
mov eax, dword [0x460c78]
push eax
call sub.kernel32.dll_CloseHandle_1
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
push 0x41ed37
lea eax, [ebp - 0x84]
mov edx, 0xa
call fcn.00405eec
lea eax, [ebp - 0x5c]
call fcn.00405eb0
lea eax, [ebp - 0x58]
mov edx, 0x11
call fcn.00405eec
ret