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

Disassembly:
push ebp
mov ebp, esp
push 0xfffffffffffffffe
push 0x510540
push 0x40b390
mov eax, dword fs:[0]
push eax
sub esp, 8
mov eax, 0x2d08
call fcn.004149d0
mov eax, dword [0x517138]
xor dword [ebp - 8], eax
xor eax, ebp
mov dword [ebp - 0x40], 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 0x42b999
mov eax, dword [ebp - 0x20]
add eax, 1
mov dword [ebp - 0x20], eax
cmp dword [ebp - 0x20], 0x3a
jge 0x42b9d7
mov eax, dword [ebp - 0x20]
cdq
mov ecx, 5
idiv ecx
cmp edx, 1
je 0x42b9bf
mov eax, dword [ebp - 0x20]
cdq
mov ecx, 5
idiv ecx
cmp edx, 4
jne 0x42b9cc
nop
nop
mov edx, dword [ebp - 0x1c]
sub edx, dword [ebp - 0x20]
mov dword [ebp - 0x1c], edx
jmp 0x42b9d5
mov eax, dword [ebp - 0x1c]
and eax, dword [ebp - 0x20]
mov dword [ebp - 0x1c], eax
jmp 0x42b990
mov dword [ebp - 0x24], 0
jmp 0x42b9e9
mov ecx, dword [ebp - 0x24]
add ecx, 1
mov dword [ebp - 0x24], ecx
cmp dword [ebp - 0x24], 0xb
jge 0x42ba27
mov eax, dword [ebp - 0x24]
cdq
mov ecx, 5
idiv ecx
cmp edx, 1
je 0x42ba0f
mov eax, dword [ebp - 0x24]
cdq
mov ecx, 5
idiv ecx
cmp edx, 4
jne 0x42ba1c
nop
nop
mov edx, dword [ebp - 0x1c]
sub edx, dword [ebp - 0x24]
mov dword [ebp - 0x1c], edx
jmp 0x42ba25
mov eax, dword [ebp - 0x1c]
and eax, dword [ebp - 0x24]
mov dword [ebp - 0x1c], eax
jmp 0x42b9e0
mov dword [ebp - 4], 0
mov dword [ebp - 0x28], 0xffffffff
mov dword [ebp - 0x2c], 0
jmp 0x42ba47
mov ecx, dword [ebp - 0x2c]
add ecx, 1
mov dword [ebp - 0x2c], ecx
cmp dword [ebp - 0x2c], 0x20
jge 0x42ba70
mov eax, dword [ebp - 0x2c]
cdq
mov ecx, 0x25
idiv ecx
test edx, edx
jne 0x42ba65
mov edx, dword [ebp - 0x28]
movsx eax, byte [edx]
mov dword [ebp - 0x1c], eax
mov ecx, dword [ebp - 0x1c]
add ecx, 1
mov dword [ebp - 0x1c], ecx
jmp 0x42ba3e
mov dword [ebp - 4], 0xfffffffe
jmp 0x42ba90
mov dword [ebp - 0x30], 0
jmp 0x42baa2
mov edx, dword [ebp - 0x30]
add edx, 1
mov dword [ebp - 0x30], edx
cmp dword [ebp - 0x30], 0xc
jge 0x42bab3
mov eax, dword [ebp - 0x1c]
sub eax, dword [ebp - 0x30]
mov dword [ebp - 0x1c], eax
jmp 0x42ba99
cmp dword [ebp - 0x1c], 0xffff0001
jge 0x42bac5
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 0x42badd
call dword [sym.imp.KERNEL32.dll_GetVersion]
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x34], 0
jmp 0x42baef
mov edx, dword [ebp - 0x34]
add edx, 1
mov dword [ebp - 0x34], edx
cmp dword [ebp - 0x34], 0x19
jge 0x42bb00
mov eax, dword [ebp - 0x1c]
xor eax, dword [ebp - 0x34]
mov dword [ebp - 0x1c], eax
jmp 0x42bae6
cmp dword [ebp - 0x1c], 0
jge 0x42bb0e
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 0x42bb26
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x38], 0
jmp 0x42bb38
mov edx, dword [ebp - 0x38]
add edx, 1
mov dword [ebp - 0x38], edx
cmp dword [ebp - 0x38], 0x14
jge 0x42bb7c
cmp dword [ebp - 0x1c], 0
jge 0x42bb4c
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 0x42bb62
mov dword [ebp - 0x1c], 0
mov dword [ebp - 0x3c], 0xfa
lea edx, [ebp - 0x3c]
push edx
lea eax, [ebp - 0x238]
push eax
call dword [sym.imp.ADVAPI32.dll_GetUserNameW]
jmp 0x42bb2f
mov dword [ebp - 0x23c], 0
jmp 0x42bb97
mov ecx, dword [ebp - 0x23c]
add ecx, 1
mov dword [ebp - 0x23c], ecx
cmp dword [ebp - 0x23c], 7
jge 0x42bbae
mov edx, dword [ebp - 0x1c]
sub edx, dword [ebp - 0x23c]
mov dword [ebp - 0x1c], edx
jmp 0x42bb88
cmp dword [ebp - 0x1c], 0xffff0001
jge 0x42bbc0
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 0x42bbd8
call dword [sym.imp.KERNEL32.dll_GetVersion]
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x240], 0
jmp 0x42bbf3
mov edx, dword [ebp - 0x240]
add edx, 1
mov dword [ebp - 0x240], edx
cmp dword [ebp - 0x240], 0x11
jge 0x42bc40
mov eax, dword [ebp - 0x240]
cdq
mov ecx, 5
idiv ecx
cmp edx, 1
je 0x42bc22
mov eax, dword [ebp - 0x240]
cdq
mov ecx, 5
idiv ecx
cmp edx, 4
jne 0x42bc32
nop
nop
mov edx, dword [ebp - 0x1c]
sub edx, dword [ebp - 0x240]
mov dword [ebp - 0x1c], edx
jmp 0x42bc3e
mov eax, dword [ebp - 0x1c]
and eax, dword [ebp - 0x240]
mov dword [ebp - 0x1c], eax
jmp 0x42bbe4
mov dword [ebp - 4], 1
mov dword [ebp - 0x244], 0xffffffff
mov dword [ebp - 0x248], 0
jmp 0x42bc6c
mov ecx, dword [ebp - 0x248]
add ecx, 1
mov dword [ebp - 0x248], ecx
cmp dword [ebp - 0x248], 0x1e
jge 0x42bc9e
mov eax, dword [ebp - 0x248]
cdq
mov ecx, 0x25
idiv ecx
test edx, edx
jne 0x42bc93
mov edx, dword [ebp - 0x244]
movsx eax, byte [edx]
mov dword [ebp - 0x1c], eax
mov ecx, dword [ebp - 0x1c]
add ecx, 1
mov dword [ebp - 0x1c], ecx
jmp 0x42bc5d
mov dword [ebp - 4], 0xfffffffe
jmp 0x42bcbe
mov dword [ebp - 0x24c], 0
jmp 0x42bcd9
mov edx, dword [ebp - 0x24c]
add edx, 1
mov dword [ebp - 0x24c], edx
cmp dword [ebp - 0x24c], 7
jge 0x42bd1a
cmp dword [ebp - 0x1c], 0
jge 0x42bcf0
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 0x42bd06
mov dword [ebp - 0x1c], 0
push 0xfa
lea edx, [ebp - 0x448]
push edx
call dword [sym.imp.KERNEL32.dll_GetWindowsDirectoryW]
jmp 0x42bcca
mov dword [ebp - 0x44c], 0
jmp 0x42bd35
mov eax, dword [ebp - 0x44c]
add eax, 1
mov dword [ebp - 0x44c], eax
cmp dword [ebp - 0x44c], 0x10
jge 0x42bd82
mov eax, dword [ebp - 0x44c]
cdq
mov ecx, 5
idiv ecx
cmp edx, 1
je 0x42bd64
mov eax, dword [ebp - 0x44c]
cdq
mov ecx, 5
idiv ecx
cmp edx, 4
jne 0x42bd74
nop
nop
mov edx, dword [ebp - 0x1c]
sub edx, dword [ebp - 0x44c]
mov dword [ebp - 0x1c], edx
jmp 0x42bd80
mov eax, dword [ebp - 0x1c]
and eax, dword [ebp - 0x44c]
mov dword [ebp - 0x1c], eax
jmp 0x42bd26
mov dword [ebp - 0x450], 0
jmp 0x42bd9d
mov ecx, dword [ebp - 0x450]
add ecx, 1
mov dword [ebp - 0x450], ecx
cmp dword [ebp - 0x450], 2
jge 0x42bdde
cmp dword [ebp - 0x1c], 0
jge 0x42bdb4
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 0x42bdca
mov dword [ebp - 0x1c], 0
push 0xfa
lea edx, [ebp - 0x648]
push edx
call dword [sym.imp.KERNEL32.dll_GetWindowsDirectoryW]
jmp 0x42bd8e
mov dword [ebp - 0x64c], 0
jmp 0x42bdf9
mov eax, dword [ebp - 0x64c]
add eax, 1
mov dword [ebp - 0x64c], eax
cmp dword [ebp - 0x64c], 0xe
jge 0x42be10
mov ecx, dword [ebp - 0x1c]
sub ecx, dword [ebp - 0x64c]
mov dword [ebp - 0x1c], ecx
jmp 0x42bdea
cmp dword [ebp - 0x1c], 0xffff0001
jge 0x42be22
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 0x42be3a
call dword [sym.imp.KERNEL32.dll_GetVersion]
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x650], 0
jmp 0x42be55
mov edx, dword [ebp - 0x650]
add edx, 1
mov dword [ebp - 0x650], edx
cmp dword [ebp - 0x650], 0xd
jge 0x42be6c
mov eax, dword [ebp - 0x1c]
xor eax, dword [ebp - 0x650]
mov dword [ebp - 0x1c], eax
jmp 0x42be46
cmp dword [ebp - 0x1c], 0
jge 0x42be7a
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 0x42be92
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [ebp - 0x1c], eax
mov edx, 1
test edx, edx
je 0x42becc
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov dword [ebp - 0x654], eax
mov eax, dword [ebp - 0x654]
xor edx, edx
mov ecx, 7
div ecx
test edx, edx
jne 0x42bebe
jmp 0x42becc
mov edx, dword [ebp - 0x1c]
add edx, dword [ebp - 0x654]
mov dword [ebp - 0x1c], edx
jmp 0x42be92
mov eax, dword [ebp - 0x1c]
add eax, 0xc
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x658], 0
jmp 0x42bef0
mov ecx, dword [ebp - 0x658]
add ecx, 1
mov dword [ebp - 0x658], ecx
cmp dword [ebp - 0x658], 8
jge 0x42bf3d
cmp dword [ebp - 0x1c], 0
jge 0x42bf07
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 0x42bf1d
mov dword [ebp - 0x1c], 0
mov dword [ebp - 0x65c], 0xfa
lea edx, [ebp - 0x65c]
push edx
lea eax, [ebp - 0x858]
push eax
call dword [sym.imp.ADVAPI32.dll_GetUserNameW]
jmp 0x42bee1
mov dword [ebp - 0x85c], 0
jmp 0x42bf58
mov ecx, dword [ebp - 0x85c]
add ecx, 1
mov dword [ebp - 0x85c], ecx
cmp dword [ebp - 0x85c], 0xe
jge 0x42bfa5
cmp dword [ebp - 0x1c], 0
jge 0x42bf6f
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 0x42bf85
mov dword [ebp - 0x1c], 0
mov dword [ebp - 0x860], 0xfa
lea edx, [ebp - 0x860]
push edx
lea eax, [ebp - 0xa58]
push eax
call dword [sym.imp.ADVAPI32.dll_GetUserNameW]
jmp 0x42bf49
mov ecx, 1
test ecx, ecx
je 0x42bfdf
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov dword [ebp - 0xa5c], eax
mov eax, dword [ebp - 0xa5c]
xor edx, edx
mov ecx, 7
div ecx
test edx, edx
jne 0x42bfd1
jmp 0x42bfdf
mov edx, dword [ebp - 0x1c]
add edx, dword [ebp - 0xa5c]
mov dword [ebp - 0x1c], edx
jmp 0x42bfa5
mov eax, dword [ebp - 0x1c]
add eax, 0xd
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0xa60], 0
jmp 0x42c003
mov ecx, dword [ebp - 0xa60]
add ecx, 1
mov dword [ebp - 0xa60], ecx
cmp dword [ebp - 0xa60], 2
jge 0x42c01a
mov edx, dword [ebp - 0x1c]
sub edx, dword [ebp - 0xa60]
mov dword [ebp - 0x1c], edx
jmp 0x42bff4
cmp dword [ebp - 0x1c], 0xffff0001
jge 0x42c02c
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 0x42c044
call dword [sym.imp.KERNEL32.dll_GetVersion]
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0xa64], 0
jmp 0x42c05f
mov edx, dword [ebp - 0xa64]
add edx, 1
mov dword [ebp - 0xa64], edx
cmp dword [ebp - 0xa64], 0xf
jge 0x42c0a0
cmp dword [ebp - 0x1c], 0
jge 0x42c076
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 0x42c08c
mov dword [ebp - 0x1c], 0
push 0xfa
lea edx, [ebp - 0xc60]
push edx
call dword [sym.imp.KERNEL32.dll_GetWindowsDirectoryW]
jmp 0x42c050
mov dword [ebp - 0xc64], 0
jmp 0x42c0bb
mov eax, dword [ebp - 0xc64]
add eax, 1
mov dword [ebp - 0xc64], eax
cmp dword [ebp - 0xc64], 0xd
jge 0x42c108
mov eax, dword [ebp - 0xc64]
cdq
mov ecx, 5
idiv ecx
cmp edx, 1
je 0x42c0ea
mov eax, dword [ebp - 0xc64]
cdq
mov ecx, 5
idiv ecx
cmp edx, 4
jne 0x42c0fa
nop
nop
mov edx, dword [ebp - 0x1c]
sub edx, dword [ebp - 0xc64]
mov dword [ebp - 0x1c], edx
jmp 0x42c106
mov eax, dword [ebp - 0x1c]
and eax, dword [ebp - 0xc64]
mov dword [ebp - 0x1c], eax
jmp 0x42c0ac
mov ecx, 1
test ecx, ecx
je 0x42c142
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov dword [ebp - 0xc68], eax
mov eax, dword [ebp - 0xc68]
xor edx, edx
mov ecx, 7
div ecx
test edx, edx
jne 0x42c134
jmp 0x42c142
mov edx, dword [ebp - 0x1c]
add edx, dword [ebp - 0xc68]
mov dword [ebp - 0x1c], edx
jmp 0x42c108
mov eax, dword [ebp - 0x1c]
add eax, 8
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0xc6c], 0
jmp 0x42c166
mov ecx, dword [ebp - 0xc6c]
add ecx, 1
mov dword [ebp - 0xc6c], ecx
cmp dword [ebp - 0xc6c], 0
jge 0x42c17d
mov edx, dword [ebp - 0x1c]
xor edx, dword [ebp - 0xc6c]
mov dword [ebp - 0x1c], edx
jmp 0x42c157
cmp dword [ebp - 0x1c], 0
jge 0x42c18b
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 0x42c1a3
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [ebp - 0x1c], eax
mov edx, 1
test edx, edx
je 0x42c1dd
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov dword [ebp - 0xc70], eax
mov eax, dword [ebp - 0xc70]
xor edx, edx
mov ecx, 7
div ecx
test edx, edx
jne 0x42c1cf
jmp 0x42c1dd
mov edx, dword [ebp - 0x1c]
add edx, dword [ebp - 0xc70]
mov dword [ebp - 0x1c], edx
jmp 0x42c1a3
mov eax, dword [ebp - 0x1c]
add eax, 1
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0xc74], 0
jmp 0x42c201
mov ecx, dword [ebp - 0xc74]
add ecx, 1
mov dword [ebp - 0xc74], ecx
cmp dword [ebp - 0xc74], 1
jge 0x42c24e
cmp dword [ebp - 0x1c], 0
jge 0x42c218
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 0x42c22e
mov dword [ebp - 0x1c], 0
mov dword [ebp - 0xc78], 0xfa
lea edx, [ebp - 0xc78]
push edx
lea eax, [ebp - 0xe70]
push eax
call dword [sym.imp.ADVAPI32.dll_GetUserNameW]
jmp 0x42c1f2
mov dword [ebp - 0xe74], 0
jmp 0x42c269
mov ecx, dword [ebp - 0xe74]
add ecx, 1
mov dword [ebp - 0xe74], ecx
cmp dword [ebp - 0xe74], 2
jge 0x42c280
mov edx, dword [ebp - 0x1c]
xor edx, dword [ebp - 0xe74]
mov dword [ebp - 0x1c], edx
jmp 0x42c25a
cmp dword [ebp - 0x1c], 0
jge 0x42c28e
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 0x42c2a6
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0xe78], 0
jmp 0x42c2c1
mov edx, dword [ebp - 0xe78]
add edx, 1
mov dword [ebp - 0xe78], edx
cmp dword [ebp - 0xe78], 3
jge 0x42c30e
cmp dword [ebp - 0x1c], 0
jge 0x42c2d8
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 0x42c2ee
mov dword [ebp - 0x1c], 0
mov dword [ebp - 0xe7c], 0xfa
lea edx, [ebp - 0xe7c]
push edx
lea eax, [ebp - 0x1078]
push eax
call dword [sym.imp.ADVAPI32.dll_GetUserNameW]
jmp 0x42c2b2
mov dword [ebp - 0x107c], 0
jmp 0x42c329
mov ecx, dword [ebp - 0x107c]
add ecx, 1
mov dword [ebp - 0x107c], ecx
cmp dword [ebp - 0x107c], 2
jge 0x42c340
mov edx, dword [ebp - 0x1c]
xor edx, dword [ebp - 0x107c]
mov dword [ebp - 0x1c], edx
jmp 0x42c31a
cmp dword [ebp - 0x1c], 0
jge 0x42c34e
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 0x42c366
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x1080], 0
jmp 0x42c381
mov edx, dword [ebp - 0x1080]
add edx, 1
mov dword [ebp - 0x1080], edx
cmp dword [ebp - 0x1080], 6
jge 0x42c398
mov eax, dword [ebp - 0x1c]
sub eax, dword [ebp - 0x1080]
mov dword [ebp - 0x1c], eax
jmp 0x42c372
cmp dword [ebp - 0x1c], 0xffff0001
jge 0x42c3aa
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 0x42c3c2
call dword [sym.imp.KERNEL32.dll_GetVersion]
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x1084], 0
jmp 0x42c3dd
mov edx, dword [ebp - 0x1084]
add edx, 1
mov dword [ebp - 0x1084], edx
cmp dword [ebp - 0x1084], 3
jge 0x42c41e
cmp dword [ebp - 0x1c], 0
jge 0x42c3f4
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 0x42c40a
mov dword [ebp - 0x1c], 0
push 0xfa
lea edx, [ebp - 0x1280]
push edx
call dword [sym.imp.KERNEL32.dll_GetWindowsDirectoryW]
jmp 0x42c3ce
mov dword [ebp - 0x1284], 0
jmp 0x42c439
mov eax, dword [ebp - 0x1284]
add eax, 1
mov dword [ebp - 0x1284], eax
cmp dword [ebp - 0x1284], 1
jge 0x42c486
cmp dword [ebp - 0x1c], 0
jge 0x42c450
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 0x42c466
mov dword [ebp - 0x1c], 0
mov dword [ebp - 0x1288], 0xfa
lea edx, [ebp - 0x1288]
push edx
lea eax, [ebp - 0x1480]
push eax
call dword [sym.imp.ADVAPI32.dll_GetUserNameW]
jmp 0x42c42a
mov dword [ebp - 0x1484], 0
jmp 0x42c4a1
mov ecx, dword [ebp - 0x1484]
add ecx, 1
mov dword [ebp - 0x1484], ecx
cmp dword [ebp - 0x1484], 3
jge 0x42c4b8
mov edx, dword [ebp - 0x1c]
sub edx, dword [ebp - 0x1484]
mov dword [ebp - 0x1c], edx
jmp 0x42c492
cmp dword [ebp - 0x1c], 0xffff0001
jge 0x42c4ca
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 0x42c4e2
call dword [sym.imp.KERNEL32.dll_GetVersion]
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x1488], 0
jmp 0x42c4fd
mov edx, dword [ebp - 0x1488]
add edx, 1
mov dword [ebp - 0x1488], edx
cmp dword [ebp - 0x1488], 0
jge 0x42c54a
cmp dword [ebp - 0x1c], 0
jge 0x42c514
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 0x42c52a
mov dword [ebp - 0x1c], 0
mov dword [ebp - 0x148c], 0xfa
lea edx, [ebp - 0x148c]
push edx
lea eax, [ebp - 0x1688]
push eax
call dword [sym.imp.ADVAPI32.dll_GetUserNameW]
jmp 0x42c4ee
mov ecx, 1
test ecx, ecx
je 0x42c584
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov dword [ebp - 0x168c], eax
mov eax, dword [ebp - 0x168c]
xor edx, edx
mov ecx, 7
div ecx
test edx, edx
jne 0x42c576
jmp 0x42c584
mov edx, dword [ebp - 0x1c]
add edx, dword [ebp - 0x168c]
mov dword [ebp - 0x1c], edx
jmp 0x42c54a
mov eax, dword [ebp - 0x1c]
add eax, 4
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x1690], 0
jmp 0x42c5a8
mov ecx, dword [ebp - 0x1690]
add ecx, 1
mov dword [ebp - 0x1690], ecx
cmp dword [ebp - 0x1690], 0
jge 0x42c5f5
mov eax, dword [ebp - 0x1690]
cdq
mov ecx, 5
idiv ecx
cmp edx, 1
je 0x42c5d7
mov eax, dword [ebp - 0x1690]
cdq
mov ecx, 5
idiv ecx
cmp edx, 4
jne 0x42c5e7
nop
nop
mov edx, dword [ebp - 0x1c]
sub edx, dword [ebp - 0x1690]
mov dword [ebp - 0x1c], edx
jmp 0x42c5f3
mov eax, dword [ebp - 0x1c]
and eax, dword [ebp - 0x1690]
mov dword [ebp - 0x1c], eax
jmp 0x42c599
mov ecx, 1
test ecx, ecx
je 0x42c62f
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov dword [ebp - 0x1694], eax
mov eax, dword [ebp - 0x1694]
xor edx, edx
mov ecx, 7
div ecx
test edx, edx
jne 0x42c621
jmp 0x42c62f
mov edx, dword [ebp - 0x1c]
add edx, dword [ebp - 0x1694]
mov dword [ebp - 0x1c], edx
jmp 0x42c5f5
mov eax, dword [ebp - 0x1c]
add eax, 4
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x1698], 0
jmp 0x42c653
mov ecx, dword [ebp - 0x1698]
add ecx, 1
mov dword [ebp - 0x1698], ecx
cmp dword [ebp - 0x1698], 4
jge 0x42c6a0
cmp dword [ebp - 0x1c], 0
jge 0x42c66a
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 0x42c680
mov dword [ebp - 0x1c], 0
mov dword [ebp - 0x169c], 0xfa
lea edx, [ebp - 0x169c]
push edx
lea eax, [ebp - 0x1898]
push eax
call dword [sym.imp.ADVAPI32.dll_GetUserNameW]
jmp 0x42c644
mov dword [ebp - 0x189c], 0
jmp 0x42c6bb
mov ecx, dword [ebp - 0x189c]
add ecx, 1
mov dword [ebp - 0x189c], ecx
cmp dword [ebp - 0x189c], 3
jge 0x42c6fc
cmp dword [ebp - 0x1c], 0
jge 0x42c6d2
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 0x42c6e8
mov dword [ebp - 0x1c], 0
push 0xfa
lea edx, [ebp - 0x1a98]
push edx
call dword [sym.imp.KERNEL32.dll_GetWindowsDirectoryW]
jmp 0x42c6ac
mov dword [ebp - 4], 2
mov dword [ebp - 0x1a9c], 0xffffffff
mov dword [ebp - 0x1aa0], 0
jmp 0x42c728
mov eax, dword [ebp - 0x1aa0]
add eax, 1
mov dword [ebp - 0x1aa0], eax
cmp dword [ebp - 0x1aa0], 1
jge 0x42c75a
mov eax, dword [ebp - 0x1aa0]
cdq
mov ecx, 0x25
idiv ecx
test edx, edx
jne 0x42c74f
mov edx, dword [ebp - 0x1a9c]
movsx eax, byte [edx]
mov dword [ebp - 0x1c], eax
mov ecx, dword [ebp - 0x1c]
add ecx, 1
mov dword [ebp - 0x1c], ecx
jmp 0x42c719
mov dword [ebp - 4], 0xfffffffe
jmp 0x42c77a
mov dword [ebp - 0x1aa4], 0
jmp 0x42c795
mov edx, dword [ebp - 0x1aa4]
add edx, 1
mov dword [ebp - 0x1aa4], edx
cmp dword [ebp - 0x1aa4], 0
jge 0x42c7e2
mov eax, dword [ebp - 0x1aa4]
cdq
mov ecx, 5
idiv ecx
cmp edx, 1
je 0x42c7c4
mov eax, dword [ebp - 0x1aa4]
cdq
mov ecx, 5
idiv ecx
cmp edx, 4
jne 0x42c7d4
nop
nop
mov edx, dword [ebp - 0x1c]
sub edx, dword [ebp - 0x1aa4]
mov dword [ebp - 0x1c], edx
jmp 0x42c7e0
mov eax, dword [ebp - 0x1c]
and eax, dword [ebp - 0x1aa4]
mov dword [ebp - 0x1c], eax
jmp 0x42c786
mov dword [ebp - 4], 3
mov dword [ebp - 0x1aa8], 0xffffffff
mov dword [ebp - 0x1aac], 0
jmp 0x42c80e
mov ecx, dword [ebp - 0x1aac]
add ecx, 1
mov dword [ebp - 0x1aac], ecx
cmp dword [ebp - 0x1aac], 0
jge 0x42c840
mov eax, dword [ebp - 0x1aac]
cdq
mov ecx, 0x25
idiv ecx
test edx, edx
jne 0x42c835
mov edx, dword [ebp - 0x1aa8]
movsx eax, byte [edx]
mov dword [ebp - 0x1c], eax
mov ecx, dword [ebp - 0x1c]
add ecx, 1
mov dword [ebp - 0x1c], ecx
jmp 0x42c7ff
mov dword [ebp - 4], 0xfffffffe
jmp 0x42c860
mov dword [ebp - 0x1ab0], 0
jmp 0x42c87b
mov edx, dword [ebp - 0x1ab0]
add edx, 1
mov dword [ebp - 0x1ab0], edx
cmp dword [ebp - 0x1ab0], 0
jge 0x42c8bc
cmp dword [ebp - 0x1c], 0
jge 0x42c892
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 0x42c8a8
mov dword [ebp - 0x1c], 0
push 0xfa
lea edx, [ebp - 0x1ca8]
push edx
call dword [sym.imp.KERNEL32.dll_GetWindowsDirectoryW]
jmp 0x42c86c
mov dword [ebp - 0x1cac], 0
jmp 0x42c8d7
mov eax, dword [ebp - 0x1cac]
add eax, 1
mov dword [ebp - 0x1cac], eax
cmp dword [ebp - 0x1cac], 2
jge 0x42c8ee
mov ecx, dword [ebp - 0x1c]
sub ecx, dword [ebp - 0x1cac]
mov dword [ebp - 0x1c], ecx
jmp 0x42c8c8
cmp dword [ebp - 0x1c], 0xffff0001
jge 0x42c900
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 0x42c918
call dword [sym.imp.KERNEL32.dll_GetVersion]
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x1cb0], 0
jmp 0x42c933
mov edx, dword [ebp - 0x1cb0]
add edx, 1
mov dword [ebp - 0x1cb0], edx
cmp dword [ebp - 0x1cb0], 4
jge 0x42c980
mov eax, dword [ebp - 0x1cb0]
cdq
mov ecx, 5
idiv ecx
cmp edx, 1
je 0x42c962
mov eax, dword [ebp - 0x1cb0]
cdq
mov ecx, 5
idiv ecx
cmp edx, 4
jne 0x42c972
nop
nop
mov edx, dword [ebp - 0x1c]
sub edx, dword [ebp - 0x1cb0]
mov dword [ebp - 0x1c], edx
jmp 0x42c97e
mov eax, dword [ebp - 0x1c]
and eax, dword [ebp - 0x1cb0]
mov dword [ebp - 0x1c], eax
jmp 0x42c924
mov dword [ebp - 0x1cb4], 0
jmp 0x42c99b
mov ecx, dword [ebp - 0x1cb4]
add ecx, 1
mov dword [ebp - 0x1cb4], ecx
cmp dword [ebp - 0x1cb4], 1
jge 0x42c9e8
cmp dword [ebp - 0x1c], 0
jge 0x42c9b2
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 0x42c9c8
mov dword [ebp - 0x1c], 0
mov dword [ebp - 0x1cb8], 0xfa
lea edx, [ebp - 0x1cb8]
push edx
lea eax, [ebp - 0x1eb0]
push eax
call dword [sym.imp.ADVAPI32.dll_GetUserNameW]
jmp 0x42c98c
mov dword [ebp - 0x1eb4], 0
jmp 0x42ca03
mov ecx, dword [ebp - 0x1eb4]
add ecx, 1
mov dword [ebp - 0x1eb4], ecx
cmp dword [ebp - 0x1eb4], 0
jge 0x42ca1a
mov edx, dword [ebp - 0x1c]
xor edx, dword [ebp - 0x1eb4]
mov dword [ebp - 0x1c], edx
jmp 0x42c9f4
cmp dword [ebp - 0x1c], 0
jge 0x42ca28
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 0x42ca40
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [ebp - 0x1c], eax
mov edx, 1
test edx, edx
je 0x42ca7a
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov dword [ebp - 0x1eb8], eax
mov eax, dword [ebp - 0x1eb8]
xor edx, edx
mov ecx, 7
div ecx
test edx, edx
jne 0x42ca6c
jmp 0x42ca7a
mov edx, dword [ebp - 0x1c]
add edx, dword [ebp - 0x1eb8]
mov dword [ebp - 0x1c], edx
jmp 0x42ca40
mov eax, dword [ebp - 0x1c]
add eax, 1
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x1ebc], 0
jmp 0x42ca9e
mov ecx, dword [ebp - 0x1ebc]
add ecx, 1
mov dword [ebp - 0x1ebc], ecx
cmp dword [ebp - 0x1ebc], 0
jge 0x42cab5
mov edx, dword [ebp - 0x1c]
sub edx, dword [ebp - 0x1ebc]
mov dword [ebp - 0x1c], edx
jmp 0x42ca8f
cmp dword [ebp - 0x1c], 0xffff0001
jge 0x42cac7
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 0x42cadf
call dword [sym.imp.KERNEL32.dll_GetVersion]
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x1ec0], 0
jmp 0x42cafa
mov edx, dword [ebp - 0x1ec0]
add edx, 1
mov dword [ebp - 0x1ec0], edx
cmp dword [ebp - 0x1ec0], 0
jge 0x42cb11
mov eax, dword [ebp - 0x1c]
xor eax, dword [ebp - 0x1ec0]
mov dword [ebp - 0x1c], eax
jmp 0x42caeb
cmp dword [ebp - 0x1c], 0
jge 0x42cb1f
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 0x42cb37
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x1ec4], 0
jmp 0x42cb52
mov edx, dword [ebp - 0x1ec4]
add edx, 1
mov dword [ebp - 0x1ec4], edx
cmp dword [ebp - 0x1ec4], 1
jge 0x42cb69
mov eax, dword [ebp - 0x1c]
sub eax, dword [ebp - 0x1ec4]
mov dword [ebp - 0x1c], eax
jmp 0x42cb43
cmp dword [ebp - 0x1c], 0xffff0001
jge 0x42cb7b
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 0x42cb93