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

Disassembly:
push ebp
lea ebp, [esp - 0x70]
sub esp, 0x288
push ebx
fldz
push esi
fstp qword [ebp - 0x19c]
push edi
push 0x26
xor eax, eax
pop ecx
lea edi, [ebp - 0x194]
mov byte [ebp + 0x5b], 1
rep stosd dword es:[edi], eax
xor ebx, ebx
mov esi, 0x4d8d24
push dword [ebp + 0x78]
lea ecx, [ebp - 0x70]
mov byte [ebp + 0x37], bl
call fcn.0044cd74
mov eax, dword [ebp - 0x70]
mov dword [ebp + 0x60], eax
add eax, 0xc
mov dword [ebp + 0x68], eax
mov dword [ebp + 0x48], eax
lea eax, [ebp + 0x48]
push eax
call fcn.00405615
mov eax, dword [ebp + 0x48]
mov dword [ebp - 0x20], eax
lea eax, [ebp - 0x20]
push eax
call fcn.0043dae7
mov eax, dword [ebp + 0x68]
cmp word [eax], 0x2a
pop ecx
pop ecx
lea ecx, [ebp + 0xf]
sete byte [ebp + 0x67]
call fcn.00412fbe
push 6
push dword [ebp - 0x20]
push str.__free
call fcn.0043ee93
add esp, 0xc
test al, al
jne 0x49973d
lea ecx, [ebp + 0x78]
call fcn.004964ba
push ebx
lea ecx, [ebp + 0xf]
call fcn.00412fc1
lea ecx, [ebp + 0xf]
call fcn.00412fb2
neg eax
sbb eax, eax
inc eax
cmp dword [0x4d684c], ebx
mov dword [ebp - 0x18], eax
mov dword [ebp + 0x24], ebx
mov dword [ebp - 0x88], ebx
mov dword [ebp - 0x8c], ebx
jge 0x498325
mov eax, dword [0x4d8084]
cmp eax, ebx
mov dword [0x4d684c], ebx
mov dword [ebp + 0x54], ebx
mov dword [ebp + 0x44], ebx
je 0x498301
lea ecx, [ebp + 0x44]
push ecx
lea ecx, [ebp + 0x54]
push ecx
call eax
cmp dword [ebp + 0x44], ebx
jbe 0x498301
mov eax, dword [ebp + 0x54]
cmp eax, 0x202
jb 0x4982cd
mov dword [0x4d684c], 0x38
jmp 0x498301
cmp eax, 0x184
jb 0x4982e0
mov dword [0x4d684c], 8
jmp 0x498301
cmp eax, 0x160
jb 0x4982f3
mov dword [0x4d684c], 2
jmp 0x498301
cmp eax, ebx
jbe 0x498301
mov dword [0x4d684c], 1
push dword [0x4d8084]
push dword [0x4d684c]
push dword [ebp + 0x44]
push dword [ebp + 0x54]
push str.DBG:_IMD:_0x_X_0x_X_0x_X__0x_p_r_n
push 0x4d80e8
call fcn.00410a74
add esp, 0x18
push 3
push dword [ebp - 0x20]
push 0x4c56cc
call fcn.0043ee93
add esp, 0xc
test al, al
je 0x498342
mov dword [ebp + 0x24], 0xfff00000
push 5
lea eax, [ebp - 0x20]
push eax
push str.__ins
mov byte [ebp + 0x6f], bl
call fcn.00445f31
add esp, 0xc
test al, al
je 0x498362
mov byte [ebp + 0x6f], 5
jmp 0x49837d
push 6
lea eax, [ebp - 0x20]
push eax
push str.__fins
call fcn.00445f31
add esp, 0xc
test al, al
je 0x49837d
mov byte [ebp + 0x6f], 6
push 0x3e8
lea ecx, [ebp - 0x24]
call fcn.00443f79
lea ecx, [ebp + 0x18]
call fcn.00443f5b
lea ecx, [ebp - 0xa8]
call fcn.00443f5b
lea ecx, [ebp + 0x5c]
call fcn.00443f5b
lea ecx, [ebp - 0x1c]
mov dword [ebp + 0x14], ebx
call fcn.00443f5b
lea ecx, [ebp + 4]
call fcn.00443f5b
lea ecx, [ebp + 0x50]
call fcn.00443f5b
lea ecx, [ebp - 0xc]
call fcn.00443f5b
lea ecx, [ebp - 0x3c]
call fcn.00443f5b
lea ecx, [ebp + 0x3c]
call fcn.00443f5b
lea ecx, [ebp - 0x28]
call fcn.00443f5b
lea ecx, [ebp + 0x28]
call fcn.00443f5b
or eax, 0xffffffff
mov dword [ebp - 0x64], eax
mov dword [ebp - 0x60], eax
mov dword [ebp - 0x6c], eax
mov dword [ebp - 0x68], eax
mov eax, 0x4bca0c
push 0xc8
lea ecx, [ebp - 0x14]
mov dword [ebp - 0x54], ebx
mov dword [ebp - 0x48], ebx
mov dword [ebp - 0x44], ebx
mov dword [ebp - 0xe0], ebx
mov dword [ebp - 0xd4], ebx
mov dword [ebp - 0xd0], ebx
mov dword [ebp + 0x1c], ebx
mov dword [ebp + 0x44], eax
mov dword [ebp + 0x54], eax
call fcn.00443f79
cmp byte [ebp + 0x67], bl
mov eax, dword [ebp + 0x48]
mov cx, word [eax]
mov edi, dword [ebp - 0x20]
mov dword [ebp - 0xd8], eax
mov word [ebp - 0x7c], cx
mov dword [ebp + 0x30], eax
je 0x498570
add dword [ebp + 0x68], 2
mov word [eax], bx
mov eax, dword [ebp + 0x68]
mov edx, eax
jmp 0x498465
cmp cx, 0x2a
je 0x49846d
inc eax
inc eax
mov dword [ebp + 0x68], eax
mov cx, word [eax]
cmp cx, bx
jne 0x49845a
sub eax, edx
sar eax, 1
push eax
push edx
lea ecx, [ebp + 0x18]
call fcn.0044407f
mov eax, dword [ebp + 0x18]
cmp word [eax], bx
je 0x498490
push 0x3e8
lea ecx, [ebp - 0x24]
call fcn.00443fa0
cmp word [ebp - 0x7c], bx
mov eax, dword [ebp + 0x48]
mov dword [ebp + 0x30], eax
je 0x4984a2
add eax, 2
mov dword [ebp + 0x30], eax
lea eax, [ebp + 0x30]
push eax
call fcn.0043dae7
pop ecx
mov edi, 0x4bca0c
push 4
lea eax, [ebp + 0x30]
push eax
push str._mem
call fcn.00445fa6
add esp, 0xc
test al, al
jne 0x4984df
push 2
lea eax, [ebp + 0x30]
push eax
push 0x4c1aa4
call fcn.00445fa6
add esp, 0xc
test al, al
je 0x4984e4
mov dword [ebp + 0x44], edi
jmp 0x4984b1
push 3
lea eax, [ebp + 0x30]
push eax
push 0x4c5c68
call fcn.00445fa6
add esp, 0xc
test al, al
je 0x498504
mov dword [ebp + 0x44], 0x4c9614
jmp 0x4984b1
push 4
lea eax, [ebp + 0x30]
push eax
push str._map
call fcn.00445fa6
add esp, 0xc
test al, al
je 0x498527
mov dword [ebp - 0xe0], 1
jmp 0x4984b1
push 4
lea eax, [ebp + 0x30]
push eax
push 0x4c9604
call fcn.00445fa6
add esp, 0xc
test al, al
je 0x49854a
mov dword [ebp + 0x24], 1
jmp 0x4984b1
push 5
lea eax, [ebp + 0x30]
push eax
push str._nexe
call fcn.00445fa6
add esp, 0xc
test al, al
je 0x49856d
mov dword [ebp + 0x24], 0xfff00000
jmp 0x4984b1
mov edi, dword [ebp + 0x30]
mov ecx, dword [ebp + 0x7c]
push 0x4c95ec
push 0x4c8b6c
call fcn.00443666
mov eax, dword [ebp + 0x18]
cmp word [eax], bx
push 0xffffffffffffffff
lea ecx, [ebp + 0x14]
push 0xffffffffffffffff
je 0x4985b5
push 0x4c95e8
call fcn.00444016
push dword [ebp + 0x18]
lea ecx, [ebp + 0x14]
call fcn.00443fc7
push str.Imdisk
lea ecx, [ebp + 0x14]
call fcn.00443fc7
jmp 0x4985bf
push str._Imdisk
call fcn.00444016
push 9
push edi
push str.__version
call fcn.0043ee93
push 2
push edi
push 0x4c95b8
mov byte [ebp + 0x66], al
call fcn.0043ee93
push 2
push edi
push 0x4c95b4
mov byte [ebp + 0xe], al
call fcn.0043ee93
push 3
push edi
push 0x4c56cc
mov byte [ebp + 0x13], al
call fcn.0043ee93
add esp, 0x30
cmp byte [ebp + 0x66], bl
jne 0x498616
cmp byte [ebp + 0xe], bl
jne 0x498616
cmp byte [ebp + 0x13], bl
jne 0x498616
cmp al, bl
jne 0x498616
mov cl, 1
jmp 0x498618
xor cl, cl
cmp dword [ebp - 0x18], ebx
jne 0x49862f
mov eax, dword [0x4d684c]
cmp eax, ebx
jle 0x49862f
push 2
pop edi
cmp eax, edi
jge 0x49863b
jmp 0x498632
push 2
pop edi
cmp cl, bl
jne 0x498645
cmp byte [ebp + 0x6f], bl
jne 0x498645
cmp byte [ebp + 0x6f], 6
jl 0x4987ca
cmp dword [ebp - 0x18], ebx
mov dword [ebp - 0x10], 0x4c95ac
jne 0x49869b
lea ecx, [ebp - 0x74]
call fcn.00443f5b
mov eax, 0x4c95a4
mov dword [ebp - 0xe8], eax
mov dword [ebp - 0xe4], eax
lea eax, [ebp - 0x74]
push eax
lea eax, [ebp - 0xe8]
push eax
push edi
call fcn.00424e7a
mov eax, dword [ebp - 0x74]
add esp, 0xc
cmp word [eax], bx
je 0x498693
cmp word [eax + 2], bx
je 0x498693
mov dword [ebp - 0x10], 0x4c959c
lea ecx, [ebp - 0x74]
call fcn.0043db4f
push esi
call dword [sym.imp.KERNEL32.dll_EnterCriticalSection]
mov edi, dword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
sub dword [0x4d8d80], 1
push esi
call edi
push esi
call dword [sym.imp.KERNEL32.dll_EnterCriticalSection]
cmp dword [0x4d8d80], ebx
jle 0x4986d2
push esi
call edi
mov ecx, dword [ebp + 0x7c]
push ebx
push ebx
push 1
call fcn.004159e8
jmp 0x4986b2
push 0xffffffffffffffff
lea ecx, [ebp + 0xf]
call fcn.00412fc1
push esi
call edi
movsx ax, byte [ebp + 0x6f]
push 0xffffffffffffffff
lea ecx, [ebp + 0xf]
mov word [ebp - 0xbe], 0x20
mov word [ebp - 0xbc], bx
add eax, 0x30
mov word [ebp - 0xc0], ax
call fcn.00412fc1
push str.28:INDATA
lea ecx, [ebp + 8]
call fcn.0044cd74
cmp dword [ebp - 0x18], ebx
mov eax, 0x4c959c
jne 0x498724
mov eax, 0x4c95ac
push eax
lea ecx, [ebp + 8]
call fcn.00443fc7
push dword [ebp - 0x10]
lea ecx, [ebp + 8]
call fcn.00443fc7
lea eax, [ebp - 0xc0]
push eax
lea ecx, [ebp + 8]
call fcn.00443fc7
push dword [ebp + 0x48]
lea ecx, [ebp + 8]
call fcn.00443fc7
push dword [ebp + 8]
push str.Install_IMD__s__r_n
push 0x4d80e8
call fcn.00410a74
mov ecx, dword [ebp + 0x7c]
add esp, 0xc
push dword [ebp + 8]
call fcn.00422e2f
push esi
call dword [sym.imp.KERNEL32.dll_EnterCriticalSection]
add dword [0x4d8d80], 1
push esi
mov dword [0x4d684c], 0xffffffc0
call edi
push ebx
lea ecx, [ebp + 0xf]
call fcn.00412fc1
lea ecx, [ebp + 0xf]
call fcn.00412fb2
neg eax
sbb eax, eax
inc eax
push esi
mov dword [ebp - 0x18], eax
call dword [sym.imp.KERNEL32.dll_EnterCriticalSection]
cmp dword [ebp - 0x18], ebx
jne 0x4987bc
mov dword [0x4d684c], 0x38
push esi
call edi
lea ecx, [ebp + 8]
call fcn.0043db4f
push 2
pop edi
cmp byte [ebp + 0x67], bl
je 0x49906b
mov eax, dword [ebp + 0x30]
mov dword [ebp - 0x4c], eax
jmp 0x4987fe
push edi
lea eax, [ebp - 0x4c]
push eax
push 0x4c1aa4
call fcn.00445f31
add esp, 0xc
test al, al
jne 0x498805
lea eax, [ebp - 0x4c]
push eax
call fcn.00408ddd
mov eax, dword [ebp - 0x4c]
pop ecx
cmp word [eax], bx
jne 0x4987db
jmp 0x49880b
mov eax, dword [ebp - 0x4c]
mov dword [ebp + 0x54], eax
mov eax, dword [ebp + 0x68]
cmp word [eax], 0x2a
jne 0x499059
add dword [ebp + 0x68], edi
mov eax, dword [ebp + 0x68]
mov dword [ebp - 0x5c], ebx
mov dword [ebp - 0x58], ebx
mov dword [ebp - 0x38], ebx
mov dword [ebp - 0x34], ebx
cmp word [eax], 0x40
mov byte [ebp + 0x67], bl
jne 0x49883a
add dword [ebp + 0x68], edi
mov byte [ebp + 0x67], 1
lea eax, [ebp - 0x64]
push eax
lea eax, [ebp + 0x68]
push eax
call fcn.00448ed1
mov eax, dword [ebp + 0x68]
cmp word [eax], bx
pop ecx
pop ecx
je 0x498854
add dword [ebp + 0x68], edi
lea eax, [ebp - 0x6c]
push eax
lea eax, [ebp + 0x68]
push eax
call fcn.00448ed1
mov eax, dword [ebp + 0x68]
cmp word [eax], bx
pop ecx
pop ecx
je 0x49886e
add dword [ebp + 0x68], edi
lea eax, [ebp - 0x48]
push eax
lea eax, [ebp + 0x68]
push eax
call fcn.00448ed1
mov edi, dword [ebp + 0x68]
cmp word [edi], bx
pop ecx
pop ecx
je 0x49888a
inc edi
inc edi
mov dword [ebp + 0x68], edi
mov al, byte [ebp - 0x48]
and al, 1
mov byte [ebp + 0x6f], al
push 0x2a
lea eax, [ebp + 0x68]
call fcn.004a7e7b
mov eax, dword [ebp + 0x68]
pop ecx
sub eax, edi
sar eax, 1
push eax
push edi
lea ecx, [ebp + 0x28]
call fcn.0044407f
mov eax, dword [ebp + 0x68]
cmp word [eax], bx
je 0x4988ba
add dword [ebp + 0x68], 2
mov edi, dword [ebp + 0x68]
push 0x2a
lea eax, [ebp + 0x68]
call fcn.004a7e7b
mov eax, dword [ebp + 0x68]
pop ecx
sub eax, edi
sar eax, 1
push eax
push edi
lea ecx, [ebp + 0x3c]
call fcn.0044407f
mov eax, dword [ebp + 0x68]
cmp word [eax], bx
je 0x4988e5
add dword [ebp + 0x68], 2
lea eax, [ebp - 0x5c]
push eax
lea eax, [ebp + 0x68]
push eax
call fcn.00448ed1
mov edi, dword [ebp + 0x68]
cmp word [edi], bx
pop ecx
pop ecx
je 0x498901
inc edi
inc edi
mov dword [ebp + 0x68], edi
push 0x2a
lea eax, [ebp + 0x68]
call fcn.004a7e7b
mov eax, dword [ebp + 0x68]
pop ecx
sub eax, edi
sar eax, 1
push eax
push edi
lea ecx, [ebp - 0x28]
call fcn.0044407f
lea eax, [ebp - 0x38]
push eax
lea eax, [ebp + 0x68]
push eax
call fcn.00448ed1
mov eax, dword [ebp + 0x68]
cmp word [eax], bx
pop ecx
pop ecx
je 0x498938
add dword [ebp + 0x68], 2
cmp byte [ebp + 0x67], bl
mov edx, dword [ebp - 0x64]
mov edi, dword [ebp - 0x60]
mov eax, dword [ebp - 0x6c]
mov ecx, dword [ebp - 0x68]
mov dword [ebp - 0xb0], edx
mov dword [ebp - 0xac], edi
mov dword [ebp - 0xb8], eax
mov dword [ebp - 0xb4], ecx
je 0x49897d
add eax, edx
adc ecx, edi
mov dword [ebp - 0xb0], ebx
mov dword [ebp - 0xac], ebx
mov dword [ebp - 0xb8], eax
mov dword [ebp - 0xb4], ecx
cmp dword [ebp - 0x58], ebx
jl 0x49899f
jg 0x498989
cmp dword [ebp - 0x5c], ebx
jbe 0x49899f
cmp dword [ebp - 0x34], ebx
jg 0x49899f
jl 0x498995
cmp dword [ebp - 0x38], ebx
ja 0x49899f
mov dword [ebp - 0x38], 1
mov dword [ebp - 0x34], ebx
push 0x318
lea ecx, [ebp - 0x2c]
call fcn.00443f79
mov eax, dword [ebp - 0x2c]
lea esi, [eax + 0x6a]
mov dword [ebp - 8], eax
lea eax, [esi + 0x6a]
lea edi, [eax + 0x6a]
push ebx
mov word [edi], bx
push 0x200
mov word [eax], bx
push dword [ebp - 0x60]
lea ecx, [edi + 0x6a]
push dword [ebp - 0x64]
mov dword [ebp - 0xa0], esi
mov dword [ebp - 0xcc], edi
mov dword [ebp - 4], ecx
call fcn.004aa080
push edx
push eax
push dword [ebp - 8]
mov dword [ebp - 0x64], eax
mov dword [ebp - 0x60], edx
call fcn.00497eb9
add esp, 0xc
push ebx
push 0x200
push dword [ebp - 0x68]
push dword [ebp - 0x6c]
call fcn.004aa080
push edx
push eax
push esi
mov dword [ebp - 0x6c], eax
mov dword [ebp - 0x68], edx
call fcn.00497eb9
add esp, 0xc
mov word [edi], bx
cmp dword [ebp - 0x58], ebx
jl 0x498a37
jg 0x498a28
cmp dword [ebp - 0x5c], ebx
jbe 0x498a37
push dword [ebp - 0x58]
push dword [ebp - 0x5c]
push edi
call fcn.00497eb9
add esp, 0xc
mov ecx, dword [ebp + 0x48]
xor eax, eax
cmp word [ebp - 0x7c], bx
setne al
lea eax, [ecx + eax*2]
mov dword [ebp + 0x38], eax
lea eax, [ebp + 0x38]
push eax
call fcn.0043dae7
push 4
push dword [ebp + 0x38]
mov dword [ebp - 0x78], ebx
push str.__w:
call fcn.0043eeea
add esp, 0x10
test al, al
je 0x498a7e
add dword [ebp + 0x38], 8
lea eax, [ebp - 0x78]
push eax
lea eax, [ebp + 0x38]
push eax
call fcn.004503bc
pop ecx
pop ecx
push 0xffffffffffffffff
lea eax, [ebp + 0x38]
push eax
push 0x4c9554
call fcn.00445f31
add esp, 0xc
cmp dword [0x4d684c], 1
jl 0x498aa6
cmp dword [ebp + 0x24], ebx
jne 0x498aa6
mov dword [ebp + 0x24], 0xfff00000
mov eax, dword [ebp + 0x38]
mov edi, 0x4bca0c
mov byte [ebp + 0x66], bl
mov byte [ebp + 0x67], bl
mov dword [ebp - 0x10], edi
mov dword [ebp - 0x80], edi
mov dword [ebp + 0x4c], eax
mov dword [ebp + 0x2c], ebx
jmp 0x498b31
push 2
lea eax, [ebp + 0x4c]
push eax
push 0x4c5d80
call fcn.00445f31
add esp, 0xc
test al, al
je 0x498ae2
mov dword [ebp + 0x2c], 1
jmp 0x498b2e
cmp dword [ebp + 0x2c], ebx
je 0x498b21
push 2
lea eax, [ebp + 0x4c]
push eax
push 0x4c9550
call fcn.00445f31
add esp, 0xc
test al, al
je 0x498b04
mov byte [ebp + 0x66], 1
jmp 0x498b2e
push 3
lea eax, [ebp + 0x4c]
push eax
push 0x4c954c
call fcn.00445f31
add esp, 0xc
test al, al
je 0x498b21
mov byte [ebp + 0x67], 1
jmp 0x498b2e
lea eax, [ebp + 0x4c]
push eax
call fcn.00408ddd
pop ecx
mov dword [ebp + 0x2c], ebx
mov eax, dword [ebp + 0x4c]
cmp word [eax], bx
jne 0x498ac2
mov eax, dword [0x4d684c]
test al, 0x10
je 0x498b4b
cmp byte [ebp + 0x67], bl
jne 0x498b4b
mov dword [ebp - 0x10], str._o_par
mov dword [ebp + 0x4c], eax
and dword [ebp + 0x4c], 0x20
je 0x498b5b
mov dword [ebp - 0x80], str._o_shared
cmp dword [ebp + 0x4c], ebx
je 0x498b63
mov byte [ebp + 0x5b], bl
mov ecx, dword [ebp - 0x48]
mov eax, ecx
and eax, 0x200
or eax, ebx
jne 0x498b8d
cmp dword [ebp + 0x4c], ebx
jne 0x498b8d
cmp byte [ebp + 0x6f], bl
je 0x498b90
and ecx, 0x100
mov eax, ecx
or eax, ebx
je 0x498b90
mov byte [ebp + 0x5b], 1
jmp 0x498b90
mov byte [ebp + 0x5b], bl
cmp dword [0x4d684c], 8
jl 0x498ca1
cmp byte [ebp + 0x6f], bl
je 0x498bab
cmp byte [ebp + 0x5b], bl
jne 0x498ca1
cmp byte [ebp + 0x6f], bl
mov dword [ebp + 0x2c], edi
jne 0x498bc1
cmp byte [ebp + 0x66], bl
jne 0x498bca
mov dword [ebp + 0x2c], str._o_ro
jmp 0x498bca
cmp dword [ebp + 0x4c], ebx
jne 0x498bca
mov byte [ebp + 0x37], 1
push dword [ebp + 0x28]
call dword [sym.imp.KERNEL32.dll_lstrlenW]
push dword [ebp + 0x48]
mov edi, eax
call dword [sym.imp.KERNEL32.dll_lstrlenW]
lea eax, [eax + edi + 0x800]
push eax
lea ecx, [ebp + 0x5c]
call fcn.00443fa0
push dword [ebp + 0x28]
push esi
push dword [ebp - 8]
push dword [ebp - 0x80]
push dword [ebp - 0x10]
push dword [ebp + 0x2c]
push str.imdisk__a___s__s__s___b__sb__s__sb__f__s
push dword [ebp + 0x5c]
call dword [sym.imp.USER32.dll_wsprintfW]
mov eax, dword [ebp + 0x38]
add esp, 0x20
mov dword [ebp + 0x20], eax
cmp word [eax], bx
je 0x498c8d
push 2
lea eax, [ebp + 0x20]
push eax
push 0x4c94c0
call fcn.0043ee42
add esp, 0xc
test al, al
jne 0x498c53
push 2
lea eax, [ebp + 0x20]
push eax
push 0x4c94b8
call fcn.0043ee42
add esp, 0xc
test al, al
jne 0x498c53
lea eax, [ebp + 0x20]
push eax
call fcn.00408ddd
jmp 0x498c81
mov ecx, dword [ebp + 0x20]
xor eax, eax
jmp 0x498c70
call fcn.0043daaf
test al, al
jne 0x498c78
mov word [ecx], 0x20
mov ecx, dword [ebp + 0x20]
inc ecx
inc ecx
mov dword [ebp + 0x20], ecx
mov ax, word [ecx]
cmp ax, bx
jne 0x498c5a
lea eax, [ebp + 0x20]
push eax
call fcn.0043dae7
mov eax, dword [ebp + 0x20]
cmp word [eax], bx
pop ecx
jne 0x498c1a
mov eax, dword [ebp + 0x38]
push eax
lea ecx, [ebp + 0x5c]
call fcn.00443fc7
mov eax, dword [ebp + 0x5c]
mov dword [ebp + 0x60], eax
jmp 0x499039
cmp byte [ebp + 0x6f], bl
je 0x498cd4
push ebx
push 0xa0000080
push 3
push ebx
push 7
push 0xc0000000
push dword [ebp + 0x28]
call dword [sym.imp.KERNEL32.dll_CreateFileW]
cmp eax, 0xffffffff
je 0x499775
push eax
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov dword [ebp + 0x4c], edi
jmp 0x498cdb
mov dword [ebp + 0x4c], 0x4c94b0
cmp dword [ebp - 0x34], ebx
jl 0x498cf9
jg 0x498ce7
cmp dword [ebp - 0x38], ebx
jbe 0x498cf9
push dword [ebp - 0x34]
lea eax, [esi + 0x6a]
push dword [ebp - 0x38]
push eax
call fcn.00497eb9
add esp, 0xc
push 0x5c
push ebx
push dword [ebp + 0x28]
call dword [sym.imp.SHLWAPI.dll_StrRChrW]
mov esi, eax
cmp esi, ebx
jne 0x498d10
mov esi, dword [ebp + 0x28]
jmp 0x498d12
inc esi
inc esi
mov eax, dword [ebp + 0x3c]
cmp word [eax], bx
jne 0x498d49
push 0x800
lea ecx, [ebp + 0x3c]
call fcn.00443fa0
mov edi, dword [ebp + 0x3c]
call fcn.00440118
push eax
push dword [ebp - 0xa0]
push dword [ebp - 8]
push esi
push str._s_s_s__u
push edi
call dword [sym.imp.USER32.dll_wsprintfW]
add esp, 0x18
push dword [ebp + 0x3c]
call dword [sym.imp.KERNEL32.dll_lstrlenW]
mov esi, eax
mov eax, 0x400
cmp esi, eax
jle 0x498d69
mov esi, eax
mov eax, dword [ebp + 0x3c]
mov word [eax + 0x800], bx
push str.Global_
lea ecx, [ebp - 0x14]
call fcn.0044ce38
push dword [ebp + 0x3c]
lea ecx, [ebp - 0x14]
call fcn.00443fc7
push str._devio_Ack
lea ecx, [ebp - 0x14]
call fcn.00443fc7
mov eax, dword [ebp - 4]
mov word [eax], bx
mov eax, dword [ebp - 0x48]
and eax, 0x30
or eax, ebx
mov word [ebp - 0x1d8], bx
jne 0x498dbc
cmp byte [ebp + 0x6f], bl
je 0x498e74
mov eax, dword [ebp - 0x48]
and eax, 0x40
or eax, ebx
jne 0x498e74
mov edi, dword [ebp - 4]
push 0x10
push str.__kill:
push edi
call fcn.00413de4
add esp, 0xc
push 0x104
add edi, 0x27e
push edi
push ebx
call dword [sym.imp.KERNEL32.dll_GetModuleFileNameW]
mov eax, dword [ebp - 4]
push 0x104
add eax, 0xe
push eax
push edi
call dword [sym.imp.KERNEL32.dll_GetShortPathNameW]
push dword [ebp - 4]
call dword [sym.imp.KERNEL32.dll_lstrlenW]
mov edi, dword [ebp + 0x54]
cmp word [edi], 0x22
mov dword [ebp - 0x84], eax
mov dword [ebp + 0x2c], edi
jne 0x498e28
add dword [ebp + 0x54], 2
jmp 0x498e1e
cmp ax, 0x22
je 0x498e35
inc edi
inc edi
mov ax, word [edi]
cmp ax, bx
jne 0x498e16
jmp 0x498e35
lea eax, [ebp + 0x2c]
push eax
call fcn.00405615
mov edi, dword [ebp + 0x2c]
pop ecx
mov ax, word [edi]
mov word [ebp + 0x2c], ax
mov word [edi], bx
mov eax, dword [ebp - 0x48]
and eax, 0x20
or eax, ebx
mov eax, str._LOAD_25_poweroff
jne 0x498e53
mov eax, str._RAMD_ImdiskV__D__m__s_
push dword [ebp + 0x54]
mov ecx, dword [ebp - 0x84]
push eax
mov eax, dword [ebp - 4]
lea eax, [eax + ecx*2]
push eax
call dword [sym.imp.USER32.dll_wsprintfW]
mov ax, word [ebp + 0x2c]
add esp, 0xc
mov word [edi], ax
mov eax, dword [ebp - 0x48]
mov edx, dword [ebp - 0x44]
mov cl, 1
call fcn.004aa370
and eax, 3
je 0x498e9c
push eax
lea eax, [ebp - 0x1d8]
push str._nrc:_d
push eax
call dword [sym.imp.USER32.dll_wsprintfW]
add esp, 0xc
push ebx
mov edi, 0x200
push edi
push dword [ebp - 0xac]
push dword [ebp - 0xb0]
call fcn.004aa080
push edx
push eax
push dword [ebp - 8]
call fcn.00497eb9
add esp, 0xc
push ebx
push edi
push dword [ebp - 0xb4]
push dword [ebp - 0xb8]
call fcn.004aa080
mov edi, dword [ebp - 0xa0]
push edx
push eax
push edi
call fcn.00497eb9
mov ecx, dword [ebp + 0x7c]
add esp, 0xc
push 0x4c07a4
push str.__ImdMapPid
call fcn.00443666
push dword [ebp - 0x28]
call dword [sym.imp.KERNEL32.dll_lstrlenW]
push dword [ebp + 0x28]
mov dword [ebp - 0x84], eax
call dword [sym.imp.KERNEL32.dll_lstrlenW]
add eax, dword [ebp - 0x84]
lea ecx, [ebp - 0x30]
lea eax, [eax + esi + 0x940]
push eax
call fcn.00443f79
push str.Global_
lea ecx, [ebp - 0x40]
call fcn.0044cd74
push dword [ebp + 0x3c]
lea ecx, [ebp - 0x40]
call fcn.00443fc7
push dword [ebp - 0x40]
push ebx
push 2
call dword [sym.imp.KERNEL32.dll_OpenFileMappingW]
cmp eax, ebx
jne 0x499787
lea ecx, [ebp - 0x40]
call fcn.0043db4f
push dword [ebp - 0xcc]
lea eax, [edi + 0x6a]
push eax
push dword [ebp - 8]
lea eax, [ebp - 0x1d8]
push edi
push dword [ebp + 0x28]
push dword [ebp + 0x3c]
push dword [ebp + 0x4c]
push eax
push dword [ebp - 0x28]
push dword [ebp - 4]
push dword [ebp + 0x44]
push str.EXEC___pid:__ImdMapPid____exe:_s10INDATA___nfb___MyName0____s__w:60000__s__s__s_shm:_s___s__s__s__s__s
push dword [ebp - 0x30]
call dword [sym.imp.USER32.dll_wsprintfW]
add esp, 0x34
add esi, 0x800
push esi
lea ecx, [ebp + 0x5c]
call fcn.00443fa0
mov eax, dword [ebp - 8]
mov word [eax], bx
mov word [edi], bx
push dword [ebp + 0x3c]
push dword [ebp - 0x80]
push dword [ebp - 0x10]
push 0x4bca0c
push str.imdisk__a__t_proxy__s__s__s__o_shm__f__s
push dword [ebp + 0x5c]
call dword [sym.imp.USER32.dll_wsprintfW]
add esp, 0x18
push dword [ebp + 0x38]
lea ecx, [ebp + 0x5c]
call fcn.00443fc7
push dword [ebp - 0x14]
mov eax, dword [ebp + 0x5c]
push ebx
push ebx
push ebx
mov dword [ebp + 0x60], eax
call dword [sym.imp.KERNEL32.dll_CreateEventW]
mov ecx, dword [ebp + 0x7c]
push ebx
push ebx
push ebx
push dword [ebp - 0x30]
mov esi, eax
call fcn.00433455
push 0xea60
push esi
call dword [sym.imp.KERNEL32.dll_WaitForSingleObject]
push esi
mov edi, eax
call dword [sym.imp.KERNEL32.dll_CloseHandle]
cmp edi, ebx
jne 0x4997b0
push 0x32
pop esi
push ebx
call dword [sym.imp.KERNEL32.dll_Sleep]
dec esi
jne 0x499015
cmp dword [ebp - 0x78], ebx
jle 0x499031
mov ecx, dword [ebp + 0x7c]
push ebx
push ebx
push dword [ebp - 0x78]
call fcn.004159e8
lea ecx, [ebp - 0x30]
call fcn.0043db4f
mov eax, dword [ebp + 0x38]
mov dword [ebp + 0x48], eax
lea ecx, [ebp - 0x2c]
mov word [eax], bx
mov dword [ebp - 0xe0], 1
call fcn.0043db4f
mov esi, 0x4d8d24
mov ax, word [ebp - 0x7c]
mov ecx, dword [ebp - 0xd8]
mov word [ecx], ax
jmp 0x4994e6
push 4
lea eax, [ebp + 0x48]
push eax
push 0x4c9604
call fcn.00445f31
add esp, 0xc
test al, al
je 0x499089
mov dword [ebp + 0x24], 1
push 5
lea eax, [ebp + 0x48]
push eax
push str._nexe
call fcn.00445f31
add esp, 0xc
test al, al
je 0x4990a7
mov dword [ebp + 0x24], 0xfff00000
push 6
lea eax, [ebp + 0x48]
push eax
push str._nexe1
call fcn.00445f31
add esp, 0xc
test al, al
je 0x4990cf
mov dword [ebp + 0x24], 0xfff00000
mov dword [ebp - 0x8c], 1
push 0x2c
pop esi
push esi
lea eax, [ebp - 0x1c]
push eax
lea eax, [ebp + 0x60]
push eax
call fcn.00446d58
mov eax, dword [ebp - 0x1c]
mov word [eax], bx
mov eax, dword [ebp + 0x60]
add esp, 0xc
cmp word [eax], bx
je 0x49919c
add dword [ebp + 0x60], edi
push esi
lea eax, [ebp - 0x1c]
push eax
lea eax, [ebp + 0x60]
push eax
call fcn.00446d58
mov eax, dword [ebp + 0x60]
add esp, 0xc
cmp word [eax], bx
je 0x49919c
add dword [ebp + 0x60], edi
push esi
lea eax, [ebp + 4]
push eax
lea eax, [ebp + 0x60]
push eax
call fcn.00446d58
mov eax, dword [ebp + 0x60]
add esp, 0xc
cmp word [eax], bx
je 0x49919c
add dword [ebp + 0x60], edi
push esi
lea eax, [ebp + 0x50]
push eax
lea eax, [ebp + 0x60]
push eax
call fcn.00446d58
mov eax, dword [ebp + 0x60]
add esp, 0xc
cmp word [eax], bx
je 0x49919c
add dword [ebp + 0x60], edi
push esi
lea eax, [ebp - 0xc]
push eax
lea eax, [ebp + 0x60]
push eax
call fcn.00446d58
mov eax, dword [ebp + 0x60]
add esp, 0xc
cmp word [eax], bx
je 0x49919c
add dword [ebp + 0x60], edi
push esi
lea eax, [ebp - 0x3c]
push eax
lea eax, [ebp + 0x60]
push eax
call fcn.00446d58
mov eax, dword [ebp + 0x60]
add esp, 0xc
cmp word [eax], bx
je 0x49919c
add dword [ebp + 0x60], edi
push esi
lea eax, [ebp - 0xd4]
push eax
lea eax, [ebp + 0x60]
push eax
call fcn.00446f0e
add esp, 0xc
push 6
lea ecx, [ebp + 0x50]
mov byte [ebp + 0x66], bl
call fcn.00443fa0
mov eax, dword [ebp + 0x50]
mov word [eax + 2], 0x3a
mov eax, dword [ebp + 0x50]
mov word [eax + 4], bx
mov eax, dword [ebp + 0x50]
cmp word [eax], bx
je 0x499238
push eax
call fcn.004a9676
test eax, eax
pop ecx
je 0x499230
mov eax, dword [ebp + 0x50]
lea ecx, [ebp - 0xa4]
mov dword [ebp - 0xfc], str.imdisk
mov dword [ebp - 0xf8], 0x4c95a4
mov dword [ebp - 0xf4], 0x4c9288
mov dword [ebp - 0xf0], eax
mov dword [ebp - 0xec], ebx
call fcn.00443f5b
lea eax, [ebp - 0xa4]
push eax
lea eax, [ebp - 0xfc]
push eax
push 4
call fcn.00424e7a
add esp, 0xc
neg eax
sbb al, al
inc al
lea ecx, [ebp - 0xa4]
mov byte [ebp + 0x66], al
call fcn.0043db4f
mov eax, dword [ebp + 0x50]
cmp word [eax], bx
jne 0x499251
push 0x4c14ac
lea ecx, [ebp + 0x50]
call fcn.0044cddc
mov eax, dword [ebp + 0x50]
cmp word [eax], bx
je 0x4997d1
push 0x3c
lea ecx, [ebp]
call fcn.00443f79
mov eax, dword [ebp - 0x1c]
or esi, 0xffffffff
mov dword [ebp - 0x9c], esi
mov dword [ebp - 0x98], esi
mov dword [ebp - 0x94], esi
mov dword [ebp - 0x90], esi
mov dword [ebp - 0xc8], esi
mov dword [ebp - 0xc4], esi
mov dword [ebp + 0x40], eax
cmp word [eax], bx
mov edi, esi
je 0x4997c9
lea eax, [ebp + 0x40]
push eax
call fcn.0043dae7
mov eax, dword [ebp + 0x40]
mov ax, word [eax]
or ax, 0x20
cmp ax, 0x70
pop ecx
jne 0x4992b5
lea eax, [ebp - 0x9c]
jmp 0x4992cf
cmp ax, 0x6c
jne 0x4992c3
lea eax, [ebp - 0x94]
jmp 0x4992cf
cmp ax, 0x68
jne 0x4992e7
lea eax, [ebp - 0xc8]
add dword [ebp + 0x40], 2
push eax
lea eax, [ebp + 0x40]
push eax
call fcn.00450311
mov eax, dword [ebp + 0x40]
cmp word [eax], bx
pop ecx
pop ecx
jne 0x499293
cmp dword [ebp - 0x98], ebx
jl 0x499329
jg 0x4992f9
cmp dword [ebp - 0x9c], ebx
jbe 0x499329
push 1
call fcn.00414c06
pop ecx
push dword [ebp - 0x98]
push dword [ebp - 0x9c]
push edx
push eax
call fcn.004aa130
push ebx
push 0x64
push edx
push eax
call fcn.004aa080
mov cl, 0x14
call fcn.004aa370
mov edi, eax
mov esi, edx
cmp esi, dword [ebp - 0x90]
jg 0x499347
jl 0x49933b
cmp edi, dword [ebp - 0x94]
jae 0x499347
mov edi, dword [ebp - 0x94]
mov esi, dword [ebp - 0x90]
mov ecx, dword [ebp - 0xc4]
cmp ecx, ebx
jl 0x499379
mov eax, dword [ebp - 0xc8]
jg 0x49935d
cmp eax, ebx
jbe 0x499379
cmp esi, ecx
jl 0x49936b
jg 0x499367
cmp edi, eax
jbe 0x49936b
mov edi, eax
mov esi, ecx
cmp esi, ebx
jg 0x49938b
jl 0x499375
cmp edi, ebx
ja 0x499379
mov edi, eax
mov esi, ecx
cmp esi, ebx
jl 0x4997c9
jg 0x49938b
cmp edi, ebx
jb 0x4997c9
mov eax, dword [ebp + 0x50]
cmp word [eax], bx
je 0x4997c9
cmp esi, ebx
jg 0x4993a6
jl 0x4993a1
cmp edi, ebx
ja 0x4993a6
xor edi, edi
inc edi
xor esi, esi
push esi
push edi
push dword [ebp]
call fcn.00497ed3
add esp, 0xc
push 0x4c9280
lea ecx, [ebp]
call fcn.00443fc7
cmp byte [ebp + 0x66], bl
mov eax, str.imdisk___e
jne 0x4993cf
mov eax, str.imdisk___a
push eax
lea ecx, [ebp + 0x5c]
call fcn.0044cddc
mov eax, dword [ebp - 0xd4]
and eax, 1
xor ecx, ecx
or eax, ecx
je 0x4993f4
push str.__o_awe
lea ecx, [ebp + 0x5c]
call fcn.00443fc7
mov eax, dword [ebp]
cmp word [eax], bx
je 0x499414
push 0x4c9230
lea ecx, [ebp + 0x5c]
call fcn.00443fc7
push dword [ebp]
lea ecx, [ebp + 0x5c]
call fcn.00443fc7
mov eax, dword [ebp + 0x50]
cmp word [eax], bx
je 0x499434
push str.___m
lea ecx, [ebp + 0x5c]
call fcn.00443fc7
push dword [ebp + 0x50]
lea ecx, [ebp + 0x5c]
call fcn.00443fc7
mov eax, dword [ebp + 4]
cmp word [eax], bx
jne 0x499448
mov eax, dword [ebp - 0xc]
cmp word [eax], bx
je 0x4994d3
push str.___p__
lea ecx, [ebp + 0x5c]
call fcn.00443fc7
mov eax, dword [ebp + 4]
cmp word [eax], bx
je 0x499475
push str.__FS:
lea ecx, [ebp + 0x5c]
call fcn.00443fc7
push dword [ebp + 4]
lea ecx, [ebp + 0x5c]
call fcn.00443fc7
mov eax, dword [ebp - 0xc]
cmp word [eax], bx
je 0x499495
push str.__V:
lea ecx, [ebp + 0x5c]
call fcn.00443fc7
push dword [ebp - 0xc]
lea ecx, [ebp + 0x5c]
call fcn.00443fc7
push dword [ebp + 4]
push 0x4c585c
call fcn.0043ef29
test al, al
pop ecx
pop ecx
je 0x4994c6
mov eax, dword [ebp - 0x3c]
mov ax, word [eax]
cmp ax, bx
je 0x4994c6
cmp ax, 0x30
je 0x4994c6
push 0x4c5854
lea ecx, [ebp + 0x5c]
call fcn.00443fc7
push str.___Q__Y__X__
lea ecx, [ebp + 0x5c]
call fcn.00443fc7
mov eax, dword [ebp + 0x5c]
lea ecx, [ebp]
mov dword [ebp + 0x60], eax
call fcn.0043db4f
mov esi, 0x4d8d24
lea eax, [ebp + 0x48]
push eax
call fcn.0043dae7
push 4
push dword [ebp + 0x48]
push str._gui
call fcn.0043ee93
add esp, 0x10
test al, al
jne 0x4997d8
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov edi, eax
mov eax, dword [ebp + 0x60]
mov dword [ebp + 0x44], eax
lea eax, [ebp + 0x44]
push eax
sub edi, 0xc8
call fcn.00405615
pop ecx
push dword [ebp + 0x44]
lea ecx, [ebp - 0x54]
call fcn.0044ce38
mov eax, dword [ebp - 0x54]
mov dword [ebp + 0x44], eax
mov dword [ebp + 0x54], eax
jmp 0x49958f
push 6
lea eax, [ebp + 0x54]
push eax
push str.__nbrd
call fcn.00445fa6
add esp, 0xc
test al, al
jne 0x49958c
push 6
lea eax, [ebp + 0x54]
push eax
push 0x4bd8e4
call fcn.00445fa6
add esp, 0xc
test al, al
jne 0x49958c
push 2
lea eax, [ebp + 0x54]
push eax
push 0x4c1a8c
call fcn.00445fa6
add esp, 0xc
test al, al
jne 0x49958c
lea eax, [ebp + 0x54]
push eax
call fcn.00408ddd
pop ecx
mov eax, dword [ebp + 0x54]
cmp word [eax], bx
jne 0x49953d
cmp dword [ebp - 0x18], ebx
jne 0x4996a1
cmp dword [ebp + 0x24], ebx
jg 0x4996a1
push ebx
push dword [ebp + 0x60]
lea ecx, [ebp - 0x19c]
call fcn.0044fb36
cmp dword [ebp - 0x164], 1
jle 0x4997ef
mov eax, dword [ebp - 0x160]
mov dword [eax], str.imdisk
lea eax, [ebp - 0x24]
push eax
push dword [ebp - 0x160]
push dword [ebp - 0x164]
call fcn.00424e7a
add esp, 0xc
cmp byte [ebp + 0x37], bl
mov dword [ebp + 0x1c], eax
mov dword [ebp - 0x88], ebx
jle 0x4996f7
cmp eax, 3
jne 0x4996f7
cmp dword [ebp - 0x8c], ebx
jne 0x4996f7
lea ecx, [ebp - 0x14]
mov byte [ebp + 0x5b], 1
call fcn.0043db4f
lea ecx, [ebp - 0x54]
call fcn.0043db4f
lea ecx, [ebp + 0x28]
call fcn.0043db4f
lea ecx, [ebp - 0x28]
call fcn.0043db4f
lea ecx, [ebp + 0x3c]
call fcn.0043db4f
lea ecx, [ebp - 0x3c]
call fcn.0043db4f
lea ecx, [ebp - 0xc]
call fcn.0043db4f
lea ecx, [ebp + 0x50]
call fcn.0043db4f
lea ecx, [ebp + 4]
call fcn.0043db4f
lea ecx, [ebp - 0x1c]
call fcn.0043db4f
lea ecx, [ebp + 0x14]
call fcn.0043db4f
lea ecx, [ebp + 0x5c]
call fcn.0043db4f
lea ecx, [ebp - 0xa8]
call fcn.0043db4f
lea ecx, [ebp + 0x18]
call fcn.0043db4f
lea ecx, [ebp - 0x24]
call fcn.0043db4f
lea ecx, [ebp + 0x78]
call fcn.004964dd
lea ecx, [ebp - 0x70]
call fcn.0043db4f
jmp 0x4981f3
cmp dword [ebp - 0x8c], ebx
jne 0x4996f7
push dword [ebp + 0x14]
lea ecx, [ebp - 0x50]
call fcn.0044cd74
push dword [ebp + 0x44]
lea ecx, [ebp - 0x50]
call fcn.00443fc7
mov eax, dword [ebp + 0x18]
cmp word [eax], bx
mov ecx, dword [ebp + 0x7c]
mov dword [ebp - 0x88], 1
je 0x4996e4
push ebx
push ebx
push ebx
push ebx
push dword [ebp - 0x50]
push ecx
push ebx
call fcn.0040a2d5
jmp 0x4996ec
push dword [ebp - 0x50]
call fcn.00402e91
lea ecx, [ebp - 0x50]
mov dword [ebp + 0x1c], eax
call fcn.0043db4f
mov ecx, dword [ebp - 0xe0]
xor eax, eax
or ecx, eax
je 0x4997f6
cmp dword [ebp + 0x1c], 3
jne 0x4997f6
call dword [sym.imp.KERNEL32.dll_GetTickCount]
sub eax, edi
cmp eax, 0x1388
jae 0x4997f6
mov ecx, dword [ebp + 0x7c]
push ebx
push ebx
push 0xc8
call fcn.004159e8
mov esi, 0x4d8d24
jmp 0x499594
mov edi, dword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
push esi
call dword [sym.imp.KERNEL32.dll_EnterCriticalSection]
cmp dword [0x4d8d80], ebx
jle 0x499763
push esi
call edi
mov ecx, dword [ebp + 0x7c]
push ebx
push ebx
push 1
call fcn.004159e8
jmp 0x499743
push 0xffffffffffffffff
lea ecx, [ebp + 0xf]
call fcn.00412fc1
push esi
call edi
jmp 0x4998ca
call dword [sym.imp.KERNEL32.dll_GetLastError]
cmp eax, ebx
jne 0x499782
xor eax, eax
inc eax
mov dword [ebp + 0x1c], eax
jmp 0x4997bf
push eax
call dword [sym.imp.KERNEL32.dll_CloseHandle]
lea ecx, [ebp - 0x40]
call fcn.0043db4f
lea ecx, [ebp - 0x30]
call fcn.0043db4f
lea ecx, [ebp - 0x2c]
call fcn.0043db4f
mov ebx, 0xb7
jmp 0x499847
lea ecx, [ebp - 0x30]
mov dword [ebp + 0x1c], 1
call fcn.0043db4f
lea ecx, [ebp - 0x2c]
call fcn.0043db4f
jmp 0x4997f6
lea ecx, [ebp]
call fcn.0043db4f
mov ebx, 0x80070057
jmp 0x499847
mov ecx, dword [ebp + 0x7c]
push 0xffffffffffffff9c
push 0x4bca0c
push ebx
push str.imdisk.cpl_
call fcn.00458949
jmp 0x499847
mov dword [ebp + 0x1c], 0x80070057
mov eax, dword [ebp - 0x15c]
cmp eax, ebx
je 0x499811
lea ecx, [ebp + 0x78]
mov dword [ebp + 0x78], eax
mov dword [ebp - 0x15c], ebx
call fcn.0043db4f
mov edx, dword [ebp + 0x18]
cmp word [edx], bx
je 0x499844
cmp dword [ebp - 0x88], ebx
jne 0x499844
mov ecx, dword [ebp - 0x24]
mov word [ebp - 0x218], bx
cmp word [ecx], 0x2a
lea eax, [ebp - 0x218]
jne 0x49983a
lea eax, [ecx + 2]
mov ecx, dword [ebp + 0x7c]
push eax
push edx
call fcn.00443666
mov ebx, dword [ebp + 0x1c]
lea ecx, [ebp - 0x14]
call fcn.0043db4f
lea ecx, [ebp - 0x54]
call fcn.0043db4f
lea ecx, [ebp + 0x28]
call fcn.0043db4f
lea ecx, [ebp - 0x28]
call fcn.0043db4f
lea ecx, [ebp + 0x3c]
call fcn.0043db4f
lea ecx, [ebp - 0x3c]
call fcn.0043db4f
lea ecx, [ebp - 0xc]
call fcn.0043db4f
lea ecx, [ebp + 0x50]
call fcn.0043db4f
lea ecx, [ebp + 4]
call fcn.0043db4f
lea ecx, [ebp - 0x1c]
call fcn.0043db4f
lea ecx, [ebp + 0x14]
call fcn.0043db4f
lea ecx, [ebp + 0x5c]
call fcn.0043db4f
lea ecx, [ebp - 0xa8]
call fcn.0043db4f
lea ecx, [ebp + 0x18]
call fcn.0043db4f
lea ecx, [ebp - 0x24]
call fcn.0043db4f
lea ecx, [ebp + 0x78]
call fcn.004964dd
lea ecx, [ebp - 0x70]
call fcn.0043db4f
pop edi
pop esi
mov eax, ebx
pop ebx
add ebp, 0x70
leave
ret