Function at 0x444d80
Capabilities:
Check os version
Set file attributes

Disassembly:
push ebp
mov ebp, esp
mov eax, dword fs:[0]
push 0xffffffffffffffff
push 0x48bb78
push eax
mov eax, 0xa2d4
mov dword fs:[0], esp
call fcn.0042b9a0
push ebx
push esi
push edi
push eax
xor eax, eax
pop eax
je 0x444dad
invalid
xor esi, esi
mov dword [ebp - 0x34], esi
mov dword [ebp - 0x34], esp
mov ebx, 0x104d5000
mov eax, dword [ebp - 0x34]
cmp eax, esi
jne 0x444dc7
mov dword [0x104d5000], ebx
mov al, byte [ebp - 0x35]
push esi
lea ecx, [ebp - 0x30]
mov byte [ebp - 0x30], al
call fcn.004017b0
mov edi, 0x4b5e48
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
dec ecx
push ecx
push 0x4b5e48
lea ecx, [ebp - 0x30]
call fcn.00413060
mov edi, 0x4b0d60
or ecx, 0xffffffff
xor eax, eax
mov dword [ebp - 4], esi
repne scasb al, byte es:[edi]
not ecx
dec ecx
push ecx
push 0x4b0d60
lea ecx, [ebp - 0x30]
call fcn.0041d290
mov edi, 0x4b0d60
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
dec ecx
push ecx
push 0x4b0d60
lea ecx, [ebp - 0x30]
call fcn.0041d290
mov edi, 0x4b0d60
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
dec ecx
push ecx
push 0x4b0d60
lea ecx, [ebp - 0x30]
call fcn.0041d290
mov edi, 0x49f190
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
dec ecx
push ecx
push 0x49f190
lea ecx, [ebp - 0x30]
call fcn.0041d290
mov ecx, dword [0x491cd4]
push ecx
push esi
push 0x4c8b60
lea ecx, [ebp - 0x30]
call fcn.00412f80
mov edi, 0x49f190
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
dec ecx
push ecx
push 0x49f190
lea ecx, [ebp - 0x30]
call fcn.0041d290
mov edi, 0x4b5e44
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
dec ecx
push ecx
push 0x4b5e44
lea ecx, [ebp - 0x30]
call fcn.0041d290
mov edi, 0x4b5e40
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
dec ecx
push ecx
push 0x4b5e40
lea ecx, [ebp - 0x30]
call fcn.0041d290
mov edi, 0x4b5e3c
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
dec ecx
push ecx
push 0x4b5e3c
lea ecx, [ebp - 0x30]
call fcn.0041d290
mov al, byte [0x4c885d]
test al, al
je 0x444f13
mov edi, str._netbar_
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
dec ecx
push ecx
push str._netbar_
jmp 0x444f28
mov edi, str._std_
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
dec ecx
push ecx
push str._std_
lea ecx, [ebp - 0x30]
call fcn.0041d290
mov edx, dword [0x491cd4]
lea ecx, [ebp - 0x30]
push edx
push esi
push 0x4c8c40
call fcn.00412f80
mov al, byte [0x4c8728]
push esi
lea ecx, [ebp - 0x20]
mov byte [ebp - 0x20], al
call fcn.004017b0
mov ecx, dword [0x491cd4]
push ecx
push esi
push 0x4c8728
lea ecx, [ebp - 0x20]
call fcn.004094e0
mov edi, 0x4b0b48
or ecx, 0xffffffff
xor eax, eax
mov byte [ebp - 4], 1
repne scasb al, byte es:[edi]
not ecx
dec ecx
push ecx
push 0x4b0b48
lea ecx, [ebp - 0x20]
call fcn.0041d290
mov edx, dword [0x491cd4]
lea ecx, [ebp - 0x20]
push edx
push esi
push 0x4c8b60
call fcn.00412f80
mov edi, 0x4b0b48
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
dec ecx
push ecx
push 0x4b0b48
lea ecx, [ebp - 0x20]
call fcn.0041d290
mov eax, dword [0x491cd4]
lea ecx, [ebp - 0x20]
push eax
push esi
push 0x4c8c40
call fcn.00412f80
push eax
xor eax, eax
pop eax
je 0x444fda
invalid
mov dword [ebp - 0x34], esi
mov dword [ebp - 0x34], esp
mov eax, dword [ebp - 0x34]
cmp eax, esi
jne 0x444fed
mov dword [0x104d5000], ebx
lea ecx, [ebp - 0xec]
call fcn.00445bd0
mov ecx, dword [0x491cd4]
lea edx, [ebp - 0x30]
push ecx
push esi
push edx
lea ecx, [ebp - 0xec]
mov byte [ebp - 4], 2
call fcn.004094e0
mov eax, dword [0x491cd4]
lea ecx, [ebp - 0x20]
push eax
push esi
push ecx
lea ecx, [ebp - 0xdc]
call fcn.004094e0
mov edx, dword [0x491cd4]
lea ecx, [ebp - 0xbc]
push edx
push esi
push 0x4c8b10
call fcn.004094e0
mov eax, dword [0x491cd4]
lea ecx, [ebp - 0xac]
push eax
push esi
push 0x4c8bd0
call fcn.004094e0
push 0x4c8b60
lea ecx, [ebp - 0x48]
push 0x4b5e18
push ecx
call fcn.0040a260
add esp, 0xc
mov edx, dword [ebp - 0xc4]
push eax
push edx
lea ecx, [ebp - 0xcc]
mov byte [ebp - 4], 3
call fcn.00448fc0
push 1
lea ecx, [ebp - 0x48]
mov byte [ebp - 4], 2
call fcn.004017b0
mov eax, dword [ebp - 0x1c]
cmp eax, esi
jne 0x44509f
mov eax, 0x48d810
push 0x80
push eax
call dword [sym.imp.KERNEL32.dll_SetFileAttributesA]
push 1
push esi
lea ecx, [ebp - 0x134]
call fcn.00450940
lea eax, [ebp - 0xec]
lea ecx, [ebp - 0x134]
push eax
mov byte [ebp - 4], 7
call fcn.00450be0
test al, al
jne 0x4450f6
lea ecx, [ebp - 0x134]
mov byte [ebp - 4], 2
call fcn.00450b20
lea ecx, [ebp - 0xec]
mov byte [ebp - 4], 1
call fcn.00445c30
jmp 0x4451b9
mov edi, dword [sym.imp.WINMM.dll_timeGetTime]
mov ebx, dword [sym.imp.KERNEL32.dll_Sleep]
mov byte [ebp - 0x35], 0
lea ecx, [ebp - 0x190]
push ecx
lea ecx, [ebp - 0x134]
call fcn.00451640
mov eax, dword [ebp - 0x190]
mov byte [ebp - 4], 8
test al, al
jne 0x445183
test ah, ah
jne 0x445172
mov al, byte [0x4c8ca0]
test al, al
jne 0x445178
push eax
xor eax, eax
pop eax
je 0x44513b
invalid
call edi
mov esi, eax
xor eax, eax
mov edx, 0x64
sub edx, eax
push edx
call ebx
call edi
cmp eax, esi
jb 0x445155
sub eax, esi
jmp 0x445158
sub eax, esi
dec eax
cmp eax, 0x64
jb 0x445141
push 1
lea ecx, [ebp - 0x16c]
mov byte [ebp - 4], 7
call fcn.004017b0
xor esi, esi
jmp 0x445106
mov byte [ebp - 0x35], 1
jmp 0x445183
lea ecx, [ebp - 0x134]
call fcn.00451590
push 1
lea ecx, [ebp - 0x16c]
mov byte [ebp - 4], 7
call fcn.004017b0
lea ecx, [ebp - 0x134]
mov byte [ebp - 4], 2
call fcn.00450b20
lea ecx, [ebp - 0xec]
mov byte [ebp - 4], 1
call fcn.00445c30
mov al, byte [ebp - 0x35]
test al, al
jne 0x4451e9
push 1
lea ecx, [ebp - 0x20]
mov byte [ebp - 4], 0
call fcn.004017b0
push 1
lea ecx, [ebp - 0x30]
mov dword [ebp - 4], 0xffffffff
call fcn.004017b0
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
lea eax, [ebp - 0x35]
lea ecx, [ebp - 0x98]
push eax
call fcn.004122c0
lea ecx, [ebp - 0xd]
mov byte [ebp - 4], 9
push ecx
lea ecx, [ebp - 0x88]
call fcn.004122c0
lea edx, [ebp - 0x157]
lea ecx, [ebp - 0x78]
push edx
mov byte [ebp - 4], 0xa
call fcn.004122c0
lea eax, [ebp - 0x156]
lea ecx, [ebp - 0x68]
push eax
mov byte [ebp - 4], 0xb
call fcn.004122c0
mov byte [ebp - 4], 0xc
push eax
xor eax, eax
pop eax
je 0x44523d
invalid
mov dword [ebp - 0x34], esi
mov dword [ebp - 0x34], esp
mov eax, dword [ebp - 0x34]
cmp eax, esi
jne 0x445254
mov dword [0x104d5000], 0x104d5000
lea ecx, [ebp - 0x155]
push ecx
lea ecx, [ebp - 0x48]
call fcn.004122c0
lea edx, [ebp - 0x48]
lea eax, [ebp - 0x20]
push edx
push eax
mov byte [ebp - 4], 0xd
call fcn.0044a6b0
add esp, 8
test al, al
je 0x445595
lea ecx, [ebp - 0x158]
lea edx, [ebp - 0x99]
push ecx
push edx
lea ecx, [ebp - 0x58]
call fcn.004128a0
lea ecx, [ebp - 0x48]
mov byte [ebp - 4], 0xe
xor ebx, ebx
call fcn.00412880
test eax, eax
jbe 0x4453d9
xor esi, esi
mov eax, dword [ebp - 0x44]
mov eax, dword [eax + esi + 4]
test eax, eax
jne 0x4452bd
mov eax, 0x48d810
mov ecx, dword [0x4c8b34]
test ecx, ecx
jne 0x4452cc
mov ecx, 0x48d810
push eax
push ecx
call fcn.0042c2c0
add esp, 8
test eax, eax
jne 0x4452e7
mov edi, dword [ebp - 0x44]
push 0x4c8b30
jmp 0x44538a
mov eax, dword [ebp - 0x44]
mov eax, dword [eax + esi + 4]
test eax, eax
jne 0x4452f7
mov eax, 0x48d810
mov ecx, dword [0x4c8c64]
test ecx, ecx
jne 0x445306
mov ecx, 0x48d810
push eax
push ecx
call fcn.0042c2c0
add esp, 8
test eax, eax
jne 0x44531e
mov edi, dword [ebp - 0x44]
push 0x4c8c60
jmp 0x44538a
mov eax, dword [ebp - 0x44]
mov eax, dword [eax + esi + 4]
test eax, eax
jne 0x44532e
mov eax, 0x48d810
mov ecx, dword [0x4c8b24]
test ecx, ecx
jne 0x44533d
mov ecx, 0x48d810
push eax
push ecx
call fcn.0042c2c0
add esp, 8
test eax, eax
jne 0x445355
mov edi, dword [ebp - 0x44]
push 0x4c8b20
jmp 0x44538a
mov eax, dword [ebp - 0x44]
mov eax, dword [eax + esi + 4]
test eax, eax
jne 0x445365
mov eax, 0x48d810
mov ecx, dword [0x4c8c54]
test ecx, ecx
jne 0x445374
mov ecx, 0x48d810
push eax
push ecx
call fcn.0042c2c0
add esp, 8
test eax, eax
jne 0x4453a2
mov edi, dword [ebp - 0x44]
push 0x4c8c50
lea ecx, [ebp - 0x58]
call fcn.00412950
mov ecx, dword [0x491cd4]
lea edx, [edi + esi + 0x10]
push ecx
push 0
push edx
jmp 0x4453be
mov eax, dword [ebp - 0x44]
lea ecx, [ebp - 0x58]
lea edi, [eax + esi]
push edi
call fcn.00412950
mov ecx, dword [0x491cd4]
add edi, 0x10
push ecx
push 0
push edi
mov ecx, eax
call fcn.004094e0
lea ecx, [ebp - 0x48]
inc ebx
add esi, 0x20
call fcn.00412880
cmp ebx, eax
jb 0x4452ad
mov esi, dword [ebp - 0x54]
lea edx, [ebp - 0x34]
push 0x4c8b30
push edx
lea ecx, [ebp - 0x58]
call fcn.00412a90
cmp dword [eax], esi
sete al
test al, al
jne 0x445589
mov esi, dword [ebp - 0x54]
lea eax, [ebp - 0x248]
push 0x4c8c60
push eax
lea ecx, [ebp - 0x58]
call fcn.00412a90
cmp dword [eax], esi
sete al
test al, al
jne 0x445589
mov esi, dword [ebp - 0x54]
lea ecx, [ebp - 0x24c]
push 0x4c8b20
push ecx
lea ecx, [ebp - 0x58]
call fcn.00412a90
cmp dword [eax], esi
sete al
test al, al
jne 0x445589
mov esi, dword [ebp - 0x54]
lea edx, [ebp - 0x244]
push 0x4c8c50
push edx
lea ecx, [ebp - 0x58]
call fcn.00412a90
cmp dword [eax], esi
sete al
test al, al
jne 0x445589
push 0x4c8b30
lea ecx, [ebp - 0x58]
call fcn.00412950
mov ecx, dword [0x491cd4]
push ecx
push 0
push eax
lea ecx, [ebp - 0x98]
call fcn.004094e0
push 0x4c8c60
lea ecx, [ebp - 0x58]
call fcn.00412950
mov edx, dword [0x491cd4]
lea ecx, [ebp - 0x88]
push edx
push 0
push eax
call fcn.004094e0
push 0x4c8b20
lea ecx, [ebp - 0x58]
call fcn.00412950
mov ecx, dword [0x491cd4]
push ecx
push 0
push eax
lea ecx, [ebp - 0x78]
call fcn.004094e0
push 0x4c8c50
lea ecx, [ebp - 0x58]
call fcn.00412950
mov edx, dword [0x491cd4]
lea ecx, [ebp - 0x68]
push edx
push 0
push eax
call fcn.004094e0
lea ecx, [ebp - 0x58]
mov byte [ebp - 4], 0xd
call fcn.00412b40
lea ecx, [ebp - 0x48]
mov byte [ebp - 4], 0xc
call fcn.00412840
mov edi, 0x4b5e48
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
dec ecx
push ecx
push 0x4b5e48
lea ecx, [ebp - 0x30]
call fcn.00413060
mov eax, dword [0x491cd4]
lea ecx, [ebp - 0x98]
push eax
push 0
push ecx
lea ecx, [ebp - 0x30]
call fcn.00412f80
mov edi, 0x4b5e14
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
dec ecx
push ecx
push 0x4b5e14
lea ecx, [ebp - 0x30]
call fcn.0041d290
mov edx, dword [0x491cd4]
lea eax, [ebp - 0x88]
push edx
push 0
push eax
lea ecx, [ebp - 0x30]
call fcn.00412f80
mov al, byte [0x4c885d]
test al, al
je 0x4455e4
mov edi, str._netbar_
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
dec ecx
push ecx
push str._netbar_
jmp 0x4455f9
lea ecx, [ebp - 0x58]
mov byte [ebp - 4], 0xd
call fcn.00412b40
lea ecx, [ebp - 0x48]
mov byte [ebp - 4], 0xc
call fcn.00412840
push 1
lea ecx, [ebp - 0x68]
mov byte [ebp - 4], 0x11
call fcn.004017b0
push 1
lea ecx, [ebp - 0x78]
mov byte [ebp - 4], 0x10
call fcn.004017b0
push 1
lea ecx, [ebp - 0x88]
mov byte [ebp - 4], 0xf
call fcn.004017b0
push 1
lea ecx, [ebp - 0x98]
mov byte [ebp - 4], 1
call fcn.004017b0
jmp 0x4451b9
mov edi, str._std_
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
dec ecx
push ecx
push str._std_
lea ecx, [ebp - 0x30]
call fcn.0041d290
mov ecx, dword [0x491cd4]
push ecx
push 0
push 0x4c8c20
lea ecx, [ebp - 0x30]
call fcn.00412f80
mov edx, dword [0x491cd4]
lea ecx, [ebp - 0x20]
push edx
push 0
push 0x4c8728
call fcn.004094e0
mov edi, 0x4b0b48
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
dec ecx
push ecx
push 0x4b0b48
lea ecx, [ebp - 0x20]
call fcn.0041d290
mov eax, dword [0x491cd4]
lea ecx, [ebp - 0x20]
push eax
push 0
push 0x4c8b60
call fcn.00412f80
mov edi, 0x4b0b48
or ecx, 0xffffffff
xor eax, eax
mov edx, dword [ebp - 0x18]
repne scasb al, byte es:[edi]
not ecx
dec ecx
mov esi, ecx
mov ecx, dword [0x491cd4]
sub ecx, edx
cmp ecx, esi
ja 0x445684
call fcn.00479494
test esi, esi
jbe 0x4456c4
mov edx, dword [ebp - 0x18]
push 0
lea ecx, [ebp - 0x20]
lea ebx, [edx + esi]
push ebx
call fcn.00401850
test al, al
je 0x4456c4
mov eax, dword [ebp - 0x1c]
mov ecx, dword [ebp - 0x18]
push ebx
lea edi, [ecx + eax]
mov ecx, esi
mov edx, ecx
mov esi, 0x4b0b48
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
lea ecx, [ebp - 0x20]
call fcn.004099d0
mov eax, dword [0x491cd4]
xor esi, esi
push eax
push esi
push 0x4c8c20
lea ecx, [ebp - 0x20]
call fcn.00412f80
push eax
xor eax, eax
pop eax
je 0x4456e2
invalid
mov dword [ebp - 0x34], esi
mov dword [ebp - 0x34], esp
mov eax, dword [ebp - 0x34]
cmp eax, esi
jne 0x4456f9
mov dword [0x104d5000], 0x104d5000
lea ecx, [ebp - 0xec]
call fcn.00445bd0
mov ecx, dword [0x491cd4]
lea edx, [ebp - 0x30]
push ecx
push esi
push edx
lea ecx, [ebp - 0xec]
mov byte [ebp - 4], 0x12
call fcn.004094e0
mov eax, dword [0x491cd4]
lea ecx, [ebp - 0x20]
push eax
push esi
push ecx
lea ecx, [ebp - 0xdc]
call fcn.004094e0
mov edx, dword [0x491cd4]
lea ecx, [ebp - 0xbc]
push edx
push esi
push 0x4c8b10
call fcn.004094e0
mov eax, dword [0x491cd4]
lea ecx, [ebp - 0xac]
push eax
push esi
push 0x4c8bd0
call fcn.004094e0
push 0x4c8b60
lea ecx, [ebp - 0x144]
push 0x4b5e18
push ecx
call fcn.0040a260
add esp, 0xc
mov edx, dword [ebp - 0xc4]
push eax
push edx
lea ecx, [ebp - 0xcc]
mov byte [ebp - 4], 0x13
call fcn.00448fc0
push 1
lea ecx, [ebp - 0x144]
mov byte [ebp - 4], 0x12
call fcn.004017b0
push eax
xor eax, eax
pop eax
je 0x4457ad
invalid
mov dword [ebp - 0x34], esi
mov dword [ebp - 0x34], esp
mov eax, dword [ebp - 0x34]
cmp eax, esi
jne 0x4457c4
mov dword [0x104d5000], 0x104d5000
lea eax, [ebp - 0x240]
push eax
call fcn.00447810
lea ecx, [ebp - 0x34]
lea edx, [ebp - 0xa2e0]
push ecx
push edx
mov dword [ebp - 0x34], 0xa000
call sub.iphlpapi.dll_GetAdaptersInfo
test eax, eax
jne 0x44584f
mov ecx, dword [ebp - 0xa150]
cmp ecx, esi
jle 0x44580d
cmp eax, 6
jae 0x44580d
mov dl, byte [ebp + eax - 0xa14c]
mov byte [ebp + eax - 0x230], dl
inc eax
cmp eax, ecx
jl 0x4457f5
lea eax, [ebp - 0xa130]
push 0x10
lea ecx, [ebp - 0x229]
push eax
push ecx
call fcn.004328e0
lea edx, [ebp - 0xa120]
push 0x10
lea eax, [ebp - 0x218]
push edx
push eax
call fcn.004328e0
lea ecx, [ebp - 0xa108]
push 0x10
lea edx, [ebp - 0x207]
push ecx
push edx
call fcn.004328e0
add esp, 0x24
lea eax, [ebp - 0x2e0]
mov dword [ebp - 0x2e0], 0x94
push eax
call dword [sym.imp.KERNEL32.dll_GetVersionExA]
mov eax, dword [ebp - 0x2d4]
mov ecx, dword [ebp - 0x2dc]
mov edx, dword [ebp - 0x2d8]
mov dword [ebp - 0x1ee], eax
mov eax, dword [0x4c87f0]
mov dword [ebp - 0x1f6], ecx
mov ecx, dword [ebp - 0x2d0]
cmp eax, 0x20
mov dword [ebp - 0x1f2], edx
mov dword [ebp - 0x1ea], ecx
jbe 0x4458bb
mov ecx, 0x4c87e8
call fcn.004096e0
mov eax, dword [0x4c87ec]
push 0x20
lea edx, [ebp - 0x1e6]
push eax
push edx
jmp 0x4458ec
push 0x4bd5a4
mov ecx, 0x4c87e8
call fcn.004149b0
test eax, eax
je 0x4458f1
mov esi, dword [0x4c87f0]
mov ecx, 0x4c87e8
call fcn.004096e0
mov eax, dword [0x4c87ec]
push esi
push eax
lea eax, [ebp - 0x1e6]
push eax
call fcn.004086f0
mov al, byte [0x4c885c]
test al, al
je 0x445913
mov ecx, 8
mov eax, 0x31313131
lea edi, [ebp - 0x1e6]
rep stosd dword es:[edi], eax
mov byte [ebp - 0x1c7], 0
mov ecx, dword [0x4c886c]
mov edx, dword [0x4c8870]
mov eax, dword [0x4c8874]
mov dword [ebp - 0x1a6], ecx
mov ecx, dword [0x4c8878]
mov dword [ebp - 0x1a2], edx
mov dword [ebp - 0x19a], ecx
mov cl, byte [0x4c885d]
test cl, cl
setne dl
mov dword [ebp - 0x19e], eax
mov al, byte [ebp - 0x99]
xor esi, esi
lea ecx, [ebp - 0x48]
push esi
mov dword [ebp - 0x196], 0x3000100
mov byte [ebp - 0x192], dl
mov byte [ebp - 0x48], al
call fcn.004017b0
mov edi, 0x4bd5a4
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
dec ecx
push ecx
push 0x4bd5a4
lea ecx, [ebp - 0x48]
call fcn.00413060
lea ecx, [ebp - 0x48]
lea edx, [ebp - 0x240]
push ecx
push edx
mov byte [ebp - 4], 0x14
call fcn.00447860
push 0x4b5e10
lea eax, [ebp - 0x154]
push 0x4c8b60
push eax
call fcn.00414570
lea ecx, [ebp - 0x48]
lea edx, [ebp - 0x144]
push ecx
mov bl, 0x15
push eax
push edx
mov byte [ebp - 4], bl
call fcn.004146a0
add esp, 0x18
push eax
mov eax, dword [ebp - 0xc4]
push eax
lea ecx, [ebp - 0xcc]
mov byte [ebp - 4], 0x16
call fcn.00448fc0
push 1
lea ecx, [ebp - 0x144]
mov byte [ebp - 4], bl
call fcn.004017b0
push 1
lea ecx, [ebp - 0x154]
mov byte [ebp - 4], 0x14
call fcn.004017b0
push 1
lea ecx, [ebp - 0x48]
mov byte [ebp - 4], 0x12
call fcn.004017b0
push 1
push esi
lea ecx, [ebp - 0x134]
call fcn.00450940
lea ecx, [ebp - 0xec]
mov byte [ebp - 4], 0x17
push ecx
lea ecx, [ebp - 0x134]
call fcn.00450be0
test al, al
je 0x445ad7
mov ebx, dword [sym.imp.KERNEL32.dll_Sleep]
mov edi, dword [sym.imp.WINMM.dll_timeGetTime]
lea edx, [ebp - 0x190]
lea ecx, [ebp - 0x134]
push edx
call fcn.00451640
mov eax, dword [ebp - 0x190]
mov byte [ebp - 4], 0x18
test al, al
jne 0x445ac6
test ah, ah
jne 0x445ac6
mov al, byte [0x4c8ca0]
test al, al
jne 0x445abb
push eax
xor eax, eax
pop eax
je 0x445a84
invalid
call edi
mov esi, eax
xor eax, eax
mov ecx, 0x64
sub ecx, eax
push ecx
call ebx
call edi
cmp eax, esi
jb 0x445a9e
sub eax, esi
jmp 0x445aa1
sub eax, esi
dec eax
cmp eax, 0x64
jb 0x445a8a
push 1
lea ecx, [ebp - 0x16c]
mov byte [ebp - 4], 0x17
call fcn.004017b0
xor esi, esi
jmp 0x445a4f
lea ecx, [ebp - 0x134]
call fcn.00451590
push 1
lea ecx, [ebp - 0x16c]
mov byte [ebp - 4], 0x17
call fcn.004017b0
lea ecx, [ebp - 0x134]
mov byte [ebp - 4], 0x12
call fcn.00450b20
lea ecx, [ebp - 0xec]
mov byte [ebp - 4], 0xc
call fcn.00445c30
push 1
lea ecx, [ebp - 0x68]
mov byte [ebp - 4], 0x1b
call fcn.004017b0
push 1
lea ecx, [ebp - 0x78]
mov byte [ebp - 4], 0x1a
call fcn.004017b0
push 1
lea ecx, [ebp - 0x88]
mov byte [ebp - 4], 0x19
call fcn.004017b0
mov ecx, dword [ebp - 0x94]
cmp ecx, esi
je 0x445b48
mov al, byte [ecx - 1]
test al, al
je 0x445b3e
cmp al, 0xff
je 0x445b3e
dec al
mov byte [ecx - 1], al
jmp 0x445b48
dec ecx
push ecx
call fcn.00485078
add esp, 4
mov ecx, dword [ebp - 0x1c]
mov dword [ebp - 0x94], esi
cmp ecx, esi
mov dword [ebp - 0x90], esi
mov dword [ebp - 0x8c], esi
je 0x445b7d
mov al, byte [ecx - 1]
test al, al
je 0x445b73
cmp al, 0xff
je 0x445b73
dec al
mov byte [ecx - 1], al
jmp 0x445b7d
dec ecx
push ecx
call fcn.00485078
add esp, 4
mov ecx, dword [ebp - 0x2c]
mov dword [ebp - 0x1c], esi
cmp ecx, esi
mov dword [ebp - 0x18], esi
mov dword [ebp - 0x14], esi
je 0x445bb8
mov al, byte [ecx - 1]
test al, al
je 0x445bae
cmp al, 0xff
je 0x445bae
dec al
mov byte [ecx - 1], al
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
dec ecx
push ecx
call fcn.00485078
add esp, 4
mov ecx, dword [ebp - 0xc]
pop edi
pop esi
mov dword fs:[0], ecx
pop ebx
mov esp, ebp
pop ebp
ret