Function at 0x494c38
Capabilities:
Create process on windows
Delete file
Set file attributes

Disassembly:
push ebp
mov ebp, esp
mov ecx, 0x92
push 0
push 0
dec ecx
jne 0x494c40
push ecx
push ebx
push esi
push edi
mov eax, 0x4935e8
call fcn.004074a0
xor eax, eax
push ebp
push 0x499466
push dword fs:[eax]
mov dword fs:[eax], esp
mov eax, 0x58f824
mov edx, 0x499480
call fcn.004050b8
lea edx, [ebp - 0x24]
mov eax, 1
call fcn.00403144
mov eax, dword [ebp - 0x24]
lea edx, [ebp - 0x20]
call fcn.00409468
mov eax, dword [ebp - 0x20]
mov edx, 0x4994d8
call fcn.00405474
jne 0x494cbd
push 0
push 0x4994e0
lea eax, [ebp - 0x28]
call fcn.0045bd08
mov eax, dword [ebp - 0x28]
call fcn.00405528
push eax
push 0
call sub.user32.dll_MessageBoxA_1
jmp 0x4993e2
mov dl, 1
mov eax, dword [0x4191c4]
call fcn.00404204
mov dword [0x58f7a0], eax
mov dl, 1
mov eax, dword [0x4191c4]
call fcn.00404204
mov dword [0x58f7a4], eax
mov dl, 1
mov eax, dword [0x4191c4]
call fcn.00404204
mov dword [0x58f7a8], eax
mov dl, 1
mov eax, dword [0x4191c4]
call fcn.00404204
mov ebx, eax
xor ecx, ecx
mov dl, 1
mov eax, dword [0x4480b8]
call fcn.004593a0
xor edx, edx
push ebp
push 0x4993db
push dword fs:[edx]
mov dword fs:[edx], esp
lea edx, [ebp - 0x2c]
xor eax, eax
call fcn.00403144
lea eax, [ebp - 0x2c]
mov edx, 0x4994f4
call fcn.00405330
mov eax, dword [ebp - 0x2c]
call fcn.0040a240
cmp al, 1
jne 0x494d60
lea edx, [ebp - 0x30]
xor eax, eax
call fcn.00403144
lea eax, [ebp - 0x30]
mov edx, 0x4994f4
call fcn.00405330
mov edx, dword [ebp - 0x30]
mov eax, ebx
call fcn.0041d644
jmp 0x494d6e
xor ecx, ecx
mov edx, 0x499504
mov eax, ebx
call fcn.00422780
push 0
push 0
mov eax, ebx
call fcn.0041ce74
xor ecx, ecx
mov dl, 1
mov eax, dword [0x4480b8]
call fcn.004593a0
mov dword [0x58f79c], eax
xor ecx, ecx
mov edx, ebx
mov eax, dword [0x58f79c]
call fcn.00458cf0
lea edx, [ebp - 0x38]
mov eax, dword [0x58f79c]
call fcn.00450280
mov eax, dword [ebp - 0x38]
lea ecx, [ebp - 0x34]
mov edx, 0x1c5
call fcn.00493058
mov edx, dword [ebp - 0x34]
mov eax, dword [0x58f79c]
mov ecx, dword [eax]
call dword [ecx + 0x30]
mov ecx, dword [0x58f7a4]
mov edx, 0x499514
mov eax, dword [0x58f79c]
call fcn.00458eec
mov eax, 0x58f858
mov edx, 0x49952c
call fcn.004050b8
push 0
push 0
mov eax, dword [0x58f7a4]
call fcn.0041ce74
mov eax, dword [0x58f79c]
call fcn.00458db0
mov eax, dword [0x58f79c]
call fcn.00404234
mov eax, ebx
call fcn.00404234
mov dl, 1
mov eax, dword [0x418ec0]
call fcn.00404204
mov dword [0x58f7ac], eax
xor ecx, ecx
mov dl, 1
mov eax, dword [0x422af4]
call fcn.00423af0
mov ebx, eax
mov edx, dword [0x58f7a4]
mov eax, dword [0x58f7ac]
mov ecx, dword [eax]
call dword [ecx + 0x6c]
mov edx, dword [0x58f7ac]
mov eax, ebx
call fcn.00424058
mov eax, dword [0x58f86c]
push eax
mov ecx, 0x49953c
mov edx, 0x499548
mov eax, ebx
mov esi, dword [eax]
call dword [esi + 8]
mov dword [0x58f86c], eax
mov eax, dword [0x58f7b8]
push eax
lea eax, [ebp - 0x3c]
push eax
mov ecx, 0x499554
mov edx, 0x499548
mov eax, ebx
mov esi, dword [eax]
call dword [esi]
mov edx, dword [ebp - 0x3c]
mov eax, 0x58f7b8
call fcn.004050b8
lea ecx, [ebp - 0x40]
mov edx, 0xe0b5463
mov eax, dword [0x58f7b8]
call fcn.004930c4
mov edx, dword [ebp - 0x40]
mov eax, 0x58f7c8
call fcn.004050b8
mov eax, dword [0x58f7b8]
push eax
lea eax, [ebp - 0x44]
push eax
mov ecx, 0x499560
mov edx, 0x499548
mov eax, ebx
mov esi, dword [eax]
call dword [esi]
mov edx, dword [ebp - 0x44]
mov eax, 0x58f7b8
call fcn.004050b8
lea ecx, [ebp - 0x48]
mov edx, 0x13626170
mov eax, dword [0x58f7b8]
call fcn.004930c4
mov edx, dword [ebp - 0x48]
mov eax, 0x58f7cc
call fcn.004050b8
mov eax, dword [0x58f808]
push eax
lea eax, [ebp - 0x4c]
push eax
mov ecx, 0x49956c
mov edx, 0x499548
mov eax, ebx
mov esi, dword [eax]
call dword [esi]
mov edx, dword [ebp - 0x4c]
mov eax, 0x58f808
call fcn.004050b8
mov eax, dword [0x58f80c]
push eax
lea eax, [ebp - 0x50]
push eax
mov ecx, 0x499578
mov edx, 0x499548
mov eax, ebx
mov esi, dword [eax]
call dword [esi]
mov edx, dword [ebp - 0x50]
mov eax, 0x58f80c
call fcn.004050b8
mov eax, dword [0x58f810]
push eax
lea eax, [ebp - 0x54]
push eax
mov ecx, 0x499584
mov edx, 0x499548
mov eax, ebx
mov esi, dword [eax]
call dword [esi]
mov edx, dword [ebp - 0x54]
mov eax, 0x58f810
call fcn.004050b8
push 0
lea eax, [ebp - 0x58]
push eax
mov ecx, 0x499590
mov edx, 0x499548
mov eax, ebx
mov esi, dword [eax]
call dword [esi]
mov edx, dword [ebp - 0x58]
mov eax, 0x58f818
call fcn.004050b8
mov eax, dword [0x58f818]
mov edx, 0x4995a0
call fcn.00405474
jne 0x4950dc
mov dl, 1
mov eax, dword [0x4243d8]
call fcn.004244d8
mov esi, eax
cmp dword [0x58f86c], 0
jne 0x494fc7
mov edx, 0x80000001
mov eax, esi
call fcn.004245b4
cmp dword [0x58f86c], 1
jne 0x494fdc
mov edx, 0x80000002
mov eax, esi
call fcn.004245b4
mov cl, 1
mov edx, 0x4995ac
mov eax, esi
call fcn.0042461c
lea eax, [ebp - 0x5c]
call fcn.0045bd08
mov ecx, dword [ebp - 0x5c]
mov edx, 0x4995cc
mov eax, esi
call fcn.00424b70
mov eax, esi
call fcn.00424584
push 0x4995e0
mov eax, dword [0x58f7c8]
call fcn.00405528
mov edx, eax
lea eax, [ebp - 0x64]
call fcn.0040525c
push dword [ebp - 0x64]
push 0x499608
lea eax, [ebp - 0x60]
mov edx, 3
call fcn.004053e8
mov edx, dword [ebp - 0x60]
mov cl, 1
mov eax, esi
call fcn.0042461c
xor ecx, ecx
mov edx, 0x499614
mov eax, esi
call fcn.00424b70
xor ecx, ecx
mov edx, 0x499628
mov eax, esi
call fcn.00424b70
xor ecx, ecx
mov edx, 0x499638
mov eax, esi
call fcn.00424b70
xor ecx, ecx
mov edx, 0x499650
mov eax, esi
call fcn.00424b70
xor ecx, ecx
mov edx, 0x49966c
mov eax, esi
call fcn.00424b70
xor ecx, ecx
mov edx, 0x499684
mov eax, esi
call fcn.00424b70
xor ecx, ecx
mov edx, 0x49969c
mov eax, esi
call fcn.00424b70
xor ecx, ecx
mov edx, 0x4996b0
mov eax, esi
call fcn.00424b70
xor ecx, ecx
mov edx, 0x4996c8
mov eax, esi
call fcn.00424b70
xor ecx, ecx
mov edx, 0x4996e0
mov eax, esi
call fcn.00424b70
mov eax, esi
call fcn.00424584
mov eax, esi
call fcn.00404234
lea edx, [ebp - 0x6c]
mov eax, 1
call fcn.00403144
mov eax, dword [ebp - 0x6c]
lea edx, [ebp - 0x68]
call fcn.00409468
mov eax, dword [ebp - 0x68]
mov edx, 0x4996fc
call fcn.00405474
jne 0x49519f
mov dl, 1
mov eax, dword [0x4243d8]
call fcn.004244d8
mov esi, eax
cmp dword [0x58f86c], 0
jne 0x49512a
mov edx, 0x80000001
mov eax, esi
call fcn.004245b4
cmp dword [0x58f86c], 1
jne 0x49513f
mov edx, 0x80000002
mov eax, esi
call fcn.004245b4
push 0x499710
mov eax, dword [0x58f7c8]
call fcn.00405528
mov edx, eax
lea eax, [ebp - 0x74]
call fcn.0040525c
push dword [ebp - 0x74]
push 0x499724
lea eax, [ebp - 0x70]
mov edx, 3
call fcn.004053e8
mov edx, dword [ebp - 0x70]
mov cl, 1
mov eax, esi
call fcn.0042461c
mov edx, 0x499628
mov eax, esi
call fcn.004248f8
mov edx, 0x499614
mov eax, esi
call fcn.004248f8
mov eax, esi
call fcn.00424584
mov eax, esi
call fcn.00404234
lea edx, [ebp - 0x7c]
mov eax, 1
call fcn.00403144
mov eax, dword [ebp - 0x7c]
lea edx, [ebp - 0x78]
call fcn.00409468
mov eax, dword [ebp - 0x78]
mov edx, 0x499734
call fcn.00405474
jne 0x495328
lea edx, [ebp - 0x80]
mov eax, 2
call fcn.00403144
cmp dword [ebp - 0x80], 0
je 0x495328
lea edx, [ebp - 0x84]
mov eax, 3
call fcn.00403144
cmp dword [ebp - 0x84], 0
je 0x495328
lea edx, [ebp - 0x88]
mov eax, 3
call fcn.00403144
mov eax, dword [ebp - 0x88]
push eax
lea edx, [ebp - 0x8c]
mov eax, 2
call fcn.00403144
mov eax, dword [ebp - 0x8c]
push eax
lea eax, [ebp - 0x90]
mov ecx, dword [0x58f7cc]
mov edx, dword [0x58f7c8]
call fcn.00405374
mov eax, dword [ebp - 0x90]
pop edx
pop ecx
call fcn.0045be94
test eax, eax
jne 0x495328
mov dl, 1
mov eax, dword [0x4243d8]
call fcn.004244d8
mov esi, eax
cmp dword [0x58f86c], 0
jne 0x49527b
mov edx, 0x80000001
mov eax, esi
call fcn.004245b4
cmp dword [0x58f86c], 1
jne 0x495290
mov edx, 0x80000002
mov eax, esi
call fcn.004245b4
push 0x499710
mov eax, dword [0x58f7c8]
call fcn.00405528
mov edx, eax
lea eax, [ebp - 0x98]
call fcn.0040525c
push dword [ebp - 0x98]
push 0x499724
lea eax, [ebp - 0x94]
mov edx, 3
call fcn.004053e8
mov edx, dword [ebp - 0x94]
mov cl, 1
mov eax, esi
call fcn.0042461c
lea edx, [ebp - 0x9c]
mov eax, 2
call fcn.00403144
mov ecx, dword [ebp - 0x9c]
mov edx, 0x499614
mov eax, esi
call fcn.00424b70
lea edx, [ebp - 0xa0]
mov eax, 3
call fcn.00403144
mov ecx, dword [ebp - 0xa0]
mov edx, 0x499628
mov eax, esi
call fcn.00424b70
mov eax, esi
call fcn.00424584
mov eax, esi
call fcn.00404234
mov eax, 0x58f7b8
call fcn.00405064
mov eax, 0x58f7bc
call fcn.00405064
push 0
lea eax, [ebp - 0xa4]
push eax
mov ecx, 0x499748
mov edx, 0x499548
mov eax, ebx
mov esi, dword [eax]
call dword [esi]
mov eax, dword [ebp - 0xa4]
mov edx, 0x4995a0
call fcn.00405474
jne 0x49558d
mov byte [0x58f7b3], 0
push 0
lea eax, [ebp - 0xa8]
push eax
mov ecx, 0x499754
mov edx, 0x499548
mov eax, ebx
mov esi, dword [eax]
call dword [esi]
mov eax, dword [ebp - 0xa8]
mov edx, 0x4995a0
call fcn.00405474
jne 0x4953c8
push 0
lea eax, [ebp - 0xac]
push eax
mov ecx, 0x499760
mov edx, 0x499548
mov eax, ebx
mov esi, dword [eax]
call dword [esi]
mov edx, dword [ebp - 0xac]
xor eax, eax
call fcn.00492b10
mov byte [0x58f7b3], al
push 0
lea eax, [ebp - 0xb0]
push eax
mov ecx, 0x499754
mov edx, 0x499548
mov eax, ebx
mov esi, dword [eax]
call dword [esi]
mov eax, dword [ebp - 0xb0]
mov edx, 0x49976c
call fcn.00405474
jne 0x49541e
push 0
lea eax, [ebp - 0xb4]
push eax
mov ecx, 0x499760
mov edx, 0x499548
mov eax, ebx
mov esi, dword [eax]
call dword [esi]
mov edx, dword [ebp - 0xb4]
mov al, 1
call fcn.00492b10
mov byte [0x58f7b3], al
cmp byte [0x58f7b3], 0
jne 0x49558d
mov eax, dword [0x58f868]
push eax
mov ecx, 0x499778
mov edx, 0x499548
mov eax, ebx
mov esi, dword [eax]
call dword [esi + 8]
mov dword [0x58f868], eax
mov esi, dword [0x58f868]
test esi, esi
jl 0x495521
inc esi
mov dword [0x58f864], 0
mov eax, dword [0x58f7b8]
push eax
lea eax, [ebp - 0xb8]
push eax
lea edx, [ebp - 0xc0]
mov eax, dword [0x58f864]
call fcn.00409c58
mov ecx, dword [ebp - 0xc0]
lea eax, [ebp - 0xbc]
mov edx, 0x499754
call fcn.00405374
mov ecx, dword [ebp - 0xbc]
mov edx, 0x499548
mov eax, ebx
mov edi, dword [eax]
call dword [edi]
mov edx, dword [ebp - 0xb8]
mov eax, 0x58f7b8
call fcn.004050b8
lea ecx, [ebp - 0xc4]
mov edx, 0x84b58
mov eax, dword [0x58f7b8]
call fcn.004930c4
mov edx, dword [ebp - 0xc4]
mov eax, 0x58f7b8
call fcn.004050b8
cmp dword [0x58f7bc], 0
je 0x495504
push dword [0x58f7bc]
push 0x49978c
push dword [0x58f7b8]
mov eax, 0x58f7bc
mov edx, 3
call fcn.004053e8
jmp 0x495514
mov eax, 0x58f7bc
mov edx, dword [0x58f7b8]
call fcn.004050b8
inc dword [0x58f864]
dec esi
jne 0x495460
mov eax, dword [0x58f7bc]
mov edx, 0x499798
call fcn.00405474
jne 0x495538
mov byte [ebp - 0x11], 1
jmp 0x495565
mov eax, dword [0x58f7bc]
mov dword [0x58f884], eax
cmp dword [0x58f884], 0
je 0x49555a
mov eax, dword [0x58f884]
sub eax, 4
mov eax, dword [eax]
mov dword [0x58f884], eax
cmp dword [0x58f884], 0
sete byte [ebp - 0x11]
cmp byte [ebp - 0x11], 0
jne 0x49939e
push 0
push 0x49979c
mov eax, dword [0x58f7bc]
call fcn.00405528
push eax
push 0
call sub.user32.dll_MessageBoxA_1
jmp 0x49939e
mov eax, 0x58f7b8
call fcn.00405064
mov eax, 0x58f7bc
call fcn.00405064
mov byte [0x58f7b1], 0
mov dl, 1
mov eax, dword [0x4243d8]
call fcn.004244d8
mov dword [0x58f880], eax
cmp dword [0x58f86c], 0
jne 0x4955d1
mov edx, 0x80000001
mov eax, dword [0x58f880]
call fcn.004245b4
cmp dword [0x58f86c], 1
jne 0x4955e9
mov edx, 0x80000002
mov eax, dword [0x58f880]
call fcn.004245b4
push 0x499710
mov eax, dword [0x58f7c8]
call fcn.00405528
mov edx, eax
lea eax, [ebp - 0xcc]
call fcn.0040525c
push dword [ebp - 0xcc]
push 0x499724
lea eax, [ebp - 0xc8]
mov edx, 3
call fcn.004053e8
mov edx, dword [ebp - 0xc8]
mov cl, 1
mov eax, dword [0x58f880]
call fcn.0042461c
lea ecx, [ebp - 0xd0]
mov edx, 0x499628
mov eax, dword [0x58f880]
call fcn.00424ba0
mov edx, dword [ebp - 0xd0]
mov eax, 0x58f7d0
call fcn.004050b8
lea ecx, [ebp - 0xd4]
mov edx, 0x499614
mov eax, dword [0x58f880]
call fcn.00424ba0
mov edx, dword [ebp - 0xd4]
mov eax, 0x58f7d4
call fcn.004050b8
cmp dword [0x58f7d0], 0
je 0x4956c7
cmp dword [0x58f7d4], 0
je 0x4956c7
lea eax, [ebp - 0xd8]
mov ecx, dword [0x58f7cc]
mov edx, dword [0x58f7c8]
call fcn.00405374
mov eax, dword [ebp - 0xd8]
mov ecx, dword [0x58f7d0]
mov edx, dword [0x58f7d4]
call fcn.0045be94
test eax, eax
jne 0x4956c7
mov byte [0x58f7b1], 1
cmp byte [0x58f7b1], 1
jne 0x495988
mov eax, dword [0x58f868]
push eax
mov ecx, 0x4997a8
mov edx, 0x499548
mov eax, ebx
mov esi, dword [eax]
call dword [esi + 8]
mov dword [0x58f868], eax
mov esi, dword [0x58f868]
test esi, esi
jl 0x495988
inc esi
mov dword [0x58f864], 0
mov eax, dword [0x58f7b8]
push eax
lea eax, [ebp - 0xdc]
push eax
lea edx, [ebp - 0xe4]
mov eax, dword [0x58f864]
call fcn.00409c58
mov ecx, dword [ebp - 0xe4]
lea eax, [ebp - 0xe0]
mov edx, 0x4997b4
call fcn.00405374
mov ecx, dword [ebp - 0xe0]
mov edx, 0x499548
mov eax, ebx
mov edi, dword [eax]
call dword [edi]
mov edx, dword [ebp - 0xdc]
mov eax, 0x58f7b8
call fcn.004050b8
lea ecx, [ebp - 0xe8]
mov edx, 0x51abe60
mov eax, dword [0x58f7b8]
call fcn.004930c4
mov edx, dword [ebp - 0xe8]
mov eax, 0x58f7b8
call fcn.004050b8
mov eax, dword [0x58f7c0]
push eax
lea eax, [ebp - 0xec]
push eax
lea edx, [ebp - 0xf4]
mov eax, dword [0x58f864]
call fcn.00409c58
mov ecx, dword [ebp - 0xf4]
lea eax, [ebp - 0xf0]
mov edx, 0x4997c0
call fcn.00405374
mov ecx, dword [ebp - 0xf0]
mov edx, 0x499548
mov eax, ebx
mov edi, dword [eax]
call dword [edi]
mov edx, dword [ebp - 0xec]
mov eax, 0x58f7c0
call fcn.004050b8
lea ecx, [ebp - 0xf8]
mov edx, 0x51abe60
mov eax, dword [0x58f7c0]
call fcn.004930c4
mov edx, dword [ebp - 0xf8]
mov eax, 0x58f7c0
call fcn.004050b8
mov eax, dword [0x58f7b8]
mov edx, dword [0x58f7d0]
call fcn.00405474
je 0x49581f
mov eax, dword [0x58f7b8]
mov edx, dword [0x58f7d4]
call fcn.00405474
jne 0x495852
cmp dword [0x58f7c0], 0
jne 0x495852
mov edx, 0x499628
mov eax, dword [0x58f880]
call fcn.00424a70
mov edx, 0x499614
mov eax, dword [0x58f880]
call fcn.00424a70
mov byte [0x58f7b1], 0
jmp 0x495988
mov eax, dword [0x58f7b8]
mov edx, dword [0x58f7d0]
call fcn.00405474
je 0x495876
mov eax, dword [0x58f7c0]
mov edx, dword [0x58f7d4]
call fcn.00405474
jne 0x4958a9
cmp dword [0x58f7c0], 0
je 0x4958a9
mov edx, 0x499628
mov eax, dword [0x58f880]
call fcn.00424a70
mov edx, 0x499614
mov eax, dword [0x58f880]
call fcn.00424a70
mov byte [0x58f7b1], 0
jmp 0x495988
cmp byte [0x58f7b1], 1
jne 0x49597b
mov eax, dword [0x58f818]
mov edx, 0x4995a0
call fcn.00405474
jne 0x49597b
mov dl, 1
mov eax, dword [0x4243d8]
call fcn.004244d8
mov edi, eax
cmp dword [0x58f86c], 0
jne 0x4958ee
mov edx, 0x80000001
mov eax, edi
call fcn.004245b4
cmp dword [0x58f86c], 1
jne 0x495903
mov edx, 0x80000002
mov eax, edi
call fcn.004245b4
push 0x4995e0
mov eax, dword [0x58f7c8]
call fcn.00405528
mov edx, eax
lea eax, [ebp - 0x100]
call fcn.0040525c
push dword [ebp - 0x100]
push 0x499608
lea eax, [ebp - 0xfc]
mov edx, 3
call fcn.004053e8
mov edx, dword [ebp - 0xfc]
mov cl, 1
mov eax, edi
call fcn.0042461c
mov ecx, dword [0x58f7d4]
mov edx, 0x499614
mov eax, edi
call fcn.00424b70
mov ecx, dword [0x58f7d0]
mov edx, 0x499628
mov eax, edi
call fcn.00424b70
mov eax, edi
call fcn.00424584
mov eax, edi
call fcn.00404234
inc dword [0x58f864]
dec esi
jne 0x495709
mov eax, dword [0x58f880]
call fcn.00404234
mov eax, 0x58f7b8
call fcn.00405064
mov eax, 0x58f7bc
call fcn.00405064
mov eax, dword [0x58f820]
push eax
lea eax, [ebp - 0x104]
push eax
mov ecx, 0x4997cc
mov edx, 0x499548
mov eax, ebx
mov esi, dword [eax]
call dword [esi]
mov edx, dword [ebp - 0x104]
mov eax, 0x58f820
call fcn.004050b8
cmp byte [0x58f7b1], 0
jne 0x495a26
mov eax, dword [0x58f820]
mov edx, 0x4995a0
call fcn.00405474
jne 0x495a26
mov dl, 1
mov eax, dword [0x4191c4]
call fcn.00404204
mov esi, eax
xor ecx, ecx
mov edx, 0x4997dc
mov eax, esi
call fcn.00422780
push 0
push 0
mov eax, esi
call fcn.0041ce74
xor ecx, ecx
xor edx, edx
mov eax, esi
call fcn.0042282c
mov eax, esi
call fcn.00404234
mov eax, 0x58f7b8
call fcn.00405064
mov eax, 0x58f7bc
call fcn.00405064
movzx eax, byte [0x58f7b0]
push eax
mov ecx, 0x4997f4
mov edx, 0x499548
mov eax, ebx
mov esi, dword [eax]
call dword [esi + 0x10]
mov byte [0x58f7b0], al
cmp byte [0x58f7b0], 1
jne 0x49629b
cmp byte [0x58f7b1], 0
jne 0x49629b
mov eax, dword [0x58f868]
push eax
mov ecx, 0x499800
mov edx, 0x499548
mov eax, ebx
mov esi, dword [eax]
call dword [esi + 8]
mov dword [0x58f868], eax
mov esi, dword [0x58f868]
test esi, esi
jl 0x495b68
inc esi
mov dword [0x58f864], 0
mov eax, dword [0x58f7b8]
push eax
lea eax, [ebp - 0x108]
push eax
lea edx, [ebp - 0x110]
mov eax, dword [0x58f864]
call fcn.00409c58
mov ecx, dword [ebp - 0x110]
lea eax, [ebp - 0x10c]
mov edx, 0x4997f4
call fcn.00405374
mov ecx, dword [ebp - 0x10c]
mov edx, 0x499548
mov eax, ebx
mov edi, dword [eax]
call dword [edi]
mov edx, dword [ebp - 0x108]
mov eax, 0x58f7b8
call fcn.004050b8
lea ecx, [ebp - 0x114]
mov edx, 0x2b409cb
mov eax, dword [0x58f7b8]
call fcn.004930c4
mov edx, dword [ebp - 0x114]
mov eax, 0x58f7b8
call fcn.004050b8
cmp dword [0x58f7bc], 0
je 0x495b4b
push dword [0x58f7bc]
push 0x49978c
push dword [0x58f7b8]
mov eax, 0x58f7bc
mov edx, 3
call fcn.004053e8
jmp 0x495b5b
mov eax, 0x58f7bc
mov edx, dword [0x58f7b8]
call fcn.004050b8
inc dword [0x58f864]
dec esi
jne 0x495aa7
mov eax, dword [0x58f850]
push eax
lea eax, [ebp - 0x118]
push eax
mov ecx, 0x499810
mov edx, 0x499548
mov eax, ebx
mov esi, dword [eax]
call dword [esi]
mov edx, dword [ebp - 0x118]
mov eax, 0x58f850
call fcn.004050b8
lea ecx, [ebp - 0x11c]
mov edx, 0x21a1134
mov eax, dword [0x58f850]
call fcn.004930c4
mov edx, dword [ebp - 0x11c]
mov eax, 0x58f82c
call fcn.004050b8
mov eax, dword [0x58f7b8]
push eax
lea eax, [ebp - 0x120]
push eax
mov ecx, 0x499810
mov edx, 0x499548
mov eax, ebx
mov esi, dword [eax]
call dword [esi]
mov edx, dword [ebp - 0x120]
mov eax, 0x58f850
call fcn.004050b8
lea ecx, [ebp - 0x124]
mov edx, 0x21a1134
mov eax, dword [0x58f850]
call fcn.004930c4
mov edx, dword [ebp - 0x124]
mov eax, 0x58f850
call fcn.004050b8
push 2
mov eax, dword [0x58f850]
call fcn.00409ea8
push eax
mov eax, dword [0x58f7cc]
call fcn.00405528
push eax
mov eax, dword [0x58f7c8]
call fcn.00405528
push eax
call fcn.00493130
lea edx, [ebp - 0x128]
call fcn.00409c58
mov edx, dword [ebp - 0x128]
mov eax, 0x58f830
call fcn.004050b8
mov eax, dword [0x58f850]
push eax
lea eax, [ebp - 0x12c]
push eax
mov ecx, 0x49981c
mov edx, 0x499548
mov eax, ebx
mov esi, dword [eax]
call dword [esi]
mov edx, dword [ebp - 0x12c]
mov eax, 0x58f850
call fcn.004050b8
lea ecx, [ebp - 0x130]
mov edx, 0x2138ed55
mov eax, dword [0x58f850]
call fcn.004930c4
mov eax, dword [ebp - 0x130]
call fcn.00409ea8
mov word [0x58f878], ax
lea edx, [ebp - 0x134]
movzx eax, word [0x58f878]
call fcn.00409c58
mov edx, dword [ebp - 0x134]
mov eax, 0x58f834
call fcn.004050b8
mov eax, dword [0x58f850]
push eax
lea eax, [ebp - 0x138]
push eax
mov ecx, 0x499828
mov edx, 0x499548
mov eax, ebx
mov esi, dword [eax]
call dword [esi]
mov edx, dword [ebp - 0x138]
mov eax, 0x58f850
call fcn.004050b8
lea ecx, [ebp - 0x13c]
mov edx, 0x39107155
mov eax, dword [0x58f850]
call fcn.004930c4
mov eax, dword [ebp - 0x13c]
call fcn.00409ea8
mov word [0x58f87a], ax
lea edx, [ebp - 0x140]
movzx eax, word [0x58f87a]
call fcn.00409c58
mov edx, dword [ebp - 0x140]
mov eax, 0x58f838
call fcn.004050b8
mov eax, dword [0x58f850]
push eax
lea eax, [ebp - 0x144]
push eax
mov ecx, 0x499608
mov edx, 0x499548
mov eax, ebx
mov esi, dword [eax]
call dword [esi]
mov edx, dword [ebp - 0x144]
mov eax, 0x58f850
call fcn.004050b8
lea ecx, [ebp - 0x148]
mov edx, 0x9616955
mov eax, dword [0x58f850]
call fcn.004930c4
mov eax, dword [ebp - 0x148]
call fcn.00409ea8
mov word [0x58f87c], ax
lea edx, [ebp - 0x14c]
movzx eax, word [0x58f87c]
call fcn.00409c58
mov edx, dword [ebp - 0x14c]
mov eax, 0x58f83c
call fcn.004050b8
call fcn.0040c038
add esp, 0xfffffff8
fstp qword [esp]
wait
movzx ecx, word [0x58f87c]
movzx edx, word [0x58f87a]
movzx eax, word [0x58f878]
call fcn.0040be74
add esp, 0xfffffff8
fstp qword [esp]
wait
call fcn.0045b244
mov dword [ebp - 0x154], eax
fild dword [ebp - 0x154]
add esp, 0xfffffff4
fstp xword [esp]
wait
lea eax, [ebp - 0x150]
call fcn.0040bab8
mov edx, dword [ebp - 0x150]
mov eax, 0x58f840
call fcn.004050b8
movzx ecx, word [0x58f87c]
movzx edx, word [0x58f87a]
movzx eax, word [0x58f878]
call fcn.0040be74
fstp qword [ebp - 0x15c]
wait
call fcn.0040c038
fcomp qword [ebp - 0x15c]
wait
fnstsw ax
sahf
jbe 0x495e4f
mov eax, 0x58f840
mov edx, 0x499834
call fcn.004050b8
mov eax, dword [0x58f850]
push eax
lea eax, [ebp - 0x160]
push eax
mov ecx, 0x499840
mov edx, 0x499548
mov eax, ebx
mov esi, dword [eax]
call dword [esi]
mov edx, dword [ebp - 0x160]
mov eax, 0x58f850
call fcn.004050b8
lea ecx, [ebp - 0x164]
mov edx, 0x291ba38
mov eax, dword [0x58f850]
call fcn.004930c4
mov edx, dword [ebp - 0x164]
mov eax, 0x58f844
call fcn.004050b8
push 0
mov eax, dword [0x58f844]
call fcn.00409ea8
push eax
mov eax, dword [0x58f7cc]
call fcn.00405528
push eax
mov eax, dword [0x58f7c8]
call fcn.00405528
push eax
call fcn.00493418
lea edx, [ebp - 0x168]
call fcn.00409c58
mov edx, dword [ebp - 0x168]
mov eax, 0x58f848
call fcn.004050b8
movzx eax, byte [0x499844]
push eax
lea eax, [ebp - 0x16c]
push eax
mov ecx, dword [0x58f82c]
mov edx, 0x499850
mov eax, dword [0x58f7bc]
call fcn.0040f26c
mov edx, dword [ebp - 0x16c]
mov eax, 0x58f7bc
call fcn.004050b8
movzx eax, byte [0x499844]
push eax
lea eax, [ebp - 0x170]
push eax
mov ecx, dword [0x58f830]
mov edx, 0x49985c
mov eax, dword [0x58f7bc]
call fcn.0040f26c
mov edx, dword [ebp - 0x170]
mov eax, 0x58f7bc
call fcn.004050b8
movzx eax, byte [0x499844]
push eax
lea eax, [ebp - 0x174]
push eax
mov ecx, dword [0x58f834]
mov edx, 0x499868
mov eax, dword [0x58f7bc]
call fcn.0040f26c
mov edx, dword [ebp - 0x174]
mov eax, 0x58f7bc
call fcn.004050b8
movzx eax, byte [0x499844]
push eax
lea eax, [ebp - 0x178]
push eax
mov ecx, dword [0x58f838]
mov edx, 0x499874
mov eax, dword [0x58f7bc]
call fcn.0040f26c
mov edx, dword [ebp - 0x178]
mov eax, 0x58f7bc
call fcn.004050b8
movzx eax, byte [0x499844]
push eax
lea eax, [ebp - 0x17c]
push eax
mov ecx, dword [0x58f83c]
mov edx, 0x499880
mov eax, dword [0x58f7bc]
call fcn.0040f26c
mov edx, dword [ebp - 0x17c]
mov eax, 0x58f7bc
call fcn.004050b8
movzx eax, byte [0x499844]
push eax
lea eax, [ebp - 0x180]
push eax
mov ecx, dword [0x58f840]
mov edx, 0x49988c
mov eax, dword [0x58f7bc]
call fcn.0040f26c
mov edx, dword [ebp - 0x180]
mov eax, 0x58f7bc
call fcn.004050b8
movzx eax, byte [0x499844]
push eax
lea eax, [ebp - 0x184]
push eax
mov ecx, dword [0x58f844]
mov edx, 0x499898
mov eax, dword [0x58f7bc]
call fcn.0040f26c
mov edx, dword [ebp - 0x184]
mov eax, 0x58f7bc
call fcn.004050b8
movzx eax, byte [0x499844]
push eax
lea eax, [ebp - 0x188]
push eax
mov ecx, dword [0x58f848]
mov edx, 0x4998a4
mov eax, dword [0x58f7bc]
call fcn.0040f26c
mov edx, dword [ebp - 0x188]
mov eax, 0x58f7bc
call fcn.004050b8
movzx eax, byte [0x499844]
push eax
lea eax, [ebp - 0x18c]
push eax
lea eax, [ebp - 0x190]
call fcn.0045bd08
mov ecx, dword [ebp - 0x190]
mov edx, 0x4998b0
mov eax, dword [0x58f7bc]
call fcn.0040f26c
mov edx, dword [ebp - 0x18c]
mov eax, 0x58f7bc
call fcn.004050b8
push 0x499834
lea eax, [ebp - 0x194]
push eax
mov ecx, 0x4998bc
mov edx, 0x499548
mov eax, ebx
mov esi, dword [eax]
call dword [esi]
mov edx, dword [ebp - 0x194]
mov eax, 0x499834
call fcn.00405474
jne 0x49615d
mov eax, dword [0x58f7bc]
mov edx, 0x499798
call fcn.00405474
jne 0x496108
mov byte [ebp - 0x12], 1
jmp 0x496135
mov eax, dword [0x58f7bc]
mov dword [0x58f888], eax
cmp dword [0x58f888], 0
je 0x49612a
mov eax, dword [0x58f888]
sub eax, 4
mov eax, dword [eax]
mov dword [0x58f888], eax
cmp dword [0x58f888], 0
sete byte [ebp - 0x12]
cmp byte [ebp - 0x12], 0
jne 0x49629b
push 0
push 0x49979c
mov eax, dword [0x58f7bc]
call fcn.00405528
push eax
push 0
call sub.user32.dll_MessageBoxA_1
jmp 0x49629b
push 0x44
push 0x49979c
mov eax, dword [0x58f7bc]
call fcn.00405528
push eax
push 0
call sub.user32.dll_MessageBoxA_1
cmp eax, 6
jne 0x49629b
mov eax, dword [0x58f808]
mov edx, 0x499834
call fcn.00405474
jne 0x4961fa
push 1
push 0
push 0
push 0x4998cc
push dword [0x58f80c]
push 0x4998dc
push dword [0x58f810]
push 0x4998fc
lea eax, [ebp - 0x19c]
call fcn.0045bd08
push dword [ebp - 0x19c]
push 0x499918
push dword [0x58f810]
push 0x499798
lea eax, [ebp - 0x198]
mov edx, 9
call fcn.004053e8
mov eax, dword [ebp - 0x198]
call fcn.00405528
push eax
push 0x499924
push 0
call sub.shell32.dll_ShellExecuteA
movzx eax, byte [0x499844]
push eax
lea eax, [ebp - 0x1a0]
push eax
lea eax, [ebp - 0x1a4]
call fcn.0045bd08
mov ecx, dword [ebp - 0x1a4]
mov edx, 0x499934
mov eax, dword [0x58f80c]
call fcn.0040f26c
mov edx, dword [ebp - 0x1a0]
mov eax, 0x58f814
call fcn.004050b8
movzx eax, byte [0x499844]
push eax
lea eax, [ebp - 0x1a8]
push eax
mov ecx, dword [0x58f810]
mov edx, 0x499948
mov eax, dword [0x58f814]
call fcn.0040f26c
mov edx, dword [ebp - 0x1a8]
mov eax, 0x58f814
call fcn.004050b8
mov eax, dword [0x58f808]
mov edx, 0x4995a0
call fcn.00405474
jne 0x49629b
push 1
push 0
push 0
mov eax, dword [0x58f814]
call fcn.00405528
push eax
push 0x499924
push 0
call sub.shell32.dll_ShellExecuteA
mov eax, 0x58f7b8
call fcn.00405064
mov eax, 0x58f7bc
call fcn.00405064
movzx eax, byte [0x58f7b0]
push eax
mov ecx, 0x4995a0
mov edx, 0x499548
mov eax, ebx
mov esi, dword [eax]
call dword [esi + 0x10]
mov byte [0x58f7b0], al
cmp byte [0x58f7b0], 1
jne 0x496444
call fcn.00492468
cmp al, 1
jne 0x496444
mov eax, dword [0x58f868]
push eax
mov ecx, 0x49995c
mov edx, 0x499548
mov eax, ebx
mov esi, dword [eax]
call dword [esi + 8]
mov dword [0x58f868], eax
mov esi, dword [0x58f868]
test esi, esi
jl 0x4963dd
inc esi
mov dword [0x58f864], 0
mov eax, dword [0x58f7b8]
push eax
lea eax, [ebp - 0x1ac]
push eax
lea edx, [ebp - 0x1b4]
mov eax, dword [0x58f864]
call fcn.00409c58
mov ecx, dword [ebp - 0x1b4]
lea eax, [ebp - 0x1b0]
mov edx, 0x4995a0
call fcn.00405374
mov ecx, dword [ebp - 0x1b0]
mov edx, 0x499548
mov eax, ebx
mov edi, dword [eax]
call dword [edi]
mov edx, dword [ebp - 0x1ac]
mov eax, 0x58f7b8
call fcn.004050b8
lea ecx, [ebp - 0x1b8]
mov edx, 0x2b409cb
mov eax, dword [0x58f7b8]
call fcn.004930c4
mov edx, dword [ebp - 0x1b8]
mov eax, 0x58f7b8
call fcn.004050b8
cmp dword [0x58f7bc], 0
je 0x4963c0
push dword [0x58f7bc]
push 0x49978c
push dword [0x58f7b8]
mov eax, 0x58f7bc
mov edx, 3
call fcn.004053e8
jmp 0x4963d0
mov eax, 0x58f7bc
mov edx, dword [0x58f7b8]
call fcn.004050b8
inc dword [0x58f864]
dec esi
jne 0x49631c
mov eax, dword [0x58f7bc]
mov edx, 0x499798
call fcn.00405474
jne 0x4963f2
mov al, 1
jmp 0x49641e
mov eax, dword [0x58f7bc]
mov dword [0x58f88c], eax
cmp dword [0x58f88c], 0
je 0x496414
mov eax, dword [0x58f88c]
sub eax, 4
mov eax, dword [eax]
mov dword [0x58f88c], eax
cmp dword [0x58f88c], 0
sete al
test al, al
jne 0x49939e
push 0
push 0x49979c
mov eax, dword [0x58f7bc]
call fcn.00405528
push eax
push 0
call sub.user32.dll_MessageBoxA_1
jmp 0x49939e
mov eax, 0x58f7b8
call fcn.00405064
mov eax, 0x58f7bc
call fcn.00405064
push 0
lea eax, [ebp - 0x1bc]
push eax
mov ecx, 0x49996c
mov edx, 0x499548
mov eax, ebx
mov esi, dword [eax]
call dword [esi]
mov edx, dword [ebp - 0x1bc]
mov eax, 0x4995a0
call fcn.00405474
jne 0x4965f1
call fcn.004925cc
cmp al, 1
jne 0x4965f1
mov eax, dword [0x58f868]
push eax
mov ecx, 0x49997c
mov edx, 0x499548
mov eax, ebx
mov esi, dword [eax]
call dword [esi + 8]
mov dword [0x58f868], eax
mov esi, dword [0x58f868]
test esi, esi
jl 0x49658a
inc esi
mov dword [0x58f864], 0
mov eax, dword [0x58f7b8]
push eax
lea eax, [ebp - 0x1c0]
push eax
lea edx, [ebp - 0x1c8]
mov eax, dword [0x58f864]
call fcn.00409c58
mov ecx, dword [ebp - 0x1c8]
lea eax, [ebp - 0x1c4]
mov edx, 0x49998c
call fcn.00405374
mov ecx, dword [ebp - 0x1c4]
mov edx, 0x499548
mov eax, ebx
mov edi, dword [eax]
call dword [edi]
mov edx, dword [ebp - 0x1c0]
mov eax, 0x58f7b8
call fcn.004050b8
lea ecx, [ebp - 0x1cc]
mov edx, 0x23d35d
mov eax, dword [0x58f7b8]
call fcn.004930c4
mov edx, dword [ebp - 0x1cc]
mov eax, 0x58f7b8
call fcn.004050b8
cmp dword [0x58f7bc], 0
je 0x49656d
push dword [0x58f7bc]
push 0x49978c
push dword [0x58f7b8]
mov eax, 0x58f7bc
mov edx, 3
call fcn.004053e8
jmp 0x49657d
mov eax, 0x58f7bc
mov edx, dword [0x58f7b8]
call fcn.004050b8
inc dword [0x58f864]
dec esi
jne 0x4964c9
mov eax, dword [0x58f7bc]
mov edx, 0x499798
call fcn.00405474
jne 0x49659f
mov al, 1
jmp 0x4965cb
mov eax, dword [0x58f7bc]
mov dword [0x58f890], eax
cmp dword [0x58f890], 0
je 0x4965c1
mov eax, dword [0x58f890]
sub eax, 4
mov eax, dword [eax]
mov dword [0x58f890], eax
cmp dword [0x58f890], 0
sete al
test al, al
jne 0x49939e
push 0
push 0x49979c
mov eax, dword [0x58f7bc]
call fcn.00405528
push eax
push 0
call sub.user32.dll_MessageBoxA_1
jmp 0x49939e
mov eax, 0x58f7b8
call fcn.00405064
mov eax, 0x58f7bc
call fcn.00405064
push 0
lea eax, [ebp - 0x1d0]
push eax
mov ecx, 0x49999c
mov edx, 0x499548
mov eax, ebx
mov esi, dword [eax]
call dword [esi]
mov edx, dword [ebp - 0x1d0]
mov eax, 0x4995a0
call fcn.00405474
jne 0x4967ee
lea edx, [ebp - 0x1d8]
xor eax, eax
call fcn.00403144
mov eax, dword [ebp - 0x1d8]
lea edx, [ebp - 0x1d4]
call fcn.0040a434
mov eax, dword [ebp - 0x1d4]
mov dword [0x58f894], eax
mov eax, dword [0x58f894]
mov dword [0x58f898], eax
cmp dword [0x58f898], 0
je 0x49667f
mov eax, dword [0x58f898]
sub eax, 4
mov eax, dword [eax]
mov dword [0x58f898], eax
cmp dword [0x58f898], 3
jle 0x4967ee
mov eax, dword [0x58f868]
push eax
mov ecx, 0x4999ac
mov edx, 0x499548
mov eax, ebx
mov esi, dword [eax]
call dword [esi + 8]
mov dword [0x58f868], eax
mov esi, dword [0x58f868]
test esi, esi
jl 0x496782
inc esi
mov dword [0x58f864], 0
mov eax, dword [0x58f7b8]
push eax
lea eax, [ebp - 0x1dc]
push eax
lea edx, [ebp - 0x1e4]
mov eax, dword [0x58f864]
call fcn.00409c58
mov ecx, dword [ebp - 0x1e4]
lea eax, [ebp - 0x1e0]
mov edx, 0x4999bc
call fcn.00405374
mov ecx, dword [ebp - 0x1e0]
mov edx, 0x499548
mov eax, ebx
mov edi, dword [eax]
call dword [edi]
mov edx, dword [ebp - 0x1dc]
mov eax, 0x58f7b8
call fcn.004050b8
lea ecx, [ebp - 0x1e8]
mov edx, 0x46da96
mov eax, dword [0x58f7b8]
call fcn.004930c4
mov edx, dword [ebp - 0x1e8]
mov eax, 0x58f7b8
call fcn.004050b8
cmp dword [0x58f7bc], 0
je 0x496765
push dword [0x58f7bc]
push 0x49978c
push dword [0x58f7b8]
mov eax, 0x58f7bc
mov edx, 3
call fcn.004053e8
jmp 0x496775
mov eax, 0x58f7bc
mov edx, dword [0x58f7b8]
call fcn.004050b8
inc dword [0x58f864]
dec esi
jne 0x4966c1
mov eax, dword [0x58f7bc]
mov edx, 0x499798
call fcn.00405474
jne 0x496799
mov byte [ebp - 0x13], 1
jmp 0x4967c6
mov eax, dword [0x58f7bc]
mov dword [0x58f89c], eax
cmp dword [0x58f89c], 0
je 0x4967bb
mov eax, dword [0x58f89c]
sub eax, 4
mov eax, dword [eax]
mov dword [0x58f89c], eax
cmp dword [0x58f89c], 0
sete byte [ebp - 0x13]
cmp byte [ebp - 0x13], 0
jne 0x49939e
push 0
push 0x49979c
mov eax, dword [0x58f7bc]
call fcn.00405528
push eax
push 0
call sub.user32.dll_MessageBoxA_1
jmp 0x49939e
mov eax, 0x58f7b8
call fcn.00405064
mov eax, 0x58f7bc
call fcn.00405064
push 0
lea eax, [ebp - 0x1ec]
push eax
mov ecx, 0x4999cc
mov edx, 0x499548
mov eax, ebx
mov esi, dword [eax]
call dword [esi]
mov edx, dword [ebp - 0x1ec]
mov eax, 0x4995a0
call fcn.00405474
jne 0x49699b
call fcn.00492554
cmp al, 1
jne 0x49699b
mov eax, dword [0x58f868]
push eax
mov ecx, 0x4999dc
mov edx, 0x499548
mov eax, ebx
mov esi, dword [eax]
call dword [esi + 8]
mov dword [0x58f868], eax
mov esi, dword [0x58f868]
test esi, esi
jl 0x496934
inc esi
mov dword [0x58f864], 0
mov eax, dword [0x58f7b8]
push eax
lea eax, [ebp - 0x1f0]
push eax
lea edx, [ebp - 0x1f8]
mov eax, dword [0x58f864]
call fcn.00409c58
mov ecx, dword [ebp - 0x1f8]
lea eax, [ebp - 0x1f4]
mov edx, 0x4999ec
call fcn.00405374
mov ecx, dword [ebp - 0x1f4]
mov edx, 0x499548
mov eax, ebx
mov edi, dword [eax]
call dword [edi]
mov edx, dword [ebp - 0x1f0]
mov eax, 0x58f7b8
call fcn.004050b8
lea ecx, [ebp - 0x1fc]
mov edx, 0x46da96
mov eax, dword [0x58f7b8]
call fcn.004930c4
mov edx, dword [ebp - 0x1fc]
mov eax, 0x58f7b8
call fcn.004050b8
cmp dword [0x58f7bc], 0
je 0x496917
push dword [0x58f7bc]
push 0x49978c
push dword [0x58f7b8]
mov eax, 0x58f7bc
mov edx, 3
call fcn.004053e8
jmp 0x496927
mov eax, 0x58f7bc
mov edx, dword [0x58f7b8]
call fcn.004050b8
inc dword [0x58f864]
dec esi
jne 0x496873
mov eax, dword [0x58f7bc]
mov edx, 0x499798
call fcn.00405474
jne 0x496949
mov al, 1
jmp 0x496975
mov eax, dword [0x58f7bc]
mov dword [0x58f8a0], eax
cmp dword [0x58f8a0], 0
je 0x49696b
mov eax, dword [0x58f8a0]
sub eax, 4
mov eax, dword [eax]
mov dword [0x58f8a0], eax
cmp dword [0x58f8a0], 0
sete al
test al, al
jne 0x49939e
push 0
push 0x49979c
mov eax, dword [0x58f7bc]
call fcn.00405528
push eax
push 0
call sub.user32.dll_MessageBoxA_1
jmp 0x49939e
mov eax, 0x58f7b8
call fcn.00405064
mov eax, 0x58f7bc
call fcn.00405064
push 0
lea eax, [ebp - 0x200]
push eax
mov ecx, 0x4999fc
mov edx, 0x499548
mov eax, ebx
mov esi, dword [eax]
call dword [esi]
mov edx, dword [ebp - 0x200]
mov eax, 0x4995a0
call fcn.00405474
jne 0x496b4d
call fcn.00492ebc
cmp al, 1
jne 0x496b4d
mov eax, dword [0x58f868]
push eax
mov ecx, 0x499a0c
mov edx, 0x499548
mov eax, ebx
mov esi, dword [eax]
call dword [esi + 8]
mov dword [0x58f868], eax
mov esi, dword [0x58f868]
test esi, esi
jl 0x496ae1
inc esi
mov dword [0x58f864], 0
mov eax, dword [0x58f7b8]
push eax
lea eax, [ebp - 0x204]
push eax
lea edx, [ebp - 0x20c]
mov eax, dword [0x58f864]
call fcn.00409c58
mov ecx, dword [ebp - 0x20c]
lea eax, [ebp - 0x208]
mov edx, 0x499a1c
call fcn.00405374
mov ecx, dword [ebp - 0x208]
mov edx, 0x499548
mov eax, ebx
mov edi, dword [eax]
call dword [edi]
mov edx, dword [ebp - 0x204]
mov eax, 0x58f7b8
call fcn.004050b8
lea ecx, [ebp - 0x210]
mov edx, 0x6285c6
mov eax, dword [0x58f7b8]
call fcn.004930c4
mov edx, dword [ebp - 0x210]
mov eax, 0x58f7b8
call fcn.004050b8
cmp dword [0x58f7bc], 0
je 0x496ac4
push dword [0x58f7bc]
push 0x49978c
push dword [0x58f7b8]
mov eax, 0x58f7bc
mov edx, 3
call fcn.004053e8
jmp 0x496ad4
mov eax, 0x58f7bc
mov edx, dword [0x58f7b8]
call fcn.004050b8
inc dword [0x58f864]
dec esi
jne 0x496a20
mov eax, dword [0x58f7bc]
mov edx, 0x499798
call fcn.00405474
jne 0x496af8
mov byte [ebp - 0x14], 1
jmp 0x496b25
mov eax, dword [0x58f7bc]
mov dword [0x58f8a4], eax
cmp dword [0x58f8a4], 0
je 0x496b1a
mov eax, dword [0x58f8a4]
sub eax, 4
mov eax, dword [eax]
mov dword [0x58f8a4], eax
cmp dword [0x58f8a4], 0
sete byte [ebp - 0x14]
cmp byte [ebp - 0x14], 0
jne 0x49939e
push 0
push 0x49979c
mov eax, dword [0x58f7bc]
call fcn.00405528
push eax
push 0
call sub.user32.dll_MessageBoxA_1
jmp 0x49939e
mov eax, 0x58f7b8
call fcn.00405064
mov eax, 0x58f7bc
call fcn.00405064
mov dword [0x58f870], 1
push 0
lea eax, [ebp - 0x214]
push eax
mov ecx, 0x499a2c
mov edx, 0x499548
mov eax, ebx
mov esi, dword [eax]
call dword [esi]
mov edx, dword [ebp - 0x214]
mov eax, 0x4995a0
call fcn.00405474
jne 0x496f05
push 0
mov ecx, 0x499a3c
mov edx, 0x499548
mov eax, ebx
mov esi, dword [eax]
call dword [esi + 8]
mov esi, eax
test esi, esi
jl 0x496f05
inc esi
mov dword [0x58f864], 0
push 0
lea eax, [ebp - 0x21c]
push eax
lea edx, [ebp - 0x224]
mov eax, dword [0x58f864]
call fcn.00409c58
mov ecx, dword [ebp - 0x224]
lea eax, [ebp - 0x220]
mov edx, 0x499a4c
call fcn.00405374
mov ecx, dword [ebp - 0x220]
mov edx, 0x499548
mov eax, ebx
mov edi, dword [eax]
call dword [edi]
mov eax, dword [ebp - 0x21c]
lea edx, [ebp - 0x218]
call fcn.0045b6cc
mov edx, dword [ebp - 0x218]
mov eax, 0x58f828
call fcn.004050b8
push 0
lea eax, [ebp - 0x228]
push eax
mov ecx, 0x499a5c
mov edx, 0x499548
mov eax, ebx
mov edi, dword [eax]
call dword [edi]
mov eax, dword [ebp - 0x228]
mov edx, 0x499834
call fcn.00405474
jne 0x496c9b
lea edx, [ebp - 0x230]
xor eax, eax
call fcn.00403144
mov eax, dword [ebp - 0x230]
lea edx, [ebp - 0x22c]
call fcn.0040a434
lea eax, [ebp - 0x22c]
mov edx, dword [0x58f828]
call fcn.00405330
mov eax, dword [ebp - 0x22c]
call fcn.0049247c
cmp edx, 0
jne 0x496c92
cmp eax, 0xff
je 0x496c9b
xor eax, eax
mov dword [0x58f870], eax
push 0
lea eax, [ebp - 0x234]
push eax
mov ecx, 0x499a5c
mov edx, 0x499548
mov eax, ebx
mov edi, dword [eax]
call dword [edi]
mov eax, dword [ebp - 0x234]
mov edx, 0x4995a0
call fcn.00405474
jne 0x496d13
lea edx, [ebp - 0x23c]
xor eax, eax
call fcn.00403144
mov eax, dword [ebp - 0x23c]
lea edx, [ebp - 0x238]
call fcn.0040a434
lea eax, [ebp - 0x238]
mov edx, dword [0x58f828]
call fcn.00405330
mov eax, dword [ebp - 0x238]
call fcn.0049247c
cmp edx, 0
jne 0x496d0a
cmp eax, 0xffff
je 0x496d13
xor eax, eax
mov dword [0x58f870], eax
push 0
lea eax, [ebp - 0x240]
push eax
mov ecx, 0x499a5c
mov edx, 0x499548
mov eax, ebx
mov edi, dword [eax]
call dword [edi]
mov eax, dword [ebp - 0x240]
mov edx, 0x49976c
call fcn.00405474
jne 0x496d8b
lea edx, [ebp - 0x248]
xor eax, eax
call fcn.00403144
mov eax, dword [ebp - 0x248]
lea edx, [ebp - 0x244]
call fcn.0040a434
lea eax, [ebp - 0x244]
mov edx, dword [0x58f828]
call fcn.00405330
mov eax, dword [ebp - 0x244]
call fcn.0049247c
cmp edx, 0
jne 0x496d82
cmp eax, 0xffffff
je 0x496d8b
xor eax, eax
mov dword [0x58f870], eax
push 0
lea eax, [ebp - 0x24c]
push eax
mov ecx, 0x499a5c
mov edx, 0x499548
mov eax, ebx
mov edi, dword [eax]
call dword [edi]
mov eax, dword [ebp - 0x24c]
mov edx, 0x4997f4
call fcn.00405474
jne 0x496e03
lea edx, [ebp - 0x254]
xor eax, eax
call fcn.00403144
mov eax, dword [ebp - 0x254]
lea edx, [ebp - 0x250]
call fcn.0040a434
lea eax, [ebp - 0x250]
mov edx, dword [0x58f828]
call fcn.00405330
mov eax, dword [ebp - 0x250]
call fcn.0049247c
cmp edx, 0
jne 0x496dfa
cmp eax, 0x40ffffff
je 0x496e03
xor eax, eax
mov dword [0x58f870], eax
push 0
lea eax, [ebp - 0x258]
push eax
mov ecx, 0x499a5c
mov edx, 0x499548
mov eax, ebx
mov edi, dword [eax]
call dword [edi]
mov eax, dword [ebp - 0x258]
mov edx, 0x499a6c
call fcn.00405474
jne 0x496e79
lea edx, [ebp - 0x260]
xor eax, eax
call fcn.00403144
mov eax, dword [ebp - 0x260]
lea edx, [ebp - 0x25c]
call fcn.0040a434
lea eax, [ebp - 0x25c]
mov edx, dword [0x58f828]
call fcn.00405330
mov eax, dword [ebp - 0x25c]
call fcn.0049247c
cmp edx, 0
jne 0x496e70
cmp eax, 0xffffffff
je 0x496e79
xor eax, eax
mov dword [0x58f870], eax
push 0
lea eax, [ebp - 0x264]
push eax
mov ecx, 0x499a5c
mov edx, 0x499548
mov eax, ebx
mov edi, dword [eax]
call dword [edi]
mov eax, dword [ebp - 0x264]
mov edx, 0x499a78
call fcn.00405474
jne 0x496eef
lea edx, [ebp - 0x26c]
xor eax, eax
call fcn.00403144
mov eax, dword [ebp - 0x26c]
lea edx, [ebp - 0x268]
call fcn.0040a434
lea eax, [ebp - 0x268]
mov edx, dword [0x58f828]
call fcn.00405330
mov eax, dword [ebp - 0x268]
call fcn.0049247c
cmp edx, 0
jne 0x496ee6
cmp eax, 0
je 0x496eef
xor eax, eax
mov dword [0x58f870], eax
cmp dword [0x58f870], 0
je 0x496f05
inc dword [0x58f864]
dec esi
jne 0x496bc2
cmp dword [0x58f870], 0
jne 0x497074
mov eax, dword [0x58f868]
push eax
mov ecx, 0x499a84
mov edx, 0x499548
mov eax, ebx
mov esi, dword [eax]
call dword [esi + 8]
mov dword [0x58f868], eax
mov esi, dword [0x58f868]
test esi, esi
jl 0x497008
inc esi
mov dword [0x58f864], 0
mov eax, dword [0x58f7b8]
push eax
lea eax, [ebp - 0x270]
push eax
lea edx, [ebp - 0x278]
mov eax, dword [0x58f864]
call fcn.00409c58
mov ecx, dword [ebp - 0x278]
lea eax, [ebp - 0x274]
mov edx, 0x499a94
call fcn.00405374
mov ecx, dword [ebp - 0x274]
mov edx, 0x499548
mov eax, ebx
mov edi, dword [eax]
call dword [edi]
mov edx, dword [ebp - 0x270]
mov eax, 0x58f7b8
call fcn.004050b8
lea ecx, [ebp - 0x27c]
mov edx, 0xa5d42
mov eax, dword [0x58f7b8]
call fcn.004930c4
mov edx, dword [ebp - 0x27c]
mov eax, 0x58f7b8
call fcn.004050b8
cmp dword [0x58f7bc], 0
je 0x496feb
push dword [0x58f7bc]
push 0x49978c
push dword [0x58f7b8]
mov eax, 0x58f7bc
mov edx, 3
call fcn.004053e8
jmp 0x496ffb
mov eax, 0x58f7bc
mov edx, dword [0x58f7b8]
call fcn.004050b8
inc dword [0x58f864]
dec esi
jne 0x496f47
mov eax, dword [0x58f7bc]
mov edx, 0x499798
call fcn.00405474
jne 0x49701f
mov byte [ebp - 0x15], 1
jmp 0x49704c
mov eax, dword [0x58f7bc]
mov dword [0x58f8a8], eax
cmp dword [0x58f8a8], 0
je 0x497041
mov eax, dword [0x58f8a8]
sub eax, 4
mov eax, dword [eax]
mov dword [0x58f8a8], eax
cmp dword [0x58f8a8], 0
sete byte [ebp - 0x15]
cmp byte [ebp - 0x15], 0
jne 0x49939e
push 0
push 0x49979c
mov eax, dword [0x58f7bc]
call fcn.00405528
push eax
push 0
call sub.user32.dll_MessageBoxA_1
jmp 0x49939e
mov eax, 0x58f7b8
call fcn.00405064
mov eax, 0x58f7bc
call fcn.00405064
movzx eax, byte [0x58f7b0]
push eax
mov ecx, 0x49976c
mov edx, 0x499548
mov eax, ebx
mov esi, dword [eax]
call dword [esi + 0x10]
mov byte [0x58f7b0], al
cmp byte [0x58f7b0], 1
jne 0x4975ed
cmp byte [0x58f7b1], 0
jne 0x4975ed
mov eax, dword [0x58f7b8]
push eax
lea eax, [ebp - 0x280]
push eax
mov ecx, 0x499810
mov edx, 0x499548
mov eax, ebx
mov esi, dword [eax]
call dword [esi]
mov edx, dword [ebp - 0x280]
mov eax, 0x58f7b8
call fcn.004050b8
lea ecx, [ebp - 0x284]
mov edx, 0x21a1134
mov eax, dword [0x58f7b8]
call fcn.004930c4
mov edx, dword [ebp - 0x284]
mov eax, 0x58f7b8
call fcn.004050b8
mov eax, 0x58f7f8
mov edx, dword [0x58f7b8]
call fcn.004050b8
mov eax, dword [0x58f818]
mov edx, 0x4995a0
call fcn.00405474
jne 0x49720b
mov dl, 1
mov eax, dword [0x4243d8]
call fcn.004244d8
mov edi, eax
cmp dword [0x58f86c], 0
jne 0x49715a
mov edx, 0x80000001
mov eax, edi
call fcn.004245b4
cmp dword [0x58f86c], 1
jne 0x49716f
mov edx, 0x80000002
mov eax, edi
call fcn.004245b4
push 0x4995e0
mov eax, dword [0x58f7c8]
call fcn.00405528
mov edx, eax
lea eax, [ebp - 0x28c]
call fcn.0040525c
push dword [ebp - 0x28c]
push 0x499608
lea eax, [ebp - 0x288]
mov edx, 3
call fcn.004053e8
mov edx, dword [ebp - 0x288]
mov cl, 1
mov eax, edi
call fcn.0042461c
mov ecx, dword [0x58f7b8]
mov edx, 0x499684
mov eax, edi
call fcn.00424b70
push 2
mov eax, dword [0x58f7b8]
call fcn.00409ea8
push eax
mov eax, dword [0x58f7cc]
call fcn.00405528
push eax
mov eax, dword [0x58f7c8]
call fcn.00405528
push eax
call fcn.00493130
mov ecx, eax
mov edx, 0x49966c
mov eax, edi
call fcn.00424c18
mov eax, edi
call fcn.00424584
mov eax, edi
call fcn.00404234
push 2
mov eax, dword [0x58f7b8]
call fcn.00409ea8
push eax
mov eax, dword [0x58f7cc]
call fcn.00405528
push eax
mov eax, dword [0x58f7c8]
call fcn.00405528
push eax
call fcn.00493130
lea edx, [ebp - 0x290]
call fcn.00409c58
mov edx, dword [ebp - 0x290]
mov eax, 0x58f7fc
call fcn.004050b8
mov eax, 0x58f7c4
mov edx, dword [0x58f7b8]
call fcn.004050b8
push 2
mov eax, dword [0x58f7c4]
call fcn.00409ea8
push eax
mov eax, dword [0x58f7cc]
call fcn.00405528
push eax
mov eax, dword [0x58f7c8]
call fcn.00405528
push eax
call fcn.00493130
test eax, eax
jg 0x4975ed
mov eax, dword [0x58f868]
push eax
mov ecx, 0x499aa4
mov edx, 0x499548
mov eax, ebx
mov esi, dword [eax]
call dword [esi + 8]
mov dword [0x58f868], eax
mov esi, dword [0x58f868]
test esi, esi
jl 0x497384
inc esi
mov dword [0x58f864], 0
mov eax, dword [0x58f7b8]
push eax
lea eax, [ebp - 0x294]
push eax
lea edx, [ebp - 0x29c]
mov eax, dword [0x58f864]
call fcn.00409c58
mov ecx, dword [ebp - 0x29c]
lea eax, [ebp - 0x298]
mov edx, 0x499810
call fcn.00405374
mov ecx, dword [ebp - 0x298]
mov edx, 0x499548
mov eax, ebx
mov edi, dword [eax]
call dword [edi]
mov edx, dword [ebp - 0x294]
mov eax, 0x58f7b8
call fcn.004050b8
lea ecx, [ebp - 0x2a0]
mov edx, 0x1c4c0987
mov eax, dword [0x58f7b8]
call fcn.004930c4
mov edx, dword [ebp - 0x2a0]
mov eax, 0x58f7b8
call fcn.004050b8
cmp dword [0x58f7bc], 0
je 0x497367
push dword [0x58f7bc]
push 0x49978c
push dword [0x58f7b8]
mov eax, 0x58f7bc
mov edx, 3
call fcn.004053e8
jmp 0x497377
mov eax, 0x58f7bc
mov edx, dword [0x58f7b8]
call fcn.004050b8
inc dword [0x58f864]
dec esi
jne 0x4972c3
movzx eax, byte [0x499844]
push eax
lea eax, [ebp - 0x2a4]
push eax
mov ecx, dword [0x58f7f8]
mov edx, 0x499850
mov eax, dword [0x58f7bc]
call fcn.0040f26c
mov edx, dword [ebp - 0x2a4]
mov eax, 0x58f7bc
call fcn.004050b8
movzx eax, byte [0x499844]
push eax
lea eax, [ebp - 0x2a8]
push eax
mov ecx, dword [0x58f7fc]
mov edx, 0x49985c
mov eax, dword [0x58f7bc]
call fcn.0040f26c
mov edx, dword [ebp - 0x2a8]
mov eax, 0x58f7bc
call fcn.004050b8
mov eax, 0x58f82c
mov edx, dword [0x58f7f8]
call fcn.004050b8
mov eax, 0x58f830
mov edx, dword [0x58f7fc]
call fcn.004050b8
push 0x499834
lea eax, [ebp - 0x2ac]
push eax
mov ecx, 0x499ab0
mov edx, 0x499548
mov eax, ebx
mov esi, dword [eax]
call dword [esi]
mov edx, dword [ebp - 0x2ac]
mov eax, 0x499834
call fcn.00405474
jne 0x4974a6
mov eax, dword [0x58f7bc]
mov edx, 0x499798
call fcn.00405474
jne 0x497451
mov byte [ebp - 0x16], 1
jmp 0x49747e
mov eax, dword [0x58f7bc]
mov dword [0x58f8ac], eax
cmp dword [0x58f8ac], 0
je 0x497473
mov eax, dword [0x58f8ac]
sub eax, 4
mov eax, dword [eax]
mov dword [0x58f8ac], eax
cmp dword [0x58f8ac], 0
sete byte [ebp - 0x16]
cmp byte [ebp - 0x16], 0
jne 0x49939e
push 0
push 0x49979c
mov eax, dword [0x58f7bc]
call fcn.00405528
push eax
push 0
call sub.user32.dll_MessageBoxA_1
jmp 0x49939e
push 0x44
push 0x49979c
mov eax, dword [0x58f7bc]
call fcn.00405528
push eax
push 0
call sub.user32.dll_MessageBoxA_1
cmp eax, 6
jne 0x49939e
mov eax, dword [0x58f808]
mov edx, 0x499834
call fcn.00405474
jne 0x497543
push 1
push 0
push 0
push 0x4998cc
push dword [0x58f80c]
push 0x4998dc
push dword [0x58f810]
push 0x4998fc
lea eax, [ebp - 0x2b4]
call fcn.0045bd08
push dword [ebp - 0x2b4]
push 0x499918
push dword [0x58f810]
push 0x499798
lea eax, [ebp - 0x2b0]
mov edx, 9
call fcn.004053e8
mov eax, dword [ebp - 0x2b0]
call fcn.00405528
push eax
push 0x499924
push 0
call sub.shell32.dll_ShellExecuteA
movzx eax, byte [0x499844]
push eax
lea eax, [ebp - 0x2b8]
push eax
lea eax, [ebp - 0x2bc]
call fcn.0045bd08
mov ecx, dword [ebp - 0x2bc]
mov edx, 0x499934
mov eax, dword [0x58f80c]
call fcn.0040f26c
mov edx, dword [ebp - 0x2b8]
mov eax, 0x58f814
call fcn.004050b8
movzx eax, byte [0x499844]
push eax
lea eax, [ebp - 0x2c0]
push eax
mov ecx, dword [0x58f810]
mov edx, 0x499948
mov eax, dword [0x58f814]
call fcn.0040f26c
mov edx, dword [ebp - 0x2c0]
mov eax, 0x58f814
call fcn.004050b8
mov eax, dword [0x58f808]
mov edx, 0x4995a0
call fcn.00405474
jne 0x49939e
push 1
push 0
push 0
mov eax, dword [0x58f814]
call fcn.00405528
push eax
push 0x499924
push 0
call sub.shell32.dll_ShellExecuteA
jmp 0x49939e
mov eax, 0x58f7b8
call fcn.00405064
mov eax, 0x58f7bc
call fcn.00405064
movzx eax, byte [0x58f7b0]
push eax
mov ecx, 0x499a6c
mov edx, 0x499548
mov eax, ebx
mov esi, dword [eax]
call dword [esi + 0x10]
mov byte [0x58f7b0], al
cmp byte [0x58f7b0], 1
jne 0x497d88
cmp byte [0x58f7b1], 0
jne 0x497d88
mov eax, dword [0x58f7b8]
push eax
lea eax, [ebp - 0x2c4]
push eax
mov ecx, 0x49981c
mov edx, 0x499548
mov eax, ebx
mov esi, dword [eax]
call dword [esi]
mov edx, dword [ebp - 0x2c4]
mov eax, 0x58f7b8
call fcn.004050b8
lea ecx, [ebp - 0x2c8]
mov edx, 0x2138ed55
mov eax, dword [0x58f7b8]
call fcn.004930c4
mov eax, dword [ebp - 0x2c8]
call fcn.00409ea8
mov esi, eax
lea edx, [ebp - 0x2cc]
movzx eax, si
call fcn.00409c58
mov edx, dword [ebp - 0x2cc]
mov eax, 0x58f7f4
call fcn.004050b8
lea edx, [ebp - 0x2d0]
movzx eax, si
call fcn.00409c58
mov edx, dword [ebp - 0x2d0]
mov eax, 0x58f7f8
call fcn.004050b8
mov eax, dword [0x58f7b8]
push eax
lea eax, [ebp - 0x2d4]
push eax
mov ecx, 0x499828
mov edx, 0x499548
mov eax, ebx
mov edi, dword [eax]
call dword [edi]
mov edx, dword [ebp - 0x2d4]
mov eax, 0x58f7b8
call fcn.004050b8
lea ecx, [ebp - 0x2d8]
mov edx, 0x39107155
mov eax, dword [0x58f7b8]
call fcn.004930c4
mov eax, dword [ebp - 0x2d8]
call fcn.00409ea8
mov word [0x58f874], ax
lea edx, [ebp - 0x2dc]
movzx eax, word [0x58f874]
call fcn.00409c58
mov edx, dword [ebp - 0x2dc]
mov eax, 0x58f7f4
call fcn.00405330
lea edx, [ebp - 0x2e0]
movzx eax, word [0x58f874]
call fcn.00409c58
mov edx, dword [ebp - 0x2e0]
mov eax, 0x58f7fc
call fcn.004050b8
mov eax, dword [0x58f7b8]
push eax
lea eax, [ebp - 0x2e4]
push eax
mov ecx, 0x499608
mov edx, 0x499548
mov eax, ebx
mov edi, dword [eax]
call dword [edi]
mov edx, dword [ebp - 0x2e4]
mov eax, 0x58f7b8
call fcn.004050b8
lea ecx, [ebp - 0x2e8]
mov edx, 0x9616955
mov eax, dword [0x58f7b8]
call fcn.004930c4
mov eax, dword [ebp - 0x2e8]
call fcn.00409ea8
mov word [0x58f876], ax
lea edx, [ebp - 0x2ec]
movzx eax, word [0x58f876]
call fcn.00409c58
mov edx, dword [ebp - 0x2ec]
mov eax, 0x58f7f4
call fcn.00405330
lea edx, [ebp - 0x2f0]
movzx eax, word [0x58f876]
call fcn.00409c58
mov edx, dword [ebp - 0x2f0]
mov eax, 0x58f800
call fcn.004050b8
call fcn.0040c038
add esp, 0xfffffff8
fstp qword [esp]
wait
movzx ecx, word [0x58f876]
movzx edx, word [0x58f874]
mov eax, esi
call fcn.0040be74
add esp, 0xfffffff8
fstp qword [esp]
wait
call fcn.0045b244
mov dword [ebp - 0x154], eax
fild dword [ebp - 0x154]
add esp, 0xfffffff4
fstp xword [esp]
wait
lea eax, [ebp - 0x2f4]
call fcn.0040bab8
mov edx, dword [ebp - 0x2f4]
mov eax, 0x58f7b8
call fcn.004050b8
mov eax, 0x58f804
mov edx, dword [0x58f7b8]
call fcn.004050b8
movzx ecx, word [0x58f876]
movzx edx, word [0x58f874]
mov eax, esi
call fcn.0040be74
fstp qword [ebp - 0x15c]
wait
call fcn.0040c038
fcomp qword [ebp - 0x15c]
wait
fnstsw ax
sahf
jbe 0x497899
mov eax, 0x58f804
mov edx, 0x499834
call fcn.004050b8
mov eax, dword [0x58f818]
mov edx, 0x4995a0
call fcn.00405474
jne 0x49795e
mov dl, 1
mov eax, dword [0x4243d8]
call fcn.004244d8
mov edi, eax
cmp dword [0x58f86c], 0
jne 0x4978d1
mov edx, 0x80000001
mov eax, edi
call fcn.004245b4
cmp dword [0x58f86c], 1
jne 0x4978e6
mov edx, 0x80000002
mov eax, edi
call fcn.004245b4
push 0x4995e0
mov eax, dword [0x58f7c8]
call fcn.00405528
mov edx, eax
lea eax, [ebp - 0x2fc]
call fcn.0040525c
push dword [ebp - 0x2fc]
push 0x499608
lea eax, [ebp - 0x2f8]
mov edx, 3
call fcn.004053e8
mov edx, dword [ebp - 0x2f8]
mov cl, 1
mov eax, edi
call fcn.0042461c
mov ecx, dword [0x58f7f4]
mov edx, 0x49969c
mov eax, edi
call fcn.00424b70
mov ecx, dword [0x58f7b8]
mov edx, 0x499abc
mov eax, edi
call fcn.00424b70
mov eax, edi
call fcn.00424584
mov eax, edi
call fcn.00404234
mov eax, dword [0x58f7b8]
call fcn.00409ea8
test eax, eax
jle 0x497d88
movzx ecx, word [0x58f876]
movzx edx, word [0x58f874]
mov eax, esi
call fcn.0040be74
fstp qword [ebp - 0x15c]
wait
call fcn.0040c038
fcomp qword [ebp - 0x15c]
wait
fnstsw ax
sahf
jbe 0x497d88
mov eax, dword [0x58f868]
push eax
mov ecx, 0x499ad4
mov edx, 0x499548
mov eax, ebx
mov esi, dword [eax]
call dword [esi + 8]
mov dword [0x58f868], eax
mov esi, dword [0x58f868]
test esi, esi
jl 0x497a97
inc esi
mov dword [0x58f864], 0
mov eax, dword [0x58f7b8]
push eax
lea eax, [ebp - 0x300]
push eax
lea edx, [ebp - 0x308]
mov eax, dword [0x58f864]
call fcn.00409c58
mov ecx, dword [ebp - 0x308]
lea eax, [ebp - 0x304]
mov edx, 0x499ae0
call fcn.00405374
mov ecx, dword [ebp - 0x304]
mov edx, 0x499548
mov eax, ebx
mov edi, dword [eax]
call dword [edi]
mov edx, dword [ebp - 0x300]
mov eax, 0x58f7b8
call fcn.004050b8
lea ecx, [ebp - 0x30c]
mov edx, 0x1b32f48b
mov eax, dword [0x58f7b8]
call fcn.004930c4
mov edx, dword [ebp - 0x30c]
mov eax, 0x58f7b8
call fcn.004050b8
cmp dword [0x58f7bc], 0
je 0x497a7a
push dword [0x58f7bc]
push 0x49978c
push dword [0x58f7b8]
mov eax, 0x58f7bc
mov edx, 3
call fcn.004053e8
jmp 0x497a8a
mov eax, 0x58f7bc
mov edx, dword [0x58f7b8]
call fcn.004050b8
inc dword [0x58f864]
dec esi
jne 0x4979d6
movzx eax, byte [0x499844]
push eax
lea eax, [ebp - 0x310]
push eax
mov ecx, dword [0x58f7f8]
mov edx, 0x499850
mov eax, dword [0x58f7bc]
call fcn.0040f26c
mov edx, dword [ebp - 0x310]
mov eax, 0x58f7bc
call fcn.004050b8
movzx eax, byte [0x499844]
push eax
lea eax, [ebp - 0x314]
push eax
mov ecx, dword [0x58f7fc]
mov edx, 0x49985c
mov eax, dword [0x58f7bc]
call fcn.0040f26c
mov edx, dword [ebp - 0x314]
mov eax, 0x58f7bc
call fcn.004050b8
movzx eax, byte [0x499844]
push eax
lea eax, [ebp - 0x318]
push eax
mov ecx, dword [0x58f800]
mov edx, 0x499868
mov eax, dword [0x58f7bc]
call fcn.0040f26c
mov edx, dword [ebp - 0x318]
mov eax, 0x58f7bc
call fcn.004050b8
movzx eax, byte [0x499844]
push eax
lea eax, [ebp - 0x31c]
push eax
mov ecx, dword [0x58f804]
mov edx, 0x499874
mov eax, dword [0x58f7bc]
call fcn.0040f26c
mov edx, dword [ebp - 0x31c]
mov eax, 0x58f7bc
call fcn.004050b8
mov eax, 0x58f834
mov edx, dword [0x58f7f8]
call fcn.004050b8
mov eax, 0x58f838
mov edx, dword [0x58f7fc]
call fcn.004050b8
mov eax, 0x58f83c
mov edx, dword [0x58f800]
call fcn.004050b8
mov eax, 0x58f840
mov edx, dword [0x58f804]
call fcn.004050b8
push 0x499834
lea eax, [ebp - 0x320]
push eax
mov ecx, 0x499aec
mov edx, 0x499548
mov eax, ebx
mov esi, dword [eax]
call dword [esi]
mov edx, dword [ebp - 0x320]
mov eax, 0x499834
call fcn.00405474
jne 0x497c41
mov eax, dword [0x58f7bc]
mov edx, 0x499798
call fcn.00405474
jne 0x497bec
mov byte [ebp - 0x17], 1
jmp 0x497c19
mov eax, dword [0x58f7bc]
mov dword [0x58f8b0], eax
cmp dword [0x58f8b0], 0
je 0x497c0e
mov eax, dword [0x58f8b0]
sub eax, 4
mov eax, dword [eax]
mov dword [0x58f8b0], eax
cmp dword [0x58f8b0], 0
sete byte [ebp - 0x17]
cmp byte [ebp - 0x17], 0
jne 0x49939e
push 0
push 0x49979c
mov eax, dword [0x58f7bc]
call fcn.00405528
push eax
push 0
call sub.user32.dll_MessageBoxA_1
jmp 0x49939e
push 0x44
push 0x49979c
mov eax, dword [0x58f7bc]
call fcn.00405528
push eax
push 0
call sub.user32.dll_MessageBoxA_1
cmp eax, 6
jne 0x49939e
mov eax, dword [0x58f808]
mov edx, 0x499834
call fcn.00405474
jne 0x497cde
push 1
push 0
push 0
push 0x4998cc
push dword [0x58f80c]
push 0x4998dc
push dword [0x58f810]
push 0x4998fc
lea eax, [ebp - 0x328]
call fcn.0045bd08
push dword [ebp - 0x328]
push 0x499918
push dword [0x58f810]
push 0x499798
lea eax, [ebp - 0x324]
mov edx, 9
call fcn.004053e8
mov eax, dword [ebp - 0x324]
call fcn.00405528
push eax
push 0x499924
push 0
call sub.shell32.dll_ShellExecuteA
movzx eax, byte [0x499844]
push eax
lea eax, [ebp - 0x32c]
push eax
lea eax, [ebp - 0x330]
call fcn.0045bd08
mov ecx, dword [ebp - 0x330]
mov edx, 0x499934
mov eax, dword [0x58f80c]
call fcn.0040f26c
mov edx, dword [ebp - 0x32c]
mov eax, 0x58f814
call fcn.004050b8
movzx eax, byte [0x499844]
push eax
lea eax, [ebp - 0x334]
push eax
mov ecx, dword [0x58f810]
mov edx, 0x499948
mov eax, dword [0x58f814]
call fcn.0040f26c
mov edx, dword [ebp - 0x334]
mov eax, 0x58f814
call fcn.004050b8
mov eax, dword [0x58f808]
mov edx, 0x4995a0
call fcn.00405474
jne 0x49939e
push 1
push 0
push 0
mov eax, dword [0x58f814]
call fcn.00405528
push eax
push 0x499924
push 0
call sub.shell32.dll_ShellExecuteA
jmp 0x49939e
mov eax, 0x58f7b8
call fcn.00405064
mov eax, 0x58f7bc
call fcn.00405064
movzx eax, byte [0x58f7b0]
push eax
mov ecx, 0x499a78
mov edx, 0x499548
mov eax, ebx
mov esi, dword [eax]
call dword [esi + 0x10]
mov byte [0x58f7b0], al
cmp byte [0x58f7b0], 1
jne 0x4982fb
cmp byte [0x58f7b1], 0
jne 0x4982fb
mov eax, dword [0x58f7b8]
push eax
lea eax, [ebp - 0x338]
push eax
mov ecx, 0x499840
mov edx, 0x499548
mov eax, ebx
mov esi, dword [eax]
call dword [esi]
mov edx, dword [ebp - 0x338]
mov eax, 0x58f7b8
call fcn.004050b8
lea ecx, [ebp - 0x33c]
mov edx, 0x291ba38
mov eax, dword [0x58f7b8]
call fcn.004930c4
mov edx, dword [ebp - 0x33c]
mov eax, 0x58f7b8
call fcn.004050b8
mov eax, 0x58f7f8
mov edx, dword [0x58f7b8]
call fcn.004050b8
mov eax, dword [0x58f818]
mov edx, 0x4995a0
call fcn.00405474
jne 0x497f1f
mov dl, 1
mov eax, dword [0x4243d8]
call fcn.004244d8
mov edi, eax
cmp dword [0x58f86c], 0
jne 0x497e6e
mov edx, 0x80000001
mov eax, edi
call fcn.004245b4
cmp dword [0x58f86c], 1
jne 0x497e83
mov edx, 0x80000002
mov eax, edi
call fcn.004245b4
push 0x4995e0
mov eax, dword [0x58f7c8]
call fcn.00405528
mov edx, eax
lea eax, [ebp - 0x344]
call fcn.0040525c
push dword [ebp - 0x344]
push 0x499608
lea eax, [ebp - 0x340]
mov edx, 3
call fcn.004053e8
mov edx, dword [ebp - 0x340]
mov cl, 1
mov eax, edi
call fcn.0042461c
mov ecx, dword [0x58f7b8]
mov edx, 0x4996e0
mov eax, edi
call fcn.00424b70
push 0
mov eax, dword [0x58f7b8]
call fcn.00409ea8
push eax
mov eax, dword [0x58f7cc]
call fcn.00405528
push eax
mov eax, dword [0x58f7c8]
call fcn.00405528
push eax
call fcn.00493418
mov ecx, eax
mov edx, 0x4996c8
mov eax, edi
call fcn.00424c18
mov eax, edi
call fcn.00424584
mov eax, edi
call fcn.00404234
push 1
mov eax, dword [0x58f7b8]
call fcn.00409ea8
push eax
mov eax, dword [0x58f7cc]
call fcn.00405528
push eax
mov eax, dword [0x58f7c8]
call fcn.00405528
push eax
call fcn.00493418
test eax, eax
jg 0x4982fb
mov eax, 0x58f7b8
call fcn.00405064
mov eax, dword [0x58f868]
push eax
mov ecx, 0x499af8
mov edx, 0x499548
mov eax, ebx
mov esi, dword [eax]
call dword [esi + 8]
mov dword [0x58f868], eax
mov esi, dword [0x58f868]
test esi, esi
jl 0x49804f
inc esi
mov dword [0x58f864], 0
mov eax, dword [0x58f7b8]
push eax
lea eax, [ebp - 0x348]
push eax
lea edx, [ebp - 0x350]
mov eax, dword [0x58f864]
call fcn.00409c58
mov ecx, dword [ebp - 0x350]
lea eax, [ebp - 0x34c]
mov edx, 0x499b08
call fcn.00405374
mov ecx, dword [ebp - 0x34c]
mov edx, 0x499548
mov eax, ebx
mov edi, dword [eax]
call dword [edi]
mov edx, dword [ebp - 0x348]
mov eax, 0x58f7b8
call fcn.004050b8
lea ecx, [ebp - 0x354]
mov edx, 0x202dcc59
mov eax, dword [0x58f7b8]
call fcn.004930c4
mov edx, dword [ebp - 0x354]
mov eax, 0x58f7b8
call fcn.004050b8
cmp dword [0x58f7bc], 0
je 0x498032
push dword [0x58f7bc]
push 0x49978c
push dword [0x58f7b8]
mov eax, 0x58f7bc
mov edx, 3
call fcn.004053e8
jmp 0x498042
mov eax, 0x58f7bc
mov edx, dword [0x58f7b8]
call fcn.004050b8
inc dword [0x58f864]
dec esi
jne 0x497f8e
movzx eax, byte [0x499844]
push eax
lea eax, [ebp - 0x358]
push eax
mov ecx, dword [0x58f7f8]
mov edx, 0x499850
mov eax, dword [0x58f7bc]
call fcn.0040f26c
mov edx, dword [ebp - 0x358]
mov eax, 0x58f7bc
call fcn.004050b8
mov eax, 0x58f844
mov edx, dword [0x58f7f8]
call fcn.004050b8
push 0
mov eax, dword [0x58f7f8]
call fcn.00409ea8
push eax
mov eax, dword [0x58f7cc]
call fcn.00405528
push eax
mov eax, dword [0x58f7c8]
call fcn.00405528
push eax
call fcn.00493418
lea edx, [ebp - 0x35c]
call fcn.00409c58
mov edx, dword [ebp - 0x35c]
mov eax, 0x58f7fc
call fcn.004050b8
movzx eax, byte [0x499844]
push eax
lea eax, [ebp - 0x360]
push eax
mov ecx, dword [0x58f7fc]
mov edx, 0x49985c
mov eax, dword [0x58f7bc]
call fcn.0040f26c
mov edx, dword [ebp - 0x360]
mov eax, 0x58f7bc
call fcn.004050b8
mov eax, 0x58f848
mov edx, dword [0x58f7fc]
call fcn.004050b8
push 0x499834
lea eax, [ebp - 0x364]
push eax
mov ecx, 0x499b14
mov edx, 0x499548
mov eax, ebx
mov esi, dword [eax]
call dword [esi]
mov edx, dword [ebp - 0x364]
mov eax, 0x499834
call fcn.00405474
jne 0x4981b4
mov eax, dword [0x58f7bc]
mov edx, 0x499798
call fcn.00405474
jne 0x49815f
mov byte [ebp - 0x18], 1
jmp 0x49818c
mov eax, dword [0x58f7bc]
mov dword [0x58f8b4], eax
cmp dword [0x58f8b4], 0
je 0x498181
mov eax, dword [0x58f8b4]
sub eax, 4
mov eax, dword [eax]
mov dword [0x58f8b4], eax
cmp dword [0x58f8b4], 0
sete byte [ebp - 0x18]
cmp byte [ebp - 0x18], 0
jne 0x49939e
push 0
push 0x49979c
mov eax, dword [0x58f7bc]
call fcn.00405528
push eax
push 0
call sub.user32.dll_MessageBoxA_1
jmp 0x49939e
push 0x44
push 0x49979c
mov eax, dword [0x58f7bc]
call fcn.00405528
push eax
push 0
call sub.user32.dll_MessageBoxA_1
cmp eax, 6
jne 0x49939e
mov eax, dword [0x58f808]
mov edx, 0x499834
call fcn.00405474
jne 0x498251
push 1
push 0
push 0
push 0x4998cc
push dword [0x58f80c]
push 0x4998dc
push dword [0x58f810]
push 0x4998fc
lea eax, [ebp - 0x36c]
call fcn.0045bd08
push dword [ebp - 0x36c]
push 0x499918
push dword [0x58f810]
push 0x499798
lea eax, [ebp - 0x368]
mov edx, 9
call fcn.004053e8
mov eax, dword [ebp - 0x368]
call fcn.00405528
push eax
push 0x499924
push 0
call sub.shell32.dll_ShellExecuteA
movzx eax, byte [0x499844]
push eax
lea eax, [ebp - 0x370]
push eax
lea eax, [ebp - 0x374]
call fcn.0045bd08
mov ecx, dword [ebp - 0x374]
mov edx, 0x499934
mov eax, dword [0x58f80c]
call fcn.0040f26c
mov edx, dword [ebp - 0x370]
mov eax, 0x58f814
call fcn.004050b8
movzx eax, byte [0x499844]
push eax
lea eax, [ebp - 0x378]
push eax
mov ecx, dword [0x58f810]
mov edx, 0x499948
mov eax, dword [0x58f814]
call fcn.0040f26c
mov edx, dword [ebp - 0x378]
mov eax, 0x58f814
call fcn.004050b8
mov eax, dword [0x58f808]
mov edx, 0x4995a0
call fcn.00405474
jne 0x49939e
push 1
push 0
push 0
mov eax, dword [0x58f814]
call fcn.00405528
push eax
push 0x499924
push 0
call sub.shell32.dll_ShellExecuteA
jmp 0x49939e
mov eax, 0x58f7b8
call fcn.00405064
mov eax, 0x58f7bc
call fcn.00405064
movzx eax, byte [0x58f7b0]
push eax
mov ecx, 0x499b24
mov edx, 0x499548
mov eax, ebx
mov esi, dword [eax]
call dword [esi + 0x10]
mov byte [0x58f7b0], al
cmp byte [0x58f7b0], 1
jne 0x4984a9
call fcn.00492ca8
cmp al, 1
jne 0x4984a9
mov eax, dword [0x58f868]
push eax
mov ecx, 0x499b30
mov edx, 0x499548
mov eax, ebx
mov esi, dword [eax]
call dword [esi + 8]
mov dword [0x58f868], eax
mov esi, dword [0x58f868]
test esi, esi
jl 0x49843d
inc esi
mov dword [0x58f864], 0
mov eax, dword [0x58f7b8]
push eax
lea eax, [ebp - 0x37c]
push eax
lea edx, [ebp - 0x384]
mov eax, dword [0x58f864]
call fcn.00409c58
mov ecx, dword [ebp - 0x384]
lea eax, [ebp - 0x380]
mov edx, 0x499b40
call fcn.00405374
mov ecx, dword [ebp - 0x380]
mov edx, 0x499548
mov eax, ebx
mov edi, dword [eax]
call dword [edi]
mov edx, dword [ebp - 0x37c]
mov eax, 0x58f7b8
call fcn.004050b8
lea ecx, [ebp - 0x388]
mov edx, 0x34b210
mov eax, dword [0x58f7b8]
call fcn.004930c4
mov edx, dword [ebp - 0x388]
mov eax, 0x58f7b8
call fcn.004050b8
cmp dword [0x58f7bc], 0
je 0x498420
push dword [0x58f7bc]
push 0x49978c
push dword [0x58f7b8]
mov eax, 0x58f7bc
mov edx, 3
call fcn.004053e8
jmp 0x498430
mov eax, 0x58f7bc
mov edx, dword [0x58f7b8]
call fcn.004050b8
inc dword [0x58f864]
dec esi
jne 0x49837c
mov eax, dword [0x58f7bc]
mov edx, 0x499798
call fcn.00405474
jne 0x498454
mov byte [ebp - 0x19], 1
jmp 0x498481
mov eax, dword [0x58f7bc]
mov dword [0x58f8b8], eax
cmp dword [0x58f8b8], 0
je 0x498476
mov eax, dword [0x58f8b8]
sub eax, 4
mov eax, dword [eax]
mov dword [0x58f8b8], eax
cmp dword [0x58f8b8], 0
sete byte [ebp - 0x19]
cmp byte [ebp - 0x19], 0
jne 0x49939e
push 0
push 0x49979c
mov eax, dword [0x58f7bc]
call fcn.00405528
push eax
push 0
call sub.user32.dll_MessageBoxA_1
jmp 0x49939e
mov eax, 0x58f7b8
call fcn.00405064
mov eax, 0x58f7bc
call fcn.00405064
movzx eax, byte [0x58f7b0]
push eax
mov ecx, 0x499b50
mov edx, 0x499548
mov eax, ebx
mov esi, dword [eax]
call dword [esi + 0x10]
mov byte [0x58f7b0], al
mov dl, 1
mov eax, dword [0x4243d8]
call fcn.004244d8
mov dword [0x58f880], eax
cmp dword [0x58f86c], 0
jne 0x498504
mov edx, 0x80000001
mov eax, dword [0x58f880]
call fcn.004245b4
cmp dword [0x58f86c], 1
jne 0x49851c
mov edx, 0x80000002
mov eax, dword [0x58f880]
call fcn.004245b4
push 0x499710
mov eax, dword [0x58f7c8]
call fcn.00405528
mov edx, eax
lea eax, [ebp - 0x390]
call fcn.0040525c
push dword [ebp - 0x390]
push 0x499724
lea eax, [ebp - 0x38c]
mov edx, 3
call fcn.004053e8
mov edx, dword [ebp - 0x38c]
mov cl, 1
mov eax, dword [0x58f880]
call fcn.0042461c
mov edx, 0x499628
mov eax, dword [0x58f880]
call fcn.00424d9c
cmp al, 1
jne 0x498625
mov edx, 0x499614
mov eax, dword [0x58f880]
call fcn.00424d9c
cmp al, 1
jne 0x498625
lea ecx, [ebp - 0x394]
mov edx, 0x499628
mov eax, dword [0x58f880]
call fcn.00424ba0
mov edx, dword [ebp - 0x394]
mov eax, 0x58f7d0
call fcn.004050b8
lea ecx, [ebp - 0x398]
mov edx, 0x499614
mov eax, dword [0x58f880]
call fcn.00424ba0
mov edx, dword [ebp - 0x398]
mov eax, 0x58f7d4
call fcn.004050b8
cmp dword [0x58f7d0], 0
je 0x498625
cmp dword [0x58f7d4], 0
je 0x498625
lea eax, [ebp - 0x39c]
mov ecx, dword [0x58f7cc]
mov edx, dword [0x58f7c8]
call fcn.00405374
mov eax, dword [ebp - 0x39c]
mov ecx, dword [0x58f7d0]
mov edx, dword [0x58f7d4]
call fcn.0045be94
test eax, eax
jne 0x499394
lea edx, [ebp - 0x3a0]
xor eax, eax
call fcn.00403144
lea eax, [ebp - 0x3a0]
mov edx, 0x4994f4
call fcn.00405330
mov eax, dword [ebp - 0x3a0]
call fcn.0040a240
cmp al, 1
jne 0x498680
lea edx, [ebp - 0x3a4]
xor eax, eax
call fcn.00403144
lea eax, [ebp - 0x3a4]
mov edx, 0x4994f4
call fcn.00405330
mov edx, dword [ebp - 0x3a4]
mov eax, dword [0x58f7a0]
call fcn.0041d644
jmp 0x498691
xor ecx, ecx
mov edx, 0x499504
mov eax, dword [0x58f7a0]
call fcn.00422780
push 0
push 0
mov eax, dword [0x58f7a0]
call fcn.0041ce74
xor ecx, ecx
mov dl, 1
mov eax, dword [0x4480b8]
call fcn.004593a0
mov dword [0x58f79c], eax
xor ecx, ecx
mov edx, dword [0x58f7a0]
mov eax, dword [0x58f79c]
call fcn.00458cf0
mov eax, 0x58f7b8
call fcn.00405064
mov eax, 0x58f7bc
call fcn.00405064
mov byte [0x58f7b2], 0
movzx eax, byte [0x58f7b0]
push eax
mov ecx, 0x499b5c
mov edx, 0x499548
mov eax, ebx
mov esi, dword [eax]
call dword [esi + 0x10]
mov byte [0x58f7b0], al
cmp byte [0x58f7b0], 1
jne 0x498916
mov eax, dword [0x58f7ec]
push eax
lea eax, [ebp - 0x3a8]
push eax
mov ecx, 0x499b68
mov edx, 0x499548
mov eax, ebx
mov esi, dword [eax]
call dword [esi]
mov edx, dword [ebp - 0x3a8]
mov eax, 0x58f7ec
call fcn.004050b8
lea eax, [ebp - 0x3ac]
push eax
lea edx, [ebp - 0x3b0]
xor eax, eax
call fcn.00403144
mov eax, dword [ebp - 0x3b0]
mov ecx, 0x5f370
mov edx, 0x1388
call fcn.0041100c
mov edx, dword [ebp - 0x3ac]
mov eax, 0x58f7f0
call fcn.004050b8
lea edx, [ebp - 0x3b4]
mov eax, dword [0x58f7ec]
call fcn.00409468
mov eax, dword [ebp - 0x3b4]
push eax
lea edx, [ebp - 0x3b8]
mov eax, dword [0x58f7f0]
call fcn.00409468
mov edx, dword [ebp - 0x3b8]
pop eax
call fcn.00405474
je 0x498909
mov eax, dword [0x58f868]
push eax
mov ecx, 0x499b78
mov edx, 0x499548
mov eax, ebx
mov esi, dword [eax]
call dword [esi + 8]
mov dword [0x58f868], eax
mov esi, dword [0x58f868]
test esi, esi
jl 0x49889f
inc esi
mov dword [0x58f864], 0
mov eax, dword [0x58f7b8]
push eax
lea eax, [ebp - 0x3bc]
push eax
lea edx, [ebp - 0x3c4]
mov eax, dword [0x58f864]
call fcn.00409c58
mov ecx, dword [ebp - 0x3c4]
lea eax, [ebp - 0x3c0]
mov edx, 0x499b5c
call fcn.00405374
mov ecx, dword [ebp - 0x3c0]
mov edx, 0x499548
mov eax, ebx
mov edi, dword [eax]
call dword [edi]
mov edx, dword [ebp - 0x3bc]
mov eax, 0x58f7b8
call fcn.004050b8
lea ecx, [ebp - 0x3c8]
mov edx, 0x5317ff
mov eax, dword [0x58f7b8]
call fcn.004930c4
mov edx, dword [ebp - 0x3c8]
mov eax, 0x58f7b8
call fcn.004050b8
cmp dword [0x58f7bc], 0
je 0x498882
push dword [0x58f7bc]
push 0x49978c
push dword [0x58f7b8]
mov eax, 0x58f7bc
mov edx, 3
call fcn.004053e8
jmp 0x498892
mov eax, 0x58f7bc
mov edx, dword [0x58f7b8]
call fcn.004050b8
inc dword [0x58f864]
dec esi
jne 0x4987de
mov byte [0x58f7b2], 1
mov eax, dword [0x58f7bc]
mov edx, 0x499798
call fcn.00405474
jne 0x4988bd
mov byte [ebp - 0x1a], 1
jmp 0x4988ea
mov eax, dword [0x58f7bc]
mov dword [0x58f8bc], eax
cmp dword [0x58f8bc], 0
je 0x4988df
mov eax, dword [0x58f8bc]
sub eax, 4
mov eax, dword [eax]
mov dword [0x58f8bc], eax
cmp dword [0x58f8bc], 0
sete byte [ebp - 0x1a]
cmp byte [ebp - 0x1a], 0
jne 0x498909
push 0
push 0x49979c
mov eax, dword [0x58f7bc]
call fcn.00405528
push eax
push 0
call sub.user32.dll_MessageBoxA_1
cmp byte [0x58f7b2], 1
je 0x499377
mov eax, dword [0x58f7b8]
push eax
lea eax, [ebp - 0x3d0]
push eax
mov ecx, 0x499b88
mov edx, 0x499548
mov eax, ebx
mov esi, dword [eax]
call dword [esi]
mov eax, dword [ebp - 0x3d0]
lea ecx, [ebp - 0x3cc]
mov edx, 0x4531ea
call fcn.004930c4
mov edx, dword [ebp - 0x3cc]
mov eax, 0x58f7b8
call fcn.004050b8
lea edx, [ebp - 0x3d8]
mov eax, dword [0x58f79c]
call fcn.00450280
mov eax, dword [ebp - 0x3d8]
lea ecx, [ebp - 0x3d4]
mov edx, 0x1c5
call fcn.00493058
mov edx, dword [ebp - 0x3d4]
mov eax, dword [0x58f79c]
mov ecx, dword [eax]
call dword [ecx + 0x30]
lea eax, [ebp - 0x3dc]
mov edx, dword [0x58f7b8]
call fcn.00405a3c
mov edx, dword [ebp - 0x3dc]
mov ecx, dword [0x58f7a8]
mov eax, dword [0x58f79c]
call fcn.00458eec
mov eax, 0x58f85c
mov edx, dword [0x58f7b8]
call fcn.004050b8
push 0
push 0
mov eax, dword [0x58f7a8]
call fcn.0041ce74
mov eax, 0x58f854
mov edx, 0x499834
call fcn.004050b8
mov eax, 0x58f860
mov edx, 0x499834
call fcn.004050b8
mov eax, dword [0x58f854]
push eax
lea eax, [ebp - 0x3e0]
push eax
mov ecx, 0x499b94
mov edx, 0x499548
mov eax, ebx
mov esi, dword [eax]
call dword [esi]
mov edx, dword [ebp - 0x3e0]
mov eax, 0x58f854
call fcn.004050b8
mov eax, dword [0x58f854]
mov edx, 0x4995a0
call fcn.00405474
jne 0x498a39
mov byte [0x58f7b4], 1
jmp 0x498a40
mov byte [0x58f7b4], 0
mov eax, dword [0x58f860]
push eax
lea eax, [ebp - 0x3e4]
push eax
mov ecx, 0x499ba4
mov edx, 0x499548
mov eax, ebx
mov esi, dword [eax]
call dword [esi]
mov edx, dword [ebp - 0x3e4]
mov eax, 0x58f860
call fcn.004050b8
mov eax, dword [0x58f860]
mov edx, 0x4995a0
call fcn.00405474
jne 0x498a87
mov byte [0x58f7b5], 1
jmp 0x498a8e
mov byte [0x58f7b5], 0
cmp byte [0x58f7b5], 1
je 0x498aa4
cmp byte [0x58f7b4], 1
jne 0x498c00
push 0x499bac
call fcn.0041091d
call fcn.00410688
push 0xffffffffffffffff
push 1
call fcn.00410b6b
push 0xffffffffffffffff
push 2
call fcn.00410b6b
push 0
lea eax, [ebp - 0x3e8]
push eax
mov ecx, 0x499ba4
mov edx, 0x499548
mov eax, ebx
mov esi, dword [eax]
call dword [esi]
mov eax, dword [ebp - 0x3e8]
mov edx, 0x4995a0
call fcn.00405474
jne 0x498be5
lea edx, [ebp - 0x3f0]
xor eax, eax
call fcn.00403144
mov eax, dword [ebp - 0x3f0]
lea edx, [ebp - 0x3ec]
call fcn.0040a434
mov edx, dword [ebp - 0x3ec]
mov eax, dword [0x58f79c]
add eax, 0x50
call fcn.00405a3c
push 0
mov ecx, 0x28bf
mov edx, 0x499bd8
mov eax, dword [0x58f79c]
call fcn.004592ac
lea edx, [ebp - 0x3f8]
xor eax, eax
call fcn.00403144
mov eax, dword [ebp - 0x3f8]
lea edx, [ebp - 0x3f4]
call fcn.0040a434
lea eax, [ebp - 0x3f4]
mov edx, dword [0x58f858]
call fcn.00405330
mov eax, dword [ebp - 0x3f4]
mov dword [0x58f8c0], eax
mov eax, dword [0x58f8c0]
call fcn.00405528
push eax
call sub.kernel32.dll_DeleteFileA_1
cmp eax, 1
sbb eax, eax
inc eax
mov byte [0x58f8c4], al
lea edx, [ebp - 0x400]
xor eax, eax
call fcn.00403144
mov eax, dword [ebp - 0x400]
lea edx, [ebp - 0x3fc]
call fcn.0040a434
lea eax, [ebp - 0x3fc]
mov edx, dword [0x58f85c]
call fcn.00405330
mov eax, dword [ebp - 0x3fc]
mov dword [0x58f8c8], eax
mov eax, dword [0x58f8c8]
call fcn.00405528
push eax
call sub.kernel32.dll_DeleteFileA_1
cmp eax, 1
sbb eax, eax
inc eax
mov byte [0x58f8cc], al
cmp byte [0x58f7b4], 0
jne 0x498c00
push 0
push 1
call fcn.00410b6b
push 0
push 2
call fcn.00410b6b
mov eax, dword [0x58f79c]
call fcn.00458db0
mov eax, dword [0x58f79c]
call fcn.00404234
lea edx, [ebp - 0x404]
mov eax, 1
call fcn.00403144
cmp dword [ebp - 0x404], 0
je 0x498c5c
push 0x499be8
lea edx, [ebp - 0x408]
mov eax, 1
call fcn.00403144
push dword [ebp - 0x408]
push 0x499be8
mov eax, 0x58f7d8
mov edx, 3
call fcn.004053e8
lea edx, [ebp - 0x40c]
mov eax, 2
call fcn.00403144
cmp dword [ebp - 0x40c], 0
je 0x498caa
push dword [0x58f7d8]
push 0x499bf4
lea edx, [ebp - 0x410]
mov eax, 2
call fcn.00403144
push dword [ebp - 0x410]
push 0x499be8
mov eax, 0x58f7d8
mov edx, 4
call fcn.004053e8
lea edx, [ebp - 0x414]
mov eax, 3
call fcn.00403144
cmp dword [ebp - 0x414], 0
je 0x498cf8
push dword [0x58f7d8]
push 0x499bf4
lea edx, [ebp - 0x418]
mov eax, 3
call fcn.00403144
push dword [ebp - 0x418]
push 0x499be8
mov eax, 0x58f7d8
mov edx, 4
call fcn.004053e8
lea edx, [ebp - 0x41c]
mov eax, 4
call fcn.00403144
cmp dword [ebp - 0x41c], 0
je 0x498d46
push dword [0x58f7d8]
push 0x499bf4
lea edx, [ebp - 0x420]
mov eax, 4
call fcn.00403144
push dword [ebp - 0x420]
push 0x499be8
mov eax, 0x58f7d8
mov edx, 4
call fcn.004053e8
lea edx, [ebp - 0x424]
mov eax, 5
call fcn.00403144
cmp dword [ebp - 0x424], 0
je 0x498d94
push dword [0x58f7d8]
push 0x499bf4
lea edx, [ebp - 0x428]
mov eax, 5
call fcn.00403144
push dword [ebp - 0x428]
push 0x499be8
mov eax, 0x58f7d8
mov edx, 4
call fcn.004053e8
lea edx, [ebp - 0x42c]
mov eax, 6
call fcn.00403144
cmp dword [ebp - 0x42c], 0
je 0x498de2
push dword [0x58f7d8]
push 0x499bf4
lea edx, [ebp - 0x430]
mov eax, 6
call fcn.00403144
push dword [ebp - 0x430]
push 0x499be8
mov eax, 0x58f7d8
mov edx, 4
call fcn.004053e8
lea edx, [ebp - 0x434]
mov eax, 7
call fcn.00403144
cmp dword [ebp - 0x434], 0
je 0x498e30
push dword [0x58f7d8]
push 0x499bf4
lea edx, [ebp - 0x438]
mov eax, 7
call fcn.00403144
push dword [ebp - 0x438]
push 0x499be8
mov eax, 0x58f7d8
mov edx, 4
call fcn.004053e8
lea edx, [ebp - 0x43c]
mov eax, 8
call fcn.00403144
cmp dword [ebp - 0x43c], 0
je 0x498e7e
push dword [0x58f7d8]
push 0x499bf4
lea edx, [ebp - 0x440]
mov eax, 8
call fcn.00403144
push dword [ebp - 0x440]
push 0x499be8
mov eax, 0x58f7d8
mov edx, 4
call fcn.004053e8
mov eax, dword [0x58f84c]
push eax
lea eax, [ebp - 0x448]
push eax
mov ecx, 0x499c00
mov edx, 0x499548
mov eax, ebx
mov esi, dword [eax]
call dword [esi]
mov eax, dword [ebp - 0x448]
lea edx, [ebp - 0x444]
call fcn.0045b6cc
mov edx, dword [ebp - 0x444]
mov eax, 0x58f84c
call fcn.004050b8
cmp dword [0x58f84c], 0
je 0x498ee5
push dword [0x58f84c]
push 0x499798
push dword [0x58f7d8]
mov eax, 0x58f7d8
mov edx, 3
call fcn.004053e8
push 0
lea eax, [ebp - 0x44c]
push eax
mov ecx, 0x499c10
mov edx, 0x499548
mov eax, ebx
mov esi, dword [eax]
call dword [esi]
mov edx, dword [ebp - 0x44c]
mov eax, 0x58f81c
call fcn.004050b8
mov eax, 0x4995a0
mov edx, dword [0x58f81c]
call fcn.00405474
jne 0x499149
cmp byte [0x58f7b1], 1
jne 0x49935c
lea edx, [ebp - 0x450]
mov eax, 1
call fcn.00403144
mov eax, dword [ebp - 0x450]
mov edx, 0x499734
call fcn.00405474
je 0x499055
cmp byte [0x58f7b4], 0
jne 0x498f72
xor ecx, ecx
mov edx, dword [0x58f7d8]
mov eax, dword [0x58f7a8]
call fcn.0042282c
cmp byte [0x58f7b4], 1
jne 0x49935c
lea edx, [ebp - 0x454]
xor eax, eax
call fcn.00403144
lea eax, [ebp - 0x454]
mov edx, 0x499c20
call fcn.00405330
mov edx, dword [ebp - 0x454]
mov eax, dword [0x58f7a8]
call fcn.0041d570
push 0x4000100
lea edx, [ebp - 0x458]
xor eax, eax
call fcn.00403144
lea eax, [ebp - 0x458]
mov edx, 0x499c20
call fcn.00405330
mov eax, dword [ebp - 0x458]
call fcn.00405528
push eax
call sub.kernel32.dll_SetFileAttributesA
push 2
lea edx, [ebp - 0x45c]
xor eax, eax
call fcn.00403144
lea eax, [ebp - 0x45c]
mov edx, 0x499c20
call fcn.00405330
mov eax, dword [ebp - 0x45c]
call fcn.00405528
push eax
call sub.kernel32.dll_SetFileAttributesA
push 1
push 0
mov eax, dword [0x58f7d8]
call fcn.00405528
push eax
lea edx, [ebp - 0x460]
xor eax, eax
call fcn.00403144
lea eax, [ebp - 0x460]
mov edx, 0x499c20
call fcn.00405330
mov eax, dword [ebp - 0x460]
call fcn.00405528
push eax
push 0
push 0
call sub.shell32.dll_ShellExecuteA
jmp 0x49935c
cmp byte [0x58f7b4], 0
jne 0x49906c
xor ecx, ecx
xor edx, edx
mov eax, dword [0x58f7a8]
call fcn.0042282c
cmp byte [0x58f7b4], 1
jne 0x49935c
lea edx, [ebp - 0x464]
xor eax, eax
call fcn.00403144
lea eax, [ebp - 0x464]
mov edx, 0x499c20
call fcn.00405330
mov edx, dword [ebp - 0x464]
mov eax, dword [0x58f7a8]
call fcn.0041d570
push 0x4000100
lea edx, [ebp - 0x468]
xor eax, eax
call fcn.00403144
lea eax, [ebp - 0x468]
mov edx, 0x499c20
call fcn.00405330
mov eax, dword [ebp - 0x468]
call fcn.00405528
push eax
call sub.kernel32.dll_SetFileAttributesA
push 2
lea edx, [ebp - 0x46c]
xor eax, eax
call fcn.00403144
lea eax, [ebp - 0x46c]
mov edx, 0x499c20
call fcn.00405330
mov eax, dword [ebp - 0x46c]
call fcn.00405528
push eax
call sub.kernel32.dll_SetFileAttributesA
push 1
push 0
push 0x49979c
lea edx, [ebp - 0x470]
xor eax, eax
call fcn.00403144
lea eax, [ebp - 0x470]
mov edx, 0x499c20
call fcn.00405330
mov eax, dword [ebp - 0x470]
call fcn.00405528
push eax
push 0
push 0
call sub.shell32.dll_ShellExecuteA
jmp 0x49935c
lea edx, [ebp - 0x474]
mov eax, 1
call fcn.00403144
mov eax, dword [ebp - 0x474]
mov edx, 0x499734
call fcn.00405474
je 0x49926d
cmp byte [0x58f7b4], 0
jne 0x49918a
xor ecx, ecx
mov edx, dword [0x58f7d8]
mov eax, dword [0x58f7a8]
call fcn.0042282c
cmp byte [0x58f7b4], 1
jne 0x49935c
lea edx, [ebp - 0x478]
xor eax, eax
call fcn.00403144
lea eax, [ebp - 0x478]
mov edx, 0x499c20
call fcn.00405330
mov edx, dword [ebp - 0x478]
mov eax, dword [0x58f7a8]
call fcn.0041d570
push 0x4000100
lea edx, [ebp - 0x47c]
xor eax, eax
call fcn.00403144
lea eax, [ebp - 0x47c]
mov edx, 0x499c20
call fcn.00405330
mov eax, dword [ebp - 0x47c]
call fcn.00405528
push eax
call sub.kernel32.dll_SetFileAttributesA
push 2
lea edx, [ebp - 0x480]
xor eax, eax
call fcn.00403144
lea eax, [ebp - 0x480]
mov edx, 0x499c20
call fcn.00405330
mov eax, dword [ebp - 0x480]
call fcn.00405528
push eax
call sub.kernel32.dll_SetFileAttributesA
push 1
push 0
mov eax, dword [0x58f7d8]
call fcn.00405528
push eax
lea edx, [ebp - 0x484]
xor eax, eax
call fcn.00403144
lea eax, [ebp - 0x484]
mov edx, 0x499c20
call fcn.00405330
mov eax, dword [ebp - 0x484]
call fcn.00405528
push eax
push 0
push 0
call sub.shell32.dll_ShellExecuteA
jmp 0x49935c
cmp byte [0x58f7b4], 0
jne 0x499284
xor ecx, ecx
xor edx, edx
mov eax, dword [0x58f7a8]
call fcn.0042282c
cmp byte [0x58f7b4], 1
jne 0x49935c
lea edx, [ebp - 0x488]
xor eax, eax
call fcn.00403144
lea eax, [ebp - 0x488]
mov edx, 0x499c20
call fcn.00405330
mov edx, dword [ebp - 0x488]
mov eax, dword [0x58f7a8]
call fcn.0041d570
push 0x4000100
lea edx, [ebp - 0x48c]
xor eax, eax
call fcn.00403144
lea eax, [ebp - 0x48c]
mov edx, 0x499c20
call fcn.00405330
mov eax, dword [ebp - 0x48c]
call fcn.00405528
push eax
call sub.kernel32.dll_SetFileAttributesA
push 2
lea edx, [ebp - 0x490]
xor eax, eax
call fcn.00403144
lea eax, [ebp - 0x490]
mov edx, 0x499c20
call fcn.00405330
mov eax, dword [ebp - 0x490]
call fcn.00405528
push eax
call sub.kernel32.dll_SetFileAttributesA
push 1
push 0
push 0x49979c
lea edx, [ebp - 0x494]
xor eax, eax
call fcn.00403144
lea eax, [ebp - 0x494]
mov edx, 0x499c20
call fcn.00405330
mov eax, dword [ebp - 0x494]
call fcn.00405528
push eax
push 0
push 0
call sub.shell32.dll_ShellExecuteA
cmp byte [0x58f7b4], 1
jne 0x499377
push 0
push 1
call fcn.00410b6b
push 0
push 2
call fcn.00410b6b
cmp byte [0x58f7b2], 1
jne 0x499394
mov eax, dword [0x58f79c]
call fcn.00458db0
mov eax, dword [0x58f79c]
call fcn.00404234
mov eax, dword [0x58f880]
call fcn.00404234
mov eax, ebx
call fcn.00404234
mov eax, dword [0x58f7ac]
call fcn.00404234
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
push 0x4993e2
mov eax, dword [0x58f7a0]
call fcn.00404234
mov eax, dword [0x58f7a4]
call fcn.00404234
mov eax, dword [0x58f7a8]
call fcn.00404234
ret
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
push 0x49946d
lea eax, [ebp - 0x494]
mov edx, 0x2e
call fcn.00405088
lea eax, [ebp - 0x3dc]
call fcn.00405870
lea eax, [ebp - 0x3d8]
mov edx, 0x34
call fcn.00405088
lea eax, [ebp - 0x300]
call fcn.00405064
lea eax, [ebp - 0x308]
mov edx, 2
call fcn.00405088
lea eax, [ebp - 0x2fc]
mov edx, 0x62
call fcn.00405088
lea eax, [ebp - 0x174]
mov edx, 6
call fcn.00405088
lea eax, [ebp - 0x150]
mov edx, 0x4d
call fcn.00405088
ret