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

Disassembly:
push ebp
mov ebp, esp
push 0xfffffffffffffffe
push 0x511670
push 0x40b390
mov eax, dword fs:[0]
push eax
sub esp, 8
mov eax, 0x3548
call fcn.004149d0
mov eax, dword [0x517138]
xor dword [ebp - 8], eax
xor eax, ebp
mov dword [ebp - 0x24], 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 0x460009
mov eax, dword [ebp - 0x20]
add eax, 1
mov dword [ebp - 0x20], eax
cmp dword [ebp - 0x20], 0x3f
jge 0x460047
cmp dword [ebp - 0x1c], 0
jge 0x46001d
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 0x460033
mov dword [ebp - 0x1c], 0
push 0xfa
lea edx, [ebp - 0x220]
push edx
call dword [sym.imp.KERNEL32.dll_GetWindowsDirectoryW]
jmp 0x460000
mov dword [ebp - 0x224], 0
jmp 0x460062
mov eax, dword [ebp - 0x224]
add eax, 1
mov dword [ebp - 0x224], eax
cmp dword [ebp - 0x224], 0x14
jge 0x460079
mov ecx, dword [ebp - 0x1c]
xor ecx, dword [ebp - 0x224]
mov dword [ebp - 0x1c], ecx
jmp 0x460053
cmp dword [ebp - 0x1c], 0
jge 0x460087
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 0x46009f
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x228], 0
jmp 0x4600ba
mov edx, dword [ebp - 0x228]
add edx, 1
mov dword [ebp - 0x228], edx
cmp dword [ebp - 0x228], 2
jge 0x4600d1
mov eax, dword [ebp - 0x1c]
sub eax, dword [ebp - 0x228]
mov dword [ebp - 0x1c], eax
jmp 0x4600ab
cmp dword [ebp - 0x1c], 0xffff0001
jge 0x4600e3
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 0x4600fb
call dword [sym.imp.KERNEL32.dll_GetVersion]
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x22c], 0
jmp 0x460116
mov edx, dword [ebp - 0x22c]
add edx, 1
mov dword [ebp - 0x22c], edx
cmp dword [ebp - 0x22c], 0xd
jge 0x46012d
mov eax, dword [ebp - 0x1c]
sub eax, dword [ebp - 0x22c]
mov dword [ebp - 0x1c], eax
jmp 0x460107
cmp dword [ebp - 0x1c], 0xffff0001
jge 0x46013f
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 0x460157
call dword [sym.imp.KERNEL32.dll_GetVersion]
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x230], 0
jmp 0x460172
mov edx, dword [ebp - 0x230]
add edx, 1
mov dword [ebp - 0x230], edx
cmp dword [ebp - 0x230], 0x12
jge 0x460189
mov eax, dword [ebp - 0x1c]
xor eax, dword [ebp - 0x230]
mov dword [ebp - 0x1c], eax
jmp 0x460163
cmp dword [ebp - 0x1c], 0
jge 0x460197
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 0x4601af
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [ebp - 0x1c], eax
mov dword [ebp - 4], 0
mov dword [ebp - 0x234], 0xffffffff
mov dword [ebp - 0x238], 0
jmp 0x4601db
mov edx, dword [ebp - 0x238]
add edx, 1
mov dword [ebp - 0x238], edx
cmp dword [ebp - 0x238], 6
jge 0x46020d
mov eax, dword [ebp - 0x238]
cdq
mov ecx, 0x25
idiv ecx
test edx, edx
jne 0x460202
mov edx, dword [ebp - 0x234]
movsx eax, byte [edx]
mov dword [ebp - 0x1c], eax
mov ecx, dword [ebp - 0x1c]
add ecx, 1
mov dword [ebp - 0x1c], ecx
jmp 0x4601cc
mov dword [ebp - 4], 0xfffffffe
jmp 0x46022d
mov dword [ebp - 0x23c], 0
jmp 0x460248
mov edx, dword [ebp - 0x23c]
add edx, 1
mov dword [ebp - 0x23c], edx
cmp dword [ebp - 0x23c], 0xa
jge 0x460295
mov eax, dword [ebp - 0x23c]
cdq
mov ecx, 5
idiv ecx
cmp edx, 1
je 0x460277
mov eax, dword [ebp - 0x23c]
cdq
mov ecx, 5
idiv ecx
cmp edx, 4
jne 0x460287
nop
nop
mov edx, dword [ebp - 0x1c]
sub edx, dword [ebp - 0x23c]
mov dword [ebp - 0x1c], edx
jmp 0x460293
mov eax, dword [ebp - 0x1c]
and eax, dword [ebp - 0x23c]
mov dword [ebp - 0x1c], eax
jmp 0x460239
mov dword [ebp - 0x240], 0
jmp 0x4602b0
mov ecx, dword [ebp - 0x240]
add ecx, 1
mov dword [ebp - 0x240], ecx
cmp dword [ebp - 0x240], 4
jge 0x4602f1
cmp dword [ebp - 0x1c], 0
jge 0x4602c7
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 0x4602dd
mov dword [ebp - 0x1c], 0
push 0xfa
lea edx, [ebp - 0x438]
push edx
call dword [sym.imp.KERNEL32.dll_GetWindowsDirectoryW]
jmp 0x4602a1
mov eax, 1
test eax, eax
je 0x46032b
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov dword [ebp - 0x43c], eax
mov eax, dword [ebp - 0x43c]
xor edx, edx
mov ecx, 7
div ecx
test edx, edx
jne 0x46031d
jmp 0x46032b
mov edx, dword [ebp - 0x1c]
add edx, dword [ebp - 0x43c]
mov dword [ebp - 0x1c], edx
jmp 0x4602f1
mov eax, dword [ebp - 0x1c]
add eax, 7
mov dword [ebp - 0x1c], eax
mov dword [ebp - 4], 1
mov dword [ebp - 0x440], 0xffffffff
mov dword [ebp - 0x444], 0
jmp 0x460360
mov ecx, dword [ebp - 0x444]
add ecx, 1
mov dword [ebp - 0x444], ecx
cmp dword [ebp - 0x444], 0xe
jge 0x460392
mov eax, dword [ebp - 0x444]
cdq
mov ecx, 0x25
idiv ecx
test edx, edx
jne 0x460387
mov edx, dword [ebp - 0x440]
movsx eax, byte [edx]
mov dword [ebp - 0x1c], eax
mov ecx, dword [ebp - 0x1c]
add ecx, 1
mov dword [ebp - 0x1c], ecx
jmp 0x460351
mov dword [ebp - 4], 0xfffffffe
jmp 0x4603b2
mov dword [ebp - 0x448], 0
jmp 0x4603cd
mov edx, dword [ebp - 0x448]
add edx, 1
mov dword [ebp - 0x448], edx
cmp dword [ebp - 0x448], 4
jge 0x4603e4
mov eax, dword [ebp - 0x1c]
sub eax, dword [ebp - 0x448]
mov dword [ebp - 0x1c], eax
jmp 0x4603be
cmp dword [ebp - 0x1c], 0xffff0001
jge 0x4603f6
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 0x46040e
call dword [sym.imp.KERNEL32.dll_GetVersion]
mov dword [ebp - 0x1c], eax
mov edx, 1
test edx, edx
je 0x460448
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov dword [ebp - 0x44c], eax
mov eax, dword [ebp - 0x44c]
xor edx, edx
mov ecx, 7
div ecx
test edx, edx
jne 0x46043a
jmp 0x460448
mov edx, dword [ebp - 0x1c]
add edx, dword [ebp - 0x44c]
mov dword [ebp - 0x1c], edx
jmp 0x46040e
mov eax, dword [ebp - 0x1c]
add eax, 0xc
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x450], 0
jmp 0x46046c
mov ecx, dword [ebp - 0x450]
add ecx, 1
mov dword [ebp - 0x450], ecx
cmp dword [ebp - 0x450], 2
jge 0x4604b9
cmp dword [ebp - 0x1c], 0
jge 0x460483
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 0x460499
mov dword [ebp - 0x1c], 0
mov dword [ebp - 0x454], 0xfa
lea edx, [ebp - 0x454]
push edx
lea eax, [ebp - 0x650]
push eax
call dword [sym.imp.ADVAPI32.dll_GetUserNameW]
jmp 0x46045d
mov dword [ebp - 4], 2
mov dword [ebp - 0x654], 0xffffffff
mov dword [ebp - 0x658], 0
jmp 0x4604e5
mov ecx, dword [ebp - 0x658]
add ecx, 1
mov dword [ebp - 0x658], ecx
cmp dword [ebp - 0x658], 3
jge 0x460517
mov eax, dword [ebp - 0x658]
cdq
mov ecx, 0x25
idiv ecx
test edx, edx
jne 0x46050c
mov edx, dword [ebp - 0x654]
movsx eax, byte [edx]
mov dword [ebp - 0x1c], eax
mov ecx, dword [ebp - 0x1c]
add ecx, 1
mov dword [ebp - 0x1c], ecx
jmp 0x4604d6
mov dword [ebp - 4], 0xfffffffe
jmp 0x460537
mov dword [ebp - 4], 3
mov dword [ebp - 0x65c], 0xffffffff
mov dword [ebp - 0x660], 0
jmp 0x460563
mov edx, dword [ebp - 0x660]
add edx, 1
mov dword [ebp - 0x660], edx
cmp dword [ebp - 0x660], 2
jge 0x460595
mov eax, dword [ebp - 0x660]
cdq
mov ecx, 0x25
idiv ecx
test edx, edx
jne 0x46058a
mov edx, dword [ebp - 0x65c]
movsx eax, byte [edx]
mov dword [ebp - 0x1c], eax
mov ecx, dword [ebp - 0x1c]
add ecx, 1
mov dword [ebp - 0x1c], ecx
jmp 0x460554
mov dword [ebp - 4], 0xfffffffe
jmp 0x4605b5
mov dword [ebp - 4], 4
mov dword [ebp - 0x664], 0xffffffff
mov dword [ebp - 0x668], 0
jmp 0x4605e1
mov edx, dword [ebp - 0x668]
add edx, 1
mov dword [ebp - 0x668], edx
cmp dword [ebp - 0x668], 7
jge 0x460613
mov eax, dword [ebp - 0x668]
cdq
mov ecx, 0x25
idiv ecx
test edx, edx
jne 0x460608
mov edx, dword [ebp - 0x664]
movsx eax, byte [edx]
mov dword [ebp - 0x1c], eax
mov ecx, dword [ebp - 0x1c]
add ecx, 1
mov dword [ebp - 0x1c], ecx
jmp 0x4605d2
mov dword [ebp - 4], 0xfffffffe
jmp 0x460633
mov dword [ebp - 0x66c], 0
jmp 0x46064e
mov edx, dword [ebp - 0x66c]
add edx, 1
mov dword [ebp - 0x66c], edx
cmp dword [ebp - 0x66c], 4
jge 0x46068f
cmp dword [ebp - 0x1c], 0
jge 0x460665
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 0x46067b
mov dword [ebp - 0x1c], 0
push 0xfa
lea edx, [ebp - 0x868]
push edx
call dword [sym.imp.KERNEL32.dll_GetWindowsDirectoryW]
jmp 0x46063f
mov dword [ebp - 0x86c], 0
jmp 0x4606aa
mov eax, dword [ebp - 0x86c]
add eax, 1
mov dword [ebp - 0x86c], eax
cmp dword [ebp - 0x86c], 2
jge 0x4606c1
mov ecx, dword [ebp - 0x1c]
xor ecx, dword [ebp - 0x86c]
mov dword [ebp - 0x1c], ecx
jmp 0x46069b
cmp dword [ebp - 0x1c], 0
jge 0x4606cf
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 0x4606e7
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x870], 0
jmp 0x460702
mov edx, dword [ebp - 0x870]
add edx, 1
mov dword [ebp - 0x870], edx
cmp dword [ebp - 0x870], 3
jge 0x460743
cmp dword [ebp - 0x1c], 0
jge 0x460719
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 0x46072f
mov dword [ebp - 0x1c], 0
push 0xfa
lea edx, [ebp - 0xa68]
push edx
call dword [sym.imp.KERNEL32.dll_GetWindowsDirectoryW]
jmp 0x4606f3
mov dword [ebp - 0xa6c], 0
jmp 0x46075e
mov eax, dword [ebp - 0xa6c]
add eax, 1
mov dword [ebp - 0xa6c], eax
cmp dword [ebp - 0xa6c], 7
jge 0x460775
mov ecx, dword [ebp - 0x1c]
sub ecx, dword [ebp - 0xa6c]
mov dword [ebp - 0x1c], ecx
jmp 0x46074f
cmp dword [ebp - 0x1c], 0xffff0001
jge 0x460787
mov edx, dword [ebp - 0x1c]
imul edx, edx, 0xfffffffb
mov dword [ebp - 0x1c], edx
mov eax, dword [ebp - 0x1c]
cdq
mov ecx, 7
idiv ecx
test edx, edx
je 0x46079f
call dword [sym.imp.KERNEL32.dll_GetVersion]
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0xa70], 0
jmp 0x4607ba
mov edx, dword [ebp - 0xa70]
add edx, 1
mov dword [ebp - 0xa70], edx
cmp dword [ebp - 0xa70], 5
jge 0x4607d1
mov eax, dword [ebp - 0x1c]
xor eax, dword [ebp - 0xa70]
mov dword [ebp - 0x1c], eax
jmp 0x4607ab
cmp dword [ebp - 0x1c], 0
jge 0x4607df
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 0x4607f7
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0xa74], 0
jmp 0x460812
mov edx, dword [ebp - 0xa74]
add edx, 1
mov dword [ebp - 0xa74], edx
cmp dword [ebp - 0xa74], 1
jge 0x460829
mov eax, dword [ebp - 0x1c]
sub eax, dword [ebp - 0xa74]
mov dword [ebp - 0x1c], eax
jmp 0x460803
cmp dword [ebp - 0x1c], 0xffff0001
jge 0x46083b
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 0x460853
call dword [sym.imp.KERNEL32.dll_GetVersion]
mov dword [ebp - 0x1c], eax
mov dword [ebp - 4], 5
mov dword [ebp - 0xa78], 0xffffffff
mov dword [ebp - 0xa7c], 0
jmp 0x46087f
mov edx, dword [ebp - 0xa7c]
add edx, 1
mov dword [ebp - 0xa7c], edx
cmp dword [ebp - 0xa7c], 6
jge 0x4608b1
mov eax, dword [ebp - 0xa7c]
cdq
mov ecx, 0x25
idiv ecx
test edx, edx
jne 0x4608a6
mov edx, dword [ebp - 0xa78]
movsx eax, byte [edx]
mov dword [ebp - 0x1c], eax
mov ecx, dword [ebp - 0x1c]
add ecx, 1
mov dword [ebp - 0x1c], ecx
jmp 0x460870
mov dword [ebp - 4], 0xfffffffe
jmp 0x4608d1
mov dword [ebp - 0xa80], 0
jmp 0x4608ec
mov edx, dword [ebp - 0xa80]
add edx, 1
mov dword [ebp - 0xa80], edx
cmp dword [ebp - 0xa80], 4
jge 0x460903
mov eax, dword [ebp - 0x1c]
sub eax, dword [ebp - 0xa80]
mov dword [ebp - 0x1c], eax
jmp 0x4608dd
cmp dword [ebp - 0x1c], 0xffff0001
jge 0x460915
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 0x46092d
call dword [sym.imp.KERNEL32.dll_GetVersion]
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0xa84], 0
jmp 0x460948
mov edx, dword [ebp - 0xa84]
add edx, 1
mov dword [ebp - 0xa84], edx
cmp dword [ebp - 0xa84], 0
jge 0x46095f
mov eax, dword [ebp - 0x1c]
xor eax, dword [ebp - 0xa84]
mov dword [ebp - 0x1c], eax
jmp 0x460939
cmp dword [ebp - 0x1c], 0
jge 0x46096d
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 0x460985
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [ebp - 0x1c], eax
mov dword [ebp - 4], 6
mov dword [ebp - 0xa88], 0xffffffff
mov dword [ebp - 0xa8c], 0
jmp 0x4609b1
mov edx, dword [ebp - 0xa8c]
add edx, 1
mov dword [ebp - 0xa8c], edx
cmp dword [ebp - 0xa8c], 2
jge 0x4609e3
mov eax, dword [ebp - 0xa8c]
cdq
mov ecx, 0x25
idiv ecx
test edx, edx
jne 0x4609d8
mov edx, dword [ebp - 0xa88]
movsx eax, byte [edx]
mov dword [ebp - 0x1c], eax
mov ecx, dword [ebp - 0x1c]
add ecx, 1
mov dword [ebp - 0x1c], ecx
jmp 0x4609a2
mov dword [ebp - 4], 0xfffffffe
jmp 0x460a03
mov dword [ebp - 0xa90], 0
jmp 0x460a1e
mov edx, dword [ebp - 0xa90]
add edx, 1
mov dword [ebp - 0xa90], edx
cmp dword [ebp - 0xa90], 4
jge 0x460a6b
cmp dword [ebp - 0x1c], 0
jge 0x460a35
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 0x460a4b
mov dword [ebp - 0x1c], 0
mov dword [ebp - 0xa94], 0xfa
lea edx, [ebp - 0xa94]
push edx
lea eax, [ebp - 0xc90]
push eax
call dword [sym.imp.ADVAPI32.dll_GetUserNameW]
jmp 0x460a0f
mov dword [ebp - 0xc94], 0
jmp 0x460a86
mov ecx, dword [ebp - 0xc94]
add ecx, 1
mov dword [ebp - 0xc94], ecx
cmp dword [ebp - 0xc94], 6
jge 0x460ac7
cmp dword [ebp - 0x1c], 0
jge 0x460a9d
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 0x460ab3
mov dword [ebp - 0x1c], 0
push 0xfa
lea edx, [ebp - 0xe90]
push edx
call dword [sym.imp.KERNEL32.dll_GetWindowsDirectoryW]
jmp 0x460a77
mov dword [ebp - 0xe94], 0
jmp 0x460ae2
mov eax, dword [ebp - 0xe94]
add eax, 1
mov dword [ebp - 0xe94], eax
cmp dword [ebp - 0xe94], 2
jge 0x460af9
mov ecx, dword [ebp - 0x1c]
sub ecx, dword [ebp - 0xe94]
mov dword [ebp - 0x1c], ecx
jmp 0x460ad3
cmp dword [ebp - 0x1c], 0xffff0001
jge 0x460b0b
mov edx, dword [ebp - 0x1c]
imul edx, edx, 0xfffffffb
mov dword [ebp - 0x1c], edx
mov eax, dword [ebp - 0x1c]
cdq
mov ecx, 7
idiv ecx
test edx, edx
je 0x460b23
call dword [sym.imp.KERNEL32.dll_GetVersion]
mov dword [ebp - 0x1c], eax
mov edx, 1
test edx, edx
je 0x460b5d
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov dword [ebp - 0xe98], eax
mov eax, dword [ebp - 0xe98]
xor edx, edx
mov ecx, 7
div ecx
test edx, edx
jne 0x460b4f
jmp 0x460b5d
mov edx, dword [ebp - 0x1c]
add edx, dword [ebp - 0xe98]
mov dword [ebp - 0x1c], edx
jmp 0x460b23
mov eax, dword [ebp - 0x1c]
add eax, 2
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0xe9c], 0
jmp 0x460b81
mov ecx, dword [ebp - 0xe9c]
add ecx, 1
mov dword [ebp - 0xe9c], ecx
cmp dword [ebp - 0xe9c], 3
jge 0x460b98
mov edx, dword [ebp - 0x1c]
xor edx, dword [ebp - 0xe9c]
mov dword [ebp - 0x1c], edx
jmp 0x460b72
cmp dword [ebp - 0x1c], 0
jge 0x460ba6
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 0x460bbe
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0xea0], 0
jmp 0x460bd9
mov edx, dword [ebp - 0xea0]
add edx, 1
mov dword [ebp - 0xea0], edx
cmp dword [ebp - 0xea0], 3
jge 0x460c1a
cmp dword [ebp - 0x1c], 0
jge 0x460bf0
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 0x460c06
mov dword [ebp - 0x1c], 0
push 0xfa
lea edx, [ebp - 0x1098]
push edx
call dword [sym.imp.KERNEL32.dll_GetWindowsDirectoryW]
jmp 0x460bca
mov eax, 1
test eax, eax
je 0x460c54
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov dword [ebp - 0x109c], eax
mov eax, dword [ebp - 0x109c]
xor edx, edx
mov ecx, 7
div ecx
test edx, edx
jne 0x460c46
jmp 0x460c54
mov edx, dword [ebp - 0x1c]
add edx, dword [ebp - 0x109c]
mov dword [ebp - 0x1c], edx
jmp 0x460c1a
mov eax, dword [ebp - 0x1c]
add eax, 7
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x10a0], 0
jmp 0x460c78
mov ecx, dword [ebp - 0x10a0]
add ecx, 1
mov dword [ebp - 0x10a0], ecx
cmp dword [ebp - 0x10a0], 3
jge 0x460c8f
mov edx, dword [ebp - 0x1c]
sub edx, dword [ebp - 0x10a0]
mov dword [ebp - 0x1c], edx
jmp 0x460c69
cmp dword [ebp - 0x1c], 0xffff0001
jge 0x460ca1
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 0x460cb9
call dword [sym.imp.KERNEL32.dll_GetVersion]
mov dword [ebp - 0x1c], eax
mov dword [ebp - 4], 7
mov dword [ebp - 0x10a4], 0xffffffff
mov dword [ebp - 0x10a8], 0
jmp 0x460ce5
mov edx, dword [ebp - 0x10a8]
add edx, 1
mov dword [ebp - 0x10a8], edx
cmp dword [ebp - 0x10a8], 5
jge 0x460d17
mov eax, dword [ebp - 0x10a8]
cdq
mov ecx, 0x25
idiv ecx
test edx, edx
jne 0x460d0c
mov edx, dword [ebp - 0x10a4]
movsx eax, byte [edx]
mov dword [ebp - 0x1c], eax
mov ecx, dword [ebp - 0x1c]
add ecx, 1
mov dword [ebp - 0x1c], ecx
jmp 0x460cd6
mov dword [ebp - 4], 0xfffffffe
jmp 0x460d37
mov dword [ebp - 0x10ac], 0
jmp 0x460d52
mov edx, dword [ebp - 0x10ac]
add edx, 1
mov dword [ebp - 0x10ac], edx
cmp dword [ebp - 0x10ac], 3
jge 0x460d69
mov eax, dword [ebp - 0x1c]
sub eax, dword [ebp - 0x10ac]
mov dword [ebp - 0x1c], eax
jmp 0x460d43
cmp dword [ebp - 0x1c], 0xffff0001
jge 0x460d7b
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 0x460d93
call dword [sym.imp.KERNEL32.dll_GetVersion]
mov dword [ebp - 0x1c], eax
mov dword [ebp - 4], 8
mov dword [ebp - 0x10b0], 0xffffffff
mov dword [ebp - 0x10b4], 0
jmp 0x460dbf
mov edx, dword [ebp - 0x10b4]
add edx, 1
mov dword [ebp - 0x10b4], edx
cmp dword [ebp - 0x10b4], 8
jge 0x460df1
mov eax, dword [ebp - 0x10b4]
cdq
mov ecx, 0x25
idiv ecx
test edx, edx
jne 0x460de6
mov edx, dword [ebp - 0x10b0]
movsx eax, byte [edx]
mov dword [ebp - 0x1c], eax
mov ecx, dword [ebp - 0x1c]
add ecx, 1
mov dword [ebp - 0x1c], ecx
jmp 0x460db0
mov dword [ebp - 4], 0xfffffffe
jmp 0x460e11
mov edx, 1
test edx, edx
je 0x460e4b
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov dword [ebp - 0x10b8], eax
mov eax, dword [ebp - 0x10b8]
xor edx, edx
mov ecx, 7
div ecx
test edx, edx
jne 0x460e3d
jmp 0x460e4b
mov edx, dword [ebp - 0x1c]
add edx, dword [ebp - 0x10b8]
mov dword [ebp - 0x1c], edx
jmp 0x460e11
mov eax, dword [ebp - 0x1c]
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x10bc], 0
jmp 0x460e6c
mov ecx, dword [ebp - 0x10bc]
add ecx, 1
mov dword [ebp - 0x10bc], ecx
cmp dword [ebp - 0x10bc], 6
jge 0x460eb9
mov eax, dword [ebp - 0x10bc]
cdq
mov ecx, 5
idiv ecx
cmp edx, 1
je 0x460e9b
mov eax, dword [ebp - 0x10bc]
cdq
mov ecx, 5
idiv ecx
cmp edx, 4
jne 0x460eab
nop
nop
mov edx, dword [ebp - 0x1c]
sub edx, dword [ebp - 0x10bc]
mov dword [ebp - 0x1c], edx
jmp 0x460eb7
mov eax, dword [ebp - 0x1c]
and eax, dword [ebp - 0x10bc]
mov dword [ebp - 0x1c], eax
jmp 0x460e5d
mov dword [ebp - 0x10c0], 0
jmp 0x460ed4
mov ecx, dword [ebp - 0x10c0]
add ecx, 1
mov dword [ebp - 0x10c0], ecx
cmp dword [ebp - 0x10c0], 1
jge 0x460eeb
mov edx, dword [ebp - 0x1c]
sub edx, dword [ebp - 0x10c0]
mov dword [ebp - 0x1c], edx
jmp 0x460ec5
cmp dword [ebp - 0x1c], 0xffff0001
jge 0x460efd
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 0x460f15
call dword [sym.imp.KERNEL32.dll_GetVersion]
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x10c4], 0
jmp 0x460f30
mov edx, dword [ebp - 0x10c4]
add edx, 1
mov dword [ebp - 0x10c4], edx
cmp dword [ebp - 0x10c4], 4
jge 0x460f7d
cmp dword [ebp - 0x1c], 0
jge 0x460f47
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 0x460f5d
mov dword [ebp - 0x1c], 0
mov dword [ebp - 0x10c8], 0xfa
lea edx, [ebp - 0x10c8]
push edx
lea eax, [ebp - 0x12c0]
push eax
call dword [sym.imp.ADVAPI32.dll_GetUserNameW]
jmp 0x460f21
mov dword [ebp - 0x12c4], 0
jmp 0x460f98
mov ecx, dword [ebp - 0x12c4]
add ecx, 1
mov dword [ebp - 0x12c4], ecx
cmp dword [ebp - 0x12c4], 6
jge 0x460faf
mov edx, dword [ebp - 0x1c]
sub edx, dword [ebp - 0x12c4]
mov dword [ebp - 0x1c], edx
jmp 0x460f89
cmp dword [ebp - 0x1c], 0xffff0001
jge 0x460fc1
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 0x460fd9
call dword [sym.imp.KERNEL32.dll_GetVersion]
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x12c8], 0
jmp 0x460ff4
mov edx, dword [ebp - 0x12c8]
add edx, 1
mov dword [ebp - 0x12c8], edx
cmp dword [ebp - 0x12c8], 6
jge 0x461041
mov eax, dword [ebp - 0x12c8]
cdq
mov ecx, 5
idiv ecx
cmp edx, 1
je 0x461023
mov eax, dword [ebp - 0x12c8]
cdq
mov ecx, 5
idiv ecx
cmp edx, 4
jne 0x461033
nop
nop
mov edx, dword [ebp - 0x1c]
sub edx, dword [ebp - 0x12c8]
mov dword [ebp - 0x1c], edx
jmp 0x46103f
mov eax, dword [ebp - 0x1c]
and eax, dword [ebp - 0x12c8]
mov dword [ebp - 0x1c], eax
jmp 0x460fe5
mov dword [ebp - 4], 9
mov dword [ebp - 0x12cc], 0xffffffff
mov dword [ebp - 0x12d0], 0
jmp 0x46106d
mov ecx, dword [ebp - 0x12d0]
add ecx, 1
mov dword [ebp - 0x12d0], ecx
cmp dword [ebp - 0x12d0], 1
jge 0x46109f
mov eax, dword [ebp - 0x12d0]
cdq
mov ecx, 0x25
idiv ecx
test edx, edx
jne 0x461094
mov edx, dword [ebp - 0x12cc]
movsx eax, byte [edx]
mov dword [ebp - 0x1c], eax
mov ecx, dword [ebp - 0x1c]
add ecx, 1
mov dword [ebp - 0x1c], ecx
jmp 0x46105e
mov dword [ebp - 4], 0xfffffffe
jmp 0x4610bf
mov dword [ebp - 0x12d4], 0
jmp 0x4610da
cmp dword [ebp - 0x12d4], 1
jge 0x461127