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

Disassembly:
push ebp
mov ebp, esp
push 0xfffffffffffffffe
push 0x510650
push 0x40b390
mov eax, dword fs:[0]
push eax
sub esp, 8
mov eax, 0x28d8
call fcn.004149d0
mov eax, dword [0x517138]
xor dword [ebp - 8], eax
xor eax, ebp
mov dword [ebp - 0x2c], 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 0x42f669
mov eax, dword [ebp - 0x20]
add eax, 1
mov dword [ebp - 0x20], eax
cmp dword [ebp - 0x20], 0x25
jge 0x42f67a
mov ecx, dword [ebp - 0x1c]
sub ecx, dword [ebp - 0x20]
mov dword [ebp - 0x1c], ecx
jmp 0x42f660
cmp dword [ebp - 0x1c], 0xffff0001
jge 0x42f68c
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 0x42f6a4
call dword [sym.imp.KERNEL32.dll_GetVersion]
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x24], 0
jmp 0x42f6b6
mov edx, dword [ebp - 0x24]
add edx, 1
mov dword [ebp - 0x24], edx
cmp dword [ebp - 0x24], 0xe
jge 0x42f6fa
cmp dword [ebp - 0x1c], 0
jge 0x42f6ca
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 0x42f6e0
mov dword [ebp - 0x1c], 0
mov dword [ebp - 0x28], 0xfa
lea edx, [ebp - 0x28]
push edx
lea eax, [ebp - 0x228]
push eax
call dword [sym.imp.ADVAPI32.dll_GetUserNameW]
jmp 0x42f6ad
mov dword [ebp - 4], 0
mov dword [ebp - 0x22c], 0xffffffff
mov dword [ebp - 0x230], 0
jmp 0x42f726
mov ecx, dword [ebp - 0x230]
add ecx, 1
mov dword [ebp - 0x230], ecx
cmp dword [ebp - 0x230], 0x3d
jge 0x42f758
mov eax, dword [ebp - 0x230]
cdq
mov ecx, 0x25
idiv ecx
test edx, edx
jne 0x42f74d
mov edx, dword [ebp - 0x22c]
movsx eax, byte [edx]
mov dword [ebp - 0x1c], eax
mov ecx, dword [ebp - 0x1c]
add ecx, 1
mov dword [ebp - 0x1c], ecx
jmp 0x42f717
mov dword [ebp - 4], 0xfffffffe
jmp 0x42f778
mov edx, 1
test edx, edx
je 0x42f7b2
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov dword [ebp - 0x234], eax
mov eax, dword [ebp - 0x234]
xor edx, edx
mov ecx, 7
div ecx
test edx, edx
jne 0x42f7a4
jmp 0x42f7b2
mov edx, dword [ebp - 0x1c]
add edx, dword [ebp - 0x234]
mov dword [ebp - 0x1c], edx
jmp 0x42f778
mov eax, dword [ebp - 0x1c]
add eax, 0x26
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x238], 0
jmp 0x42f7d6
mov ecx, dword [ebp - 0x238]
add ecx, 1
mov dword [ebp - 0x238], ecx
cmp dword [ebp - 0x238], 0x1a
jge 0x42f823
mov eax, dword [ebp - 0x238]
cdq
mov ecx, 5
idiv ecx
cmp edx, 1
je 0x42f805
mov eax, dword [ebp - 0x238]
cdq
mov ecx, 5
idiv ecx
cmp edx, 4
jne 0x42f815
nop
nop
mov edx, dword [ebp - 0x1c]
sub edx, dword [ebp - 0x238]
mov dword [ebp - 0x1c], edx
jmp 0x42f821
mov eax, dword [ebp - 0x1c]
and eax, dword [ebp - 0x238]
mov dword [ebp - 0x1c], eax
jmp 0x42f7c7
mov dword [ebp - 0x23c], 0
jmp 0x42f83e
mov ecx, dword [ebp - 0x23c]
add ecx, 1
mov dword [ebp - 0x23c], ecx
cmp dword [ebp - 0x23c], 0xe
jge 0x42f87f
cmp dword [ebp - 0x1c], 0
jge 0x42f855
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 0x42f86b
mov dword [ebp - 0x1c], 0
push 0xfa
lea edx, [ebp - 0x438]
push edx
call dword [sym.imp.KERNEL32.dll_GetWindowsDirectoryW]
jmp 0x42f82f
mov dword [ebp - 0x43c], 0
jmp 0x42f89a
mov eax, dword [ebp - 0x43c]
add eax, 1
mov dword [ebp - 0x43c], eax
cmp dword [ebp - 0x43c], 3
jge 0x42f8db
cmp dword [ebp - 0x1c], 0
jge 0x42f8b1
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 0x42f8c7
mov dword [ebp - 0x1c], 0
push 0xfa
lea edx, [ebp - 0x638]
push edx
call dword [sym.imp.KERNEL32.dll_GetWindowsDirectoryW]
jmp 0x42f88b
mov dword [ebp - 0x63c], 0
jmp 0x42f8f6
mov eax, dword [ebp - 0x63c]
add eax, 1
mov dword [ebp - 0x63c], eax
cmp dword [ebp - 0x63c], 0
jge 0x42f943
cmp dword [ebp - 0x1c], 0
jge 0x42f90d
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 0x42f923
mov dword [ebp - 0x1c], 0
mov dword [ebp - 0x640], 0xfa
lea edx, [ebp - 0x640]
push edx
lea eax, [ebp - 0x838]
push eax
call dword [sym.imp.ADVAPI32.dll_GetUserNameW]
jmp 0x42f8e7
mov dword [ebp - 0x83c], 0
jmp 0x42f95e
mov ecx, dword [ebp - 0x83c]
add ecx, 1
mov dword [ebp - 0x83c], ecx
cmp dword [ebp - 0x83c], 0xb
jge 0x42f975
mov edx, dword [ebp - 0x1c]
xor edx, dword [ebp - 0x83c]
mov dword [ebp - 0x1c], edx
jmp 0x42f94f
cmp dword [ebp - 0x1c], 0
jge 0x42f983
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 0x42f99b
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x840], 0
jmp 0x42f9b6
mov edx, dword [ebp - 0x840]
add edx, 1
mov dword [ebp - 0x840], edx
cmp dword [ebp - 0x840], 8
jge 0x42f9f7
cmp dword [ebp - 0x1c], 0
jge 0x42f9cd
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 0x42f9e3
mov dword [ebp - 0x1c], 0
push 0xfa
lea edx, [ebp - 0xa38]
push edx
call dword [sym.imp.KERNEL32.dll_GetWindowsDirectoryW]
jmp 0x42f9a7
mov dword [ebp - 0xa3c], 0
jmp 0x42fa12
mov eax, dword [ebp - 0xa3c]
add eax, 1
mov dword [ebp - 0xa3c], eax
cmp dword [ebp - 0xa3c], 4
jge 0x42fa53
cmp dword [ebp - 0x1c], 0
jge 0x42fa29
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 0x42fa3f
mov dword [ebp - 0x1c], 0
push 0xfa
lea edx, [ebp - 0xc38]
push edx
call dword [sym.imp.KERNEL32.dll_GetWindowsDirectoryW]
jmp 0x42fa03
mov dword [ebp - 0xc3c], 0
jmp 0x42fa6e
mov eax, dword [ebp - 0xc3c]
add eax, 1
mov dword [ebp - 0xc3c], eax
cmp dword [ebp - 0xc3c], 2
jge 0x42faaf
cmp dword [ebp - 0x1c], 0
jge 0x42fa85
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 0x42fa9b
mov dword [ebp - 0x1c], 0
push 0xfa
lea edx, [ebp - 0xe38]
push edx
call dword [sym.imp.KERNEL32.dll_GetWindowsDirectoryW]
jmp 0x42fa5f
mov dword [ebp - 4], 1
mov dword [ebp - 0xe3c], 0xffffffff
mov dword [ebp - 0xe40], 0
jmp 0x42fadb
mov eax, dword [ebp - 0xe40]
add eax, 1
mov dword [ebp - 0xe40], eax
cmp dword [ebp - 0xe40], 4
jge 0x42fb0d
mov eax, dword [ebp - 0xe40]
cdq
mov ecx, 0x25
idiv ecx
test edx, edx
jne 0x42fb02
mov edx, dword [ebp - 0xe3c]
movsx eax, byte [edx]
mov dword [ebp - 0x1c], eax
mov ecx, dword [ebp - 0x1c]
add ecx, 1
mov dword [ebp - 0x1c], ecx
jmp 0x42facc
mov dword [ebp - 4], 0xfffffffe
jmp 0x42fb2d
mov dword [ebp - 0xe44], 0
jmp 0x42fb48
mov edx, dword [ebp - 0xe44]
add edx, 1
mov dword [ebp - 0xe44], edx
cmp dword [ebp - 0xe44], 0xc
jge 0x42fb89
cmp dword [ebp - 0x1c], 0
jge 0x42fb5f
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 0x42fb75
mov dword [ebp - 0x1c], 0
push 0xfa
lea edx, [ebp - 0x1040]
push edx
call dword [sym.imp.KERNEL32.dll_GetWindowsDirectoryW]
jmp 0x42fb39
mov dword [ebp - 0x1044], 0
jmp 0x42fba4
mov eax, dword [ebp - 0x1044]
add eax, 1
mov dword [ebp - 0x1044], eax
cmp dword [ebp - 0x1044], 0xf
jge 0x42fbbb
mov ecx, dword [ebp - 0x1c]
sub ecx, dword [ebp - 0x1044]
mov dword [ebp - 0x1c], ecx
jmp 0x42fb95
cmp dword [ebp - 0x1c], 0xffff0001
jge 0x42fbcd
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 0x42fbe5
call dword [sym.imp.KERNEL32.dll_GetVersion]
mov dword [ebp - 0x1c], eax
mov dword [ebp - 4], 2
mov dword [ebp - 0x1048], 0xffffffff
mov dword [ebp - 0x104c], 0
jmp 0x42fc11
mov edx, dword [ebp - 0x104c]
add edx, 1
mov dword [ebp - 0x104c], edx
cmp dword [ebp - 0x104c], 0x10
jge 0x42fc43
mov eax, dword [ebp - 0x104c]
cdq
mov ecx, 0x25
idiv ecx
test edx, edx
jne 0x42fc38
mov edx, dword [ebp - 0x1048]
movsx eax, byte [edx]
mov dword [ebp - 0x1c], eax
mov ecx, dword [ebp - 0x1c]
add ecx, 1
mov dword [ebp - 0x1c], ecx
jmp 0x42fc02
mov dword [ebp - 4], 0xfffffffe
jmp 0x42fc63
mov edx, 1
test edx, edx
je 0x42fc9d
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov dword [ebp - 0x1050], eax
mov eax, dword [ebp - 0x1050]
xor edx, edx
mov ecx, 7
div ecx
test edx, edx
jne 0x42fc8f
jmp 0x42fc9d
mov edx, dword [ebp - 0x1c]
add edx, dword [ebp - 0x1050]
mov dword [ebp - 0x1c], edx
jmp 0x42fc63
mov eax, dword [ebp - 0x1c]
add eax, 0xc
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x1054], 0
jmp 0x42fcc1
mov ecx, dword [ebp - 0x1054]
add ecx, 1
mov dword [ebp - 0x1054], ecx
cmp dword [ebp - 0x1054], 0xd
jge 0x42fd0e
mov eax, dword [ebp - 0x1054]
cdq
mov ecx, 5
idiv ecx
cmp edx, 1
je 0x42fcf0
mov eax, dword [ebp - 0x1054]
cdq
mov ecx, 5
idiv ecx
cmp edx, 4
jne 0x42fd00
nop
nop
mov edx, dword [ebp - 0x1c]
sub edx, dword [ebp - 0x1054]
mov dword [ebp - 0x1c], edx
jmp 0x42fd0c
mov eax, dword [ebp - 0x1c]
and eax, dword [ebp - 0x1054]
mov dword [ebp - 0x1c], eax
jmp 0x42fcb2
mov ecx, 1
test ecx, ecx
je 0x42fd48
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov dword [ebp - 0x1058], eax
mov eax, dword [ebp - 0x1058]
xor edx, edx
mov ecx, 7
div ecx
test edx, edx
jne 0x42fd3a
jmp 0x42fd48
mov edx, dword [ebp - 0x1c]
add edx, dword [ebp - 0x1058]
mov dword [ebp - 0x1c], edx
jmp 0x42fd0e
mov eax, dword [ebp - 0x1c]
add eax, 2
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x105c], 0
jmp 0x42fd6c
mov ecx, dword [ebp - 0x105c]
add ecx, 1
mov dword [ebp - 0x105c], ecx
cmp dword [ebp - 0x105c], 0x10
jge 0x42fd83
mov edx, dword [ebp - 0x1c]
sub edx, dword [ebp - 0x105c]
mov dword [ebp - 0x1c], edx
jmp 0x42fd5d
cmp dword [ebp - 0x1c], 0xffff0001
jge 0x42fd95
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 0x42fdad
call dword [sym.imp.KERNEL32.dll_GetVersion]
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x1060], 0
jmp 0x42fdc8
mov edx, dword [ebp - 0x1060]
add edx, 1
mov dword [ebp - 0x1060], edx
cmp dword [ebp - 0x1060], 0
jge 0x42fe15
cmp dword [ebp - 0x1c], 0
jge 0x42fddf
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 0x42fdf5
mov dword [ebp - 0x1c], 0
mov dword [ebp - 0x1064], 0xfa
lea edx, [ebp - 0x1064]
push edx
lea eax, [ebp - 0x1260]
push eax
call dword [sym.imp.ADVAPI32.dll_GetUserNameW]
jmp 0x42fdb9
mov dword [ebp - 0x1264], 0
jmp 0x42fe30
mov ecx, dword [ebp - 0x1264]
add ecx, 1
mov dword [ebp - 0x1264], ecx
cmp dword [ebp - 0x1264], 8
jge 0x42fe47
mov edx, dword [ebp - 0x1c]
sub edx, dword [ebp - 0x1264]
mov dword [ebp - 0x1c], edx
jmp 0x42fe21
cmp dword [ebp - 0x1c], 0xffff0001
jge 0x42fe59
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 0x42fe71
call dword [sym.imp.KERNEL32.dll_GetVersion]
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x1268], 0
jmp 0x42fe8c
mov edx, dword [ebp - 0x1268]
add edx, 1
mov dword [ebp - 0x1268], edx
cmp dword [ebp - 0x1268], 5
jge 0x42fed9
cmp dword [ebp - 0x1c], 0
jge 0x42fea3
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 0x42feb9
mov dword [ebp - 0x1c], 0
mov dword [ebp - 0x126c], 0xfa
lea edx, [ebp - 0x126c]
push edx
lea eax, [ebp - 0x1468]
push eax
call dword [sym.imp.ADVAPI32.dll_GetUserNameW]
jmp 0x42fe7d
mov dword [ebp - 0x146c], 0
jmp 0x42fef4
mov ecx, dword [ebp - 0x146c]
add ecx, 1
mov dword [ebp - 0x146c], ecx
cmp dword [ebp - 0x146c], 5
jge 0x42ff0b
mov edx, dword [ebp - 0x1c]
xor edx, dword [ebp - 0x146c]
mov dword [ebp - 0x1c], edx
jmp 0x42fee5
cmp dword [ebp - 0x1c], 0
jge 0x42ff19
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 0x42ff31
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [ebp - 0x1c], eax
mov dword [ebp - 4], 3
mov dword [ebp - 0x1470], 0xffffffff
mov dword [ebp - 0x1474], 0
jmp 0x42ff5d
mov edx, dword [ebp - 0x1474]
add edx, 1
mov dword [ebp - 0x1474], edx
cmp dword [ebp - 0x1474], 7
jge 0x42ff8f
mov eax, dword [ebp - 0x1474]
cdq
mov ecx, 0x25
idiv ecx
test edx, edx
jne 0x42ff84
mov edx, dword [ebp - 0x1470]
movsx eax, byte [edx]
mov dword [ebp - 0x1c], eax
mov ecx, dword [ebp - 0x1c]
add ecx, 1
mov dword [ebp - 0x1c], ecx
jmp 0x42ff4e
mov dword [ebp - 4], 0xfffffffe
jmp 0x42ffaf
mov edx, 1
test edx, edx
je 0x42ffe9
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov dword [ebp - 0x1478], eax
mov eax, dword [ebp - 0x1478]
xor edx, edx
mov ecx, 7
div ecx
test edx, edx
jne 0x42ffdb
jmp 0x42ffe9
mov edx, dword [ebp - 0x1c]
add edx, dword [ebp - 0x1478]
mov dword [ebp - 0x1c], edx
jmp 0x42ffaf
mov eax, dword [ebp - 0x1c]
add eax, 3
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x147c], 0
jmp 0x43000d
mov ecx, dword [ebp - 0x147c]
add ecx, 1
mov dword [ebp - 0x147c], ecx
cmp dword [ebp - 0x147c], 2
jge 0x43005a
mov eax, dword [ebp - 0x147c]
cdq
mov ecx, 5
idiv ecx
cmp edx, 1
je 0x43003c
mov eax, dword [ebp - 0x147c]
cdq
mov ecx, 5
idiv ecx
cmp edx, 4
jne 0x43004c
nop
nop
mov edx, dword [ebp - 0x1c]
sub edx, dword [ebp - 0x147c]
mov dword [ebp - 0x1c], edx
jmp 0x430058
mov eax, dword [ebp - 0x1c]
and eax, dword [ebp - 0x147c]
mov dword [ebp - 0x1c], eax
jmp 0x42fffe
mov dword [ebp - 0x1480], 0
jmp 0x430075
mov ecx, dword [ebp - 0x1480]
add ecx, 1
mov dword [ebp - 0x1480], ecx
cmp dword [ebp - 0x1480], 4
jge 0x4300c2
cmp dword [ebp - 0x1c], 0
jge 0x43008c
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 0x4300a2
mov dword [ebp - 0x1c], 0
mov dword [ebp - 0x1484], 0xfa
lea edx, [ebp - 0x1484]
push edx
lea eax, [ebp - 0x1680]
push eax
call dword [sym.imp.ADVAPI32.dll_GetUserNameW]
jmp 0x430066
mov dword [ebp - 0x1684], 0
jmp 0x4300dd
mov ecx, dword [ebp - 0x1684]
add ecx, 1
mov dword [ebp - 0x1684], ecx
cmp dword [ebp - 0x1684], 4
jge 0x43012a
cmp dword [ebp - 0x1c], 0
jge 0x4300f4
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 0x43010a
mov dword [ebp - 0x1c], 0
mov dword [ebp - 0x1688], 0xfa
lea edx, [ebp - 0x1688]
push edx
lea eax, [ebp - 0x1880]
push eax
call dword [sym.imp.ADVAPI32.dll_GetUserNameW]
jmp 0x4300ce
mov dword [ebp - 0x1884], 0
jmp 0x430145
mov ecx, dword [ebp - 0x1884]
add ecx, 1
mov dword [ebp - 0x1884], ecx
cmp dword [ebp - 0x1884], 1
jge 0x43015c
mov edx, dword [ebp - 0x1c]
sub edx, dword [ebp - 0x1884]
mov dword [ebp - 0x1c], edx
jmp 0x430136
cmp dword [ebp - 0x1c], 0xffff0001
jge 0x43016e
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 0x430186
call dword [sym.imp.KERNEL32.dll_GetVersion]
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x1888], 0
jmp 0x4301a1
mov edx, dword [ebp - 0x1888]
add edx, 1
mov dword [ebp - 0x1888], edx
cmp dword [ebp - 0x1888], 3
jge 0x4301ee
mov eax, dword [ebp - 0x1888]
cdq
mov ecx, 5
idiv ecx
cmp edx, 1
je 0x4301d0
mov eax, dword [ebp - 0x1888]
cdq
mov ecx, 5
idiv ecx
cmp edx, 4
jne 0x4301e0
nop
nop
mov edx, dword [ebp - 0x1c]
sub edx, dword [ebp - 0x1888]
mov dword [ebp - 0x1c], edx
jmp 0x4301ec
mov eax, dword [ebp - 0x1c]
and eax, dword [ebp - 0x1888]
mov dword [ebp - 0x1c], eax
jmp 0x430192
mov dword [ebp - 4], 4
mov dword [ebp - 0x188c], 0xffffffff
mov dword [ebp - 0x1890], 0
jmp 0x43021a
mov ecx, dword [ebp - 0x1890]
add ecx, 1
mov dword [ebp - 0x1890], ecx
cmp dword [ebp - 0x1890], 4
jge 0x43024c
mov eax, dword [ebp - 0x1890]
cdq
mov ecx, 0x25
idiv ecx
test edx, edx
jne 0x430241
mov edx, dword [ebp - 0x188c]
movsx eax, byte [edx]
mov dword [ebp - 0x1c], eax
mov ecx, dword [ebp - 0x1c]
add ecx, 1
mov dword [ebp - 0x1c], ecx
jmp 0x43020b
mov dword [ebp - 4], 0xfffffffe
jmp 0x43026c
mov dword [ebp - 0x1894], 0
jmp 0x430287
mov edx, dword [ebp - 0x1894]
add edx, 1
mov dword [ebp - 0x1894], edx
cmp dword [ebp - 0x1894], 3
jge 0x43029e
mov eax, dword [ebp - 0x1c]
xor eax, dword [ebp - 0x1894]
mov dword [ebp - 0x1c], eax
jmp 0x430278
cmp dword [ebp - 0x1c], 0
jge 0x4302ac
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 0x4302c4
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x1898], 0
jmp 0x4302df
mov edx, dword [ebp - 0x1898]
add edx, 1
mov dword [ebp - 0x1898], edx
cmp dword [ebp - 0x1898], 0
jge 0x430320
cmp dword [ebp - 0x1c], 0
jge 0x4302f6
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 0x43030c
mov dword [ebp - 0x1c], 0
push 0xfa
lea edx, [ebp - 0x1a90]
push edx
call dword [sym.imp.KERNEL32.dll_GetWindowsDirectoryW]
jmp 0x4302d0
mov dword [ebp - 0x1a94], 0
jmp 0x43033b
mov eax, dword [ebp - 0x1a94]
add eax, 1
mov dword [ebp - 0x1a94], eax
cmp dword [ebp - 0x1a94], 3
jge 0x430388
mov eax, dword [ebp - 0x1a94]
cdq
mov ecx, 5
idiv ecx
cmp edx, 1
je 0x43036a
mov eax, dword [ebp - 0x1a94]
cdq
mov ecx, 5
idiv ecx
cmp edx, 4
jne 0x43037a
nop
nop
mov edx, dword [ebp - 0x1c]
sub edx, dword [ebp - 0x1a94]
mov dword [ebp - 0x1c], edx
jmp 0x430386
mov eax, dword [ebp - 0x1c]
and eax, dword [ebp - 0x1a94]
mov dword [ebp - 0x1c], eax
jmp 0x43032c
mov dword [ebp - 0x1a98], 0
jmp 0x4303a3
mov ecx, dword [ebp - 0x1a98]
add ecx, 1
mov dword [ebp - 0x1a98], ecx
cmp dword [ebp - 0x1a98], 3
jge 0x4303ba
mov edx, dword [ebp - 0x1c]
sub edx, dword [ebp - 0x1a98]
mov dword [ebp - 0x1c], edx
jmp 0x430394
cmp dword [ebp - 0x1c], 0xffff0001
jge 0x4303cc
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 0x4303e4
call dword [sym.imp.KERNEL32.dll_GetVersion]
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x1a9c], 0
jmp 0x4303ff
mov edx, dword [ebp - 0x1a9c]
add edx, 1
mov dword [ebp - 0x1a9c], edx
cmp dword [ebp - 0x1a9c], 3
jge 0x430440
cmp dword [ebp - 0x1c], 0
jge 0x430416
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 0x43042c
mov dword [ebp - 0x1c], 0
push 0xfa
lea edx, [ebp - 0x1c98]
push edx
call dword [sym.imp.KERNEL32.dll_GetWindowsDirectoryW]
jmp 0x4303f0
mov dword [ebp - 0x1c9c], 0
jmp 0x43045b
mov eax, dword [ebp - 0x1c9c]
add eax, 1
mov dword [ebp - 0x1c9c], eax
cmp dword [ebp - 0x1c9c], 1
jge 0x43049c
cmp dword [ebp - 0x1c], 0
jge 0x430472
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 0x430488
mov dword [ebp - 0x1c], 0
push 0xfa
lea edx, [ebp - 0x1e98]
push edx
call dword [sym.imp.KERNEL32.dll_GetWindowsDirectoryW]
jmp 0x43044c
mov dword [ebp - 0x1e9c], 0
jmp 0x4304b7
mov eax, dword [ebp - 0x1e9c]
add eax, 1
mov dword [ebp - 0x1e9c], eax
cmp dword [ebp - 0x1e9c], 2
jge 0x430504
cmp dword [ebp - 0x1c], 0
jge 0x4304ce
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 0x4304e4
mov dword [ebp - 0x1c], 0
mov dword [ebp - 0x1ea0], 0xfa
lea edx, [ebp - 0x1ea0]
push edx
lea eax, [ebp - 0x2098]
push eax
call dword [sym.imp.ADVAPI32.dll_GetUserNameW]
jmp 0x4304a8
mov ecx, 1
test ecx, ecx
je 0x43053e
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov dword [ebp - 0x209c], eax
mov eax, dword [ebp - 0x209c]
xor edx, edx
mov ecx, 7
div ecx
test edx, edx
jne 0x430530
jmp 0x43053e
mov edx, dword [ebp - 0x1c]
add edx, dword [ebp - 0x209c]
mov dword [ebp - 0x1c], edx
jmp 0x430504
mov eax, dword [ebp - 0x1c]
add eax, 4
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x20a0], 0
jmp 0x430562
mov ecx, dword [ebp - 0x20a0]
add ecx, 1
mov dword [ebp - 0x20a0], ecx
cmp dword [ebp - 0x20a0], 2
jge 0x430579
mov edx, dword [ebp - 0x1c]
xor edx, dword [ebp - 0x20a0]
mov dword [ebp - 0x1c], edx
jmp 0x430553
cmp dword [ebp - 0x1c], 0
jge 0x430587
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 0x43059f
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x20a4], 0
jmp 0x4305ba
mov edx, dword [ebp - 0x20a4]
add edx, 1
mov dword [ebp - 0x20a4], edx
cmp dword [ebp - 0x20a4], 0
jge 0x4305d1
mov eax, dword [ebp - 0x1c]
xor eax, dword [ebp - 0x20a4]
mov dword [ebp - 0x1c], eax
jmp 0x4305ab
cmp dword [ebp - 0x1c], 0
jge 0x4305df
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 0x4305f7
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [ebp - 0x1c], eax
mov dword [ebp - 4], 5
mov dword [ebp - 0x20a8], 0xffffffff
mov dword [ebp - 0x20ac], 0
jmp 0x430623
mov edx, dword [ebp - 0x20ac]
add edx, 1
mov dword [ebp - 0x20ac], edx
cmp dword [ebp - 0x20ac], 1
jge 0x430655
mov eax, dword [ebp - 0x20ac]
cdq
mov ecx, 0x25
idiv ecx
test edx, edx
jne 0x43064a
mov edx, dword [ebp - 0x20a8]
movsx eax, byte [edx]
mov dword [ebp - 0x1c], eax
mov ecx, dword [ebp - 0x1c]
add ecx, 1
mov dword [ebp - 0x1c], ecx
jmp 0x430614
mov dword [ebp - 4], 0xfffffffe
jmp 0x430675
mov dword [ebp - 0x20b0], 0
jmp 0x430690
mov edx, dword [ebp - 0x20b0]
add edx, 1
mov dword [ebp - 0x20b0], edx
cmp dword [ebp - 0x20b0], 0
jge 0x4306a7
mov eax, dword [ebp - 0x1c]
xor eax, dword [ebp - 0x20b0]
mov dword [ebp - 0x1c], eax
jmp 0x430681
cmp dword [ebp - 0x1c], 0
jge 0x4306b5
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 0x4306cd
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [ebp - 0x1c], eax
mov dword [ebp - 4], 6
mov dword [ebp - 0x20b4], 0xffffffff
mov dword [ebp - 0x20b8], 0
jmp 0x4306f9
mov edx, dword [ebp - 0x20b8]
add edx, 1
mov dword [ebp - 0x20b8], edx
cmp dword [ebp - 0x20b8], 2
jge 0x43072b
mov eax, dword [ebp - 0x20b8]
cdq
mov ecx, 0x25
idiv ecx
test edx, edx
jne 0x430720
mov edx, dword [ebp - 0x20b4]
movsx eax, byte [edx]
mov dword [ebp - 0x1c], eax
mov ecx, dword [ebp - 0x1c]
add ecx, 1
mov dword [ebp - 0x1c], ecx
jmp 0x4306ea
mov dword [ebp - 4], 0xfffffffe
jmp 0x43074b
mov edx, 1
test edx, edx
je 0x430785
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov dword [ebp - 0x20bc], eax
mov eax, dword [ebp - 0x20bc]
xor edx, edx
mov ecx, 7
div ecx
test edx, edx
jne 0x430777
jmp 0x430785
mov edx, dword [ebp - 0x1c]
add edx, dword [ebp - 0x20bc]
mov dword [ebp - 0x1c], edx
jmp 0x43074b
mov eax, dword [ebp - 0x1c]
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x20c0], 0
jmp 0x4307a6
mov ecx, dword [ebp - 0x20c0]
add ecx, 1
mov dword [ebp - 0x20c0], ecx
cmp dword [ebp - 0x20c0], 2
jge 0x4307f3
mov eax, dword [ebp - 0x20c0]
cdq
mov ecx, 5
idiv ecx
cmp edx, 1
je 0x4307d5
mov eax, dword [ebp - 0x20c0]
cdq
mov ecx, 5
idiv ecx
cmp edx, 4
jne 0x4307e5
nop
nop
mov edx, dword [ebp - 0x1c]
sub edx, dword [ebp - 0x20c0]
mov dword [ebp - 0x1c], edx
jmp 0x4307f1
mov eax, dword [ebp - 0x1c]
and eax, dword [ebp - 0x20c0]
mov dword [ebp - 0x1c], eax
jmp 0x430797
mov dword [ebp - 0x20c4], 0
jmp 0x43080e
mov ecx, dword [ebp - 0x20c4]
add ecx, 1
mov dword [ebp - 0x20c4], ecx
cmp dword [ebp - 0x20c4], 0
jge 0x430825
mov edx, dword [ebp - 0x1c]
xor edx, dword [ebp - 0x20c4]
mov dword [ebp - 0x1c], edx
jmp 0x4307ff
cmp dword [ebp - 0x1c], 0
jge 0x430833
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 0x43084b
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x20c8], 0
jmp 0x430866
mov edx, dword [ebp - 0x20c8]
add edx, 1
mov dword [ebp - 0x20c8], edx
cmp dword [ebp - 0x20c8], 1
jge 0x43087d
mov eax, dword [ebp - 0x1c]
xor eax, dword [ebp - 0x20c8]
mov dword [ebp - 0x1c], eax
jmp 0x430857
cmp dword [ebp - 0x1c], 0
jge 0x43088b
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 0x4308a3
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x20cc], 0
jmp 0x4308be
cmp dword [ebp - 0x20cc], 2
jge 0x4308ff