Function at 0x40c100
Capabilities:
Access peb ldr_data
Contain obfuscated stackstrings
Get process heap flags
Get process heap force flags

Disassembly:
push 0xffffffffffffffff
push 0x459329
mov eax, dword fs:[0]
push eax
sub esp, 0x14
push ebx
push ebp
push esi
push edi
mov eax, dword [0x477c1c]
xor eax, esp
push eax
lea eax, [esp + 0x28]
mov dword fs:[0], eax
mov esi, ecx
mov dword [esp + 0x14], esi
mov eax, dword [esp + 0x38]
push eax
push 0x66
call fcn.0042d96d
xor ebx, ebx
mov dword [esp + 0x30], ebx
lea ecx, [esi + 0x78]
mov dword [esi], vtable.CLauncherDlg.0
call fcn.00407b60
mov byte [esp + 0x30], 1
lea ecx, [esi + 0xec]
call fcn.00407b60
mov byte [esp + 0x30], 2
lea ecx, [esi + 0x160]
call fcn.00407b60
mov byte [esp + 0x30], 3
lea ecx, [esi + 0x1d4]
call fcn.00407b60
mov byte [esp + 0x30], 4
lea ecx, [esi + 0x248]
call fcn.004062d0
mov byte [esp + 0x30], 5
lea ecx, [esi + 0x29c]
call fcn.004062d0
mov byte [esp + 0x30], 6
lea ecx, [esi + 0x2f0]
call fcn.004062d0
mov byte [esp + 0x30], 7
lea ecx, [esi + 0x344]
call fcn.004062d0
mov byte [esp + 0x30], 8
lea ecx, [esi + 0x398]
call fcn.004062d0
mov byte [esp + 0x30], 9
lea ecx, [esi + 0x3ec]
call fcn.004062d0
mov byte [esp + 0x30], 0xa
lea ecx, [esi + 0x440]
call fcn.004062d0
mov byte [esp + 0x30], 0xb
lea ecx, [esi + 0x494]
call fcn.004062d0
mov byte [esp + 0x30], 0xc
lea ecx, [esi + 0x4e8]
call fcn.004062d0
mov byte [esp + 0x30], 0xd
lea ecx, [esi + 0x53c]
call fcn.00403b70
mov byte [esp + 0x30], 0xe
lea ecx, [esi + 0x5d0]
call fcn.00405fe0
mov byte [esp + 0x30], 0xf
lea ecx, [esi + 0x624]
call fcn.0040c080
mov byte [esp + 0x30], 0x10
lea ecx, [esi + 0x63c]
call fcn.00416450
mov byte [esp + 0x30], 0x11
lea ecx, [esi + 0x79c]
call fcn.00403d30
mov byte [esp + 0x30], 0x12
lea ecx, [esi + 0x9f4]
call fcn.00403280
mov byte [esp + 0x30], 0x13
lea ecx, [esi + 0x9fc]
call fcn.00403280
mov byte [esp + 0x30], 0x14
lea ecx, [esi + 0xa00]
call fcn.00403280
mov byte [esp + 0x30], 0x15
push fcn.004032f0
push fcn.00403280
push 0x20
push 4
lea ecx, [esi + 0xa08]
push ecx
call fcn.00442036
mov byte [esp + 0x30], 0x16
lea ecx, [esi + 0xb0c]
call fcn.004028c0
mov byte [esp + 0x30], 0x17
lea ecx, [esi + 0xb1c]
call fcn.004028c0
mov byte [esp + 0x30], 0x18
lea eax, [esi + 0xb2c]
mov dword [esp + 0x38], eax
mov dword [eax], vtable.CGdiObject.0
mov dword [eax + 4], ebx
mov byte [esp + 0x30], 0x19
mov dword [eax], vtable.CBrush.0
mov byte [esp + 0x30], 0x1a
lea ecx, [esi + 0xbd8]
call fcn.004062d0
mov byte [esp + 0x30], 0x1b
lea eax, [esi + 0xca8]
mov dword [esp + 0x38], eax
mov dword [eax], vtable.CGdiObject.0
mov dword [eax + 4], ebx
mov byte [esp + 0x30], 0x1c
mov dword [eax], vtable.CFont.0
mov byte [esp + 0x30], 0x1d
lea ecx, [esi + 0xcec]
call fcn.00403280
mov byte [esp + 0x30], 0x1e
mov eax, 0xf
mov dword [esi + 0xd14], eax
mov dword [esi + 0xd10], ebx
mov byte [esi + 0xd00], bl
mov byte [esp + 0x30], 0x1f
mov dword [esi + 0xd30], eax
mov dword [esi + 0xd2c], ebx
mov byte [esi + 0xd1c], bl
mov byte [esp + 0x30], 0x20
mov dword [esi + 0xd4c], eax
mov dword [esi + 0xd48], ebx
mov byte [esi + 0xd38], bl
mov byte [esp + 0x30], 0x21
mov dword [esi + 0xd68], eax
mov dword [esi + 0xd64], ebx
mov byte [esi + 0xd54], bl
mov byte [esp + 0x30], 0x22
mov dword [esi + 0xe88], eax
mov dword [esi + 0xe84], ebx
mov byte [esi + 0xe74], bl
mov byte [esp + 0x30], 0x23
mov dword [esi + 0xea4], eax
mov dword [esi + 0xea0], ebx
mov byte [esi + 0xe90], bl
mov byte [esp + 0x30], 0x24
mov dword [esi + 0xec0], eax
mov dword [esi + 0xebc], ebx
mov byte [esi + 0xeac], bl
mov byte [esp + 0x30], 0x25
call fcn.00422eca
call fcn.00422eca
mov eax, dword [eax + 0xc]
push 0x80
push eax
call dword [sym.imp.USER32.dll_LoadIconA]
push 0x100
lea edx, [esi + 0x8f4]
push ebx
push edx
mov dword [esi + 0x74], eax
mov dword [esi + 0x8ec], ebx
call fcn.00440d10
lea edi, [esi + 0xb34]
mov ecx, 0x214
mov eax, 0x125
mov dword [edi], eax
add esp, 0xc
lea edx, [ecx + 0x2f]
lea ebp, [ecx + 0xd]
mov dword [edi + 4], ecx
mov dword [edi + 8], edx
push edi
lea eax, [esp + 0x1c]
mov dword [edi + 0xc], ebp
mov ebp, dword [sym.imp.USER32.dll_CopyRect]
push eax
mov dword [esi + 0x8f0], ebx
mov dword [esi + 0x9f8], ebx
mov dword [esi + 0xa04], ebx
call ebp
mov eax, dword [esp + 0x18]
mov ecx, dword [esp + 0x1c]
dec dword [esp + 0x20]
mov edx, dword [esp + 0x24]
inc eax
inc ecx
mov dword [esi + 0xb44], eax
mov dword [esi + 0xb48], ecx
mov ecx, dword [esp + 0x20]
dec edx
mov dword [esi + 0xb4c], ecx
mov dword [esi + 0xb50], edx
push edi
lea edx, [esp + 0x1c]
push edx
call ebp
mov eax, dword [esp + 0x18]
mov ecx, dword [esp + 0x1c]
inc dword [esp + 0x20]
mov edx, dword [esp + 0x24]
dec eax
mov dword [esi + 0xb54], eax
mov eax, dword [esp + 0x20]
inc ecx
mov dword [esi + 0xb58], ecx
push edi
lea ecx, [esp + 0x1c]
dec edx
mov dword [esi + 0xb5c], eax
push ecx
mov dword [esi + 0xb60], edx
call ebp
mov eax, dword [esp + 0x18]
mov ecx, dword [esp + 0x1c]
mov edx, dword [esp + 0x24]
dec dword [esp + 0x20]
inc eax
dec ecx
mov dword [esi + 0xb64], eax
inc edx
mov dword [esi + 0xb68], ecx
mov eax, dword [esp + 0x20]
push edi
lea ecx, [esp + 0x1c]
mov dword [esi + 0xb6c], eax
push ecx
mov dword [esi + 0xb70], edx
call ebp
mov eax, dword [esp + 0x18]
mov ecx, dword [esp + 0x1c]
inc dword [esp + 0x20]
mov edx, dword [esp + 0x24]
dec eax
mov dword [esi + 0xb74], eax
mov eax, dword [esp + 0x20]
dec ecx
mov dword [esi + 0xb78], ecx
push edi
lea ecx, [esp + 0x1c]
inc edx
mov dword [esi + 0xb7c], eax
push ecx
mov dword [esi + 0xb80], edx
call ebp
mov eax, dword [esp + 0x18]
mov ecx, dword [esp + 0x20]
mov edx, dword [esp + 0x1c]
dec eax
mov dword [esi + 0xb84], eax
mov eax, dword [esp + 0x24]
inc ecx
mov dword [esi + 0xb88], edx
mov dword [esi + 0xb8c], ecx
push edi
lea ecx, [esp + 0x1c]
push ecx
mov dword [esi + 0xb90], eax
call ebp
mov eax, dword [esp + 0x18]
mov ecx, dword [esp + 0x20]
mov edx, dword [esp + 0x1c]
inc eax
mov dword [esi + 0xb94], eax
mov eax, dword [esp + 0x24]
dec ecx
mov dword [esi + 0xb98], edx
mov dword [esi + 0xb9c], ecx
push edi
lea ecx, [esp + 0x1c]
push ecx
mov dword [esi + 0xba0], eax
call ebp
mov eax, dword [esp + 0x1c]
mov edx, dword [esp + 0x18]
mov ecx, dword [esp + 0x24]
inc eax
mov dword [esi + 0xba4], edx
mov dword [esi + 0xba8], eax
mov eax, dword [esp + 0x20]
dec ecx
mov dword [esi + 0xbac], eax
mov dword [esi + 0xbb0], ecx
push edi
lea ecx, [esp + 0x1c]
push ecx
call ebp
mov eax, dword [esp + 0x1c]
mov edx, dword [esp + 0x18]
mov ecx, dword [esp + 0x24]
dec eax
mov dword [esi + 0xbb4], edx
mov dword [esi + 0xbb8], eax
mov eax, dword [esp + 0x20]
inc ecx
mov dword [esi + 0xbbc], eax
mov dword [esi + 0xbc0], ecx
mov dword [esi + 0xc2c], 0x7dd9ff
mov dword [esi + 0xc30], ebx
mov eax, 0x125
mov ecx, 0x203
mov edx, 0x243
mov edi, 0x210
mov dword [esi + 0xbc4], eax
mov dword [esi + 0xbc8], ecx
mov dword [esi + 0xbcc], edx
mov eax, 0x18
mov dword [esi + 0xc34], eax
xor eax, eax
mov dword [esi + 0xc44], eax
mov ecx, 0x22e
mov dword [esi + 0xc38], ecx
mov edx, 0x244
mov dword [esi + 0xc3c], edx
mov dword [esi + 0xbd0], edi
mov ecx, 0x322
mov dword [esi + 0xc48], ebx
mov dword [esi + 0xc4c], ecx
mov edx, 0x252
mov dword [esi + 0xc50], edx
mov eax, 0x1b1
mov dword [esi + 0xc54], eax
mov ecx, 0x7a
mov dword [esi + 0xc58], ecx
mov edx, 0x2f9
mov dword [esi + 0xc5c], edx
mov edi, 0x242
mov dword [esi + 0xc40], edi
mov eax, 0x260
mov dword [esi + 0xc64], eax
mov ecx, 0x1fd
mov dword [esi + 0xc68], ecx
mov edx, 0x310
mov dword [esi + 0xc6c], edx
mov edi, 0x1cd
mov dword [esi + 0xc60], edi
mov eax, 0xa1
mov dword [esi + 0xc74], eax
mov ecx, 0x1ff
mov dword [esi + 0xc78], ecx
mov edx, 0x11f
mov dword [esi + 0xc7c], edx
mov edi, 0x243
mov eax, 0x17
mov dword [esi + 0xc84], eax
mov dword [esi + 0xc88], ecx
mov dword [esi + 0xc70], edi
mov edi, 0x221
mov edx, 0x95
mov dword [esi + 0xc8c], edx
mov eax, 0x2fb
mov dword [esi + 0xc94], eax
mov ecx, 3
mov dword [esi + 0xc98], ecx
mov dword [esi + 0xc80], edi
mov dword [esi + 0xc90], edi
mov edx, 0x314
mov edi, 0x1c
mov dword [esi + 0xc9c], edx
mov ecx, esi
mov dword [esi + 0xbd4], 0x4c4cff
mov dword [esi + 0xca0], edi
mov dword [esi + 0xca4], ebx
call fcn.004080d0
push ebx
push 0x45ec69
lea ecx, [esi + 0xcfc]
mov dword [esi + 0xcf0], ebx
mov dword [esi + 0xec4], ebx
mov byte [esi + 0xecc], bl
mov byte [esi + 0xecd], bl
mov dword [esi + 0xec8], ebx
mov dword [esi + 0xcf4], ebx
mov dword [esi + 0xcf8], ebx
call fcn.00401da0
push ebx
push 0x45ec69
lea ecx, [esi + 0xd18]
call fcn.00401da0
push ebx
push 0x45ec69
lea ecx, [esi + 0xe70]
call fcn.00401da0
push ebx
push 0x45ec69
lea ecx, [esi + 0xe8c]
call fcn.00401da0
mov dword [esp + 0x30], 0xffffffff
mov eax, esi
mov ecx, dword [esp + 0x28]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x20
ret 4