Function at 0x45bb96
Capabilities:
Check for peb ntglobalflag flag
Check if file exists
Contain obfuscated stackstrings
Create process on windows
Get number of processors
Get process heap flags
Get process heap force flags
Parse pe header

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
push 0xffffffffffffffff
push 0x4d5479
mov eax, dword fs:[0]
push eax
sub esp, 0x310
push ebx
push esi
push edi
mov eax, dword [0x55f6c0]
xor eax, esp
push eax
lea eax, [esp + 0x320]
mov dword fs:[0], eax
push 0x535040
mov ecx, 0x5698f4
call fcn.0040274c
push 0x53305c
lea ecx, [esp + 0x1c]
call fcn.0040253e
mov dword [esp + 0x1ec], eax
and dword [esp + 0x328], 0
push 0x522224
lea ecx, [esp + 0xb0]
call fcn.0040253e
mov dword [esp + 0x1e4], eax
mov edi, 0x522238
push edi
lea ecx, [esp + 0xdc]
mov byte [esp + 0x32c], 1
call fcn.0040253e
mov dword [esp + 0x1dc], eax
push 0x535054
lea ecx, [esp + 0xd4]
mov byte [esp + 0x32c], 2
call fcn.0040253e
mov dword [esp + 0x1d4], eax
mov ebx, 0x522230
push ebx
lea ecx, [esp + 0xcc]
mov byte [esp + 0x32c], 3
call fcn.0040253e
mov dword [esp + 0x1cc], eax
push edi
lea ecx, [esp + 0xc4]
mov byte [esp + 0x32c], 4
call fcn.0040253e
mov dword [esp + 0x1c4], eax
mov esi, 0x52221c
push esi
lea ecx, [esp + 0xbc]
mov byte [esp + 0x32c], 5
call fcn.0040253e
mov dword [esp + 0x1bc], eax
push 0x52222c
lea ecx, [esp + 0xb4]
mov byte [esp + 0x32c], 6
call fcn.0040253e
mov dword [esp + 0x1b4], eax
push edi
lea ecx, [esp + 0xac]
mov byte [esp + 0x32c], 7
call fcn.0040253e
mov dword [esp + 0x1ac], eax
push 0x522d28
lea ecx, [esp + 0xa4]
mov byte [esp + 0x32c], 8
call fcn.0040253e
mov dword [esp + 0x1a4], eax
push esi
lea ecx, [esp + 0x9c]
mov byte [esp + 0x32c], 9
call fcn.0040253e
mov dword [esp + 0x19c], eax
mov esi, 0x522218
push esi
lea ecx, [esp + 0x94]
mov byte [esp + 0x32c], 0xa
call fcn.0040253e
mov dword [esp + 0x194], eax
mov byte [esp + 0x328], 0xb
push esi
lea ecx, [esp + 0x8c]
call fcn.0040253e
mov dword [esp + 0x18c], eax
push 0x522228
lea ecx, [esp + 0x84]
mov byte [esp + 0x32c], 0xc
call fcn.0040253e
mov dword [esp + 0x184], eax
push 0x52221c
lea ecx, [esp + 0x7c]
mov byte [esp + 0x32c], 0xd
call fcn.0040253e
mov dword [esp + 0x17c], eax
push 0x52221c
lea ecx, [esp + 0x74]
mov byte [esp + 0x32c], 0xe
call fcn.0040253e
mov dword [esp + 0x174], eax
push 0x52222c
lea ecx, [esp + 0x6c]
mov byte [esp + 0x32c], 0xf
call fcn.0040253e
mov dword [esp + 0x16c], eax
push edi
lea ecx, [esp + 0x64]
mov byte [esp + 0x32c], 0x10
call fcn.0040253e
mov dword [esp + 0x164], eax
push 0x522d28
lea ecx, [esp + 0x5c]
mov byte [esp + 0x32c], 0x11
call fcn.0040253e
mov dword [esp + 0x15c], eax
push 0x52221c
lea ecx, [esp + 0x54]
mov byte [esp + 0x32c], 0x12
call fcn.0040253e
mov dword [esp + 0x154], eax
push esi
lea ecx, [esp + 0x4c]
mov byte [esp + 0x32c], 0x13
call fcn.0040253e
mov dword [esp + 0x14c], eax
push 0x522244
lea ecx, [esp + 0x44]
mov byte [esp + 0x32c], 0x14
call fcn.0040253e
mov dword [esp + 0x144], eax
push 0x52224c
lea ecx, [esp + 0x3c]
mov byte [esp + 0x32c], 0x15
call fcn.0040253e
mov dword [esp + 0x13c], eax
push 0x52221c
lea ecx, [esp + 0x34]
mov byte [esp + 0x32c], 0x16
call fcn.0040253e
mov dword [esp + 0x134], eax
push 0x52222c
lea ecx, [esp + 0x2c]
mov byte [esp + 0x32c], 0x17
call fcn.0040253e
mov dword [esp + 0x12c], eax
push edi
lea ecx, [esp + 0x24]
mov byte [esp + 0x32c], 0x18
call fcn.0040253e
mov dword [esp + 0x124], eax
push 0x522d28
lea ecx, [esp + 0x80]
mov byte [esp + 0x32c], 0x19
call fcn.0040253e
mov dword [esp + 0x11c], eax
push 0x52221c
lea ecx, [esp + 0x20]
mov byte [esp + 0x32c], 0x1a
call fcn.0040253e
mov dword [esp + 0x114], eax
push esi
lea ecx, [esp + 0xd0]
mov byte [esp + 0x32c], 0x1b
call fcn.0040253e
mov dword [esp + 0x10c], eax
push 0x522228
lea ecx, [esp + 0x78]
mov byte [esp + 0x32c], 0x1c
call fcn.0040253e
mov dword [esp + 0x104], eax
push 0x522248
lea ecx, [esp + 0xa8]
mov byte [esp + 0x32c], 0x1d
call fcn.0040253e
mov dword [esp + 0xfc], eax
push 0x522234
lea ecx, [esp + 0x70]
mov byte [esp + 0x32c], 0x1e
call fcn.0040253e
mov dword [esp + 0xf4], eax
push ebx
lea ecx, [esp + 0xc0]
mov byte [esp + 0x32c], 0x1f
call fcn.0040253e
mov dword [esp + 0xec], eax
push 0x52222c
lea ecx, [esp + 0x68]
mov byte [esp + 0x32c], 0x20
call fcn.0040253e
mov dword [esp + 0xe8], eax
push 0x522240
lea ecx, [esp + 0xa0]
mov byte [esp + 0x32c], 0x21
call fcn.0040253e
mov dword [esp + 0x250], eax
push 0x52225c
lea ecx, [esp + 0x60]
mov byte [esp + 0x32c], 0x22
call fcn.0040253e
mov dword [esp + 0x150], eax
push 0x522228
lea ecx, [esp + 0xd8]
mov byte [esp + 0x32c], 0x23
call fcn.0040253e
mov dword [esp + 0x14], eax
push 0x522260
lea ecx, [esp + 0x58]
mov byte [esp + 0x32c], 0x24
call fcn.0040253e
push 0x522228
push eax
lea eax, [esp + 0x9c]
push eax
mov byte [esp + 0x334], 0x25
call fcn.004021ba
add esp, 0xc
mov byte [esp + 0x328], 0x26
push dword [esp + 0x14]
push eax
lea eax, [esp + 0x54]
push eax
call fcn.00402163
add esp, 0xc
push esi
push eax
lea eax, [esp + 0xbc]
push eax
mov byte [esp + 0x334], 0x27
call fcn.004021ba
add esp, 0xc
push dword [esp + 0x150]
mov byte [esp + 0x32c], 0x28
push eax
lea eax, [esp + 0x4c]
push eax
call fcn.00402163
add esp, 0xc
push 0x522240
push eax
lea eax, [esp + 0x94]
push eax
mov byte [esp + 0x334], 0x29
call fcn.004021ba
add esp, 0xc
push dword [esp + 0x250]
mov byte [esp + 0x32c], 0x2a
push eax
lea eax, [esp + 0x44]
push eax
call fcn.00402163
add esp, 0xc
push 0x52224c
push eax
lea eax, [esp + 0xcc]
push eax
mov byte [esp + 0x334], 0x2b
call fcn.004021ba
add esp, 0xc
push dword [esp + 0xe8]
mov byte [esp + 0x32c], 0x2c
push eax
lea eax, [esp + 0x3c]
push eax
call fcn.00402163
add esp, 0xc
push 0x522248
push eax
lea eax, [esp + 0x8c]
push eax
mov byte [esp + 0x334], 0x2d
call fcn.004021ba
add esp, 0xc
push dword [esp + 0xec]
mov byte [esp + 0x32c], 0x2e
push eax
lea eax, [esp + 0x34]
push eax
call fcn.00402163
add esp, 0xc
push 0x52223c
push eax
lea eax, [esp + 0x2c]
push eax
mov byte [esp + 0x334], 0x2f
call fcn.004021ba
add esp, 0xc
push dword [esp + 0xf4]
mov byte [esp + 0x32c], 0x30
push eax
lea eax, [esp + 0x1b8]
push eax
call fcn.00402163
add esp, 0xc
push 0x522250
push eax
lea eax, [esp + 0x220]
push eax
mov byte [esp + 0x334], 0x31
call fcn.004021ba
add esp, 0xc
push dword [esp + 0xfc]
mov byte [esp + 0x32c], 0x32
push eax
lea eax, [esp + 0x1b0]
push eax
call fcn.00402163
add esp, 0xc
push 0x522254
push eax
lea eax, [esp + 0x270]
push eax
mov byte [esp + 0x334], 0x33
call fcn.004021ba
add esp, 0xc
push dword [esp + 0x104]
mov byte [esp + 0x32c], 0x34
push eax
lea eax, [esp + 0x1a8]
push eax
call fcn.00402163
add esp, 0xc
push 0x522224
push eax
lea eax, [esp + 0x218]
push eax
mov byte [esp + 0x334], 0x35
call fcn.004021ba
add esp, 0xc
push dword [esp + 0x10c]
mov byte [esp + 0x32c], 0x36
push eax
lea eax, [esp + 0x1a0]
push eax
call fcn.00402163
add esp, 0xc
push 0x52224c
push eax
lea eax, [esp + 0x250]
push eax
mov byte [esp + 0x334], 0x37
call fcn.004021ba
add esp, 0xc
push dword [esp + 0x114]
mov byte [esp + 0x32c], 0x38
push eax
lea eax, [esp + 0x198]
push eax
call fcn.00402163
add esp, 0xc
push ebx
push eax
lea eax, [esp + 0x210]
push eax
mov byte [esp + 0x334], 0x39
call fcn.004021ba
add esp, 0xc
push dword [esp + 0x11c]
mov byte [esp + 0x32c], 0x3a
push eax
lea eax, [esp + 0x190]
push eax
call fcn.00402163
add esp, 0xc
push 0x522228
push eax
lea eax, [esp + 0x284]
push eax
mov byte [esp + 0x334], 0x3b
call fcn.004021ba
add esp, 0xc
push dword [esp + 0x124]
mov byte [esp + 0x32c], 0x3c
push eax
lea eax, [esp + 0x188]
push eax
call fcn.00402163
add esp, 0xc
push esi
push eax
lea eax, [esp + 0x208]
push eax
mov byte [esp + 0x334], 0x3d
call fcn.004021ba
add esp, 0xc
push dword [esp + 0x12c]
mov byte [esp + 0x32c], 0x3e
push eax
lea eax, [esp + 0x180]
push eax
call fcn.00402163
add esp, 0xc
push ebx
push eax
lea eax, [esp + 0x248]
push eax
mov byte [esp + 0x334], 0x3f
call fcn.004021ba
add esp, 0xc
push dword [esp + 0x134]
mov byte [esp + 0x32c], 0x40
push eax
lea eax, [esp + 0x178]
push eax
call fcn.00402163
add esp, 0xc
push 0x522224
push eax
lea eax, [esp + 0x200]
push eax
mov byte [esp + 0x334], 0x41
call fcn.004021ba
add esp, 0xc
push dword [esp + 0x13c]
mov byte [esp + 0x32c], 0x42
push eax
lea eax, [esp + 0x170]
push eax
call fcn.00402163
add esp, 0xc
push 0x522248
push eax
lea eax, [esp + 0x268]
push eax
mov byte [esp + 0x334], 0x43
call fcn.004021ba
add esp, 0xc
push dword [esp + 0x144]
mov byte [esp + 0x32c], 0x44
push eax
lea eax, [esp + 0x168]
push eax
call fcn.00402163
add esp, 0xc
push 0x522240
push eax
lea eax, [esp + 0x1f8]
push eax
mov byte [esp + 0x334], 0x45
call fcn.004021ba
add esp, 0xc
push dword [esp + 0x14c]
mov byte [esp + 0x32c], 0x46
push eax
lea eax, [esp + 0x160]
push eax
call fcn.00402163
add esp, 0xc
push 0x52224c
push eax
lea eax, [esp + 0x240]
push eax
mov byte [esp + 0x334], 0x47
call fcn.004021ba
add esp, 0xc
push dword [esp + 0x154]
mov byte [esp + 0x32c], 0x48
push eax
lea eax, [esp + 0xec]
push eax
call fcn.00402163
add esp, 0xc
push ebx
push eax
lea eax, [esp + 0x1f0]
push eax
mov byte [esp + 0x334], 0x49
call fcn.004021ba
add esp, 0xc
push dword [esp + 0x15c]
mov byte [esp + 0x32c], 0x4a
push eax
lea eax, [esp + 0x150]
push eax
call fcn.00402163
add esp, 0xc
push 0x522228
push eax
lea eax, [esp + 0x278]
push eax
mov byte [esp + 0x334], 0x4b
call fcn.004021ba
add esp, 0xc
push dword [esp + 0x164]
mov byte [esp + 0x32c], 0x4c
push eax
lea eax, [esp + 0x148]
push eax
call fcn.00402163
add esp, 0xc
push esi
push eax
lea eax, [esp + 0x1e8]
push eax
mov byte [esp + 0x334], 0x4d
call fcn.004021ba
add esp, 0xc
push dword [esp + 0x16c]
mov byte [esp + 0x32c], 0x4e
push eax
lea eax, [esp + 0x140]
push eax
call fcn.00402163
add esp, 0xc
push ebx
push eax
lea eax, [esp + 0x238]
push eax
mov byte [esp + 0x334], 0x4f
call fcn.004021ba
add esp, 0xc
push dword [esp + 0x174]
mov byte [esp + 0x32c], 0x50
push eax
lea eax, [esp + 0x138]
push eax
call fcn.00402163
add esp, 0xc
push 0x522240
push eax
lea eax, [esp + 0x1e0]
push eax
mov byte [esp + 0x334], 0x51
call fcn.004021ba
add esp, 0xc
push dword [esp + 0x17c]
mov byte [esp + 0x32c], 0x52
push eax
lea eax, [esp + 0x130]
push eax
call fcn.00402163
add esp, 0xc
push edi
push eax
lea eax, [esp + 0x260]
push eax
mov byte [esp + 0x334], 0x53
call fcn.004021ba
add esp, 0xc
push dword [esp + 0x184]
mov byte [esp + 0x32c], 0x54
push eax
lea eax, [esp + 0x128]
push eax
call fcn.00402163
add esp, 0xc
push ebx
push eax
lea eax, [esp + 0x1d8]
push eax
mov byte [esp + 0x334], 0x55
call fcn.004021ba
add esp, 0xc
push dword [esp + 0x18c]
mov byte [esp + 0x32c], 0x56
push eax
lea eax, [esp + 0x120]
push eax
call fcn.00402163
add esp, 0xc
push 0x522240
push eax
lea eax, [esp + 0x230]
push eax
mov byte [esp + 0x334], 0x57
call fcn.004021ba
add esp, 0xc
push dword [esp + 0x194]
mov byte [esp + 0x32c], 0x58
push eax
lea eax, [esp + 0x118]
push eax
call fcn.00402163
add esp, 0xc
push 0x52224c
push eax
lea eax, [esp + 0x1d0]
push eax
mov byte [esp + 0x334], 0x59
call fcn.004021ba
add esp, 0xc
push dword [esp + 0x19c]
mov byte [esp + 0x32c], 0x5a
push eax
lea eax, [esp + 0x110]
push eax
call fcn.00402163
add esp, 0xc
push ebx
push eax
lea eax, [esp + 0x280]
push eax
mov byte [esp + 0x334], 0x5b
call fcn.004021ba
add esp, 0xc
push dword [esp + 0x1a4]
mov byte [esp + 0x32c], 0x5c
push eax
lea eax, [esp + 0x108]
push eax
call fcn.00402163
add esp, 0xc
push 0x522228
push eax
lea eax, [esp + 0x1c8]
push eax
mov byte [esp + 0x334], 0x5d
call fcn.004021ba
add esp, 0xc
push dword [esp + 0x1ac]
mov byte [esp + 0x32c], 0x5e
push eax
lea eax, [esp + 0x100]
push eax
call fcn.00402163
add esp, 0xc
push esi
push eax
lea eax, [esp + 0x228]
push eax
mov byte [esp + 0x334], 0x5f
call fcn.004021ba
add esp, 0xc
push dword [esp + 0x1b4]
mov byte [esp + 0x32c], 0x60
push eax
lea eax, [esp + 0xf8]
push eax
call fcn.00402163
add esp, 0xc
push ebx
push eax
lea eax, [esp + 0x1c0]
push eax
mov byte [esp + 0x334], 0x61
call fcn.004021ba
add esp, 0xc
push dword [esp + 0x1bc]
mov byte [esp + 0x32c], 0x62
push eax
lea eax, [esp + 0x264]
push eax
call fcn.00402163
add esp, 0xc
push 0x52221c
push eax
lea eax, [esp + 0x25c]
push eax
mov byte [esp + 0x334], 0x63
call fcn.004021ba
add esp, 0xc
push dword [esp + 0x1c4]
mov byte [esp + 0x32c], 0x64
push eax
lea eax, [esp + 0x254]
push eax
call fcn.00402163
add esp, 0xc
push 0x522228
push eax
lea eax, [esp + 0x24c]
push eax
mov byte [esp + 0x334], 0x65
call fcn.004021ba
add esp, 0xc
push dword [esp + 0x1cc]
mov byte [esp + 0x32c], 0x66
push eax
lea eax, [esp + 0x244]
push eax
call fcn.00402163
add esp, 0xc
push esi
push eax
lea eax, [esp + 0x23c]
push eax
mov byte [esp + 0x334], 0x67
call fcn.004021ba
add esp, 0xc
push dword [esp + 0x1d4]
mov byte [esp + 0x32c], 0x68
push eax
lea eax, [esp + 0x234]
push eax
call fcn.00402163
add esp, 0xc
push 0x522248
push eax
lea eax, [esp + 0x22c]
push eax
mov byte [esp + 0x334], 0x69
call fcn.004021ba
add esp, 0xc
push dword [esp + 0x1dc]
mov byte [esp + 0x32c], 0x6a
push eax
lea eax, [esp + 0x224]
push eax
call fcn.00402163
add esp, 0xc
push 0x522244
push eax
lea eax, [esp + 0x21c]
push eax
mov byte [esp + 0x334], 0x6b
call fcn.004021ba
add esp, 0xc
push dword [esp + 0x1e4]
mov byte [esp + 0x32c], 0x6c
push eax
lea eax, [esp + 0x214]
push eax
call fcn.00402163
add esp, 0xc
mov byte [esp + 0x328], 0x6d
push edi
push eax
lea eax, [esp + 0x20c]
push eax
call fcn.004021ba
add esp, 0xc
push dword [esp + 0x1ec]
mov byte [esp + 0x32c], 0x6e
push eax
lea eax, [esp + 0x204]
push eax
call fcn.00402163
add esp, 0xc
push edi
push eax
lea eax, [esp + 0x1fc]
push eax
mov byte [esp + 0x334], 0x6f
call fcn.004021ba
add esp, 0xc
push eax
mov ecx, 0x5698f0
mov byte [esp + 0x32c], 0x70
call fcn.0040260d
mov ecx, dword [esp + 0x1f4]
add ecx, 0xfffffff0
call fcn.00402883
mov ecx, dword [esp + 0x1fc]
add ecx, 0xfffffff0
call fcn.00402883
mov ecx, dword [esp + 0x204]
add ecx, 0xfffffff0
call fcn.00402883
mov ecx, dword [esp + 0x20c]
add ecx, 0xfffffff0
call fcn.00402883
mov ecx, dword [esp + 0x214]
add ecx, 0xfffffff0
call fcn.00402883
mov ecx, dword [esp + 0x21c]
add ecx, 0xfffffff0
call fcn.00402883
mov ecx, dword [esp + 0x224]
add ecx, 0xfffffff0
call fcn.00402883
mov ecx, dword [esp + 0x22c]
add ecx, 0xfffffff0
call fcn.00402883
mov ecx, dword [esp + 0x234]
add ecx, 0xfffffff0
call fcn.00402883
mov ecx, dword [esp + 0x23c]
add ecx, 0xfffffff0
call fcn.00402883
mov ecx, dword [esp + 0x244]
add ecx, 0xfffffff0
call fcn.00402883
mov ecx, dword [esp + 0x24c]
add ecx, 0xfffffff0
call fcn.00402883
mov ecx, dword [esp + 0x254]
add ecx, 0xfffffff0
call fcn.00402883
mov ecx, dword [esp + 0x25c]
add ecx, 0xfffffff0
call fcn.00402883
mov ecx, dword [esp + 0x1b8]
add ecx, 0xfffffff0
call fcn.00402883
mov ecx, dword [esp + 0xf0]
add ecx, 0xfffffff0
call fcn.00402883
mov ecx, dword [esp + 0x220]
add ecx, 0xfffffff0
call fcn.00402883
mov ecx, dword [esp + 0xf8]
add ecx, 0xfffffff0
call fcn.00402883
mov ecx, dword [esp + 0x1c0]
add ecx, 0xfffffff0
call fcn.00402883
mov ecx, dword [esp + 0x100]
add ecx, 0xfffffff0
call fcn.00402883
mov ecx, dword [esp + 0x278]
add ecx, 0xfffffff0
call fcn.00402883
mov ecx, dword [esp + 0x108]
add ecx, 0xfffffff0
call fcn.00402883
mov ecx, dword [esp + 0x1c8]
add ecx, 0xfffffff0
call fcn.00402883
mov ecx, dword [esp + 0x110]
add ecx, 0xfffffff0
call fcn.00402883
mov ecx, dword [esp + 0x228]
add ecx, 0xfffffff0
call fcn.00402883
mov ecx, dword [esp + 0x118]
add ecx, 0xfffffff0
call fcn.00402883
mov ecx, dword [esp + 0x1d0]
add ecx, 0xfffffff0
call fcn.00402883
mov ecx, dword [esp + 0x120]
add ecx, 0xfffffff0
call fcn.00402883
mov ecx, dword [esp + 0x258]
add ecx, 0xfffffff0
call fcn.00402883
mov ecx, dword [esp + 0x128]
add ecx, 0xfffffff0
call fcn.00402883
mov ecx, dword [esp + 0x1d8]
add ecx, 0xfffffff0
call fcn.00402883
mov ecx, dword [esp + 0x130]
add ecx, 0xfffffff0
call fcn.00402883
mov ecx, dword [esp + 0x230]
add ecx, 0xfffffff0
call fcn.00402883
mov ecx, dword [esp + 0x138]
add ecx, 0xfffffff0
call fcn.00402883
mov ecx, dword [esp + 0x1e0]
add ecx, 0xfffffff0
call fcn.00402883
mov ecx, dword [esp + 0x140]
add ecx, 0xfffffff0
call fcn.00402883
mov ecx, dword [esp + 0x270]
add ecx, 0xfffffff0
call fcn.00402883
mov ecx, dword [esp + 0x148]
add ecx, 0xfffffff0
call fcn.00402883
mov ecx, dword [esp + 0x1e8]
add ecx, 0xfffffff0
call fcn.00402883
mov ecx, dword [esp + 0xe4]
add ecx, 0xfffffff0
call fcn.00402883
mov ecx, dword [esp + 0x238]
add ecx, 0xfffffff0
call fcn.00402883
mov ecx, dword [esp + 0x158]
add ecx, 0xfffffff0
call fcn.00402883
mov ecx, dword [esp + 0x1f0]
add ecx, 0xfffffff0
call fcn.00402883
mov ecx, dword [esp + 0x160]
add ecx, 0xfffffff0
call fcn.00402883
mov ecx, dword [esp + 0x260]
add ecx, 0xfffffff0
call fcn.00402883
mov ecx, dword [esp + 0x168]
add ecx, 0xfffffff0
call fcn.00402883
mov ecx, dword [esp + 0x1f8]
add ecx, 0xfffffff0
call fcn.00402883
mov ecx, dword [esp + 0x170]
add ecx, 0xfffffff0
call fcn.00402883
mov ecx, dword [esp + 0x240]
add ecx, 0xfffffff0
call fcn.00402883
mov ecx, dword [esp + 0x178]
add ecx, 0xfffffff0
call fcn.00402883
mov ecx, dword [esp + 0x200]
add ecx, 0xfffffff0
call fcn.00402883
mov ecx, dword [esp + 0x180]
add ecx, 0xfffffff0
call fcn.00402883
mov ecx, dword [esp + 0x27c]
add ecx, 0xfffffff0
call fcn.00402883
mov ecx, dword [esp + 0x188]
add ecx, 0xfffffff0
call fcn.00402883
mov ecx, dword [esp + 0x208]
add ecx, 0xfffffff0
call fcn.00402883
mov ecx, dword [esp + 0x190]
add ecx, 0xfffffff0
call fcn.00402883
mov ecx, dword [esp + 0x248]
add ecx, 0xfffffff0
call fcn.00402883
mov ecx, dword [esp + 0x198]
add ecx, 0xfffffff0
call fcn.00402883
mov ecx, dword [esp + 0x210]
add ecx, 0xfffffff0
call fcn.00402883
mov ecx, dword [esp + 0x1a0]
add ecx, 0xfffffff0
call fcn.00402883
mov ecx, dword [esp + 0x268]
add ecx, 0xfffffff0
call fcn.00402883
mov ecx, dword [esp + 0x1a8]
add ecx, 0xfffffff0
call fcn.00402883
mov ecx, dword [esp + 0x218]
add ecx, 0xfffffff0
call fcn.00402883
mov ecx, dword [esp + 0x1b0]
add ecx, 0xfffffff0
call fcn.00402883
mov ecx, dword [esp + 0x24]
add ecx, 0xfffffff0
call fcn.00402883
mov ecx, dword [esp + 0x2c]
add ecx, 0xfffffff0
call fcn.00402883
mov ecx, dword [esp + 0x84]
add ecx, 0xfffffff0
call fcn.00402883
mov ecx, dword [esp + 0x34]
add ecx, 0xfffffff0
call fcn.00402883
mov ecx, dword [esp + 0xc4]
add ecx, 0xfffffff0
call fcn.00402883
mov ecx, dword [esp + 0x3c]
add ecx, 0xfffffff0
call fcn.00402883
mov ecx, dword [esp + 0x8c]
add ecx, 0xfffffff0
call fcn.00402883
mov ecx, dword [esp + 0x44]
add ecx, 0xfffffff0
call fcn.00402883
mov ecx, dword [esp + 0xb4]
add ecx, 0xfffffff0
call fcn.00402883
mov ecx, dword [esp + 0x4c]
add ecx, 0xfffffff0
call fcn.00402883
mov ecx, dword [esp + 0x94]
add ecx, 0xfffffff0
call fcn.00402883
mov ecx, dword [esp + 0x54]
add ecx, 0xfffffff0
call fcn.00402883
mov ecx, dword [esp + 0xd4]
add ecx, 0xfffffff0
call fcn.00402883
mov ecx, dword [esp + 0x5c]
add ecx, 0xfffffff0
call fcn.00402883
mov ecx, dword [esp + 0x9c]
add ecx, 0xfffffff0
call fcn.00402883
mov ecx, dword [esp + 0x64]
add ecx, 0xfffffff0
call fcn.00402883
mov ecx, dword [esp + 0xbc]
add ecx, 0xfffffff0
call fcn.00402883
mov ecx, dword [esp + 0x6c]
add ecx, 0xfffffff0
call fcn.00402883
mov ecx, dword [esp + 0xa4]
add ecx, 0xfffffff0
call fcn.00402883
mov ecx, dword [esp + 0x74]
add ecx, 0xfffffff0
call fcn.00402883
mov ecx, dword [esp + 0xcc]
add ecx, 0xfffffff0
call fcn.00402883
mov ecx, dword [esp + 0x1c]
add ecx, 0xfffffff0
call fcn.00402883
mov ecx, dword [esp + 0x7c]
add ecx, 0xfffffff0
call fcn.00402883
mov ecx, dword [esp + 0x20]
add ecx, 0xfffffff0
call fcn.00402883
mov ecx, dword [esp + 0x28]
add ecx, 0xfffffff0
call fcn.00402883
mov ecx, dword [esp + 0x30]
add ecx, 0xfffffff0
call fcn.00402883
mov ecx, dword [esp + 0x38]
add ecx, 0xfffffff0
call fcn.00402883
mov ecx, dword [esp + 0x40]
add ecx, 0xfffffff0
call fcn.00402883
mov ecx, dword [esp + 0x48]
add ecx, 0xfffffff0
call fcn.00402883
mov ecx, dword [esp + 0x50]
add ecx, 0xfffffff0
call fcn.00402883
mov ecx, dword [esp + 0x58]
add ecx, 0xfffffff0
call fcn.00402883
mov ecx, dword [esp + 0x60]
add ecx, 0xfffffff0
call fcn.00402883
mov ecx, dword [esp + 0x68]
add ecx, 0xfffffff0
call fcn.00402883
mov ecx, dword [esp + 0x70]
add ecx, 0xfffffff0
call fcn.00402883
mov ecx, dword [esp + 0x78]
add ecx, 0xfffffff0
call fcn.00402883
mov ecx, dword [esp + 0x80]
add ecx, 0xfffffff0
call fcn.00402883
mov ecx, dword [esp + 0x88]
add ecx, 0xfffffff0
call fcn.00402883
mov ecx, dword [esp + 0x90]
add ecx, 0xfffffff0
call fcn.00402883
mov ecx, dword [esp + 0x98]
add ecx, 0xfffffff0
call fcn.00402883
mov ecx, dword [esp + 0xa0]
add ecx, 0xfffffff0
call fcn.00402883
mov ecx, dword [esp + 0xa8]
add ecx, 0xfffffff0
call fcn.00402883
mov ecx, dword [esp + 0xb0]
add ecx, 0xfffffff0
call fcn.00402883
mov ecx, dword [esp + 0xb8]
add ecx, 0xfffffff0
call fcn.00402883
mov ecx, dword [esp + 0xc0]
add ecx, 0xfffffff0
call fcn.00402883
mov ecx, dword [esp + 0xc8]
add ecx, 0xfffffff0
call fcn.00402883
mov ecx, dword [esp + 0xd0]
add ecx, 0xfffffff0
call fcn.00402883
mov ecx, dword [esp + 0xd8]
add ecx, 0xfffffff0
call fcn.00402883
mov ecx, dword [esp + 0xac]
add ecx, 0xfffffff0
call fcn.00402883
or dword [esp + 0x328], 0xffffffff
mov ecx, dword [esp + 0x18]
add ecx, 0xfffffff0
call fcn.00402883
call fcn.0048b151
push eax
lea ecx, [esp + 0x18]
call fcn.00402821
lea eax, [esp + 0x18]
mov dword [esp + 0x328], 0x71
push eax
lea esi, [esp + 0x284]
mov dword [esp + 0x1c], SysReAllocStringLen
call fcn.0040ab2d
push 0x524e08
lea ecx, [esp + 0xe4]
mov byte [esp + 0x32c], 0x72
call fcn.0040253e
push 1
mov byte [esp + 0x32c], 0x73
push dword [esp + 0xe4]
mov dword [esp + 0x288], 0x20019
push reloc.OLEAUT32.dll_SysReAllocString
call fcn.0040ab49
test eax, eax
je 0x45d00b
mov esi, 0x535058
push esi
lea eax, [esp + 0x284]
push eax
call fcn.0040abba
test eax, eax
je 0x45cfff
lea eax, [esp + 0x14]
push eax
push esi
lea edi, [esp + 0x288]
call fcn.0040ac41
mov edi, 0x522238
lea esi, [esp + 0x280]
call fcn.0040aba7
mov eax, dword [esp + 0x14]
cmp dword [eax - 0xc], 0
je 0x45d024
lea eax, [esp + 0x14]
push eax
mov ecx, 0x5698f0
call fcn.0040260d
push 0x52221c
lea ecx, [esp + 0x28]
call fcn.0040253e
mov dword [esp + 0x90], eax
push 0x52222c
lea ecx, [esp + 0x30]
mov byte [esp + 0x32c], 0x74
call fcn.0040253e
mov dword [esp + 0x98], eax
mov esi, 0x523fe8
push esi
lea ecx, [esp + 0x88]
mov byte [esp + 0x32c], 0x75
call fcn.0040253e
mov dword [esp + 0xa0], eax
push 0x522228
lea ecx, [esp + 0x38]
mov byte [esp + 0x32c], 0x76
call fcn.0040253e
mov dword [esp + 0xa8], eax
push ebx
lea ecx, [esp + 0xc8]
mov byte [esp + 0x32c], 0x77
call fcn.0040253e
mov dword [esp + 0xb0], eax
push esi
lea ecx, [esp + 0x40]
mov byte [esp + 0x32c], 0x78
call fcn.0040253e
mov dword [esp + 0xb8], eax
push 0x533050
lea ecx, [esp + 0x90]
mov byte [esp + 0x32c], 0x79
call fcn.0040253e
mov dword [esp + 0xc0], eax
push 0x52ce60
lea ecx, [esp + 0x48]
mov byte [esp + 0x32c], 0x7a
call fcn.0040253e
mov dword [esp + 0xc8], eax
push 0x522d28
lea ecx, [esp + 0xb8]
mov byte [esp + 0x32c], 0x7b
call fcn.0040253e
mov dword [esp + 0xd0], eax
push 0x522220
lea ecx, [esp + 0x50]
mov byte [esp + 0x32c], 0x7c
call fcn.0040253e
mov dword [esp + 0xd8], eax
push 0x52222c
lea ecx, [esp + 0x98]
mov byte [esp + 0x32c], 0x7d
call fcn.0040253e
mov dword [esp + 0xac], eax
push 0x522258
lea ecx, [esp + 0x58]
mov byte [esp + 0x32c], 0x7e
call fcn.0040253e
mov dword [esp + 0x18], eax
push 0x5251e8
lea ecx, [esp + 0xd8]
mov byte [esp + 0x32c], 0x7f
call fcn.0040253e
push 0x522248
push eax
mov byte [esp + 0x330], 0x80
lea eax, [esp + 0x64]
push eax
call fcn.004021ba
add esp, 0xc
mov byte [esp + 0x328], 0x81
push dword [esp + 0x18]
push eax
lea eax, [esp + 0xa4]
push eax
call fcn.00402163
add esp, 0xc
push 0x522254
push eax
lea eax, [esp + 0x6c]
push eax
mov byte [esp + 0x334], 0x82
call fcn.004021ba
add esp, 0xc
mov byte [esp + 0x328], 0x83
push dword [esp + 0xac]
push eax
lea eax, [esp + 0xc4]
push eax
call fcn.00402163
add esp, 0xc
push 0x522248
push eax
lea eax, [esp + 0x74]
push eax
mov byte [esp + 0x334], 0x84
call fcn.004021ba
add esp, 0xc
mov byte [esp + 0x328], 0x85
push dword [esp + 0xd8]
push eax
lea eax, [esp + 0xac]
push eax
call fcn.00402163
add esp, 0xc
push 0x52223c
push eax
lea eax, [esp + 0x7c]
push eax
mov byte [esp + 0x334], 0x86
call fcn.004021ba
add esp, 0xc
mov byte [esp + 0x328], 0x87
push dword [esp + 0xd0]
push eax
lea eax, [esp + 0xd4]
push eax
call fcn.00402163
add esp, 0xc
push 0x522254
push eax
lea eax, [esp + 0x24]
push eax
mov byte [esp + 0x334], 0x88
call fcn.004021ba
add esp, 0xc
mov byte [esp + 0x328], 0x89
push dword [esp + 0xc8]
push eax
lea eax, [esp + 0x84]
push eax
call fcn.00402163
add esp, 0xc
push esi
push eax
lea eax, [esp + 0x28]
mov byte [esp + 0x330], 0x8a
push eax
call fcn.004021ba
add esp, 0xc
mov byte [esp + 0x328], 0x8b
push dword [esp + 0xc0]
push eax
lea eax, [esp + 0x30]
push eax
call fcn.00402163
add esp, 0xc
push 0x535068
push eax
lea eax, [esp + 0x38]
push eax
mov byte [esp + 0x334], 0x8c
call fcn.004021ba
add esp, 0xc
mov byte [esp + 0x328], 0x8d
push dword [esp + 0xb8]
push eax
lea eax, [esp + 0x40]
push eax
call fcn.00402163
add esp, 0xc
push 0x5251f0
push eax
lea eax, [esp + 0x48]
push eax
mov byte [esp + 0x334], 0x8e
call fcn.004021ba
add esp, 0xc
mov byte [esp + 0x328], 0x8f
push dword [esp + 0xb0]
push eax
lea eax, [esp + 0x50]
push eax
call fcn.00402163
add esp, 0xc
push 0x522d28
push eax
lea eax, [esp + 0x58]
push eax
mov byte [esp + 0x334], 0x90
call fcn.004021ba
add esp, 0xc
mov byte [esp + 0x328], 0x91
push dword [esp + 0xa8]
push eax
lea eax, [esp + 0x60]
push eax
call fcn.00402163
add esp, 0xc
push edi
push eax
lea eax, [esp + 0x68]
push eax
mov byte [esp + 0x334], 0x92
call fcn.004021ba
add esp, 0xc
mov byte [esp + 0x328], 0x93
push dword [esp + 0xa0]
push eax
lea eax, [esp + 0x70]
push eax
call fcn.00402163
add esp, 0xc
push 0x533050
push eax
lea eax, [esp + 0x78]
push eax
mov byte [esp + 0x334], 0x94
call fcn.004021ba
add esp, 0xc
mov byte [esp + 0x328], 0x95
push dword [esp + 0x98]
push eax
lea eax, [esp + 0x80]
push eax
call fcn.00402163
add esp, 0xc
push ebx
push eax
lea eax, [esp + 0x88]
push eax
mov byte [esp + 0x334], 0x96
call fcn.004021ba
add esp, 0xc
mov byte [esp + 0x328], 0x97
push dword [esp + 0x90]
push eax
lea eax, [esp + 0x90]
push eax
call fcn.00402163
add esp, 0xc
mov byte [esp + 0x328], 0x98
mov eax, dword [eax]
push 3
push eax
lea eax, [esp + 0x2a0]
lea ecx, [esp + 0x2a4]
push eax
mov dword [esp + 0x2a4], ecx
call fcn.00407294
mov byte [esp + 0x328], 0x99
push dword [esp + 0x298]
mov esi, str.Title
push esi
call fcn.00458efe
lea eax, [esp + 0x2a4]
pop ecx
pop ecx
cmp dword [esp + 0x298], eax
je 0x45d4a0
push dword [esp + 0x298]
call fcn.004aaee4
pop ecx
mov ecx, dword [esp + 0x88]
add ecx, 0xfffffff0
call fcn.00402883
mov ecx, dword [esp + 0x80]
add ecx, 0xfffffff0
call fcn.00402883
mov ecx, dword [esp + 0x78]
add ecx, 0xfffffff0
call fcn.00402883
mov ecx, dword [esp + 0x70]
add ecx, 0xfffffff0
call fcn.00402883
mov ecx, dword [esp + 0x68]
add ecx, 0xfffffff0
call fcn.00402883
mov ecx, dword [esp + 0x60]
add ecx, 0xfffffff0
call fcn.00402883
mov ecx, dword [esp + 0x58]
add ecx, 0xfffffff0
call fcn.00402883
mov ecx, dword [esp + 0x50]
add ecx, 0xfffffff0
call fcn.00402883
mov ecx, dword [esp + 0x48]
add ecx, 0xfffffff0
call fcn.00402883
mov ecx, dword [esp + 0x40]
add ecx, 0xfffffff0
call fcn.00402883
mov ecx, dword [esp + 0x38]
add ecx, 0xfffffff0
call fcn.00402883
mov ecx, dword [esp + 0x30]
add ecx, 0xfffffff0
call fcn.00402883
mov ecx, dword [esp + 0x28]
add ecx, 0xfffffff0
call fcn.00402883
mov ecx, dword [esp + 0x20]
add ecx, 0xfffffff0
call fcn.00402883
mov ecx, dword [esp + 0x7c]
add ecx, 0xfffffff0
call fcn.00402883
mov ecx, dword [esp + 0x1c]
add ecx, 0xfffffff0
call fcn.00402883
mov ecx, dword [esp + 0xcc]
add ecx, 0xfffffff0
call fcn.00402883
mov ecx, dword [esp + 0x74]
add ecx, 0xfffffff0
call fcn.00402883
mov ecx, dword [esp + 0xa4]
add ecx, 0xfffffff0
call fcn.00402883
mov ecx, dword [esp + 0x6c]
add ecx, 0xfffffff0
call fcn.00402883
mov ecx, dword [esp + 0xbc]
add ecx, 0xfffffff0
call fcn.00402883
mov ecx, dword [esp + 0x64]
add ecx, 0xfffffff0
call fcn.00402883
mov ecx, dword [esp + 0x9c]
add ecx, 0xfffffff0
call fcn.00402883
mov ecx, dword [esp + 0x5c]
add ecx, 0xfffffff0
call fcn.00402883
mov ecx, dword [esp + 0xd4]
add ecx, 0xfffffff0
call fcn.00402883
mov ecx, dword [esp + 0x54]
add ecx, 0xfffffff0
call fcn.00402883
mov ecx, dword [esp + 0x94]
add ecx, 0xfffffff0
call fcn.00402883
mov ecx, dword [esp + 0x4c]
add ecx, 0xfffffff0
call fcn.00402883
mov ecx, dword [esp + 0xb4]
add ecx, 0xfffffff0
call fcn.00402883
mov ecx, dword [esp + 0x44]
add ecx, 0xfffffff0
call fcn.00402883
mov ecx, dword [esp + 0x8c]
add ecx, 0xfffffff0
call fcn.00402883
mov ecx, dword [esp + 0x3c]
add ecx, 0xfffffff0
call fcn.00402883
mov ecx, dword [esp + 0xc4]
add ecx, 0xfffffff0
call fcn.00402883
mov ecx, dword [esp + 0x34]
add ecx, 0xfffffff0
call fcn.00402883
mov ecx, dword [esp + 0x84]
add ecx, 0xfffffff0
call fcn.00402883
mov ecx, dword [esp + 0x2c]
add ecx, 0xfffffff0
call fcn.00402883
mov byte [esp + 0x328], 0x73
mov ecx, dword [esp + 0x24]
add ecx, 0xfffffff0
call fcn.00402883
push 0
push 0
call fcn.00459a71
push 0x535074
push esi
call fcn.00458efe
add esp, 0x10
push dword [0x5698f8]
call dword [sym.imp.SHLWAPI.dll_PathFileExistsW]
test eax, eax
je 0x45d775
mov esi, 0x534f0c
push esi
lea ecx, [esp + 0x278]
call fcn.0040c713
mov edi, eax
push esi
lea ecx, [esp + 0x270]
mov byte [esp + 0x32c], 0x9a
call fcn.0040c713
push 0x5698f8
push eax
lea eax, [esp + 0x26c]
push eax
mov byte [esp + 0x334], 0x9b
call fcn.00402163
add esp, 0xc
push edi
push eax
lea eax, [esp + 0xe4]
push eax
mov byte [esp + 0x334], 0x9c
call fcn.00402163
mov ecx, dword [esp + 0x270]
add esp, 0xc
add ecx, 0xfffffff0
call fcn.00402883
mov ecx, dword [esp + 0x26c]
add ecx, 0xfffffff0
call fcn.00402883
mov ecx, dword [esp + 0x274]
add ecx, 0xfffffff0
call fcn.00402883
push 1
push 0x5229b8
push 0x53439c
push dword [esp + 0xe8]
push str.open
call dword [sym.imp.USER32.dll_GetDesktopWindow]
push eax
call dword [sym.imp.SHELL32.dll_ShellExecuteW]
mov ecx, dword [esp + 0xdc]
add ecx, 0xfffffff0
call fcn.00402883
mov ecx, dword [esp + 0xe0]
add ecx, 0xfffffff0
call fcn.00402883
lea esi, [esp + 0x280]
call fcn.0040aba7
mov ecx, dword [esp + 0x288]
add ecx, 0xfffffff0
call fcn.00402883
mov ecx, dword [esp + 0x14]
add ecx, 0xfffffff0
call fcn.00402883
mov ecx, dword [esp + 0x320]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret