Function at 0x455513
Capabilities:
Check for time delay via gettickcount

Disassembly:
push ebp
lea ebp, [esp - 0x70]
sub esp, 0x30c
push ebx
push esi
push edi
lea ecx, [ebp - 0x24]
call fcn.0040d5b8
lea ecx, [ebp - 0x24]
call fcn.0040d5ac
neg eax
sbb eax, eax
inc eax
push 0x3e8
lea ecx, [ebp + 0x2c]
mov dword [ebp - 0x1c], eax
call fcn.0042c827
mov edi, dword [ebp + 0x78]
lea eax, [ebp + 0x64]
xor ebx, ebx
add edi, 0xc
push eax
mov dword [ebp + 0x44], ebx
mov dword [ebp + 0x64], edi
call fcn.00403c83
pop ecx
lea ecx, [ebp + 0x24]
call fcn.0042c809
lea ecx, [ebp - 0x20]
call fcn.0042c809
lea ecx, [ebp + 0x60]
call fcn.0042c809
lea ecx, [ebp + 0x28]
call fcn.0042c809
lea ecx, [ebp + 4]
call fcn.0042c809
lea ecx, [ebp + 0x38]
call fcn.0042c809
lea ecx, [ebp + 8]
call fcn.0042c809
lea ecx, [ebp]
call fcn.0042c809
lea ecx, [ebp + 0x4c]
call fcn.0042c809
lea ecx, [ebp + 0xc]
call fcn.0042c809
lea ecx, [ebp + 0x20]
call fcn.0042c809
or esi, 0xffffffff
cmp word [edi], 0x2a
mov dword [ebp - 0x18], esi
sete byte [ebp + 0x52]
cmp byte [ebp + 0x52], bl
mov dword [ebp - 0x14], esi
mov dword [ebp - 8], esi
mov dword [ebp - 4], esi
mov dword [ebp - 0x10], ebx
mov dword [ebp - 0xc], ebx
mov dword [ebp + 0x18], ebx
mov dword [ebp + 0x10], ebx
mov dword [ebp + 0x14], ebx
je 0x455cc2
inc edi
push 0xc8
lea ecx, [ebp + 0x54]
inc edi
mov dword [ebp + 0x48], 0x480934
call fcn.0042c827
mov esi, dword [ebp + 0x64]
mov ax, word [esi]
mov word [ebp + 0x34], ax
mov word [esi], bx
mov dword [ebp + 0x5c], edi
jmp 0x455615
cmp ax, 0x2a
je 0x45561d
inc edi
inc edi
mov ax, word [edi]
cmp ax, bx
jne 0x45560d
cmp word [ebp + 0x34], bx
mov dword [ebp + 0x6c], esi
je 0x45562c
lea eax, [esi + 2]
mov dword [ebp + 0x6c], eax
lea eax, [ebp + 0x6c]
push eax
call fcn.00427312
pop ecx
push 2
lea eax, [ebp + 0x6c]
push eax
push 0x483ee8
call fcn.0042e31d
add esp, 0xc
test al, al
je 0x455656
mov dword [ebp + 0x48], 0x480934
jmp 0x455636
push 3
lea eax, [ebp + 0x6c]
push eax
push 0x487250
call fcn.0042e31d
add esp, 0xc
test al, al
je 0x455676
mov dword [ebp + 0x48], 0x4884c4
jmp 0x455636
push 4
lea eax, [ebp + 0x6c]
push eax
push str._map
call fcn.0042e31d
add esp, 0xc
test al, al
je 0x455696
mov dword [ebp + 0x18], 1
jmp 0x455636
push 4
lea eax, [ebp + 0x6c]
push eax
push str._exe
call fcn.0042e31d
add esp, 0xc
test al, al
je 0x4556b6
mov dword [ebp + 0x44], 1
jmp 0x455636
push 5
lea eax, [ebp + 0x6c]
push eax
push str._nexe
call fcn.0042e31d
add esp, 0xc
test al, al
je 0x4556d9
mov dword [ebp + 0x44], 0xfff00000
jmp 0x455636
mov eax, edi
sub eax, dword [ebp + 0x5c]
lea ecx, [ebp + 0x24]
sar eax, 1
push eax
push dword [ebp + 0x5c]
call fcn.0042c92f
mov eax, dword [ebp + 0x24]
cmp word [eax], bx
je 0x455755
mov esi, 0x4884a8
push esi
lea ecx, [ebp + 0x6c]
call fcn.004365ba
push dword [ebp + 0x24]
lea ecx, [ebp + 0x6c]
call fcn.0042c877
push esi
lea ecx, [ebp + 0x6c]
call fcn.0042c877
mov ecx, dword [ebp + 0x7c]
push ebx
push ebx
lea eax, [ebp + 0x2c]
push eax
push dword [ebp + 0x6c]
call fcn.0043c527
mov ecx, dword [ebp + 0x2c]
mov ax, word [ecx]
cmp ax, bx
je 0x45573d
cmp ax, 0x2a
je 0x45573d
mov word [ecx], 0x3f
push 0x3e8
lea ecx, [ebp + 0x2c]
call fcn.0042c850
lea ecx, [ebp + 0x6c]
call fcn.00427365
mov esi, dword [ebp + 0x64]
cmp word [edi], 0x2a
jne 0x455cb6
inc edi
inc edi
cmp word [edi], 0x40
mov dword [ebp + 0x3c], ebx
mov dword [ebp + 0x40], ebx
mov dword [ebp + 0x58], ebx
mov dword [ebp + 0x5c], ebx
mov byte [ebp + 0x7b], bl
mov dword [ebp + 0x6c], edi
jne 0x455782
inc edi
inc edi
mov byte [ebp + 0x7b], 1
mov dword [ebp + 0x6c], edi
lea eax, [ebp - 0x18]
push eax
lea eax, [ebp + 0x6c]
push eax
call fcn.004309e1
mov eax, dword [ebp + 0x6c]
cmp word [eax], bx
pop ecx
pop ecx
je 0x45579d
add dword [ebp + 0x6c], 2
lea eax, [ebp - 8]
push eax
lea eax, [ebp + 0x6c]
push eax
call fcn.004309e1
mov eax, dword [ebp + 0x6c]
cmp word [eax], bx
pop ecx
pop ecx
je 0x4557b8
add dword [ebp + 0x6c], 2
lea eax, [ebp - 0x10]
push eax
lea eax, [ebp + 0x6c]
push eax
call fcn.004309e1
mov esi, dword [ebp + 0x6c]
cmp word [esi], bx
pop ecx
pop ecx
je 0x4557d4
inc esi
inc esi
mov dword [ebp + 0x6c], esi
push 0x2a
lea eax, [ebp + 0x6c]
call fcn.0042c33c
mov edi, dword [ebp + 0x6c]
mov eax, edi
pop ecx
sub eax, esi
sar eax, 1
push eax
push esi
lea ecx, [ebp + 0x20]
call fcn.0042c92f
cmp word [edi], bx
je 0x4557fb
add dword [ebp + 0x6c], 2
mov esi, dword [ebp + 0x6c]
push 0x2a
lea eax, [ebp + 0x6c]
call fcn.0042c33c
mov edi, dword [ebp + 0x6c]
mov eax, edi
pop ecx
sub eax, esi
sar eax, 1
push eax
push esi
lea ecx, [ebp + 0x4c]
call fcn.0042c92f
cmp word [edi], bx
je 0x455825
add dword [ebp + 0x6c], 2
lea eax, [ebp + 0x3c]
push eax
lea eax, [ebp + 0x6c]
push eax
call fcn.004309e1
mov esi, dword [ebp + 0x6c]
cmp word [esi], bx
pop ecx
pop ecx
je 0x455841
inc esi
inc esi
mov dword [ebp + 0x6c], esi
push 0x2a
lea eax, [ebp + 0x6c]
call fcn.0042c33c
mov eax, dword [ebp + 0x6c]
pop ecx
sub eax, esi
sar eax, 1
push eax
push esi
lea ecx, [ebp + 0xc]
call fcn.0042c92f
lea eax, [ebp + 0x58]
push eax
lea eax, [ebp + 0x6c]
push eax
call fcn.004309e1
cmp byte [ebp + 0x7b], bl
mov esi, dword [ebp - 0x18]
mov eax, dword [ebp - 8]
mov edx, dword [ebp - 4]
pop ecx
pop ecx
mov ecx, dword [ebp - 0x14]
mov dword [ebp + 0x68], esi
mov dword [ebp + 0x6c], ecx
mov dword [ebp + 0x10], eax
mov dword [ebp + 0x14], edx
je 0x45589b
add eax, esi
mov dword [ebp + 0x10], eax
mov eax, edx
adc eax, ecx
mov dword [ebp + 0x68], ebx
mov dword [ebp + 0x6c], ebx
mov dword [ebp + 0x14], eax
cmp dword [ebp + 0x40], ebx
jl 0x4558bd
jg 0x4558a7
cmp dword [ebp + 0x3c], ebx
jbe 0x4558bd
cmp dword [ebp + 0x5c], ebx
jg 0x4558bd
jl 0x4558b3
cmp dword [ebp + 0x58], ebx
ja 0x4558bd
mov dword [ebp + 0x58], 1
mov dword [ebp + 0x5c], ebx
mov edi, dword [ebp + 0x20]
push 0x5c
push ebx
push edi
call dword [sym.imp.SHLWAPI.dll_StrRChrW]
cmp eax, ebx
jne 0x4558d3
mov dword [ebp + 0x78], edi
jmp 0x4558d8
inc eax
inc eax
mov dword [ebp + 0x78], eax
push ebx
mov edi, 0x200
push edi
push dword [ebp - 0x14]
mov word [ebp - 0x238], bx
push esi
mov word [ebp - 0x29c], bx
call fcn.0046d850
push edx
push eax
lea eax, [ebp - 0x168]
push eax
call fcn.00436260
add esp, 0xc
push ebx
push edi
push dword [ebp - 4]
push dword [ebp - 8]
call fcn.0046d850
push edx
push eax
lea eax, [ebp - 0x1d4]
push eax
call fcn.00436260
add esp, 0xc
cmp dword [ebp + 0x40], ebx
mov word [ebp - 0x238], bx
jl 0x45594d
jg 0x455938
cmp dword [ebp + 0x3c], ebx
jbe 0x45594d
push dword [ebp + 0x40]
lea eax, [ebp - 0x238]
push dword [ebp + 0x3c]
push eax
call fcn.00436260
add esp, 0xc
cmp dword [ebp + 0x5c], ebx
jl 0x45596e
jg 0x455959
cmp dword [ebp + 0x58], ebx
jbe 0x45596e
push dword [ebp + 0x5c]
lea eax, [ebp - 0x29c]
push dword [ebp + 0x58]
push eax
call fcn.00436260
add esp, 0xc
mov eax, dword [ebp + 0x4c]
cmp word [eax], bx
jne 0x4559ab
push 0x800
lea ecx, [ebp + 0x4c]
call fcn.0042c850
call fcn.00428f27
push eax
lea eax, [ebp - 0x1d4]
push eax
lea eax, [ebp - 0x168]
push eax
push dword [ebp + 0x78]
push str._s_s_s__u
push dword [ebp + 0x4c]
call dword [sym.imp.USER32.dll_wsprintfW]
add esp, 0x18
push dword [ebp + 0x4c]
mov esi, dword [sym.imp.KERNEL32.dll_lstrlenW]
call esi
mov dword [ebp + 0x78], eax
mov eax, 0x400
cmp dword [ebp + 0x78], eax
jle 0x4559d0
mov dword [ebp + 0x78], eax
mov eax, dword [ebp + 0x4c]
mov word [eax + 0x800], bx
push 0xffffffffffffffff
push str.Global_
lea ecx, [ebp + 0x54]
call fcn.0042c92f
push dword [ebp + 0x4c]
lea ecx, [ebp + 0x54]
call fcn.0042c877
push str._devio_Ack
lea ecx, [ebp + 0x54]
call fcn.0042c877
mov eax, dword [ebp - 0x10]
mov edx, dword [ebp - 0xc]
mov cl, 1
mov word [ebp - 0x60], bx
call fcn.0046d360
and eax, 3
je 0x455a20
push eax
lea eax, [ebp - 0x60]
push str._nrc:_d
push eax
call dword [sym.imp.USER32.dll_wsprintfW]
add esp, 0xc
mov eax, dword [ebp - 0x10]
and eax, 1
or eax, ebx
mov dword [ebp + 0x5c], 0x480934
jne 0x455a38
mov dword [ebp + 0x5c], 0x488450
push ebx
push edi
push dword [ebp + 0x6c]
push dword [ebp + 0x68]
call fcn.0046d850
push edx
push eax
lea eax, [ebp - 0x168]
push eax
call fcn.00436260
add esp, 0xc
push ebx
push edi
push dword [ebp + 0x14]
push dword [ebp + 0x10]
call fcn.0046d850
push edx
push eax
lea eax, [ebp - 0x1d4]
push eax
call fcn.00436260
mov ecx, dword [ebp + 0x7c]
add esp, 0xc
push 0x482178
push str.__ImdMapPid
call fcn.0042b2cd
push dword [ebp + 0x20]
call esi
push dword [ebp + 0xc]
mov edi, eax
call esi
add eax, edi
mov edi, dword [ebp + 0x78]
lea eax, [eax + edi + 0x800]
push eax
lea ecx, [ebp + 0x6c]
call fcn.0042c827
lea eax, [ebp - 0x238]
push eax
mov esi, dword [sym.imp.USER32.dll_wsprintfW]
lea eax, [ebp - 0x29c]
push eax
lea eax, [ebp - 0x168]
push eax
lea eax, [ebp - 0x1d4]
push eax
push dword [ebp + 0x20]
lea eax, [ebp - 0x60]
push dword [ebp + 0x4c]
push dword [ebp + 0x5c]
push eax
push dword [ebp + 0xc]
push dword [ebp + 0x48]
push str.EXEC___pid:__ImdMapPid____exe:_s10INDATA___nfb___MyName0____w:60000__s__s__s_shm:_s___s__s__s__s__s
push dword [ebp + 0x6c]
call esi
add esp, 0x30
add edi, 0x800
push edi
lea ecx, [ebp + 0x60]
call fcn.0042c850
push dword [ebp + 0x4c]
mov word [ebp - 0x168], bx
push 0x480934
push str.imdisk__a__t_proxy__s__o_shm__f__s
push dword [ebp + 0x60]
mov word [ebp - 0x1d4], bx
call esi
mov ax, word [ebp + 0x34]
mov ecx, dword [ebp + 0x64]
mov word [ecx], ax
lea eax, [ebp + 0x64]
push eax
call fcn.00427312
push 4
push dword [ebp + 0x64]
mov dword [ebp + 0x48], ebx
push str.__w:
call fcn.00428263
add esp, 0x20
test al, al
je 0x455b57
add dword [ebp + 0x64], 8
lea eax, [ebp + 0x48]
push eax
lea eax, [ebp + 0x64]
push eax
call fcn.0042f0d0
pop ecx
pop ecx
push 0xffffffffffffffff
lea eax, [ebp + 0x64]
push eax
push 0x48830c
call fcn.0042e2da
mov esi, dword [ebp + 0x64]
add esp, 0xc
push esi
lea ecx, [ebp + 0x60]
call fcn.0042c877
push dword [ebp + 0x54]
mov eax, dword [ebp + 0x60]
push ebx
push ebx
push ebx
mov dword [ebp + 0x78], eax
call dword [sym.imp.KERNEL32.dll_CreateEventW]
mov ecx, dword [ebp + 0x7c]
push ebx
push ebx
push ebx
push dword [ebp + 0x6c]
mov edi, eax
call fcn.00420f64
push 0xea60
push edi
mov word [esi], bx
mov dword [ebp + 0x18], 1
call dword [sym.imp.KERNEL32.dll_WaitForSingleObject]
push edi
mov esi, eax
call dword [sym.imp.KERNEL32.dll_CloseHandle]
cmp esi, ebx
je 0x455c8c
lea ecx, [ebp + 0x6c]
mov dword [ebp + 0x64], 1
call fcn.00427365
lea ecx, [ebp + 0x54]
call fcn.00427365
mov eax, dword [ebp + 0x54]
mov ecx, dword [eax + 0x3c]
mov edi, dword [ebp + 0x24]
mov dword [eax + 0x3c], ebx
cmp word [edi], bx
mov dword [ebp + 0x78], ecx
je 0x455c17
push dword [ebp + 0x64]
lea esi, [ebp - 0x64]
mov eax, esi
push 0x482fd4
push eax
call dword [sym.imp.USER32.dll_wsprintfW]
mov eax, dword [ebp + 0x2c]
add esp, 0xc
cmp word [eax], 0x2a
jne 0x455c0d
lea esi, [eax + 2]
mov ecx, dword [ebp + 0x7c]
push esi
push edi
call fcn.0042b2cd
lea ecx, [ebp + 0x78]
call fcn.00427365
mov ebx, dword [ebp + 0x64]
lea ecx, [ebp + 0x20]
call fcn.00427365
lea ecx, [ebp + 0xc]
call fcn.00427365
lea ecx, [ebp + 0x4c]
call fcn.00427365
lea ecx, [ebp]
call fcn.00427365
lea ecx, [ebp + 8]
call fcn.00427365
lea ecx, [ebp + 0x38]
call fcn.00427365
lea ecx, [ebp + 4]
call fcn.00427365
lea ecx, [ebp + 0x28]
call fcn.00427365
lea ecx, [ebp + 0x60]
call fcn.00427365
lea ecx, [ebp - 0x20]
call fcn.00427365
lea ecx, [ebp + 0x24]
call fcn.00427365
lea ecx, [ebp + 0x2c]
call fcn.00427365
pop edi
pop esi
mov eax, ebx
pop ebx
add ebp, 0x70
leave
ret
push 0x32
pop esi
push ebx
call dword [sym.imp.KERNEL32.dll_Sleep]
dec esi
jne 0x455c8f
cmp dword [ebp + 0x48], ebx
jle 0x455ca9
push dword [ebp + 0x48]
mov ecx, dword [ebp + 0x7c]
call fcn.0040b816
lea ecx, [ebp + 0x6c]
call fcn.00427365
jmp 0x4560d7
mov ax, word [ebp + 0x34]
mov word [esi], ax
jmp 0x4560d7
push 4
lea eax, [ebp + 0x64]
push eax
push str._exe
call fcn.0042e2da
add esp, 0xc
test al, al
je 0x455ce0
mov dword [ebp + 0x44], 1
push 5
lea eax, [ebp + 0x64]
push eax
push str._nexe
call fcn.0042e2da
add esp, 0xc
test al, al
je 0x455cfe
mov dword [ebp + 0x44], 0xfff00000
push 0x2c
pop edi
push edi
lea eax, [ebp + 0x28]
push eax
lea eax, [ebp + 0x78]
push eax
call fcn.0042ec20
mov eax, dword [ebp + 0x28]
mov word [eax], bx
mov eax, dword [ebp + 0x78]
add esp, 0xc
cmp word [eax], bx
je 0x455dce
add dword [ebp + 0x78], 2
push edi
lea eax, [ebp + 0x28]
push eax
lea eax, [ebp + 0x78]
push eax
call fcn.0042ec20
mov eax, dword [ebp + 0x78]
add esp, 0xc
cmp word [eax], bx
je 0x455dce
add dword [ebp + 0x78], 2
push edi
lea eax, [ebp + 4]
push eax
lea eax, [ebp + 0x78]
push eax
call fcn.0042ec20
mov eax, dword [ebp + 0x78]
add esp, 0xc
cmp word [eax], bx
je 0x455dce
add dword [ebp + 0x78], 2
push edi
lea eax, [ebp + 0x38]
push eax
lea eax, [ebp + 0x78]
push eax
call fcn.0042ec20
mov eax, dword [ebp + 0x78]
add esp, 0xc
cmp word [eax], bx
je 0x455dce
add dword [ebp + 0x78], 2
push edi
lea eax, [ebp + 8]
push eax
lea eax, [ebp + 0x78]
push eax
call fcn.0042ec20
mov eax, dword [ebp + 0x78]
add esp, 0xc
cmp word [eax], bx
je 0x455dce
add dword [ebp + 0x78], 2
push edi
lea eax, [ebp]
push eax
lea eax, [ebp + 0x78]
push eax
call fcn.0042ec20
mov eax, dword [ebp + 0x78]
add esp, 0xc
cmp word [eax], bx
je 0x455dce
add dword [ebp + 0x78], 2
push edi
lea eax, [ebp + 0x10]
push eax
lea eax, [ebp + 0x78]
push eax
call fcn.0042edd6
add esp, 0xc
push 6
lea ecx, [ebp + 0x38]
mov byte [ebp + 0x7b], bl
call fcn.0042c850
mov edi, dword [ebp + 0x38]
mov word [edi + 2], 0x3a
mov word [edi + 4], bx
cmp word [edi], bx
je 0x455e43
push edi
call fcn.0046c4f9
test eax, eax
pop ecx
je 0x455e3e
lea ecx, [ebp + 0x5c]
mov dword [ebp - 0x38], str.imdisk
mov dword [ebp - 0x34], 0x4882f4
mov dword [ebp - 0x30], 0x4882ec
mov dword [ebp - 0x2c], edi
mov dword [ebp - 0x28], ebx
call fcn.0042c809
lea eax, [ebp + 0x5c]
push eax
lea eax, [ebp - 0x38]
push eax
push 4
call fcn.00415f77
add esp, 0xc
neg eax
sbb al, al
inc al
lea ecx, [ebp + 0x5c]
mov byte [ebp + 0x7b], al
call fcn.00427365
cmp word [edi], bx
jne 0x455e62
push 0x4835c0
lea ecx, [ebp + 0x38]
call fcn.00436622
mov eax, dword [ebp + 0x38]
cmp word [eax], bx
jne 0x455e62
mov ebx, 0x80070057
jmp 0x455c22
push 0x3c
lea ecx, [ebp + 0x54]
call fcn.0042c827
mov eax, dword [ebp + 0x28]
cmp word [eax], bx
mov dword [ebp + 0x58], esi
mov dword [ebp + 0x5c], esi
mov dword [ebp + 0x3c], esi
mov dword [ebp + 0x40], esi
mov dword [ebp + 0x30], esi
mov dword [ebp + 0x34], esi
mov edi, esi
mov dword [ebp + 0x6c], eax
je 0x456118
lea eax, [ebp + 0x6c]
push eax
call fcn.00427312
mov eax, dword [ebp + 0x6c]
mov ax, word [eax]
or ax, 0x20
cmp ax, 0x70
pop ecx
jne 0x455eae
lea eax, [ebp + 0x58]
jmp 0x455ec2
cmp ax, 0x6c
jne 0x455eb9
lea eax, [ebp + 0x3c]
jmp 0x455ec2
cmp ax, 0x68
jne 0x455eda
lea eax, [ebp + 0x30]
add dword [ebp + 0x6c], 2
push eax
lea eax, [ebp + 0x6c]
push eax
call fcn.0042eff2
mov eax, dword [ebp + 0x6c]
cmp word [eax], bx
pop ecx
pop ecx
jne 0x455e8f
cmp dword [ebp + 0x5c], ebx
jl 0x455f16
jg 0x455ee6
cmp dword [ebp + 0x58], ebx
jbe 0x455f16
push ebx
call fcn.0040f310
pop ecx
push dword [ebp + 0x5c]
push dword [ebp + 0x58]
push edx
push eax
call fcn.0046d9d0
push ebx
push 0x64
push edx
push eax
call fcn.0046d850
add eax, 0xfffff
adc edx, ebx
mov cl, 0x14
call fcn.0046d360
mov esi, eax
mov edi, edx
cmp edi, dword [ebp + 0x40]
jg 0x455f28
jl 0x455f22
cmp esi, dword [ebp + 0x3c]
jae 0x455f28
mov esi, dword [ebp + 0x3c]
mov edi, dword [ebp + 0x40]
mov eax, dword [ebp + 0x34]
cmp eax, ebx
jl 0x455f55
jg 0x455f36
cmp dword [ebp + 0x30], ebx
jbe 0x455f55
cmp edi, eax
jl 0x455f46
jg 0x455f41
cmp esi, dword [ebp + 0x30]
jbe 0x455f46
mov esi, dword [ebp + 0x30]
mov edi, eax
cmp edi, ebx
jg 0x455f67
jl 0x455f50
cmp esi, ebx
ja 0x455f55
mov esi, dword [ebp + 0x30]
mov edi, eax
cmp edi, ebx
jl 0x456118
jg 0x455f67
cmp esi, ebx
jb 0x456118
mov ecx, dword [ebp + 0x38]
cmp word [ecx], bx
je 0x456118
cmp edi, ebx
jg 0x455f82
jl 0x455f7d
cmp esi, ebx
ja 0x455f82
xor esi, esi
inc esi
xor edi, edi
cmp dword [ebp + 0x40], ebx
jg 0x455fbd
jl 0x455f8e
cmp dword [ebp + 0x3c], ebx
ja 0x455fbd
cmp eax, ebx
jg 0x455fbd
jl 0x455f99
cmp dword [ebp + 0x30], ebx
ja 0x455fbd
cmp dword [ebp + 0x5c], ebx
jl 0x455fbd
jg 0x455fa5
cmp dword [ebp + 0x58], ebx
jbe 0x455fbd
push dword [ebp + 0x5c]
push dword [ebp + 0x58]
push dword [ebp + 0x54]
call fcn.00436260
add esp, 0xc
push 0x4882e4
jmp 0x455fcf
push edi
push esi
push dword [ebp + 0x54]
call fcn.0043627a
add esp, 0xc
push 0x4882dc
lea ecx, [ebp + 0x54]
call fcn.0042c877
cmp byte [ebp + 0x7b], bl
mov eax, str.imdisk___e
jne 0x455fe6
mov eax, str.imdisk___a
push eax
lea ecx, [ebp + 0x60]
call fcn.00436622
mov eax, dword [ebp + 0x10]
and eax, 1
or eax, ebx
je 0x456006
push str.__o_awe
lea ecx, [ebp + 0x60]
call fcn.0042c877
mov esi, dword [ebp + 0x54]
cmp word [esi], bx
je 0x456024
push 0x48828c
lea ecx, [ebp + 0x60]
call fcn.0042c877
push esi
lea ecx, [ebp + 0x60]
call fcn.0042c877
mov esi, dword [ebp + 0x38]
cmp word [esi], bx
je 0x456042
push str.___m
lea ecx, [ebp + 0x60]
call fcn.0042c877
push esi
lea ecx, [ebp + 0x60]
call fcn.0042c877
mov esi, dword [ebp + 4]
cmp word [esi], bx
mov edi, dword [ebp + 8]
jne 0x456052
cmp word [edi], bx
je 0x4560d1
push str.___p__
lea ecx, [ebp + 0x60]
call fcn.0042c877
cmp word [esi], bx
je 0x45607a
push str.__FS:
lea ecx, [ebp + 0x60]
call fcn.0042c877
push esi
lea ecx, [ebp + 0x60]
call fcn.0042c877
cmp word [edi], bx
je 0x456095
push str.__V:
lea ecx, [ebp + 0x60]
call fcn.0042c877
push edi
lea ecx, [ebp + 0x60]
call fcn.0042c877
push esi
push 0x486da4
call fcn.00428293
test al, al
pop ecx
pop ecx
je 0x4560c4
mov eax, dword [ebp]
mov ax, word [eax]
cmp ax, bx
je 0x4560c4
cmp ax, 0x30
je 0x4560c4
push 0x486d9c
lea ecx, [ebp + 0x60]
call fcn.0042c877
push str.___Q__Y__
lea ecx, [ebp + 0x60]
call fcn.0042c877
mov eax, dword [ebp + 0x60]
mov dword [ebp + 0x78], eax
lea ecx, [ebp + 0x54]
call fcn.00427365
lea eax, [ebp + 0x64]
push eax
call fcn.00427312
push 4
push dword [ebp + 0x64]
push str._gui
call fcn.00428219
add esp, 0x10
test al, al
je 0x456125
mov ecx, dword [ebp + 0x7c]
push 0xffffffffffffff9c
push 0x480934
push ebx
push str.imdisk.cpl_
call fcn.00441d27
jmp 0x455c22
lea ecx, [ebp + 0x54]
call fcn.00427365
jmp 0x455e58
push 0x24
fldz
xor eax, eax
fstp qword [ebp - 0xfc]
pop ecx
lea edi, [ebp - 0xf4]
rep stosd dword es:[edi], eax
lea eax, [ebp - 0xfc]
mov dword [ebp + 0x54], eax
call dword [sym.imp.KERNEL32.dll_GetTickCount]
sub eax, 0xc8
cmp byte [ebp + 0x52], bl
mov dword [ebp + 0x48], eax
mov byte [ebp + 0x53], bl
je 0x456173
push 2
push dword [ebp + 0x64]
push 0x48830c
call fcn.00428219
add esp, 0xc
test al, al
je 0x456173
mov byte [ebp + 0x53], 1
mov eax, dword [ebp + 0x18]
and dword [ebp + 0x1c], 0
or eax, dword [ebp + 0x1c]
jne 0x456184
cmp byte [ebp + 0x53], bl
je 0x4561c5
cmp dword [ebp + 0x44], ebx
jne 0x4561c5
push 9
pop ecx
mov esi, str.imdisk___version
lea edi, [ebp - 0x4c]
rep movsd dword es:[edi], dword [esi]
mov ecx, dword [ebp + 0x7c]
lea eax, [ebp - 0x4c]
push eax
movsw word es:[edi], word [esi]
call fcn.004274d6
test eax, eax
jne 0x4561c5
mov eax, dword [ebp + 0x18]
or eax, dword [ebp + 0x1c]
je 0x4561be
push 0x11
pop eax
mov dword [ebp + 0x44], eax
mov dword [ebp + 0x18], eax
mov dword [ebp + 0x1c], ebx
jmp 0x4561c5
mov dword [ebp + 0x44], 0x40
mov esi, dword [ebp + 0x78]
lea eax, [ebp + 0x5c]
push eax
mov dword [ebp + 0x5c], esi
call fcn.00403c83
pop ecx
push ebx
push esi
jmp 0x45627a
cmp dword [ebp - 0x1c], ebx
mov eax, dword [ebp - 0xc4]
mov dword [eax], str.imdisk
jne 0x45620f
cmp dword [ebp + 0x44], ebx
jg 0x45620f
lea eax, [ebp + 0x2c]
push eax
push dword [ebp - 0xc4]
push dword [ebp - 0xc8]
call fcn.00415f77
add esp, 0xc
mov dword [ebp + 0x64], eax
jmp 0x45623f
push 0xffffffffffffffff
push str._Imdisk
lea ecx, [ebp + 0x34]
call fcn.004365f0
push dword [ebp + 0x5c]
lea ecx, [ebp + 0x34]
call fcn.0042c877
push dword [ebp + 0x34]
mov ecx, dword [ebp + 0x7c]
call fcn.004274d6
lea ecx, [ebp + 0x34]
mov dword [ebp + 0x64], eax
call fcn.00427365
mov eax, dword [ebp + 0x18]
or eax, dword [ebp + 0x1c]
je 0x455bd6
cmp dword [ebp + 0x64], 3
jne 0x455bd6
call dword [sym.imp.KERNEL32.dll_GetTickCount]
sub eax, dword [ebp + 0x48]
cmp eax, 0x1388
jae 0x455bd6
mov ecx, dword [ebp + 0x7c]
push 0xc8
call fcn.0040b816
push ebx
push dword [ebp + 0x78]
lea ecx, [ebp - 0xfc]
call fcn.00439a97
cmp dword [ebp - 0xc8], 1
jg 0x4561dc
jmp 0x455e58