Function at 0x4972a0
Capabilities:
Check os version
Get common file path
Get session user name

Disassembly:
push ebp
mov ebp, esp
push 0xfffffffffffffffe
push 0x5128d0
push 0x40b390
mov eax, dword fs:[0]
push eax
sub esp, 8
mov eax, 0x28f8
call fcn.004149d0
mov eax, dword [0x517138]
xor dword [ebp - 8], eax
xor eax, ebp
mov dword [ebp - 0x3c], eax
push ebx
push esi
push edi
push eax
lea eax, [ebp - 0x10]
mov dword fs:[0], eax
mov dword [ebp - 0x18], esp
mov dword [ebp - 0x1c], 0
mov dword [ebp - 0x20], 0
jmp 0x4972f9
mov eax, dword [ebp - 0x20]
add eax, 1
mov dword [ebp - 0x20], eax
cmp dword [ebp - 0x20], 0x23
jge 0x497337
mov eax, dword [ebp - 0x20]
cdq
mov ecx, 5
idiv ecx
cmp edx, 1
je 0x49731f
mov eax, dword [ebp - 0x20]
cdq
mov ecx, 5
idiv ecx
cmp edx, 4
jne 0x49732c
nop
nop
mov edx, dword [ebp - 0x1c]
sub edx, dword [ebp - 0x20]
mov dword [ebp - 0x1c], edx
jmp 0x497335
mov eax, dword [ebp - 0x1c]
and eax, dword [ebp - 0x20]
mov dword [ebp - 0x1c], eax
jmp 0x4972f0
mov dword [ebp - 0x24], 0
jmp 0x497349
mov ecx, dword [ebp - 0x24]
add ecx, 1
mov dword [ebp - 0x24], ecx
cmp dword [ebp - 0x24], 0x39
jge 0x497387
mov eax, dword [ebp - 0x24]
cdq
mov ecx, 5
idiv ecx
cmp edx, 1
je 0x49736f
mov eax, dword [ebp - 0x24]
cdq
mov ecx, 5
idiv ecx
cmp edx, 4
jne 0x49737c
nop
nop
mov edx, dword [ebp - 0x1c]
sub edx, dword [ebp - 0x24]
mov dword [ebp - 0x1c], edx
jmp 0x497385
mov eax, dword [ebp - 0x1c]
and eax, dword [ebp - 0x24]
mov dword [ebp - 0x1c], eax
jmp 0x497340
mov ecx, 1
test ecx, ecx
je 0x4973b8
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov dword [ebp - 0x28], eax
mov eax, dword [ebp - 0x28]
xor edx, edx
mov ecx, 7
div ecx
test edx, edx
jne 0x4973ad
jmp 0x4973b8
mov edx, dword [ebp - 0x1c]
add edx, dword [ebp - 0x28]
mov dword [ebp - 0x1c], edx
jmp 0x497387
mov eax, dword [ebp - 0x1c]
add eax, 0xd
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x2c], 0
jmp 0x4973d3
mov ecx, dword [ebp - 0x2c]
add ecx, 1
mov dword [ebp - 0x2c], ecx
cmp dword [ebp - 0x2c], 0xe
jge 0x4973e4
mov edx, dword [ebp - 0x1c]
xor edx, dword [ebp - 0x2c]
mov dword [ebp - 0x1c], edx
jmp 0x4973ca
cmp dword [ebp - 0x1c], 0
jge 0x4973f2
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 0x49740a
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x30], 0
jmp 0x49741c
mov edx, dword [ebp - 0x30]
add edx, 1
mov dword [ebp - 0x30], edx
cmp dword [ebp - 0x30], 0xd
jge 0x49745a
mov eax, dword [ebp - 0x30]
cdq
mov ecx, 5
idiv ecx
cmp edx, 1
je 0x497442
mov eax, dword [ebp - 0x30]
cdq
mov ecx, 5
idiv ecx
cmp edx, 4
jne 0x49744f
nop
nop
mov edx, dword [ebp - 0x1c]
sub edx, dword [ebp - 0x30]
mov dword [ebp - 0x1c], edx
jmp 0x497458
mov eax, dword [ebp - 0x1c]
and eax, dword [ebp - 0x30]
mov dword [ebp - 0x1c], eax
jmp 0x497413
mov dword [ebp - 0x34], 0
jmp 0x49746c
mov ecx, dword [ebp - 0x34]
add ecx, 1
mov dword [ebp - 0x34], ecx
cmp dword [ebp - 0x34], 0xa
jge 0x4974b0
cmp dword [ebp - 0x1c], 0
jge 0x497480
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 0x497496
mov dword [ebp - 0x1c], 0
mov dword [ebp - 0x38], 0xfa
lea edx, [ebp - 0x38]
push edx
lea eax, [ebp - 0x238]
push eax
call dword [sym.imp.ADVAPI32.dll_GetUserNameW]
jmp 0x497463
mov dword [ebp - 0x23c], 0
jmp 0x4974cb
mov ecx, dword [ebp - 0x23c]
add ecx, 1
mov dword [ebp - 0x23c], ecx
cmp dword [ebp - 0x23c], 0xe
jge 0x497518
mov eax, dword [ebp - 0x23c]
cdq
mov ecx, 5
idiv ecx
cmp edx, 1
je 0x4974fa
mov eax, dword [ebp - 0x23c]
cdq
mov ecx, 5
idiv ecx
cmp edx, 4
jne 0x49750a
nop
nop
mov edx, dword [ebp - 0x1c]
sub edx, dword [ebp - 0x23c]
mov dword [ebp - 0x1c], edx
jmp 0x497516
mov eax, dword [ebp - 0x1c]
and eax, dword [ebp - 0x23c]
mov dword [ebp - 0x1c], eax
jmp 0x4974bc
mov ecx, 1
test ecx, ecx
je 0x497552
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov dword [ebp - 0x240], eax
mov eax, dword [ebp - 0x240]
xor edx, edx
mov ecx, 7
div ecx
test edx, edx
jne 0x497544
jmp 0x497552
mov edx, dword [ebp - 0x1c]
add edx, dword [ebp - 0x240]
mov dword [ebp - 0x1c], edx
jmp 0x497518
mov eax, dword [ebp - 0x1c]
add eax, 4
mov dword [ebp - 0x1c], eax
mov ecx, 1
test ecx, ecx
je 0x497595
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov dword [ebp - 0x244], eax
mov eax, dword [ebp - 0x244]
xor edx, edx
mov ecx, 7
div ecx
test edx, edx
jne 0x497587
jmp 0x497595
mov edx, dword [ebp - 0x1c]
add edx, dword [ebp - 0x244]
mov dword [ebp - 0x1c], edx
jmp 0x49755b
mov eax, dword [ebp - 0x1c]
add eax, 4
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x248], 0
jmp 0x4975b9
mov ecx, dword [ebp - 0x248]
add ecx, 1
mov dword [ebp - 0x248], ecx
cmp dword [ebp - 0x248], 1
jge 0x497606
cmp dword [ebp - 0x1c], 0
jge 0x4975d0
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 0x4975e6
mov dword [ebp - 0x1c], 0
mov dword [ebp - 0x24c], 0xfa
lea edx, [ebp - 0x24c]
push edx
lea eax, [ebp - 0x448]
push eax
call dword [sym.imp.ADVAPI32.dll_GetUserNameW]
jmp 0x4975aa
mov dword [ebp - 0x44c], 0
jmp 0x497621
mov ecx, dword [ebp - 0x44c]
add ecx, 1
mov dword [ebp - 0x44c], ecx
cmp dword [ebp - 0x44c], 0xf
jge 0x49766e
mov eax, dword [ebp - 0x44c]
cdq
mov ecx, 5
idiv ecx
cmp edx, 1
je 0x497650
mov eax, dword [ebp - 0x44c]
cdq
mov ecx, 5
idiv ecx
cmp edx, 4
jne 0x497660
nop
nop
mov edx, dword [ebp - 0x1c]
sub edx, dword [ebp - 0x44c]
mov dword [ebp - 0x1c], edx
jmp 0x49766c
mov eax, dword [ebp - 0x1c]
and eax, dword [ebp - 0x44c]
mov dword [ebp - 0x1c], eax
jmp 0x497612
mov dword [ebp - 0x450], 0
jmp 0x497689
mov ecx, dword [ebp - 0x450]
add ecx, 1
mov dword [ebp - 0x450], ecx
cmp dword [ebp - 0x450], 4
jge 0x4976a0
mov edx, dword [ebp - 0x1c]
sub edx, dword [ebp - 0x450]
mov dword [ebp - 0x1c], edx
jmp 0x49767a
cmp dword [ebp - 0x1c], 0xffff0001
jge 0x4976b2
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 0x4976ca
call dword [sym.imp.KERNEL32.dll_GetVersion]
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x454], 0
jmp 0x4976e5
mov edx, dword [ebp - 0x454]
add edx, 1
mov dword [ebp - 0x454], edx
cmp dword [ebp - 0x454], 0xb
jge 0x497726
cmp dword [ebp - 0x1c], 0
jge 0x4976fc
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
je 0x497712
mov dword [ebp - 0x1c], 0
push 0xfa
lea edx, [ebp - 0x650]
push edx
call dword [sym.imp.KERNEL32.dll_GetWindowsDirectoryW]
jmp 0x4976d6
mov dword [ebp - 0x654], 0
jmp 0x497741
mov eax, dword [ebp - 0x654]
add eax, 1
mov dword [ebp - 0x654], eax
cmp dword [ebp - 0x654], 0xd
jge 0x49778e
cmp dword [ebp - 0x1c], 0
jge 0x497758
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 0x49776e
mov dword [ebp - 0x1c], 0
mov dword [ebp - 0x658], 0xfa
lea edx, [ebp - 0x658]
push edx
lea eax, [ebp - 0x850]
push eax
call dword [sym.imp.ADVAPI32.dll_GetUserNameW]
jmp 0x497732
mov dword [ebp - 0x854], 0
jmp 0x4977a9
mov ecx, dword [ebp - 0x854]
add ecx, 1
mov dword [ebp - 0x854], ecx
cmp dword [ebp - 0x854], 0xe
jge 0x4977ea
cmp dword [ebp - 0x1c], 0
jge 0x4977c0
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
je 0x4977d6
mov dword [ebp - 0x1c], 0
push 0xfa
lea edx, [ebp - 0xa50]
push edx
call dword [sym.imp.KERNEL32.dll_GetWindowsDirectoryW]
jmp 0x49779a
mov dword [ebp - 0xa54], 0
jmp 0x497805
mov eax, dword [ebp - 0xa54]
add eax, 1
mov dword [ebp - 0xa54], eax
cmp dword [ebp - 0xa54], 0
jge 0x49781c
mov ecx, dword [ebp - 0x1c]
xor ecx, dword [ebp - 0xa54]
mov dword [ebp - 0x1c], ecx
jmp 0x4977f6
cmp dword [ebp - 0x1c], 0
jge 0x49782a
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 0x497842
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0xa58], 0
jmp 0x49785d
mov edx, dword [ebp - 0xa58]
add edx, 1
mov dword [ebp - 0xa58], edx
cmp dword [ebp - 0xa58], 4
jge 0x497874
mov eax, dword [ebp - 0x1c]
xor eax, dword [ebp - 0xa58]
mov dword [ebp - 0x1c], eax
jmp 0x49784e
cmp dword [ebp - 0x1c], 0
jge 0x497882
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 0x49789a
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [ebp - 0x1c], eax
mov dword [ebp - 4], 0
mov dword [ebp - 0xa5c], 0xffffffff
mov dword [ebp - 0xa60], 0
jmp 0x4978c6
mov edx, dword [ebp - 0xa60]
add edx, 1
mov dword [ebp - 0xa60], edx
cmp dword [ebp - 0xa60], 1
jge 0x4978f8
mov eax, dword [ebp - 0xa60]
cdq
mov ecx, 0x25
idiv ecx
test edx, edx
jne 0x4978ed
mov edx, dword [ebp - 0xa5c]
movsx eax, byte [edx]
mov dword [ebp - 0x1c], eax
mov ecx, dword [ebp - 0x1c]
add ecx, 1
mov dword [ebp - 0x1c], ecx
jmp 0x4978b7
mov dword [ebp - 4], 0xfffffffe
jmp 0x497918
mov dword [ebp - 0xa64], 0
jmp 0x497933
mov edx, dword [ebp - 0xa64]
add edx, 1
mov dword [ebp - 0xa64], edx
cmp dword [ebp - 0xa64], 2
jge 0x497980
cmp dword [ebp - 0x1c], 0
jge 0x49794a
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 0x497960
mov dword [ebp - 0x1c], 0
mov dword [ebp - 0xa68], 0xfa
lea edx, [ebp - 0xa68]
push edx
lea eax, [ebp - 0xc60]
push eax
call dword [sym.imp.ADVAPI32.dll_GetUserNameW]
jmp 0x497924
mov dword [ebp - 4], 1
mov dword [ebp - 0xc64], 0xffffffff
mov dword [ebp - 0xc68], 0
jmp 0x4979ac
mov ecx, dword [ebp - 0xc68]
add ecx, 1
mov dword [ebp - 0xc68], ecx
cmp dword [ebp - 0xc68], 8
jge 0x4979de
mov eax, dword [ebp - 0xc68]
cdq
mov ecx, 0x25
idiv ecx
test edx, edx
jne 0x4979d3
mov edx, dword [ebp - 0xc64]
movsx eax, byte [edx]
mov dword [ebp - 0x1c], eax
mov ecx, dword [ebp - 0x1c]
add ecx, 1
mov dword [ebp - 0x1c], ecx
jmp 0x49799d
mov dword [ebp - 4], 0xfffffffe
jmp 0x4979fe
mov dword [ebp - 0xc6c], 0
jmp 0x497a19
mov edx, dword [ebp - 0xc6c]
add edx, 1
mov dword [ebp - 0xc6c], edx
cmp dword [ebp - 0xc6c], 6
jge 0x497a30
mov eax, dword [ebp - 0x1c]
sub eax, dword [ebp - 0xc6c]
mov dword [ebp - 0x1c], eax
jmp 0x497a0a
cmp dword [ebp - 0x1c], 0xffff0001
jge 0x497a42
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 0x497a5a
call dword [sym.imp.KERNEL32.dll_GetVersion]
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0xc70], 0
jmp 0x497a75
mov edx, dword [ebp - 0xc70]
add edx, 1
mov dword [ebp - 0xc70], edx
cmp dword [ebp - 0xc70], 7
jge 0x497a8c
mov eax, dword [ebp - 0x1c]
xor eax, dword [ebp - 0xc70]
mov dword [ebp - 0x1c], eax
jmp 0x497a66
cmp dword [ebp - 0x1c], 0
jge 0x497a9a
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 0x497ab2
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [ebp - 0x1c], eax
mov dword [ebp - 4], 2
mov dword [ebp - 0xc74], 0xffffffff
mov dword [ebp - 0xc78], 0
jmp 0x497ade
mov edx, dword [ebp - 0xc78]
add edx, 1
mov dword [ebp - 0xc78], edx
cmp dword [ebp - 0xc78], 3
jge 0x497b10
mov eax, dword [ebp - 0xc78]
cdq
mov ecx, 0x25
idiv ecx
test edx, edx
jne 0x497b05
mov edx, dword [ebp - 0xc74]
movsx eax, byte [edx]
mov dword [ebp - 0x1c], eax
mov ecx, dword [ebp - 0x1c]
add ecx, 1
mov dword [ebp - 0x1c], ecx
jmp 0x497acf
mov dword [ebp - 4], 0xfffffffe
jmp 0x497b30
mov dword [ebp - 0xc7c], 0
jmp 0x497b4b
mov edx, dword [ebp - 0xc7c]
add edx, 1
mov dword [ebp - 0xc7c], edx
cmp dword [ebp - 0xc7c], 7
jge 0x497b62
mov eax, dword [ebp - 0x1c]
sub eax, dword [ebp - 0xc7c]
mov dword [ebp - 0x1c], eax
jmp 0x497b3c
cmp dword [ebp - 0x1c], 0xffff0001
jge 0x497b74
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 0x497b8c
call dword [sym.imp.KERNEL32.dll_GetVersion]
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0xc80], 0
jmp 0x497ba7
mov edx, dword [ebp - 0xc80]
add edx, 1
mov dword [ebp - 0xc80], edx
cmp dword [ebp - 0xc80], 6
jge 0x497bf4
cmp dword [ebp - 0x1c], 0
jge 0x497bbe
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 0x497bd4
mov dword [ebp - 0x1c], 0
mov dword [ebp - 0xc84], 0xfa
lea edx, [ebp - 0xc84]
push edx
lea eax, [ebp - 0xe80]
push eax
call dword [sym.imp.ADVAPI32.dll_GetUserNameW]
jmp 0x497b98
mov dword [ebp - 0xe84], 0
jmp 0x497c0f
mov ecx, dword [ebp - 0xe84]
add ecx, 1
mov dword [ebp - 0xe84], ecx
cmp dword [ebp - 0xe84], 5
jge 0x497c26
mov edx, dword [ebp - 0x1c]
xor edx, dword [ebp - 0xe84]
mov dword [ebp - 0x1c], edx
jmp 0x497c00
cmp dword [ebp - 0x1c], 0
jge 0x497c34
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 0x497c4c
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0xe88], 0
jmp 0x497c67
mov edx, dword [ebp - 0xe88]
add edx, 1
mov dword [ebp - 0xe88], edx
cmp dword [ebp - 0xe88], 6
jge 0x497c7e
mov eax, dword [ebp - 0x1c]
xor eax, dword [ebp - 0xe88]
mov dword [ebp - 0x1c], eax
jmp 0x497c58
cmp dword [ebp - 0x1c], 0
jge 0x497c8c
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 0x497ca4
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [ebp - 0x1c], eax
mov edx, 1
test edx, edx
je 0x497cde
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov dword [ebp - 0xe8c], eax
mov eax, dword [ebp - 0xe8c]
xor edx, edx
mov ecx, 7
div ecx
test edx, edx
jne 0x497cd0
jmp 0x497cde
mov edx, dword [ebp - 0x1c]
add edx, dword [ebp - 0xe8c]
mov dword [ebp - 0x1c], edx
jmp 0x497ca4
mov eax, dword [ebp - 0x1c]
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0xe90], 0
jmp 0x497cff
mov ecx, dword [ebp - 0xe90]
add ecx, 1
mov dword [ebp - 0xe90], ecx
cmp dword [ebp - 0xe90], 5
jge 0x497d4c
cmp dword [ebp - 0x1c], 0
jge 0x497d16
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 0x497d2c
mov dword [ebp - 0x1c], 0
mov dword [ebp - 0xe94], 0xfa
lea edx, [ebp - 0xe94]
push edx
lea eax, [ebp - 0x1090]
push eax
call dword [sym.imp.ADVAPI32.dll_GetUserNameW]
jmp 0x497cf0
mov dword [ebp - 0x1094], 0
jmp 0x497d67
mov ecx, dword [ebp - 0x1094]
add ecx, 1
mov dword [ebp - 0x1094], ecx
cmp dword [ebp - 0x1094], 1
jge 0x497db4
cmp dword [ebp - 0x1c], 0
jge 0x497d7e
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 0x497d94
mov dword [ebp - 0x1c], 0
mov dword [ebp - 0x1098], 0xfa
lea edx, [ebp - 0x1098]
push edx
lea eax, [ebp - 0x1290]
push eax
call dword [sym.imp.ADVAPI32.dll_GetUserNameW]
jmp 0x497d58
mov dword [ebp - 0x1294], 0
jmp 0x497dcf
mov ecx, dword [ebp - 0x1294]
add ecx, 1
mov dword [ebp - 0x1294], ecx
cmp dword [ebp - 0x1294], 0
jge 0x497de6
mov edx, dword [ebp - 0x1c]
sub edx, dword [ebp - 0x1294]
mov dword [ebp - 0x1c], edx
jmp 0x497dc0
cmp dword [ebp - 0x1c], 0xffff0001
jge 0x497df8
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 0x497e10
call dword [sym.imp.KERNEL32.dll_GetVersion]
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x1298], 0
jmp 0x497e2b
mov edx, dword [ebp - 0x1298]
add edx, 1
mov dword [ebp - 0x1298], edx
cmp dword [ebp - 0x1298], 4
jge 0x497e78
mov eax, dword [ebp - 0x1298]
cdq
mov ecx, 5
idiv ecx
cmp edx, 1
je 0x497e5a
mov eax, dword [ebp - 0x1298]
cdq
mov ecx, 5
idiv ecx
cmp edx, 4
jne 0x497e6a
nop
nop
mov edx, dword [ebp - 0x1c]
sub edx, dword [ebp - 0x1298]
mov dword [ebp - 0x1c], edx
jmp 0x497e76
mov eax, dword [ebp - 0x1c]
and eax, dword [ebp - 0x1298]
mov dword [ebp - 0x1c], eax
jmp 0x497e1c
mov dword [ebp - 0x129c], 0
jmp 0x497e93
mov ecx, dword [ebp - 0x129c]
add ecx, 1
mov dword [ebp - 0x129c], ecx
cmp dword [ebp - 0x129c], 0
jge 0x497ee0
mov eax, dword [ebp - 0x129c]
cdq
mov ecx, 5
idiv ecx
cmp edx, 1
je 0x497ec2
mov eax, dword [ebp - 0x129c]
cdq
mov ecx, 5
idiv ecx
cmp edx, 4
jne 0x497ed2
nop
nop
mov edx, dword [ebp - 0x1c]
sub edx, dword [ebp - 0x129c]
mov dword [ebp - 0x1c], edx
jmp 0x497ede
mov eax, dword [ebp - 0x1c]
and eax, dword [ebp - 0x129c]
mov dword [ebp - 0x1c], eax
jmp 0x497e84
mov dword [ebp - 0x12a0], 0
jmp 0x497efb
mov ecx, dword [ebp - 0x12a0]
add ecx, 1
mov dword [ebp - 0x12a0], ecx
cmp dword [ebp - 0x12a0], 0
jge 0x497f12
mov edx, dword [ebp - 0x1c]
sub edx, dword [ebp - 0x12a0]
mov dword [ebp - 0x1c], edx
jmp 0x497eec
cmp dword [ebp - 0x1c], 0xffff0001
jge 0x497f24
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 0x497f3c
call dword [sym.imp.KERNEL32.dll_GetVersion]
mov dword [ebp - 0x1c], eax
mov edx, 1
test edx, edx
je 0x497f76
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov dword [ebp - 0x12a4], eax
mov eax, dword [ebp - 0x12a4]
xor edx, edx
mov ecx, 7
div ecx
test edx, edx
jne 0x497f68
jmp 0x497f76
mov edx, dword [ebp - 0x1c]
add edx, dword [ebp - 0x12a4]
mov dword [ebp - 0x1c], edx
jmp 0x497f3c
mov eax, dword [ebp - 0x1c]
add eax, 4
mov dword [ebp - 0x1c], eax
mov dword [ebp - 4], 3
mov dword [ebp - 0x12a8], 0xffffffff
mov dword [ebp - 0x12ac], 0
jmp 0x497fab
mov ecx, dword [ebp - 0x12ac]
add ecx, 1
mov dword [ebp - 0x12ac], ecx
cmp dword [ebp - 0x12ac], 2
jge 0x497fdd
mov eax, dword [ebp - 0x12ac]
cdq
mov ecx, 0x25
idiv ecx
test edx, edx
jne 0x497fd2
mov edx, dword [ebp - 0x12a8]
movsx eax, byte [edx]
mov dword [ebp - 0x1c], eax
mov ecx, dword [ebp - 0x1c]
add ecx, 1
mov dword [ebp - 0x1c], ecx
jmp 0x497f9c
mov dword [ebp - 4], 0xfffffffe
jmp 0x497ffd
mov dword [ebp - 4], 4
mov dword [ebp - 0x12b0], 0xffffffff
mov dword [ebp - 0x12b4], 0
jmp 0x498029
mov edx, dword [ebp - 0x12b4]
add edx, 1
mov dword [ebp - 0x12b4], edx
cmp dword [ebp - 0x12b4], 2
jge 0x49805b
mov eax, dword [ebp - 0x12b4]
cdq
mov ecx, 0x25
idiv ecx
test edx, edx
jne 0x498050
mov edx, dword [ebp - 0x12b0]
movsx eax, byte [edx]
mov dword [ebp - 0x1c], eax
mov ecx, dword [ebp - 0x1c]
add ecx, 1
mov dword [ebp - 0x1c], ecx
jmp 0x49801a
mov dword [ebp - 4], 0xfffffffe
jmp 0x49807b
mov dword [ebp - 0x12b8], 0
jmp 0x498096
mov edx, dword [ebp - 0x12b8]
add edx, 1
mov dword [ebp - 0x12b8], edx
cmp dword [ebp - 0x12b8], 3
jge 0x4980ad
mov eax, dword [ebp - 0x1c]
sub eax, dword [ebp - 0x12b8]
mov dword [ebp - 0x1c], eax
jmp 0x498087
cmp dword [ebp - 0x1c], 0xffff0001
jge 0x4980bf
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 0x4980d7
call dword [sym.imp.KERNEL32.dll_GetVersion]
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x12bc], 0
jmp 0x4980f2
mov edx, dword [ebp - 0x12bc]
add edx, 1
mov dword [ebp - 0x12bc], edx
cmp dword [ebp - 0x12bc], 2
jge 0x498133
cmp dword [ebp - 0x1c], 0
jge 0x498109
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
je 0x49811f
mov dword [ebp - 0x1c], 0
push 0xfa
lea edx, [ebp - 0x14b8]
push edx
call dword [sym.imp.KERNEL32.dll_GetWindowsDirectoryW]
jmp 0x4980e3
mov dword [ebp - 0x14bc], 0
jmp 0x49814e
mov eax, dword [ebp - 0x14bc]
add eax, 1
mov dword [ebp - 0x14bc], eax
cmp dword [ebp - 0x14bc], 4
jge 0x49819b
mov eax, dword [ebp - 0x14bc]
cdq
mov ecx, 5
idiv ecx
cmp edx, 1
je 0x49817d
mov eax, dword [ebp - 0x14bc]
cdq
mov ecx, 5
idiv ecx
cmp edx, 4
jne 0x49818d
nop
nop
mov edx, dword [ebp - 0x1c]
sub edx, dword [ebp - 0x14bc]
mov dword [ebp - 0x1c], edx
jmp 0x498199
mov eax, dword [ebp - 0x1c]
and eax, dword [ebp - 0x14bc]
mov dword [ebp - 0x1c], eax
jmp 0x49813f
mov dword [ebp - 0x14c0], 0
jmp 0x4981b6
mov ecx, dword [ebp - 0x14c0]
add ecx, 1
mov dword [ebp - 0x14c0], ecx
cmp dword [ebp - 0x14c0], 0
jge 0x498203
cmp dword [ebp - 0x1c], 0
jge 0x4981cd
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 0x4981e3
mov dword [ebp - 0x1c], 0
mov dword [ebp - 0x14c4], 0xfa
lea edx, [ebp - 0x14c4]
push edx
lea eax, [ebp - 0x16c0]
push eax
call dword [sym.imp.ADVAPI32.dll_GetUserNameW]
jmp 0x4981a7
mov dword [ebp - 0x16c4], 0
jmp 0x49821e
mov ecx, dword [ebp - 0x16c4]
add ecx, 1
mov dword [ebp - 0x16c4], ecx
cmp dword [ebp - 0x16c4], 2
jge 0x49826b
mov eax, dword [ebp - 0x16c4]
cdq
mov ecx, 5
idiv ecx
cmp edx, 1
je 0x49824d
mov eax, dword [ebp - 0x16c4]
cdq
mov ecx, 5
idiv ecx
cmp edx, 4
jne 0x49825d
nop
nop
mov edx, dword [ebp - 0x1c]
sub edx, dword [ebp - 0x16c4]
mov dword [ebp - 0x1c], edx
jmp 0x498269
mov eax, dword [ebp - 0x1c]
and eax, dword [ebp - 0x16c4]
mov dword [ebp - 0x1c], eax
jmp 0x49820f
mov dword [ebp - 0x16c8], 0
jmp 0x498286
mov ecx, dword [ebp - 0x16c8]
add ecx, 1
mov dword [ebp - 0x16c8], ecx
cmp dword [ebp - 0x16c8], 4
jge 0x49829d
mov edx, dword [ebp - 0x1c]
xor edx, dword [ebp - 0x16c8]
mov dword [ebp - 0x1c], edx
jmp 0x498277
cmp dword [ebp - 0x1c], 0
jge 0x4982ab
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 0x4982c3
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x16cc], 0
jmp 0x4982de
mov edx, dword [ebp - 0x16cc]
add edx, 1
mov dword [ebp - 0x16cc], edx
cmp dword [ebp - 0x16cc], 1
jge 0x49832b
cmp dword [ebp - 0x1c], 0
jge 0x4982f5
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 0x49830b
mov dword [ebp - 0x1c], 0
mov dword [ebp - 0x16d0], 0xfa
lea edx, [ebp - 0x16d0]
push edx
lea eax, [ebp - 0x18c8]
push eax
call dword [sym.imp.ADVAPI32.dll_GetUserNameW]
jmp 0x4982cf
mov dword [ebp - 0x18cc], 0
jmp 0x498346
mov ecx, dword [ebp - 0x18cc]
add ecx, 1
mov dword [ebp - 0x18cc], ecx
cmp dword [ebp - 0x18cc], 4
jge 0x498393
mov eax, dword [ebp - 0x18cc]
cdq
mov ecx, 5
idiv ecx
cmp edx, 1
je 0x498375
mov eax, dword [ebp - 0x18cc]
cdq
mov ecx, 5
idiv ecx
cmp edx, 4
jne 0x498385
nop
nop
mov edx, dword [ebp - 0x1c]
sub edx, dword [ebp - 0x18cc]
mov dword [ebp - 0x1c], edx
jmp 0x498391
mov eax, dword [ebp - 0x1c]
and eax, dword [ebp - 0x18cc]
mov dword [ebp - 0x1c], eax
jmp 0x498337
mov dword [ebp - 0x18d0], 0
jmp 0x4983ae
mov ecx, dword [ebp - 0x18d0]
add ecx, 1
mov dword [ebp - 0x18d0], ecx
cmp dword [ebp - 0x18d0], 4
jge 0x4983ef
cmp dword [ebp - 0x1c], 0
jge 0x4983c5
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
je 0x4983db
mov dword [ebp - 0x1c], 0
push 0xfa
lea edx, [ebp - 0x1ac8]
push edx
call dword [sym.imp.KERNEL32.dll_GetWindowsDirectoryW]
jmp 0x49839f
mov dword [ebp - 0x1acc], 0
jmp 0x49840a
mov eax, dword [ebp - 0x1acc]
add eax, 1
mov dword [ebp - 0x1acc], eax
cmp dword [ebp - 0x1acc], 4
jge 0x49844b
cmp dword [ebp - 0x1c], 0
jge 0x498421
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
je 0x498437
mov dword [ebp - 0x1c], 0
push 0xfa
lea edx, [ebp - 0x1cc8]
push edx
call dword [sym.imp.KERNEL32.dll_GetWindowsDirectoryW]
jmp 0x4983fb
mov eax, 1
test eax, eax
je 0x498485
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov dword [ebp - 0x1ccc], eax
mov eax, dword [ebp - 0x1ccc]
xor edx, edx
mov ecx, 7
div ecx
test edx, edx
jne 0x498477
jmp 0x498485
mov edx, dword [ebp - 0x1c]
add edx, dword [ebp - 0x1ccc]
mov dword [ebp - 0x1c], edx
jmp 0x49844b
mov eax, dword [ebp - 0x1c]
add eax, 2
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x1cd0], 0
jmp 0x4984a9
mov ecx, dword [ebp - 0x1cd0]
add ecx, 1
mov dword [ebp - 0x1cd0], ecx
cmp dword [ebp - 0x1cd0], 3
jge 0x4984f6
mov eax, dword [ebp - 0x1cd0]
cdq
mov ecx, 5
idiv ecx
cmp edx, 1
je 0x4984d8
mov eax, dword [ebp - 0x1cd0]
cdq
mov ecx, 5
idiv ecx
cmp edx, 4
jne 0x4984e8
nop
nop
mov edx, dword [ebp - 0x1c]
sub edx, dword [ebp - 0x1cd0]
mov dword [ebp - 0x1c], edx
jmp 0x4984f4
mov eax, dword [ebp - 0x1c]
and eax, dword [ebp - 0x1cd0]
mov dword [ebp - 0x1c], eax
jmp 0x49849a
mov dword [ebp - 0x1cd4], 0
jmp 0x498511
mov ecx, dword [ebp - 0x1cd4]
add ecx, 1
mov dword [ebp - 0x1cd4], ecx
cmp dword [ebp - 0x1cd4], 2
jge 0x498528
mov edx, dword [ebp - 0x1c]
sub edx, dword [ebp - 0x1cd4]
mov dword [ebp - 0x1c], edx
jmp 0x498502
cmp dword [ebp - 0x1c], 0xffff0001
jge 0x49853a
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 0x498552
call dword [sym.imp.KERNEL32.dll_GetVersion]
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x1cd8], 0
jmp 0x49856d
cmp dword [ebp - 0x1cd8], 3
jge 0x4985ae