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

Disassembly:
push ebp
mov ebp, esp
push 0xfffffffffffffffe
push 0x510470
push 0x40b390
mov eax, dword fs:[0]
push eax
sub esp, 8
mov eax, 0x18b8
call fcn.004149d0
mov eax, dword [0x517138]
xor dword [ebp - 8], eax
xor eax, ebp
mov dword [ebp - 0x38], 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 - 4], 0
mov dword [ebp - 0x20], 0xffffffff
mov dword [ebp - 0x24], 0
jmp 0x428dd7
mov eax, dword [ebp - 0x24]
add eax, 1
mov dword [ebp - 0x24], eax
cmp dword [ebp - 0x24], 0
jge 0x428e00
mov eax, dword [ebp - 0x24]
cdq
mov ecx, 0x25
idiv ecx
test edx, edx
jne 0x428df5
mov edx, dword [ebp - 0x20]
movsx eax, byte [edx]
mov dword [ebp - 0x1c], eax
mov ecx, dword [ebp - 0x1c]
add ecx, 1
mov dword [ebp - 0x1c], ecx
jmp 0x428dce
mov dword [ebp - 4], 0xfffffffe
jmp 0x428e20
mov dword [ebp - 0x28], 0
jmp 0x428e32
mov edx, dword [ebp - 0x28]
add edx, 1
mov dword [ebp - 0x28], edx
cmp dword [ebp - 0x28], 0
jge 0x428e43
mov eax, dword [ebp - 0x1c]
xor eax, dword [ebp - 0x28]
mov dword [ebp - 0x1c], eax
jmp 0x428e29
cmp dword [ebp - 0x1c], 0
jge 0x428e51
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 0x428e69
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [ebp - 0x1c], eax
mov dword [ebp - 4], 1
mov dword [ebp - 0x2c], 0xffffffff
mov dword [ebp - 0x30], 0
jmp 0x428e89
mov edx, dword [ebp - 0x30]
add edx, 1
mov dword [ebp - 0x30], edx
cmp dword [ebp - 0x30], 1
jge 0x428eb2
mov eax, dword [ebp - 0x30]
cdq
mov ecx, 0x25
idiv ecx
test edx, edx
jne 0x428ea7
mov edx, dword [ebp - 0x2c]
movsx eax, byte [edx]
mov dword [ebp - 0x1c], eax
mov ecx, dword [ebp - 0x1c]
add ecx, 1
mov dword [ebp - 0x1c], ecx
jmp 0x428e80
mov dword [ebp - 4], 0xfffffffe
jmp 0x428ed2
mov dword [ebp - 0x34], 0
jmp 0x428ee4
mov edx, dword [ebp - 0x34]
add edx, 1
mov dword [ebp - 0x34], edx
cmp dword [ebp - 0x34], 0xb
jge 0x428f22
cmp dword [ebp - 0x1c], 0
jge 0x428ef8
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 0x428f0e
mov dword [ebp - 0x1c], 0
push 0xfa
lea edx, [ebp - 0x230]
push edx
call dword [sym.imp.KERNEL32.dll_GetWindowsDirectoryW]
jmp 0x428edb
mov dword [ebp - 0x234], 0
jmp 0x428f3d
mov eax, dword [ebp - 0x234]
add eax, 1
mov dword [ebp - 0x234], eax
cmp dword [ebp - 0x234], 0xa
jge 0x428f54
mov ecx, dword [ebp - 0x1c]
sub ecx, dword [ebp - 0x234]
mov dword [ebp - 0x1c], ecx
jmp 0x428f2e
cmp dword [ebp - 0x1c], 0xffff0001
jge 0x428f66
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 0x428f7e
call dword [sym.imp.KERNEL32.dll_GetVersion]
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x238], 0
jmp 0x428f99
mov edx, dword [ebp - 0x238]
add edx, 1
mov dword [ebp - 0x238], edx
cmp dword [ebp - 0x238], 0x18
jge 0x428fe6
cmp dword [ebp - 0x1c], 0
jge 0x428fb0
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 0x428fc6
mov dword [ebp - 0x1c], 0
mov dword [ebp - 0x23c], 0xfa
lea edx, [ebp - 0x23c]
push edx
lea eax, [ebp - 0x438]
push eax
call dword [sym.imp.ADVAPI32.dll_GetUserNameW]
jmp 0x428f8a
mov dword [ebp - 0x43c], 0
jmp 0x429001
mov ecx, dword [ebp - 0x43c]
add ecx, 1
mov dword [ebp - 0x43c], ecx
cmp dword [ebp - 0x43c], 7
jge 0x42904e
cmp dword [ebp - 0x1c], 0
jge 0x429018
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 0x42902e
mov dword [ebp - 0x1c], 0
mov dword [ebp - 0x440], 0xfa
lea edx, [ebp - 0x440]
push edx
lea eax, [ebp - 0x638]
push eax
call dword [sym.imp.ADVAPI32.dll_GetUserNameW]
jmp 0x428ff2
mov dword [ebp - 0x63c], 0
jmp 0x429069
mov ecx, dword [ebp - 0x63c]
add ecx, 1
mov dword [ebp - 0x63c], ecx
cmp dword [ebp - 0x63c], 0x13
jge 0x429080
mov edx, dword [ebp - 0x1c]
xor edx, dword [ebp - 0x63c]
mov dword [ebp - 0x1c], edx
jmp 0x42905a
cmp dword [ebp - 0x1c], 0
jge 0x42908e
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 0x4290a6
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x640], 0
jmp 0x4290c1
mov edx, dword [ebp - 0x640]
add edx, 1
mov dword [ebp - 0x640], edx
cmp dword [ebp - 0x640], 0x1e
jge 0x4290d8
mov eax, dword [ebp - 0x1c]
xor eax, dword [ebp - 0x640]
mov dword [ebp - 0x1c], eax
jmp 0x4290b2
cmp dword [ebp - 0x1c], 0
jge 0x4290e6
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 0x4290fe
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x644], 0
jmp 0x429119
mov edx, dword [ebp - 0x644]
add edx, 1
mov dword [ebp - 0x644], edx
cmp dword [ebp - 0x644], 2
jge 0x42915a
cmp dword [ebp - 0x1c], 0
jge 0x429130
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 0x429146
mov dword [ebp - 0x1c], 0
push 0xfa
lea edx, [ebp - 0x840]
push edx
call dword [sym.imp.KERNEL32.dll_GetWindowsDirectoryW]
jmp 0x42910a
mov dword [ebp - 0x844], 0
jmp 0x429175
mov eax, dword [ebp - 0x844]
add eax, 1
mov dword [ebp - 0x844], eax
cmp dword [ebp - 0x844], 0xd
jge 0x4291c2
cmp dword [ebp - 0x1c], 0
jge 0x42918c
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 0x4291a2
mov dword [ebp - 0x1c], 0
mov dword [ebp - 0x848], 0xfa
lea edx, [ebp - 0x848]
push edx
lea eax, [ebp - 0xa40]
push eax
call dword [sym.imp.ADVAPI32.dll_GetUserNameW]
jmp 0x429166
mov dword [ebp - 4], 2
mov dword [ebp - 0xa44], 0xffffffff
mov dword [ebp - 0xa48], 0
jmp 0x4291ee
mov ecx, dword [ebp - 0xa48]
add ecx, 1
mov dword [ebp - 0xa48], ecx
cmp dword [ebp - 0xa48], 5
jge 0x429220
mov eax, dword [ebp - 0xa48]
cdq
mov ecx, 0x25
idiv ecx
test edx, edx
jne 0x429215
mov edx, dword [ebp - 0xa44]
movsx eax, byte [edx]
mov dword [ebp - 0x1c], eax
mov ecx, dword [ebp - 0x1c]
add ecx, 1
mov dword [ebp - 0x1c], ecx
jmp 0x4291df
mov dword [ebp - 4], 0xfffffffe
jmp 0x429240
mov dword [ebp - 0xa4c], 0
jmp 0x42925b
mov edx, dword [ebp - 0xa4c]
add edx, 1
mov dword [ebp - 0xa4c], edx
cmp dword [ebp - 0xa4c], 3
jge 0x42929c
cmp dword [ebp - 0x1c], 0
jge 0x429272
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 0x429288
mov dword [ebp - 0x1c], 0
push 0xfa
lea edx, [ebp - 0xc48]
push edx
call dword [sym.imp.KERNEL32.dll_GetWindowsDirectoryW]
jmp 0x42924c
mov dword [ebp - 4], 3
mov dword [ebp - 0xc4c], 0xffffffff
mov dword [ebp - 0xc50], 0
jmp 0x4292c8
mov eax, dword [ebp - 0xc50]
add eax, 1
mov dword [ebp - 0xc50], eax
cmp dword [ebp - 0xc50], 4
jge 0x4292fa
mov eax, dword [ebp - 0xc50]
cdq
mov ecx, 0x25
idiv ecx
test edx, edx
jne 0x4292ef
mov edx, dword [ebp - 0xc4c]
movsx eax, byte [edx]
mov dword [ebp - 0x1c], eax
mov ecx, dword [ebp - 0x1c]
add ecx, 1
mov dword [ebp - 0x1c], ecx
jmp 0x4292b9
mov dword [ebp - 4], 0xfffffffe
jmp 0x42931a
mov dword [ebp - 0xc54], 0
jmp 0x429335
mov edx, dword [ebp - 0xc54]
add edx, 1
mov dword [ebp - 0xc54], edx
cmp dword [ebp - 0xc54], 0xc
jge 0x429382
cmp dword [ebp - 0x1c], 0
jge 0x42934c
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 0x429362
mov dword [ebp - 0x1c], 0
mov dword [ebp - 0xc58], 0xfa
lea edx, [ebp - 0xc58]
push edx
lea eax, [ebp - 0xe50]
push eax
call dword [sym.imp.ADVAPI32.dll_GetUserNameW]
jmp 0x429326
mov dword [ebp - 0xe54], 0
jmp 0x42939d
mov ecx, dword [ebp - 0xe54]
add ecx, 1
mov dword [ebp - 0xe54], ecx
cmp dword [ebp - 0xe54], 0xc
jge 0x4293b4
mov edx, dword [ebp - 0x1c]
xor edx, dword [ebp - 0xe54]
mov dword [ebp - 0x1c], edx
jmp 0x42938e
cmp dword [ebp - 0x1c], 0
jge 0x4293c2
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 0x4293da
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [ebp - 0x1c], eax
mov dword [ebp - 4], 4
mov dword [ebp - 0xe58], 0xffffffff
mov dword [ebp - 0xe5c], 0
jmp 0x429406
mov edx, dword [ebp - 0xe5c]
add edx, 1
mov dword [ebp - 0xe5c], edx
cmp dword [ebp - 0xe5c], 0xd
jge 0x429438
mov eax, dword [ebp - 0xe5c]
cdq
mov ecx, 0x25
idiv ecx
test edx, edx
jne 0x42942d
mov edx, dword [ebp - 0xe58]
movsx eax, byte [edx]
mov dword [ebp - 0x1c], eax
mov ecx, dword [ebp - 0x1c]
add ecx, 1
mov dword [ebp - 0x1c], ecx
jmp 0x4293f7
mov dword [ebp - 4], 0xfffffffe
jmp 0x429458
mov edx, 1
test edx, edx
je 0x429492
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov dword [ebp - 0xe60], eax
mov eax, dword [ebp - 0xe60]
xor edx, edx
mov ecx, 7
div ecx
test edx, edx
jne 0x429484
jmp 0x429492
mov edx, dword [ebp - 0x1c]
add edx, dword [ebp - 0xe60]
mov dword [ebp - 0x1c], edx
jmp 0x429458
mov eax, dword [ebp - 0x1c]
add eax, 4
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0xe64], 0
jmp 0x4294b6
mov ecx, dword [ebp - 0xe64]
add ecx, 1
mov dword [ebp - 0xe64], ecx
cmp dword [ebp - 0xe64], 5
jge 0x429503
mov eax, dword [ebp - 0xe64]
cdq
mov ecx, 5
idiv ecx
cmp edx, 1
je 0x4294e5
mov eax, dword [ebp - 0xe64]
cdq
mov ecx, 5
idiv ecx
cmp edx, 4
jne 0x4294f5
nop
nop
mov edx, dword [ebp - 0x1c]
sub edx, dword [ebp - 0xe64]
mov dword [ebp - 0x1c], edx
jmp 0x429501
mov eax, dword [ebp - 0x1c]
and eax, dword [ebp - 0xe64]
mov dword [ebp - 0x1c], eax
jmp 0x4294a7
mov dword [ebp - 0xe68], 0
jmp 0x42951e
mov ecx, dword [ebp - 0xe68]
add ecx, 1
mov dword [ebp - 0xe68], ecx
cmp dword [ebp - 0xe68], 7
jge 0x429535
mov edx, dword [ebp - 0x1c]
xor edx, dword [ebp - 0xe68]
mov dword [ebp - 0x1c], edx
jmp 0x42950f
cmp dword [ebp - 0x1c], 0
jge 0x429543
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 0x42955b
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0xe6c], 0
jmp 0x429576
mov edx, dword [ebp - 0xe6c]
add edx, 1
mov dword [ebp - 0xe6c], edx
cmp dword [ebp - 0xe6c], 0
jge 0x42958d
mov eax, dword [ebp - 0x1c]
sub eax, dword [ebp - 0xe6c]
mov dword [ebp - 0x1c], eax
jmp 0x429567
cmp dword [ebp - 0x1c], 0xffff0001
jge 0x42959f
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 0x4295b7
call dword [sym.imp.KERNEL32.dll_GetVersion]
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0xe70], 0
jmp 0x4295d2
mov edx, dword [ebp - 0xe70]
add edx, 1
mov dword [ebp - 0xe70], edx
cmp dword [ebp - 0xe70], 8
jge 0x42961f
cmp dword [ebp - 0x1c], 0
jge 0x4295e9
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 0x4295ff
mov dword [ebp - 0x1c], 0
mov dword [ebp - 0xe74], 0xfa
lea edx, [ebp - 0xe74]
push edx
lea eax, [ebp - 0x1070]
push eax
call dword [sym.imp.ADVAPI32.dll_GetUserNameW]
jmp 0x4295c3
mov dword [ebp - 0x1074], 0
jmp 0x42963a
mov ecx, dword [ebp - 0x1074]
add ecx, 1
mov dword [ebp - 0x1074], ecx
cmp dword [ebp - 0x1074], 2
jge 0x42967b
cmp dword [ebp - 0x1c], 0
jge 0x429651
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 0x429667
mov dword [ebp - 0x1c], 0
push 0xfa
lea edx, [ebp - 0x1270]
push edx
call dword [sym.imp.KERNEL32.dll_GetWindowsDirectoryW]
jmp 0x42962b
mov dword [ebp - 0x1274], 0
jmp 0x429696
mov eax, dword [ebp - 0x1274]
add eax, 1
mov dword [ebp - 0x1274], eax
cmp dword [ebp - 0x1274], 1
jge 0x4296ad
mov ecx, dword [ebp - 0x1c]
xor ecx, dword [ebp - 0x1274]
mov dword [ebp - 0x1c], ecx
jmp 0x429687
cmp dword [ebp - 0x1c], 0
jge 0x4296bb
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 0x4296d3
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x1278], 0
jmp 0x4296ee
mov edx, dword [ebp - 0x1278]
add edx, 1
mov dword [ebp - 0x1278], edx
cmp dword [ebp - 0x1278], 2
jge 0x42973b
mov eax, dword [ebp - 0x1278]
cdq
mov ecx, 5
idiv ecx
cmp edx, 1
je 0x42971d
mov eax, dword [ebp - 0x1278]
cdq
mov ecx, 5
idiv ecx
cmp edx, 4
jne 0x42972d
nop
nop
mov edx, dword [ebp - 0x1c]
sub edx, dword [ebp - 0x1278]
mov dword [ebp - 0x1c], edx
jmp 0x429739
mov eax, dword [ebp - 0x1c]
and eax, dword [ebp - 0x1278]
mov dword [ebp - 0x1c], eax
jmp 0x4296df
mov dword [ebp - 4], 5
mov dword [ebp - 0x127c], 0xffffffff
mov dword [ebp - 0x1280], 0
jmp 0x429767
mov ecx, dword [ebp - 0x1280]
add ecx, 1
mov dword [ebp - 0x1280], ecx
cmp dword [ebp - 0x1280], 5
jge 0x429799
mov eax, dword [ebp - 0x1280]
cdq
mov ecx, 0x25
idiv ecx
test edx, edx
jne 0x42978e
mov edx, dword [ebp - 0x127c]
movsx eax, byte [edx]
mov dword [ebp - 0x1c], eax
mov ecx, dword [ebp - 0x1c]
add ecx, 1
mov dword [ebp - 0x1c], ecx
jmp 0x429758
mov dword [ebp - 4], 0xfffffffe
jmp 0x4297b9
mov dword [ebp - 4], 6
mov dword [ebp - 0x1284], 0xffffffff
mov dword [ebp - 0x1288], 0
jmp 0x4297e5
mov edx, dword [ebp - 0x1288]
add edx, 1
mov dword [ebp - 0x1288], edx
cmp dword [ebp - 0x1288], 7
jge 0x429817
mov eax, dword [ebp - 0x1288]
cdq
mov ecx, 0x25
idiv ecx
test edx, edx
jne 0x42980c
mov edx, dword [ebp - 0x1284]
movsx eax, byte [edx]
mov dword [ebp - 0x1c], eax
mov ecx, dword [ebp - 0x1c]
add ecx, 1
mov dword [ebp - 0x1c], ecx
jmp 0x4297d6
mov dword [ebp - 4], 0xfffffffe
jmp 0x429837
mov dword [ebp - 0x128c], 0
jmp 0x429852
mov edx, dword [ebp - 0x128c]
add edx, 1
mov dword [ebp - 0x128c], edx
cmp dword [ebp - 0x128c], 5
jge 0x429869
mov eax, dword [ebp - 0x1c]
sub eax, dword [ebp - 0x128c]
mov dword [ebp - 0x1c], eax
jmp 0x429843
cmp dword [ebp - 0x1c], 0xffff0001
jge 0x42987b
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 0x429893
call dword [sym.imp.KERNEL32.dll_GetVersion]
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x1290], 0
jmp 0x4298ae
mov edx, dword [ebp - 0x1290]
add edx, 1
mov dword [ebp - 0x1290], edx
cmp dword [ebp - 0x1290], 3
jge 0x4298fb
mov eax, dword [ebp - 0x1290]
cdq
mov ecx, 5
idiv ecx
cmp edx, 1
je 0x4298dd
mov eax, dword [ebp - 0x1290]
cdq
mov ecx, 5
idiv ecx
cmp edx, 4
jne 0x4298ed
nop
nop
mov edx, dword [ebp - 0x1c]
sub edx, dword [ebp - 0x1290]
mov dword [ebp - 0x1c], edx
jmp 0x4298f9
mov eax, dword [ebp - 0x1c]
and eax, dword [ebp - 0x1290]
mov dword [ebp - 0x1c], eax
jmp 0x42989f
mov dword [ebp - 0x1294], 0
jmp 0x429916
mov ecx, dword [ebp - 0x1294]
add ecx, 1
mov dword [ebp - 0x1294], ecx
cmp dword [ebp - 0x1294], 3
jge 0x42992d
mov edx, dword [ebp - 0x1c]
sub edx, dword [ebp - 0x1294]
mov dword [ebp - 0x1c], edx
jmp 0x429907
cmp dword [ebp - 0x1c], 0xffff0001
jge 0x42993f
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 0x429957
call dword [sym.imp.KERNEL32.dll_GetVersion]
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x1298], 0
jmp 0x429972
mov edx, dword [ebp - 0x1298]
add edx, 1
mov dword [ebp - 0x1298], edx
cmp dword [ebp - 0x1298], 4
jge 0x4299bf
mov eax, dword [ebp - 0x1298]
cdq
mov ecx, 5
idiv ecx
cmp edx, 1
je 0x4299a1
mov eax, dword [ebp - 0x1298]
cdq
mov ecx, 5
idiv ecx
cmp edx, 4
jne 0x4299b1
nop
nop
mov edx, dword [ebp - 0x1c]
sub edx, dword [ebp - 0x1298]
mov dword [ebp - 0x1c], edx
jmp 0x4299bd
mov eax, dword [ebp - 0x1c]
and eax, dword [ebp - 0x1298]
mov dword [ebp - 0x1c], eax
jmp 0x429963
mov dword [ebp - 0x129c], 0
jmp 0x4299da
mov ecx, dword [ebp - 0x129c]
add ecx, 1
mov dword [ebp - 0x129c], ecx
cmp dword [ebp - 0x129c], 3
jge 0x4299f1
mov edx, dword [ebp - 0x1c]
sub edx, dword [ebp - 0x129c]
mov dword [ebp - 0x1c], edx
jmp 0x4299cb
cmp dword [ebp - 0x1c], 0xffff0001
jge 0x429a03
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 0x429a1b
call dword [sym.imp.KERNEL32.dll_GetVersion]
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x12a0], 0
jmp 0x429a36
mov edx, dword [ebp - 0x12a0]
add edx, 1
mov dword [ebp - 0x12a0], edx
cmp dword [ebp - 0x12a0], 1
jge 0x429a83
cmp dword [ebp - 0x1c], 0
jge 0x429a4d
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 0x429a63
mov dword [ebp - 0x1c], 0
mov dword [ebp - 0x12a4], 0xfa
lea edx, [ebp - 0x12a4]
push edx
lea eax, [ebp - 0x14a0]
push eax
call dword [sym.imp.ADVAPI32.dll_GetUserNameW]
jmp 0x429a27
mov ecx, 1
test ecx, ecx
je 0x429abd
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov dword [ebp - 0x14a4], eax
mov eax, dword [ebp - 0x14a4]
xor edx, edx
mov ecx, 7
div ecx
test edx, edx
jne 0x429aaf
jmp 0x429abd
mov edx, dword [ebp - 0x1c]
add edx, dword [ebp - 0x14a4]
mov dword [ebp - 0x1c], edx
jmp 0x429a83
mov eax, dword [ebp - 0x1c]
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x14a8], 0
jmp 0x429ade
mov ecx, dword [ebp - 0x14a8]
add ecx, 1
mov dword [ebp - 0x14a8], ecx
cmp dword [ebp - 0x14a8], 4
jge 0x429af5
mov edx, dword [ebp - 0x1c]
xor edx, dword [ebp - 0x14a8]
mov dword [ebp - 0x1c], edx
jmp 0x429acf
cmp dword [ebp - 0x1c], 0
jge 0x429b03
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 0x429b1b
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x14ac], 0
jmp 0x429b36
mov edx, dword [ebp - 0x14ac]
add edx, 1
mov dword [ebp - 0x14ac], edx
cmp dword [ebp - 0x14ac], 4
jge 0x429b77
cmp dword [ebp - 0x1c], 0
jge 0x429b4d
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 0x429b63
mov dword [ebp - 0x1c], 0
push 0xfa
lea edx, [ebp - 0x16a8]
push edx
call dword [sym.imp.KERNEL32.dll_GetWindowsDirectoryW]
jmp 0x429b27
mov dword [ebp - 0x16ac], 0
jmp 0x429b92
mov eax, dword [ebp - 0x16ac]
add eax, 1
mov dword [ebp - 0x16ac], eax
cmp dword [ebp - 0x16ac], 0
jge 0x429ba9
mov ecx, dword [ebp - 0x1c]
sub ecx, dword [ebp - 0x16ac]
mov dword [ebp - 0x1c], ecx
jmp 0x429b83
cmp dword [ebp - 0x1c], 0xffff0001
jge 0x429bbb
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 0x429bd3
call dword [sym.imp.KERNEL32.dll_GetVersion]
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x16b0], 0
jmp 0x429bee
mov edx, dword [ebp - 0x16b0]
add edx, 1
mov dword [ebp - 0x16b0], edx
cmp dword [ebp - 0x16b0], 1
jge 0x429c2f
cmp dword [ebp - 0x1c], 0
jge 0x429c05
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 0x429c1b
mov dword [ebp - 0x1c], 0
push 0xfa
lea edx, [ebp - 0x18a8]
push edx
call dword [sym.imp.KERNEL32.dll_GetWindowsDirectoryW]
jmp 0x429bdf
mov eax, 1
test eax, eax
je 0x429c69
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov dword [ebp - 0x18ac], eax
mov eax, dword [ebp - 0x18ac]
xor edx, edx
mov ecx, 7
div ecx
test edx, edx
jne 0x429c5b
jmp 0x429c69
mov edx, dword [ebp - 0x1c]
add edx, dword [ebp - 0x18ac]
mov dword [ebp - 0x1c], edx
jmp 0x429c2f
mov eax, dword [ebp - 0x1c]
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x18b0], 0
jmp 0x429c8a
mov ecx, dword [ebp - 0x18b0]
add ecx, 1
mov dword [ebp - 0x18b0], ecx
cmp dword [ebp - 0x18b0], 2
jge 0x429ca1
mov edx, dword [ebp - 0x1c]
sub edx, dword [ebp - 0x18b0]
mov dword [ebp - 0x1c], edx
jmp 0x429c7b
cmp dword [ebp - 0x1c], 0xffff0001
jge 0x429cb3
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 0x429ccb
call dword [sym.imp.KERNEL32.dll_GetVersion]
mov dword [ebp - 0x1c], eax
mov edx, 1
test edx, edx
je 0x429d05
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov dword [ebp - 0x18b4], eax
mov eax, dword [ebp - 0x18b4]
xor edx, edx
mov ecx, 7
div ecx
test edx, edx
jne 0x429cf7
jmp 0x429d05
mov edx, dword [ebp - 0x1c]
add edx, dword [ebp - 0x18b4]
mov dword [ebp - 0x1c], edx
jmp 0x429ccb
mov eax, dword [ebp - 0x1c]
add eax, 4
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x18b8], 0
jmp 0x429d29
mov ecx, dword [ebp - 0x18b8]
add ecx, 1
mov dword [ebp - 0x18b8], ecx
cmp dword [ebp - 0x18b8], 4
jge 0x429d40
mov edx, dword [ebp - 0x1c]
xor edx, dword [ebp - 0x18b8]
mov dword [ebp - 0x1c], edx
jmp 0x429d1a
cmp dword [ebp - 0x1c], 0
jge 0x429d4e
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 0x429d66
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [ebp - 0x1c], eax
mov dword [ebp - 4], 7
mov dword [ebp - 0x18bc], 0xffffffff
mov dword [ebp - 0x18c0], 0
jmp 0x429d92
mov edx, dword [ebp - 0x18c0]
add edx, 1
mov dword [ebp - 0x18c0], edx
cmp dword [ebp - 0x18c0], 4
jge 0x429dc4
mov eax, dword [ebp - 0x18c0]
cdq
mov ecx, 0x25
idiv ecx
test edx, edx
jne 0x429db9
mov edx, dword [ebp - 0x18bc]
movsx eax, byte [edx]
mov dword [ebp - 0x1c], eax
mov ecx, dword [ebp - 0x1c]
add ecx, 1
mov dword [ebp - 0x1c], ecx
jmp 0x429d83
mov dword [ebp - 4], 0xfffffffe
jmp 0x429de4
mov dword [ebp - 0x18c4], 0
jmp 0x429dff
mov edx, dword [ebp - 0x18c4]
add edx, 1
mov dword [ebp - 0x18c4], edx
cmp dword [ebp - 0x18c4], 2
jge 0x429e4c
mov eax, dword [ebp - 0x18c4]
cdq
mov ecx, 5
idiv ecx
cmp edx, 1
je 0x429e2e
mov eax, dword [ebp - 0x18c4]
cdq
mov ecx, 5
idiv ecx
cmp edx, 4
jne 0x429e3e
nop
nop
mov edx, dword [ebp - 0x1c]
sub edx, dword [ebp - 0x18c4]
mov dword [ebp - 0x1c], edx
jmp 0x429e4a
mov eax, dword [ebp - 0x1c]
and eax, dword [ebp - 0x18c4]
mov dword [ebp - 0x1c], eax
jmp 0x429df0
mov dword [ebp - 4], 8
mov dword [ebp - 0x18c8], 0xffffffff
mov dword [ebp - 0x18cc], 0
jmp 0x429e78
mov ecx, dword [ebp - 0x18cc]
add ecx, 1
mov dword [ebp - 0x18cc], ecx
cmp dword [ebp - 0x18cc], 2
jge 0x429eaa
mov eax, dword [ebp - 0x18cc]
cdq
mov ecx, 0x25
idiv ecx
test edx, edx
jne 0x429e9f
mov edx, dword [ebp - 0x18c8]
movsx eax, byte [edx]
mov dword [ebp - 0x1c], eax
mov ecx, dword [ebp - 0x1c]
add ecx, 1
mov dword [ebp - 0x1c], ecx
jmp 0x429e69
mov dword [ebp - 4], 0xfffffffe
jmp 0x429eca
mov edx, 1
test edx, edx
je 0x429f04
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov dword [ebp - 0x18d0], eax
mov eax, dword [ebp - 0x18d0]
xor edx, edx
mov ecx, 7
div ecx
test edx, edx
jne 0x429ef6
jmp 0x429f04
mov edx, dword [ebp - 0x1c]
add edx, dword [ebp - 0x18d0]
mov dword [ebp - 0x1c], edx
jmp 0x429eca
mov eax, dword [ebp - 0x1c]
add eax, 3
mov dword [ebp - 0x1c], eax
mov eax, dword [ebp - 0x1c]
mov ecx, dword [ebp - 0x10]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 0x38]
xor ecx, ebp
call fcn.004079a5
mov esp, ebp
pop ebp
ret