Function at 0x458b30
Capabilities:
Check os version
Get session user name

Disassembly:
push ebp
mov ebp, esp
push 0xfffffffffffffffe
push 0x47e898
push 0x40e3c0
mov eax, dword fs:[0]
push eax
sub esp, 8
mov eax, 0x26b0
call fcn.00418010
mov eax, dword [0x481398]
xor dword [ebp - 8], eax
xor eax, ebp
mov dword [ebp - 0x28], eax
push ebx
push esi
push edi
push eax
lea eax, [ebp - 0x10]
mov dword fs:[0], eax
mov dword [ebp - 0x1c], 0
mov dword [ebp - 0x20], 0
jmp 0x458b86
mov eax, dword [ebp - 0x20]
add eax, 1
mov dword [ebp - 0x20], eax
cmp dword [ebp - 0x20], 0xa
jge 0x458bca
cmp dword [ebp - 0x1c], 0
jge 0x458b9a
mov ecx, dword [ebp - 0x1c]
neg ecx
mov dword [ebp - 0x1c], ecx
mov eax, dword [ebp - 0x1c]
cdq
mov ecx, 7
idiv ecx
test edx, edx
jne 0x458bb0
mov dword [ebp - 0x1c], 0
mov dword [ebp - 0x24], 0xfa
lea edx, [ebp - 0x24]
push edx
lea eax, [ebp - 0x220]
push eax
call dword [sym.imp.ADVAPI32.dll_GetUserNameW]
jmp 0x458b7d
mov dword [ebp - 0x224], 0
jmp 0x458be5
mov ecx, dword [ebp - 0x224]
add ecx, 1
mov dword [ebp - 0x224], ecx
cmp dword [ebp - 0x224], 9
jge 0x458c1c
mov edx, dword [ebp - 0x1c]
xor edx, dword [ebp - 0x224]
mov dword [ebp - 0x1c], edx
jge 0x458c04
mov eax, dword [ebp - 0x1c]
neg eax
mov dword [ebp - 0x1c], eax
mov eax, dword [ebp - 0x1c]
cdq
mov ecx, 7
idiv ecx
test edx, edx
jne 0x458c1a
mov dword [ebp - 0x1c], 0
jmp 0x458bd6
mov edx, 1
test edx, edx
je 0x458c56
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov dword [ebp - 0x228], eax
mov eax, dword [ebp - 0x228]
xor edx, edx
mov ecx, 7
div ecx
test edx, edx
jne 0x458c48
jmp 0x458c56
mov edx, dword [ebp - 0x1c]
add edx, dword [ebp - 0x228]
mov dword [ebp - 0x1c], edx
jmp 0x458c1c
mov eax, dword [ebp - 0x1c]
add eax, 0x1d
mov dword [ebp - 0x1c], eax
mov dword [ebp - 4], 0
mov dword [ebp - 0x22c], 0
jmp 0x458c81
mov ecx, dword [ebp - 0x22c]
add ecx, 1
mov dword [ebp - 0x22c], ecx
cmp dword [ebp - 0x22c], 5
jge 0x458cbc
mov eax, dword [ebp - 0x22c]
cdq
mov ecx, 7
idiv ecx
cmp edx, 5
je 0x458cb0
mov eax, dword [ebp - 0x22c]
cdq
mov ecx, 0xb
idiv ecx
cmp edx, 7
jne 0x458cb7
and eax, 0xbc614e
jmp 0x458cba
mov dword [ebp - 0x1c], eax
jmp 0x458c72
mov dword [ebp - 4], 0xfffffffe
call fcn.00458cca
jmp 0x458cd2
mov dword [ebp - 0x230], 0
mov edx, 1
test edx, edx
je 0x458d26
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov dword [ebp - 0x234], eax
mov eax, dword [ebp - 0x234]
xor edx, edx
mov ecx, 3
div ecx
test edx, edx
jne 0x458d08
jmp 0x458d26
mov edx, dword [ebp - 0x1c]
imul edx, dword [ebp - 0x230]
mov dword [ebp - 0x1c], edx
mov eax, dword [ebp - 0x230]
add eax, 1
mov dword [ebp - 0x230], eax
jmp 0x458cdc
mov ecx, dword [ebp - 0x1c]
add ecx, 0xe
mov dword [ebp - 0x1c], ecx
mov dword [ebp - 0x238], 0
mov edx, 1
test edx, edx
je 0x458d83
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov dword [ebp - 0x23c], eax
mov eax, dword [ebp - 0x23c]
xor edx, edx
mov ecx, 3
div ecx
test edx, edx
jne 0x458d65
jmp 0x458d83
mov edx, dword [ebp - 0x1c]
imul edx, dword [ebp - 0x238]
mov dword [ebp - 0x1c], edx
mov eax, dword [ebp - 0x238]
add eax, 1
mov dword [ebp - 0x238], eax
jmp 0x458d39
mov ecx, dword [ebp - 0x1c]
mov dword [ebp - 0x1c], ecx
mov dword [ebp - 0x240], 1
mov dword [ebp - 0x244], 1
mov dword [ebp - 0x248], 2
mov dword [ebp - 0x24c], 0
mov dword [ebp - 0x250], 0
jmp 0x458dcc
mov edx, dword [ebp - 0x250]
add edx, 1
mov dword [ebp - 0x250], edx
cmp dword [ebp - 0x250], 6
jge 0x458e0d
mov eax, dword [ebp - 0x240]
add eax, dword [ebp - 0x244]
mov dword [ebp - 0x248], eax
mov ecx, dword [ebp - 0x244]
mov dword [ebp - 0x240], ecx
mov edx, dword [ebp - 0x248]
mov dword [ebp - 0x244], edx
mov eax, dword [ebp - 0x1c]
add eax, dword [ebp - 0x248]
mov dword [ebp - 0x1c], eax
jmp 0x458dbd
mov ecx, dword [ebp - 0x1c]
add ecx, 6
mov dword [ebp - 0x1c], ecx
mov dword [ebp - 0x254], 0
jmp 0x458e31
mov edx, dword [ebp - 0x254]
add edx, 1
mov dword [ebp - 0x254], edx
cmp dword [ebp - 0x254], 0
jge 0x458e48
mov eax, dword [ebp - 0x1c]
sub eax, dword [ebp - 0x254]
mov dword [ebp - 0x1c], eax
jmp 0x458e22
cmp dword [ebp - 0x1c], 0xffff0001
jge 0x458e5a
mov ecx, dword [ebp - 0x1c]
imul ecx, ecx, 0xfffffffb
mov dword [ebp - 0x1c], ecx
mov eax, dword [ebp - 0x1c]
cdq
mov ecx, 7
idiv ecx
test edx, edx
je 0x458e72
call dword [sym.imp.KERNEL32.dll_GetVersion]
mov dword [ebp - 0x1c], eax
mov edx, 1
test edx, edx
je 0x458eac
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov dword [ebp - 0x258], eax
mov eax, dword [ebp - 0x258]
xor edx, edx
mov ecx, 7
div ecx
test edx, edx
jne 0x458e9e
jmp 0x458eac
mov edx, dword [ebp - 0x1c]
add edx, dword [ebp - 0x258]
mov dword [ebp - 0x1c], edx
jmp 0x458e72
mov eax, dword [ebp - 0x1c]
add eax, 1
mov dword [ebp - 0x1c], eax
mov ecx, 1
test ecx, ecx
je 0x458eef
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov dword [ebp - 0x25c], eax
mov eax, dword [ebp - 0x25c]
xor edx, edx
mov ecx, 7
div ecx
test edx, edx
jne 0x458ee1
jmp 0x458eef
mov edx, dword [ebp - 0x1c]
add edx, dword [ebp - 0x25c]
mov dword [ebp - 0x1c], edx
jmp 0x458eb5
mov eax, dword [ebp - 0x1c]
add eax, 5
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x260], 0
jmp 0x458f13
mov ecx, dword [ebp - 0x260]
add ecx, 1
mov dword [ebp - 0x260], ecx
cmp dword [ebp - 0x260], 3
jge 0x458f4a
mov edx, dword [ebp - 0x1c]
xor edx, dword [ebp - 0x260]
mov dword [ebp - 0x1c], edx
jge 0x458f32
mov eax, dword [ebp - 0x1c]
neg eax
mov dword [ebp - 0x1c], eax
mov eax, dword [ebp - 0x1c]
cdq
mov ecx, 7
idiv ecx
test edx, edx
jne 0x458f48
mov dword [ebp - 0x1c], 0
jmp 0x458f04
mov edx, 1
test edx, edx
je 0x458f84
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov dword [ebp - 0x264], eax
mov eax, dword [ebp - 0x264]
xor edx, edx
mov ecx, 7
div ecx
test edx, edx
jne 0x458f76
jmp 0x458f84
mov edx, dword [ebp - 0x1c]
add edx, dword [ebp - 0x264]
mov dword [ebp - 0x1c], edx
jmp 0x458f4a
mov eax, dword [ebp - 0x1c]
add eax, 9
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x268], 0
jmp 0x458fa8
mov ecx, dword [ebp - 0x268]
add ecx, 1
mov dword [ebp - 0x268], ecx
cmp dword [ebp - 0x268], 2
jge 0x458ff5
cmp dword [ebp - 0x1c], 0
jge 0x458fbf
mov edx, dword [ebp - 0x1c]
neg edx
mov dword [ebp - 0x1c], edx
mov eax, dword [ebp - 0x1c]
cdq
mov ecx, 7
idiv ecx
test edx, edx
jne 0x458fd5
mov dword [ebp - 0x1c], 0
mov dword [ebp - 0x26c], 0xfa
lea edx, [ebp - 0x26c]
push edx
lea eax, [ebp - 0x468]
push eax
call dword [sym.imp.ADVAPI32.dll_GetUserNameW]
jmp 0x458f99
mov dword [ebp - 0x46c], 0
jmp 0x459010
mov ecx, dword [ebp - 0x46c]
add ecx, 1
mov dword [ebp - 0x46c], ecx
cmp dword [ebp - 0x46c], 0
jge 0x459027
mov edx, dword [ebp - 0x1c]
sub edx, dword [ebp - 0x46c]
mov dword [ebp - 0x1c], edx
jmp 0x459001
cmp dword [ebp - 0x1c], 0xffff0001
jge 0x459039
mov eax, dword [ebp - 0x1c]
imul eax, eax, 0xfffffffb
mov dword [ebp - 0x1c], eax
mov eax, dword [ebp - 0x1c]
cdq
mov ecx, 7
idiv ecx
test edx, edx
je 0x459051
call dword [sym.imp.KERNEL32.dll_GetVersion]
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x470], 0
mov edx, 1
test edx, edx
je 0x4590a5
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov dword [ebp - 0x474], eax
mov eax, dword [ebp - 0x474]
xor edx, edx
mov ecx, 3
div ecx
test edx, edx
jne 0x459087
jmp 0x4590a5
mov edx, dword [ebp - 0x1c]
imul edx, dword [ebp - 0x470]
mov dword [ebp - 0x1c], edx
mov eax, dword [ebp - 0x470]
add eax, 1
mov dword [ebp - 0x470], eax
jmp 0x45905b
mov ecx, dword [ebp - 0x1c]
add ecx, 0x10
mov dword [ebp - 0x1c], ecx
mov dword [ebp - 0x478], 0
mov edx, 1
test edx, edx
je 0x459102
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov dword [ebp - 0x47c], eax
mov eax, dword [ebp - 0x47c]
xor edx, edx
mov ecx, 3
div ecx
test edx, edx
jne 0x4590e4
jmp 0x459102
mov edx, dword [ebp - 0x1c]
imul edx, dword [ebp - 0x478]
mov dword [ebp - 0x1c], edx
mov eax, dword [ebp - 0x478]
add eax, 1
mov dword [ebp - 0x478], eax
jmp 0x4590b8
mov ecx, dword [ebp - 0x1c]
add ecx, 0x10
mov dword [ebp - 0x1c], ecx
mov dword [ebp - 0x480], 0
jmp 0x459126
mov edx, dword [ebp - 0x480]
add edx, 1
mov dword [ebp - 0x480], edx
cmp dword [ebp - 0x480], 5
jge 0x459173
cmp dword [ebp - 0x1c], 0
jge 0x45913d
mov eax, dword [ebp - 0x1c]
neg eax
mov dword [ebp - 0x1c], eax
mov eax, dword [ebp - 0x1c]
cdq
mov ecx, 7
idiv ecx
test edx, edx
jne 0x459153
mov dword [ebp - 0x1c], 0
mov dword [ebp - 0x484], 0xfa
lea edx, [ebp - 0x484]
push edx
lea eax, [ebp - 0x680]
push eax
call dword [sym.imp.ADVAPI32.dll_GetUserNameW]
jmp 0x459117
mov dword [ebp - 0x684], 1
mov dword [ebp - 0x688], 1
mov dword [ebp - 0x68c], 2
mov dword [ebp - 0x690], 0
mov dword [ebp - 0x694], 0
jmp 0x4591b6
mov ecx, dword [ebp - 0x694]
add ecx, 1
mov dword [ebp - 0x694], ecx
cmp dword [ebp - 0x694], 3
jge 0x4591f7
mov edx, dword [ebp - 0x684]
add edx, dword [ebp - 0x688]
mov dword [ebp - 0x68c], edx
mov eax, dword [ebp - 0x688]
mov dword [ebp - 0x684], eax
mov ecx, dword [ebp - 0x68c]
mov dword [ebp - 0x688], ecx
mov edx, dword [ebp - 0x1c]
add edx, dword [ebp - 0x68c]
mov dword [ebp - 0x1c], edx
jmp 0x4591a7
mov eax, dword [ebp - 0x1c]
add eax, 3
mov dword [ebp - 0x1c], eax
mov ecx, 1
test ecx, ecx
je 0x45923a
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov dword [ebp - 0x698], eax
mov eax, dword [ebp - 0x698]
xor edx, edx
mov ecx, 7
div ecx
test edx, edx
jne 0x45922c
jmp 0x45923a
mov edx, dword [ebp - 0x1c]
add edx, dword [ebp - 0x698]
mov dword [ebp - 0x1c], edx
jmp 0x459200
mov eax, dword [ebp - 0x1c]
add eax, 4
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x69c], 0
jmp 0x45925e
mov ecx, dword [ebp - 0x69c]
add ecx, 1
mov dword [ebp - 0x69c], ecx
cmp dword [ebp - 0x69c], 8
jge 0x459275
mov edx, dword [ebp - 0x1c]
sub edx, dword [ebp - 0x69c]
mov dword [ebp - 0x1c], edx
jmp 0x45924f
cmp dword [ebp - 0x1c], 0xffff0001
jge 0x459287
mov eax, dword [ebp - 0x1c]
imul eax, eax, 0xfffffffb
mov dword [ebp - 0x1c], eax
mov eax, dword [ebp - 0x1c]
cdq
mov ecx, 7
idiv ecx
test edx, edx
je 0x45929f
call dword [sym.imp.KERNEL32.dll_GetVersion]
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x6a0], 1
mov dword [ebp - 0x6a4], 1
mov dword [ebp - 0x6a8], 2
mov dword [ebp - 0x6ac], 0
mov dword [ebp - 0x6b0], 0
jmp 0x4592e2
mov edx, dword [ebp - 0x6b0]
add edx, 1
mov dword [ebp - 0x6b0], edx
cmp dword [ebp - 0x6b0], 6
jge 0x459323
mov eax, dword [ebp - 0x6a0]
add eax, dword [ebp - 0x6a4]
mov dword [ebp - 0x6a8], eax
mov ecx, dword [ebp - 0x6a4]
mov dword [ebp - 0x6a0], ecx
mov edx, dword [ebp - 0x6a8]
mov dword [ebp - 0x6a4], edx
mov eax, dword [ebp - 0x1c]
add eax, dword [ebp - 0x6a8]
mov dword [ebp - 0x1c], eax
jmp 0x4592d3
mov ecx, dword [ebp - 0x1c]
add ecx, 6
mov dword [ebp - 0x1c], ecx
mov dword [ebp - 0x6b4], 0
jmp 0x459347
mov edx, dword [ebp - 0x6b4]
add edx, 1
mov dword [ebp - 0x6b4], edx
cmp dword [ebp - 0x6b4], 4
jge 0x45935e
mov eax, dword [ebp - 0x1c]
sub eax, dword [ebp - 0x6b4]
mov dword [ebp - 0x1c], eax
jmp 0x459338
cmp dword [ebp - 0x1c], 0xffff0001
jge 0x459370
mov ecx, dword [ebp - 0x1c]
imul ecx, ecx, 0xfffffffb
mov dword [ebp - 0x1c], ecx
mov eax, dword [ebp - 0x1c]
cdq
mov ecx, 7
idiv ecx
test edx, edx
je 0x459388
call dword [sym.imp.KERNEL32.dll_GetVersion]
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x6b8], 0
jmp 0x4593a3
mov edx, dword [ebp - 0x6b8]
add edx, 1
mov dword [ebp - 0x6b8], edx
cmp dword [ebp - 0x6b8], 5
jge 0x4593ba
mov eax, dword [ebp - 0x1c]
sub eax, dword [ebp - 0x6b8]
mov dword [ebp - 0x1c], eax
jmp 0x459394
cmp dword [ebp - 0x1c], 0xffff0001
jge 0x4593cc
mov ecx, dword [ebp - 0x1c]
imul ecx, ecx, 0xfffffffb
mov dword [ebp - 0x1c], ecx
mov eax, dword [ebp - 0x1c]
cdq
mov ecx, 7
idiv ecx
test edx, edx
je 0x4593e4
call dword [sym.imp.KERNEL32.dll_GetVersion]
mov dword [ebp - 0x1c], eax
mov dword [ebp - 4], 1
mov dword [ebp - 0x6bc], 0
jmp 0x459406
mov edx, dword [ebp - 0x6bc]
add edx, 1
mov dword [ebp - 0x6bc], edx
cmp dword [ebp - 0x6bc], 0
jge 0x459441
mov eax, dword [ebp - 0x6bc]
cdq
mov ecx, 7
idiv ecx
cmp edx, 5
je 0x459435
mov eax, dword [ebp - 0x6bc]
cdq
mov ecx, 0xb
idiv ecx
cmp edx, 7
jne 0x45943c
and eax, 0xbc614e
jmp 0x45943f
mov dword [ebp - 0x1c], eax
jmp 0x4593f7
mov dword [ebp - 4], 0xfffffffe
call fcn.0045944f
jmp 0x459457
mov dword [ebp - 0x6c0], 0
jmp 0x459472
mov edx, dword [ebp - 0x6c0]
add edx, 1
mov dword [ebp - 0x6c0], edx
cmp dword [ebp - 0x6c0], 1
jge 0x4594bf
cmp dword [ebp - 0x1c], 0
jge 0x459489
mov eax, dword [ebp - 0x1c]
neg eax
mov dword [ebp - 0x1c], eax
mov eax, dword [ebp - 0x1c]
cdq
mov ecx, 7
idiv ecx
test edx, edx
jne 0x45949f
mov dword [ebp - 0x1c], 0
mov dword [ebp - 0x6c4], 0xfa
lea edx, [ebp - 0x6c4]
push edx
lea eax, [ebp - 0x8c0]
push eax
call dword [sym.imp.ADVAPI32.dll_GetUserNameW]
jmp 0x459463
mov dword [ebp - 0x8c4], 0
mov ecx, 1
test ecx, ecx
je 0x459513
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov dword [ebp - 0x8c8], eax
mov eax, dword [ebp - 0x8c8]
xor edx, edx
mov ecx, 3
div ecx
test edx, edx
jne 0x4594f5
jmp 0x459513
mov edx, dword [ebp - 0x1c]
imul edx, dword [ebp - 0x8c4]
mov dword [ebp - 0x1c], edx
mov eax, dword [ebp - 0x8c4]
add eax, 1
mov dword [ebp - 0x8c4], eax
jmp 0x4594c9
mov ecx, dword [ebp - 0x1c]
add ecx, 3
mov dword [ebp - 0x1c], ecx
mov dword [ebp - 0x8cc], 0
jmp 0x459537
mov edx, dword [ebp - 0x8cc]
add edx, 1
mov dword [ebp - 0x8cc], edx
cmp dword [ebp - 0x8cc], 1
jge 0x45954e
mov eax, dword [ebp - 0x1c]
sub eax, dword [ebp - 0x8cc]
mov dword [ebp - 0x1c], eax
jmp 0x459528
cmp dword [ebp - 0x1c], 0xffff0001
jge 0x459560
mov ecx, dword [ebp - 0x1c]
imul ecx, ecx, 0xfffffffb
mov dword [ebp - 0x1c], ecx
mov eax, dword [ebp - 0x1c]
cdq
mov ecx, 7
idiv ecx
test edx, edx
je 0x459578
call dword [sym.imp.KERNEL32.dll_GetVersion]
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x8d0], 1
mov dword [ebp - 0x8d4], 1
mov dword [ebp - 0x8d8], 2
mov dword [ebp - 0x8dc], 0
mov dword [ebp - 0x8e0], 0
jmp 0x4595bb
mov edx, dword [ebp - 0x8e0]
add edx, 1
mov dword [ebp - 0x8e0], edx
cmp dword [ebp - 0x8e0], 5
jge 0x4595fc
mov eax, dword [ebp - 0x8d0]
add eax, dword [ebp - 0x8d4]
mov dword [ebp - 0x8d8], eax
mov ecx, dword [ebp - 0x8d4]
mov dword [ebp - 0x8d0], ecx
mov edx, dword [ebp - 0x8d8]
mov dword [ebp - 0x8d4], edx
mov eax, dword [ebp - 0x1c]
add eax, dword [ebp - 0x8d8]
mov dword [ebp - 0x1c], eax
jmp 0x4595ac
mov ecx, dword [ebp - 0x1c]
add ecx, 5
mov dword [ebp - 0x1c], ecx
mov dword [ebp - 4], 2
mov dword [ebp - 0x8e4], 0
jmp 0x459627
mov edx, dword [ebp - 0x8e4]
add edx, 1
mov dword [ebp - 0x8e4], edx
cmp dword [ebp - 0x8e4], 6
jge 0x459662
mov eax, dword [ebp - 0x8e4]
cdq
mov ecx, 7
idiv ecx
cmp edx, 5
je 0x459656
mov eax, dword [ebp - 0x8e4]
cdq
mov ecx, 0xb
idiv ecx
cmp edx, 7
jne 0x45965d
and eax, 0xbc614e
jmp 0x459660
mov dword [ebp - 0x1c], eax
jmp 0x459618
mov dword [ebp - 4], 0xfffffffe
call fcn.00459670
jmp 0x459678
mov dword [ebp - 4], 3
mov dword [ebp - 0x8e8], 0
jmp 0x45969a
mov edx, dword [ebp - 0x8e8]
add edx, 1
mov dword [ebp - 0x8e8], edx
cmp dword [ebp - 0x8e8], 1
jge 0x4596d5
mov eax, dword [ebp - 0x8e8]
cdq
mov ecx, 7
idiv ecx
cmp edx, 5
je 0x4596c9
mov eax, dword [ebp - 0x8e8]
cdq
mov ecx, 0xb
idiv ecx
cmp edx, 7
jne 0x4596d0
and eax, 0xbc614e
jmp 0x4596d3
mov dword [ebp - 0x1c], eax
jmp 0x45968b
mov dword [ebp - 4], 0xfffffffe
call fcn.004596e3
jmp 0x4596eb
mov dword [ebp - 0x8ec], 1
mov dword [ebp - 0x8f0], 1
mov dword [ebp - 0x8f4], 2
mov dword [ebp - 0x8f8], 0
mov dword [ebp - 0x8fc], 0
jmp 0x45972e
mov edx, dword [ebp - 0x8fc]
add edx, 1
mov dword [ebp - 0x8fc], edx
cmp dword [ebp - 0x8fc], 8
jge 0x45976f
mov eax, dword [ebp - 0x8ec]
add eax, dword [ebp - 0x8f0]
mov dword [ebp - 0x8f4], eax
mov ecx, dword [ebp - 0x8f0]
mov dword [ebp - 0x8ec], ecx
mov edx, dword [ebp - 0x8f4]
mov dword [ebp - 0x8f0], edx
mov eax, dword [ebp - 0x1c]
add eax, dword [ebp - 0x8f4]
mov dword [ebp - 0x1c], eax
jmp 0x45971f
mov ecx, dword [ebp - 0x1c]
add ecx, 8
mov dword [ebp - 0x1c], ecx
mov edx, 1
test edx, edx
je 0x4597b2
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov dword [ebp - 0x900], eax
mov eax, dword [ebp - 0x900]
xor edx, edx
mov ecx, 7
div ecx
test edx, edx
jne 0x4597a4
jmp 0x4597b2
mov edx, dword [ebp - 0x1c]
add edx, dword [ebp - 0x900]
mov dword [ebp - 0x1c], edx
jmp 0x459778
mov eax, dword [ebp - 0x1c]
add eax, 3
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x904], 0
jmp 0x4597d6
mov ecx, dword [ebp - 0x904]
add ecx, 1
mov dword [ebp - 0x904], ecx
cmp dword [ebp - 0x904], 0
jge 0x4597ed
mov edx, dword [ebp - 0x1c]
sub edx, dword [ebp - 0x904]
mov dword [ebp - 0x1c], edx
jmp 0x4597c7
cmp dword [ebp - 0x1c], 0xffff0001
jge 0x4597ff
mov eax, dword [ebp - 0x1c]
imul eax, eax, 0xfffffffb
mov dword [ebp - 0x1c], eax
mov eax, dword [ebp - 0x1c]
cdq
mov ecx, 7
idiv ecx
test edx, edx
je 0x459817
call dword [sym.imp.KERNEL32.dll_GetVersion]
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x908], 0
jmp 0x459832
mov edx, dword [ebp - 0x908]
add edx, 1
mov dword [ebp - 0x908], edx
cmp dword [ebp - 0x908], 7
jge 0x45987f
cmp dword [ebp - 0x1c], 0
jge 0x459849
mov eax, dword [ebp - 0x1c]
neg eax
mov dword [ebp - 0x1c], eax
mov eax, dword [ebp - 0x1c]
cdq
mov ecx, 7
idiv ecx
test edx, edx
jne 0x45985f
mov dword [ebp - 0x1c], 0
mov dword [ebp - 0x90c], 0xfa
lea edx, [ebp - 0x90c]
push edx
lea eax, [ebp - 0xb08]
push eax
call dword [sym.imp.ADVAPI32.dll_GetUserNameW]
jmp 0x459823
mov dword [ebp - 0xb0c], 0
jmp 0x45989a
mov ecx, dword [ebp - 0xb0c]
add ecx, 1
mov dword [ebp - 0xb0c], ecx
cmp dword [ebp - 0xb0c], 3
jge 0x4598e7
cmp dword [ebp - 0x1c], 0
jge 0x4598b1
mov edx, dword [ebp - 0x1c]
neg edx
mov dword [ebp - 0x1c], edx
mov eax, dword [ebp - 0x1c]
cdq
mov ecx, 7
idiv ecx
test edx, edx
jne 0x4598c7
mov dword [ebp - 0x1c], 0
mov dword [ebp - 0xb10], 0xfa
lea edx, [ebp - 0xb10]
push edx
lea eax, [ebp - 0xd08]
push eax
call dword [sym.imp.ADVAPI32.dll_GetUserNameW]
jmp 0x45988b
mov dword [ebp - 0xd0c], 1
mov dword [ebp - 0xd10], 1
mov dword [ebp - 0xd14], 2
mov dword [ebp - 0xd18], 0
mov dword [ebp - 0xd1c], 0
jmp 0x45992a
mov ecx, dword [ebp - 0xd1c]
add ecx, 1
mov dword [ebp - 0xd1c], ecx
cmp dword [ebp - 0xd1c], 2
jge 0x45996b
mov edx, dword [ebp - 0xd0c]
add edx, dword [ebp - 0xd10]
mov dword [ebp - 0xd14], edx
mov eax, dword [ebp - 0xd10]
mov dword [ebp - 0xd0c], eax
mov ecx, dword [ebp - 0xd14]
mov dword [ebp - 0xd10], ecx
mov edx, dword [ebp - 0x1c]
add edx, dword [ebp - 0xd14]
mov dword [ebp - 0x1c], edx
jmp 0x45991b
mov eax, dword [ebp - 0x1c]
add eax, 2
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0xd20], 1
mov dword [ebp - 0xd24], 1
mov dword [ebp - 0xd28], 2
mov dword [ebp - 0xd2c], 0
mov dword [ebp - 0xd30], 0
jmp 0x4599b7
mov ecx, dword [ebp - 0xd30]
add ecx, 1
mov dword [ebp - 0xd30], ecx
cmp dword [ebp - 0xd30], 4
jge 0x4599f8
mov edx, dword [ebp - 0xd20]
add edx, dword [ebp - 0xd24]
mov dword [ebp - 0xd28], edx
mov eax, dword [ebp - 0xd24]
mov dword [ebp - 0xd20], eax
mov ecx, dword [ebp - 0xd28]
mov dword [ebp - 0xd24], ecx
mov edx, dword [ebp - 0x1c]
add edx, dword [ebp - 0xd28]
mov dword [ebp - 0x1c], edx
jmp 0x4599a8
mov eax, dword [ebp - 0x1c]
add eax, 4
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0xd34], 0
mov ecx, 1
test ecx, ecx
je 0x459a55
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov dword [ebp - 0xd38], eax
mov eax, dword [ebp - 0xd38]
xor edx, edx
mov ecx, 3
div ecx
test edx, edx
jne 0x459a37
jmp 0x459a55
mov edx, dword [ebp - 0x1c]
imul edx, dword [ebp - 0xd34]
mov dword [ebp - 0x1c], edx
mov eax, dword [ebp - 0xd34]
add eax, 1
mov dword [ebp - 0xd34], eax
jmp 0x459a0b
mov ecx, dword [ebp - 0x1c]
add ecx, 4
mov dword [ebp - 0x1c], ecx
mov dword [ebp - 0xd3c], 0
mov edx, 1
test edx, edx
je 0x459ab2
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov dword [ebp - 0xd40], eax
mov eax, dword [ebp - 0xd40]
xor edx, edx
mov ecx, 3
div ecx
test edx, edx
jne 0x459a94
jmp 0x459ab2
mov edx, dword [ebp - 0x1c]
imul edx, dword [ebp - 0xd3c]
mov dword [ebp - 0x1c], edx
mov eax, dword [ebp - 0xd3c]
add eax, 1
mov dword [ebp - 0xd3c], eax
jmp 0x459a68
mov ecx, dword [ebp - 0x1c]
add ecx, 4
mov dword [ebp - 0x1c], ecx
mov dword [ebp - 0xd44], 0
jmp 0x459ad6
mov edx, dword [ebp - 0xd44]
add edx, 1
mov dword [ebp - 0xd44], edx
cmp dword [ebp - 0xd44], 5
jge 0x459b0d
mov eax, dword [ebp - 0x1c]
xor eax, dword [ebp - 0xd44]
mov dword [ebp - 0x1c], eax
jge 0x459af5
mov ecx, dword [ebp - 0x1c]
neg ecx
mov dword [ebp - 0x1c], ecx
mov eax, dword [ebp - 0x1c]
cdq
mov ecx, 7
idiv ecx
test edx, edx
jne 0x459b0b
mov dword [ebp - 0x1c], 0
jmp 0x459ac7
mov dword [ebp - 0xd48], 0
jmp 0x459b28
mov edx, dword [ebp - 0xd48]
add edx, 1
mov dword [ebp - 0xd48], edx
cmp dword [ebp - 0xd48], 8
jge 0x459b5f
mov eax, dword [ebp - 0x1c]
xor eax, dword [ebp - 0xd48]
mov dword [ebp - 0x1c], eax
jge 0x459b47
mov ecx, dword [ebp - 0x1c]
neg ecx
mov dword [ebp - 0x1c], ecx
mov eax, dword [ebp - 0x1c]
cdq
mov ecx, 7
idiv ecx
test edx, edx
jne 0x459b5d
mov dword [ebp - 0x1c], 0
jmp 0x459b19
mov dword [ebp - 0xd4c], 0
mov edx, 1
test edx, edx
je 0x459bb3
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov dword [ebp - 0xd50], eax
mov eax, dword [ebp - 0xd50]
xor edx, edx
mov ecx, 3
div ecx
test edx, edx
jne 0x459b95
jmp 0x459bb3
mov edx, dword [ebp - 0x1c]
imul edx, dword [ebp - 0xd4c]
mov dword [ebp - 0x1c], edx
mov eax, dword [ebp - 0xd4c]
add eax, 1
mov dword [ebp - 0xd4c], eax
jmp 0x459b69
mov ecx, dword [ebp - 0x1c]
add ecx, 3
mov dword [ebp - 0x1c], ecx
mov edx, 1
test edx, edx
je 0x459bf6
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov dword [ebp - 0xd54], eax
mov eax, dword [ebp - 0xd54]
xor edx, edx
mov ecx, 7
div ecx
test edx, edx
jne 0x459be8
jmp 0x459bf6
mov edx, dword [ebp - 0x1c]
add edx, dword [ebp - 0xd54]
mov dword [ebp - 0x1c], edx
jmp 0x459bbc
mov eax, dword [ebp - 0x1c]
add eax, 7
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0xd58], 0
jmp 0x459c1a
mov ecx, dword [ebp - 0xd58]
add ecx, 1
mov dword [ebp - 0xd58], ecx
cmp dword [ebp - 0xd58], 5
jge 0x459c31
mov edx, dword [ebp - 0x1c]
sub edx, dword [ebp - 0xd58]
mov dword [ebp - 0x1c], edx
jmp 0x459c0b
cmp dword [ebp - 0x1c], 0xffff0001
jge 0x459c43
mov eax, dword [ebp - 0x1c]
imul eax, eax, 0xfffffffb
mov dword [ebp - 0x1c], eax
mov eax, dword [ebp - 0x1c]
cdq
mov ecx, 7
idiv ecx
test edx, edx
je 0x459c5b
call dword [sym.imp.KERNEL32.dll_GetVersion]
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0xd5c], 0
jmp 0x459c76
mov edx, dword [ebp - 0xd5c]
add edx, 1
mov dword [ebp - 0xd5c], edx
cmp dword [ebp - 0xd5c], 4
jge 0x459c8d
mov eax, dword [ebp - 0x1c]
sub eax, dword [ebp - 0xd5c]
mov dword [ebp - 0x1c], eax
jmp 0x459c67
cmp dword [ebp - 0x1c], 0xffff0001
jge 0x459c9f
mov ecx, dword [ebp - 0x1c]
imul ecx, ecx, 0xfffffffb
mov dword [ebp - 0x1c], ecx
mov eax, dword [ebp - 0x1c]
cdq
mov ecx, 7
idiv ecx
test edx, edx
je 0x459cb7
call dword [sym.imp.KERNEL32.dll_GetVersion]
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0xd60], 0
jmp 0x459cd2
mov edx, dword [ebp - 0xd60]
add edx, 1
mov dword [ebp - 0xd60], edx
cmp dword [ebp - 0xd60], 0
jge 0x459d09
mov eax, dword [ebp - 0x1c]
xor eax, dword [ebp - 0xd60]
mov dword [ebp - 0x1c], eax
jge 0x459cf1
mov ecx, dword [ebp - 0x1c]
neg ecx
mov dword [ebp - 0x1c], ecx
mov eax, dword [ebp - 0x1c]
cdq
mov ecx, 7
idiv ecx
test edx, edx
jne 0x459d07
mov dword [ebp - 0x1c], 0
jmp 0x459cc3
mov edx, 1
test edx, edx
je 0x459d43
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov dword [ebp - 0xd64], eax
mov eax, dword [ebp - 0xd64]
xor edx, edx
mov ecx, 7
div ecx
test edx, edx
jne 0x459d35
jmp 0x459d43
mov edx, dword [ebp - 0x1c]
add edx, dword [ebp - 0xd64]
mov dword [ebp - 0x1c], edx
jmp 0x459d09
mov eax, dword [ebp - 0x1c]
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0xd68], 0
jmp 0x459d64
mov ecx, dword [ebp - 0xd68]
add ecx, 1
mov dword [ebp - 0xd68], ecx
cmp dword [ebp - 0xd68], 3
jge 0x459d7b
mov edx, dword [ebp - 0x1c]
sub edx, dword [ebp - 0xd68]
mov dword [ebp - 0x1c], edx
jmp 0x459d55
cmp dword [ebp - 0x1c], 0xffff0001
jge 0x459d8d
mov eax, dword [ebp - 0x1c]
imul eax, eax, 0xfffffffb
mov dword [ebp - 0x1c], eax
mov eax, dword [ebp - 0x1c]
cdq
mov ecx, 7
idiv ecx
test edx, edx
je 0x459da5
call dword [sym.imp.KERNEL32.dll_GetVersion]
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0xd6c], 0
jmp 0x459dc0
mov edx, dword [ebp - 0xd6c]
add edx, 1
mov dword [ebp - 0xd6c], edx
cmp dword [ebp - 0xd6c], 0
jge 0x459e0d
cmp dword [ebp - 0x1c], 0
jge 0x459dd7
mov eax, dword [ebp - 0x1c]
neg eax
mov dword [ebp - 0x1c], eax
mov eax, dword [ebp - 0x1c]
cdq
mov ecx, 7
idiv ecx
test edx, edx
jne 0x459ded
mov dword [ebp - 0x1c], 0
mov dword [ebp - 0xd70], 0xfa
lea edx, [ebp - 0xd70]
push edx
lea eax, [ebp - 0xf68]
push eax
call dword [sym.imp.ADVAPI32.dll_GetUserNameW]
jmp 0x459db1
mov dword [ebp - 0xf6c], 0
jmp 0x459e28
mov ecx, dword [ebp - 0xf6c]
add ecx, 1
mov dword [ebp - 0xf6c], ecx
cmp dword [ebp - 0xf6c], 2
jge 0x459e5f
mov edx, dword [ebp - 0x1c]
xor edx, dword [ebp - 0xf6c]
mov dword [ebp - 0x1c], edx
jge 0x459e47
mov eax, dword [ebp - 0x1c]
neg eax
mov dword [ebp - 0x1c], eax
mov eax, dword [ebp - 0x1c]
cdq
mov ecx, 7
idiv ecx
test edx, edx
jne 0x459e5d
mov dword [ebp - 0x1c], 0
jmp 0x459e19
mov edx, 1
test edx, edx
je 0x459e99
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov dword [ebp - 0xf70], eax
mov eax, dword [ebp - 0xf70]
xor edx, edx
mov ecx, 7
div ecx
test edx, edx
jne 0x459e8b
jmp 0x459e99
mov edx, dword [ebp - 0x1c]
add edx, dword [ebp - 0xf70]
mov dword [ebp - 0x1c], edx
jmp 0x459e5f
mov eax, dword [ebp - 0x1c]
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0xf74], 0
mov ecx, 1
test ecx, ecx
je 0x459ef3
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov dword [ebp - 0xf78], eax
mov eax, dword [ebp - 0xf78]
xor edx, edx
mov ecx, 3
div ecx
test edx, edx
jne 0x459ed5
jmp 0x459ef3
mov edx, dword [ebp - 0x1c]
imul edx, dword [ebp - 0xf74]
mov dword [ebp - 0x1c], edx
mov eax, dword [ebp - 0xf74]
add eax, 1
mov dword [ebp - 0xf74], eax
jmp 0x459ea9
mov ecx, dword [ebp - 0x1c]
add ecx, 3
mov dword [ebp - 0x1c], ecx
mov dword [ebp - 4], 4
mov dword [ebp - 0xf7c], 0
jmp 0x459f1e
mov edx, dword [ebp - 0xf7c]
add edx, 1
mov dword [ebp - 0xf7c], edx
cmp dword [ebp - 0xf7c], 4
jge 0x459f59
mov eax, dword [ebp - 0xf7c]
cdq
mov ecx, 7
idiv ecx
cmp edx, 5
je 0x459f4d
mov eax, dword [ebp - 0xf7c]
cdq
mov ecx, 0xb
idiv ecx
cmp edx, 7
jne 0x459f54
and eax, 0xbc614e
jmp 0x459f57
mov dword [ebp - 0x1c], eax
jmp 0x459f0f
mov dword [ebp - 4], 0xfffffffe
call fcn.00459f67
jmp 0x459f6f
mov dword [ebp - 0xf80], 0
jmp 0x459f8a
mov edx, dword [ebp - 0xf80]
add edx, 1
mov dword [ebp - 0xf80], edx
cmp dword [ebp - 0xf80], 1
jge 0x459fd7
cmp dword [ebp - 0x1c], 0
jge 0x459fa1
mov eax, dword [ebp - 0x1c]
neg eax
mov dword [ebp - 0x1c], eax
mov eax, dword [ebp - 0x1c]
cdq
mov ecx, 7
idiv ecx
test edx, edx
jne 0x459fb7
mov dword [ebp - 0x1c], 0
mov dword [ebp - 0xf84], 0xfa
lea edx, [ebp - 0xf84]
push edx
lea eax, [ebp - 0x1180]
push eax
call dword [sym.imp.ADVAPI32.dll_GetUserNameW]
jmp 0x459f7b
mov dword [ebp - 0x1184], 1
mov dword [ebp - 0x1188], 1
mov dword [ebp - 0x118c], 2
mov dword [ebp - 0x1190], 0
mov dword [ebp - 0x1194], 0
jmp 0x45a01a
mov ecx, dword [ebp - 0x1194]
add ecx, 1
mov dword [ebp - 0x1194], ecx
cmp dword [ebp - 0x1194], 2
jge 0x45a05b
mov edx, dword [ebp - 0x1184]
add edx, dword [ebp - 0x1188]
mov dword [ebp - 0x118c], edx
mov eax, dword [ebp - 0x1188]
mov dword [ebp - 0x1184], eax
mov ecx, dword [ebp - 0x118c]
mov dword [ebp - 0x1188], ecx
mov edx, dword [ebp - 0x1c]
add edx, dword [ebp - 0x118c]
mov dword [ebp - 0x1c], edx
jmp 0x45a00b
mov eax, dword [ebp - 0x1c]
add eax, 2
mov dword [ebp - 0x1c], eax
mov ecx, 1
test ecx, ecx
je 0x45a09e
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov dword [ebp - 0x1198], eax
mov eax, dword [ebp - 0x1198]
xor edx, edx
mov ecx, 7
div ecx
test edx, edx
jne 0x45a090
jmp 0x45a09e
mov edx, dword [ebp - 0x1c]
add edx, dword [ebp - 0x1198]
mov dword [ebp - 0x1c], edx
jmp 0x45a064
mov eax, dword [ebp - 0x1c]
add eax, 1
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x119c], 1
mov dword [ebp - 0x11a0], 1
mov dword [ebp - 0x11a4], 2
mov dword [ebp - 0x11a8], 0
mov dword [ebp - 0x11ac], 0
jmp 0x45a0ea
mov ecx, dword [ebp - 0x11ac]
add ecx, 1
mov dword [ebp - 0x11ac], ecx
cmp dword [ebp - 0x11ac], 1
jge 0x45a12b
mov edx, dword [ebp - 0x119c]
add edx, dword [ebp - 0x11a0]
mov dword [ebp - 0x11a4], edx
mov eax, dword [ebp - 0x11a0]
mov dword [ebp - 0x119c], eax
mov ecx, dword [ebp - 0x11a4]
mov dword [ebp - 0x11a0], ecx
mov edx, dword [ebp - 0x1c]
add edx, dword [ebp - 0x11a4]
mov dword [ebp - 0x1c], edx
jmp 0x45a0db
mov eax, dword [ebp - 0x1c]
add eax, 1
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x11b0], 0
jmp 0x45a14f
mov ecx, dword [ebp - 0x11b0]
add ecx, 1
mov dword [ebp - 0x11b0], ecx
cmp dword [ebp - 0x11b0], 0
jge 0x45a19c
cmp dword [ebp - 0x1c], 0
jge 0x45a166
mov edx, dword [ebp - 0x1c]
neg edx
mov dword [ebp - 0x1c], edx
mov eax, dword [ebp - 0x1c]
cdq
mov ecx, 7
idiv ecx
test edx, edx
jne 0x45a17c
mov dword [ebp - 0x1c], 0
mov dword [ebp - 0x11b4], 0xfa
lea edx, [ebp - 0x11b4]
push edx
lea eax, [ebp - 0x13b0]
push eax
call dword [sym.imp.ADVAPI32.dll_GetUserNameW]
jmp 0x45a140
mov dword [ebp - 0x13b4], 0
jmp 0x45a1b7
mov ecx, dword [ebp - 0x13b4]
add ecx, 1
mov dword [ebp - 0x13b4], ecx
cmp dword [ebp - 0x13b4], 1
jge 0x45a1ce
mov edx, dword [ebp - 0x1c]
sub edx, dword [ebp - 0x13b4]
mov dword [ebp - 0x1c], edx
jmp 0x45a1a8
cmp dword [ebp - 0x1c], 0xffff0001
jge 0x45a1e0
mov eax, dword [ebp - 0x1c]
imul eax, eax, 0xfffffffb
mov dword [ebp - 0x1c], eax
mov eax, dword [ebp - 0x1c]
cdq
mov ecx, 7
idiv ecx
test edx, edx
je 0x45a1f8
call dword [sym.imp.KERNEL32.dll_GetVersion]
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x13b8], 0
mov edx, 1
test edx, edx
je 0x45a24c
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov dword [ebp - 0x13bc], eax
mov eax, dword [ebp - 0x13bc]
xor edx, edx
mov ecx, 3
div ecx
test edx, edx
jne 0x45a22e
jmp 0x45a24c
mov edx, dword [ebp - 0x1c]
imul edx, dword [ebp - 0x13b8]
mov dword [ebp - 0x1c], edx
mov eax, dword [ebp - 0x13b8]
add eax, 1
mov dword [ebp - 0x13b8], eax
jmp 0x45a202
mov ecx, dword [ebp - 0x1c]
add ecx, 2
mov dword [ebp - 0x1c], ecx
mov dword [ebp - 0x13c0], 1
mov dword [ebp - 0x13c4], 1
mov dword [ebp - 0x13c8], 2
mov dword [ebp - 0x13cc], 0
mov dword [ebp - 0x13d0], 0
jmp 0x45a298
cmp dword [ebp - 0x13d0], 1
jge 0x45a2d9