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

Disassembly:
push ebp
mov ebp, esp
push 0xfffffffffffffffe
push 0x513758
push 0x40b390
mov eax, dword fs:[0]
push eax
sub esp, 8
mov eax, 0x28fc
call fcn.004149d0
mov eax, dword [0x517138]
xor dword [ebp - 8], eax
xor eax, ebp
mov dword [ebp - 0x28], 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 0x4c4d99
mov eax, dword [ebp - 0x20]
add eax, 1
mov dword [ebp - 0x20], eax
cmp dword [ebp - 0x20], 0x1c
jge 0x4c4daa
mov ecx, dword [ebp - 0x1c]
sub ecx, dword [ebp - 0x20]
mov dword [ebp - 0x1c], ecx
jmp 0x4c4d90
cmp dword [ebp - 0x1c], 0xffff0001
jge 0x4c4dbc
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 0x4c4dd4
call dword [sym.imp.KERNEL32.dll_GetVersion]
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x24], 0
jmp 0x4c4de6
mov edx, dword [ebp - 0x24]
add edx, 1
mov dword [ebp - 0x24], edx
cmp dword [ebp - 0x24], 0xd
jge 0x4c4e24
cmp dword [ebp - 0x1c], 0
jge 0x4c4dfa
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 0x4c4e10
mov dword [ebp - 0x1c], 0
push 0xfa
lea edx, [ebp - 0x220]
push edx
call dword [sym.imp.KERNEL32.dll_GetWindowsDirectoryW]
jmp 0x4c4ddd
mov dword [ebp - 0x224], 0
jmp 0x4c4e3f
mov eax, dword [ebp - 0x224]
add eax, 1
mov dword [ebp - 0x224], eax
cmp dword [ebp - 0x224], 8
jge 0x4c4e8c
mov eax, dword [ebp - 0x224]
cdq
mov ecx, 5
idiv ecx
cmp edx, 1
je 0x4c4e6e
mov eax, dword [ebp - 0x224]
cdq
mov ecx, 5
idiv ecx
cmp edx, 4
jne 0x4c4e7e
nop
nop
mov edx, dword [ebp - 0x1c]
sub edx, dword [ebp - 0x224]
mov dword [ebp - 0x1c], edx
jmp 0x4c4e8a
mov eax, dword [ebp - 0x1c]
and eax, dword [ebp - 0x224]
mov dword [ebp - 0x1c], eax
jmp 0x4c4e30
mov ecx, 1
test ecx, ecx
je 0x4c4ec6
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov dword [ebp - 0x228], eax
mov eax, dword [ebp - 0x228]
xor edx, edx
mov ecx, 7
div ecx
test edx, edx
jne 0x4c4eb8
jmp 0x4c4ec6
mov edx, dword [ebp - 0x1c]
add edx, dword [ebp - 0x228]
mov dword [ebp - 0x1c], edx
jmp 0x4c4e8c
mov eax, dword [ebp - 0x1c]
add eax, 0xb
mov dword [ebp - 0x1c], eax
mov ecx, 1
test ecx, ecx
je 0x4c4f09
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov dword [ebp - 0x22c], eax
mov eax, dword [ebp - 0x22c]
xor edx, edx
mov ecx, 7
div ecx
test edx, edx
jne 0x4c4efb
jmp 0x4c4f09
mov edx, dword [ebp - 0x1c]
add edx, dword [ebp - 0x22c]
mov dword [ebp - 0x1c], edx
jmp 0x4c4ecf
mov eax, dword [ebp - 0x1c]
add eax, 0x1b
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x230], 0
jmp 0x4c4f2d
mov ecx, dword [ebp - 0x230]
add ecx, 1
mov dword [ebp - 0x230], ecx
cmp dword [ebp - 0x230], 0x1f
jge 0x4c4f44
mov edx, dword [ebp - 0x1c]
sub edx, dword [ebp - 0x230]
mov dword [ebp - 0x1c], edx
jmp 0x4c4f1e
cmp dword [ebp - 0x1c], 0xffff0001
jge 0x4c4f56
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 0x4c4f6e
call dword [sym.imp.KERNEL32.dll_GetVersion]
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x234], 0
jmp 0x4c4f89
mov edx, dword [ebp - 0x234]
add edx, 1
mov dword [ebp - 0x234], edx
cmp dword [ebp - 0x234], 0xf
jge 0x4c4fa0
mov eax, dword [ebp - 0x1c]
xor eax, dword [ebp - 0x234]
mov dword [ebp - 0x1c], eax
jmp 0x4c4f7a
cmp dword [ebp - 0x1c], 0
jge 0x4c4fae
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 0x4c4fc6
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x238], 0
jmp 0x4c4fe1
mov edx, dword [ebp - 0x238]
add edx, 1
mov dword [ebp - 0x238], edx
cmp dword [ebp - 0x238], 2
jge 0x4c4ff8
mov eax, dword [ebp - 0x1c]
xor eax, dword [ebp - 0x238]
mov dword [ebp - 0x1c], eax
jmp 0x4c4fd2
cmp dword [ebp - 0x1c], 0
jge 0x4c5006
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 0x4c501e
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x23c], 0
jmp 0x4c5039
mov edx, dword [ebp - 0x23c]
add edx, 1
mov dword [ebp - 0x23c], edx
cmp dword [ebp - 0x23c], 2
jge 0x4c5086
mov eax, dword [ebp - 0x23c]
cdq
mov ecx, 5
idiv ecx
cmp edx, 1
je 0x4c5068
mov eax, dword [ebp - 0x23c]
cdq
mov ecx, 5
idiv ecx
cmp edx, 4
jne 0x4c5078
nop
nop
mov edx, dword [ebp - 0x1c]
sub edx, dword [ebp - 0x23c]
mov dword [ebp - 0x1c], edx
jmp 0x4c5084
mov eax, dword [ebp - 0x1c]
and eax, dword [ebp - 0x23c]
mov dword [ebp - 0x1c], eax
jmp 0x4c502a
mov dword [ebp - 0x240], 0
jmp 0x4c50a1
mov ecx, dword [ebp - 0x240]
add ecx, 1
mov dword [ebp - 0x240], ecx
cmp dword [ebp - 0x240], 5
jge 0x4c50ee
mov eax, dword [ebp - 0x240]
cdq
mov ecx, 5
idiv ecx
cmp edx, 1
je 0x4c50d0
mov eax, dword [ebp - 0x240]
cdq
mov ecx, 5
idiv ecx
cmp edx, 4
jne 0x4c50e0
nop
nop
mov edx, dword [ebp - 0x1c]
sub edx, dword [ebp - 0x240]
mov dword [ebp - 0x1c], edx
jmp 0x4c50ec
mov eax, dword [ebp - 0x1c]
and eax, dword [ebp - 0x240]
mov dword [ebp - 0x1c], eax
jmp 0x4c5092
mov dword [ebp - 4], 0
mov dword [ebp - 0x244], 0xffffffff
mov dword [ebp - 0x248], 0
jmp 0x4c511a
mov ecx, dword [ebp - 0x248]
add ecx, 1
mov dword [ebp - 0x248], ecx
cmp dword [ebp - 0x248], 4
jge 0x4c514c
mov eax, dword [ebp - 0x248]
cdq
mov ecx, 0x25
idiv ecx
test edx, edx
jne 0x4c5141
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 0x4c510b
mov dword [ebp - 4], 0xfffffffe
jmp 0x4c516c
mov dword [ebp - 4], 1
mov dword [ebp - 0x24c], 0xffffffff
mov dword [ebp - 0x250], 0
jmp 0x4c5198
mov edx, dword [ebp - 0x250]
add edx, 1
mov dword [ebp - 0x250], edx
cmp dword [ebp - 0x250], 0xf
jge 0x4c51ca
mov eax, dword [ebp - 0x250]
cdq
mov ecx, 0x25
idiv ecx
test edx, edx
jne 0x4c51bf
mov edx, dword [ebp - 0x24c]
movsx eax, byte [edx]
mov dword [ebp - 0x1c], eax
mov ecx, dword [ebp - 0x1c]
add ecx, 1
mov dword [ebp - 0x1c], ecx
jmp 0x4c5189
mov dword [ebp - 4], 0xfffffffe
jmp 0x4c51ea
mov dword [ebp - 0x254], 0
jmp 0x4c5205
mov edx, dword [ebp - 0x254]
add edx, 1
mov dword [ebp - 0x254], edx
cmp dword [ebp - 0x254], 7
jge 0x4c521c
mov eax, dword [ebp - 0x1c]
sub eax, dword [ebp - 0x254]
mov dword [ebp - 0x1c], eax
jmp 0x4c51f6
cmp dword [ebp - 0x1c], 0xffff0001
jge 0x4c522e
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 0x4c5246
call dword [sym.imp.KERNEL32.dll_GetVersion]
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x258], 0
jmp 0x4c5261
mov edx, dword [ebp - 0x258]
add edx, 1
mov dword [ebp - 0x258], edx
cmp dword [ebp - 0x258], 7
jge 0x4c5278
mov eax, dword [ebp - 0x1c]
xor eax, dword [ebp - 0x258]
mov dword [ebp - 0x1c], eax
jmp 0x4c5252
cmp dword [ebp - 0x1c], 0
jge 0x4c5286
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 0x4c529e
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x25c], 0
jmp 0x4c52b9
mov edx, dword [ebp - 0x25c]
add edx, 1
mov dword [ebp - 0x25c], edx
cmp dword [ebp - 0x25c], 9
jge 0x4c52d0
mov eax, dword [ebp - 0x1c]
xor eax, dword [ebp - 0x25c]
mov dword [ebp - 0x1c], eax
jmp 0x4c52aa
cmp dword [ebp - 0x1c], 0
jge 0x4c52de
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 0x4c52f6
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x260], 0
jmp 0x4c5311
mov edx, dword [ebp - 0x260]
add edx, 1
mov dword [ebp - 0x260], edx
cmp dword [ebp - 0x260], 4
jge 0x4c535e
mov eax, dword [ebp - 0x260]
cdq
mov ecx, 5
idiv ecx
cmp edx, 1
je 0x4c5340
mov eax, dword [ebp - 0x260]
cdq
mov ecx, 5
idiv ecx
cmp edx, 4
jne 0x4c5350
nop
nop
mov edx, dword [ebp - 0x1c]
sub edx, dword [ebp - 0x260]
mov dword [ebp - 0x1c], edx
jmp 0x4c535c
mov eax, dword [ebp - 0x1c]
and eax, dword [ebp - 0x260]
mov dword [ebp - 0x1c], eax
jmp 0x4c5302
mov dword [ebp - 0x264], 0
jmp 0x4c5379
mov ecx, dword [ebp - 0x264]
add ecx, 1
mov dword [ebp - 0x264], ecx
cmp dword [ebp - 0x264], 8
jge 0x4c5390
mov edx, dword [ebp - 0x1c]
xor edx, dword [ebp - 0x264]
mov dword [ebp - 0x1c], edx
jmp 0x4c536a
cmp dword [ebp - 0x1c], 0
jge 0x4c539e
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 0x4c53b6
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x268], 0
jmp 0x4c53d1
mov edx, dword [ebp - 0x268]
add edx, 1
mov dword [ebp - 0x268], edx
cmp dword [ebp - 0x268], 7
jge 0x4c53e8
mov eax, dword [ebp - 0x1c]
sub eax, dword [ebp - 0x268]
mov dword [ebp - 0x1c], eax
jmp 0x4c53c2
cmp dword [ebp - 0x1c], 0xffff0001
jge 0x4c53fa
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 0x4c5412
call dword [sym.imp.KERNEL32.dll_GetVersion]
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x26c], 0
jmp 0x4c542d
mov edx, dword [ebp - 0x26c]
add edx, 1
mov dword [ebp - 0x26c], edx
cmp dword [ebp - 0x26c], 0x10
jge 0x4c547a
mov eax, dword [ebp - 0x26c]
cdq
mov ecx, 5
idiv ecx
cmp edx, 1
je 0x4c545c
mov eax, dword [ebp - 0x26c]
cdq
mov ecx, 5
idiv ecx
cmp edx, 4
jne 0x4c546c
nop
nop
mov edx, dword [ebp - 0x1c]
sub edx, dword [ebp - 0x26c]
mov dword [ebp - 0x1c], edx
jmp 0x4c5478
mov eax, dword [ebp - 0x1c]
and eax, dword [ebp - 0x26c]
mov dword [ebp - 0x1c], eax
jmp 0x4c541e
mov dword [ebp - 0x270], 0
jmp 0x4c5495
mov ecx, dword [ebp - 0x270]
add ecx, 1
mov dword [ebp - 0x270], ecx
cmp dword [ebp - 0x270], 0
jge 0x4c54d6
cmp dword [ebp - 0x1c], 0
jge 0x4c54ac
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 0x4c54c2
mov dword [ebp - 0x1c], 0
push 0xfa
lea edx, [ebp - 0x468]
push edx
call dword [sym.imp.KERNEL32.dll_GetWindowsDirectoryW]
jmp 0x4c5486
mov dword [ebp - 4], 2
mov dword [ebp - 0x46c], 0xffffffff
mov dword [ebp - 0x470], 0
jmp 0x4c5502
mov eax, dword [ebp - 0x470]
add eax, 1
mov dword [ebp - 0x470], eax
cmp dword [ebp - 0x470], 3
jge 0x4c5534
mov eax, dword [ebp - 0x470]
cdq
mov ecx, 0x25
idiv ecx
test edx, edx
jne 0x4c5529
mov edx, dword [ebp - 0x46c]
movsx eax, byte [edx]
mov dword [ebp - 0x1c], eax
mov ecx, dword [ebp - 0x1c]
add ecx, 1
mov dword [ebp - 0x1c], ecx
jmp 0x4c54f3
mov dword [ebp - 4], 0xfffffffe
jmp 0x4c5554
mov dword [ebp - 0x474], 0
jmp 0x4c556f
mov edx, dword [ebp - 0x474]
add edx, 1
mov dword [ebp - 0x474], edx
cmp dword [ebp - 0x474], 2
jge 0x4c55bc
cmp dword [ebp - 0x1c], 0
jge 0x4c5586
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 0x4c559c
mov dword [ebp - 0x1c], 0
mov dword [ebp - 0x478], 0xfa
lea edx, [ebp - 0x478]
push edx
lea eax, [ebp - 0x670]
push eax
call dword [sym.imp.ADVAPI32.dll_GetUserNameW]
jmp 0x4c5560
mov dword [ebp - 0x674], 0
jmp 0x4c55d7
mov ecx, dword [ebp - 0x674]
add ecx, 1
mov dword [ebp - 0x674], ecx
cmp dword [ebp - 0x674], 0
jge 0x4c5624
mov eax, dword [ebp - 0x674]
cdq
mov ecx, 5
idiv ecx
cmp edx, 1
je 0x4c5606
mov eax, dword [ebp - 0x674]
cdq
mov ecx, 5
idiv ecx
cmp edx, 4
jne 0x4c5616
nop
nop
mov edx, dword [ebp - 0x1c]
sub edx, dword [ebp - 0x674]
mov dword [ebp - 0x1c], edx
jmp 0x4c5622
mov eax, dword [ebp - 0x1c]
and eax, dword [ebp - 0x674]
mov dword [ebp - 0x1c], eax
jmp 0x4c55c8
mov dword [ebp - 0x678], 0
jmp 0x4c563f
mov ecx, dword [ebp - 0x678]
add ecx, 1
mov dword [ebp - 0x678], ecx
cmp dword [ebp - 0x678], 3
jge 0x4c568c
cmp dword [ebp - 0x1c], 0
jge 0x4c5656
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 0x4c566c
mov dword [ebp - 0x1c], 0
mov dword [ebp - 0x67c], 0xfa
lea edx, [ebp - 0x67c]
push edx
lea eax, [ebp - 0x878]
push eax
call dword [sym.imp.ADVAPI32.dll_GetUserNameW]
jmp 0x4c5630
mov dword [ebp - 0x87c], 0
jmp 0x4c56a7
mov ecx, dword [ebp - 0x87c]
add ecx, 1
mov dword [ebp - 0x87c], ecx
cmp dword [ebp - 0x87c], 0
jge 0x4c56f4
cmp dword [ebp - 0x1c], 0
jge 0x4c56be
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 0x4c56d4
mov dword [ebp - 0x1c], 0
mov dword [ebp - 0x880], 0xfa
lea edx, [ebp - 0x880]
push edx
lea eax, [ebp - 0xa78]
push eax
call dword [sym.imp.ADVAPI32.dll_GetUserNameW]
jmp 0x4c5698
mov dword [ebp - 0xa7c], 0
jmp 0x4c570f
mov ecx, dword [ebp - 0xa7c]
add ecx, 1
mov dword [ebp - 0xa7c], ecx
cmp dword [ebp - 0xa7c], 3
jge 0x4c5750
cmp dword [ebp - 0x1c], 0
jge 0x4c5726
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 0x4c573c
mov dword [ebp - 0x1c], 0
push 0xfa
lea edx, [ebp - 0xc78]
push edx
call dword [sym.imp.KERNEL32.dll_GetWindowsDirectoryW]
jmp 0x4c5700
mov dword [ebp - 0xc7c], 0
jmp 0x4c576b
mov eax, dword [ebp - 0xc7c]
add eax, 1
mov dword [ebp - 0xc7c], eax
cmp dword [ebp - 0xc7c], 3
jge 0x4c57b8
cmp dword [ebp - 0x1c], 0
jge 0x4c5782
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 0x4c5798
mov dword [ebp - 0x1c], 0
mov dword [ebp - 0xc80], 0xfa
lea edx, [ebp - 0xc80]
push edx
lea eax, [ebp - 0xe78]
push eax
call dword [sym.imp.ADVAPI32.dll_GetUserNameW]
jmp 0x4c575c
mov ecx, 1
test ecx, ecx
je 0x4c57f2
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov dword [ebp - 0xe7c], eax
mov eax, dword [ebp - 0xe7c]
xor edx, edx
mov ecx, 7
div ecx
test edx, edx
jne 0x4c57e4
jmp 0x4c57f2
mov edx, dword [ebp - 0x1c]
add edx, dword [ebp - 0xe7c]
mov dword [ebp - 0x1c], edx
jmp 0x4c57b8
mov eax, dword [ebp - 0x1c]
add eax, 3
mov dword [ebp - 0x1c], eax
mov dword [ebp - 4], 3
mov dword [ebp - 0xe80], 0xffffffff
mov dword [ebp - 0xe84], 0
jmp 0x4c5827
mov ecx, dword [ebp - 0xe84]
add ecx, 1
mov dword [ebp - 0xe84], ecx
cmp dword [ebp - 0xe84], 2
jge 0x4c5859
mov eax, dword [ebp - 0xe84]
cdq
mov ecx, 0x25
idiv ecx
test edx, edx
jne 0x4c584e
mov edx, dword [ebp - 0xe80]
movsx eax, byte [edx]
mov dword [ebp - 0x1c], eax
mov ecx, dword [ebp - 0x1c]
add ecx, 1
mov dword [ebp - 0x1c], ecx
jmp 0x4c5818
mov dword [ebp - 4], 0xfffffffe
jmp 0x4c5879
mov dword [ebp - 0xe88], 0
jmp 0x4c5894
mov edx, dword [ebp - 0xe88]
add edx, 1
mov dword [ebp - 0xe88], edx
cmp dword [ebp - 0xe88], 1
jge 0x4c58e1
mov eax, dword [ebp - 0xe88]
cdq
mov ecx, 5
idiv ecx
cmp edx, 1
je 0x4c58c3
mov eax, dword [ebp - 0xe88]
cdq
mov ecx, 5
idiv ecx
cmp edx, 4
jne 0x4c58d3
nop
nop
mov edx, dword [ebp - 0x1c]
sub edx, dword [ebp - 0xe88]
mov dword [ebp - 0x1c], edx
jmp 0x4c58df
mov eax, dword [ebp - 0x1c]
and eax, dword [ebp - 0xe88]
mov dword [ebp - 0x1c], eax
jmp 0x4c5885
mov dword [ebp - 0xe8c], 0
jmp 0x4c58fc
mov ecx, dword [ebp - 0xe8c]
add ecx, 1
mov dword [ebp - 0xe8c], ecx
cmp dword [ebp - 0xe8c], 3
jge 0x4c5913
mov edx, dword [ebp - 0x1c]
sub edx, dword [ebp - 0xe8c]
mov dword [ebp - 0x1c], edx
jmp 0x4c58ed
cmp dword [ebp - 0x1c], 0xffff0001
jge 0x4c5925
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 0x4c593d
call dword [sym.imp.KERNEL32.dll_GetVersion]
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0xe90], 0
jmp 0x4c5958
mov edx, dword [ebp - 0xe90]
add edx, 1
mov dword [ebp - 0xe90], edx
cmp dword [ebp - 0xe90], 0
jge 0x4c59a5
mov eax, dword [ebp - 0xe90]
cdq
mov ecx, 5
idiv ecx
cmp edx, 1
je 0x4c5987
mov eax, dword [ebp - 0xe90]
cdq
mov ecx, 5
idiv ecx
cmp edx, 4
jne 0x4c5997
nop
nop
mov edx, dword [ebp - 0x1c]
sub edx, dword [ebp - 0xe90]
mov dword [ebp - 0x1c], edx
jmp 0x4c59a3
mov eax, dword [ebp - 0x1c]
and eax, dword [ebp - 0xe90]
mov dword [ebp - 0x1c], eax
jmp 0x4c5949
mov dword [ebp - 0xe94], 0
jmp 0x4c59c0
mov ecx, dword [ebp - 0xe94]
add ecx, 1
mov dword [ebp - 0xe94], ecx
cmp dword [ebp - 0xe94], 0
jge 0x4c5a0d
cmp dword [ebp - 0x1c], 0
jge 0x4c59d7
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 0x4c59ed
mov dword [ebp - 0x1c], 0
mov dword [ebp - 0xe98], 0xfa
lea edx, [ebp - 0xe98]
push edx
lea eax, [ebp - 0x1090]
push eax
call dword [sym.imp.ADVAPI32.dll_GetUserNameW]
jmp 0x4c59b1
mov dword [ebp - 0x1094], 0
jmp 0x4c5a28
mov ecx, dword [ebp - 0x1094]
add ecx, 1
mov dword [ebp - 0x1094], ecx
cmp dword [ebp - 0x1094], 4
jge 0x4c5a69
cmp dword [ebp - 0x1c], 0
jge 0x4c5a3f
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 0x4c5a55
mov dword [ebp - 0x1c], 0
push 0xfa
lea edx, [ebp - 0x1290]
push edx
call dword [sym.imp.KERNEL32.dll_GetWindowsDirectoryW]
jmp 0x4c5a19
mov dword [ebp - 0x1294], 0
jmp 0x4c5a84
mov eax, dword [ebp - 0x1294]
add eax, 1
mov dword [ebp - 0x1294], eax
cmp dword [ebp - 0x1294], 4
jge 0x4c5ad1
mov eax, dword [ebp - 0x1294]
cdq
mov ecx, 5
idiv ecx
cmp edx, 1
je 0x4c5ab3
mov eax, dword [ebp - 0x1294]
cdq
mov ecx, 5
idiv ecx
cmp edx, 4
jne 0x4c5ac3
nop
nop
mov edx, dword [ebp - 0x1c]
sub edx, dword [ebp - 0x1294]
mov dword [ebp - 0x1c], edx
jmp 0x4c5acf
mov eax, dword [ebp - 0x1c]
and eax, dword [ebp - 0x1294]
mov dword [ebp - 0x1c], eax
jmp 0x4c5a75
mov dword [ebp - 0x1298], 0
jmp 0x4c5aec
mov ecx, dword [ebp - 0x1298]
add ecx, 1
mov dword [ebp - 0x1298], ecx
cmp dword [ebp - 0x1298], 1
jge 0x4c5b2d
cmp dword [ebp - 0x1c], 0
jge 0x4c5b03
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 0x4c5b19
mov dword [ebp - 0x1c], 0
push 0xfa
lea edx, [ebp - 0x1490]
push edx
call dword [sym.imp.KERNEL32.dll_GetWindowsDirectoryW]
jmp 0x4c5add
mov dword [ebp - 0x1494], 0
jmp 0x4c5b48
mov eax, dword [ebp - 0x1494]
add eax, 1
mov dword [ebp - 0x1494], eax
cmp dword [ebp - 0x1494], 2
jge 0x4c5b95
mov eax, dword [ebp - 0x1494]
cdq
mov ecx, 5
idiv ecx
cmp edx, 1
je 0x4c5b77
mov eax, dword [ebp - 0x1494]
cdq
mov ecx, 5
idiv ecx
cmp edx, 4
jne 0x4c5b87
nop
nop
mov edx, dword [ebp - 0x1c]
sub edx, dword [ebp - 0x1494]
mov dword [ebp - 0x1c], edx
jmp 0x4c5b93
mov eax, dword [ebp - 0x1c]
and eax, dword [ebp - 0x1494]
mov dword [ebp - 0x1c], eax
jmp 0x4c5b39
mov dword [ebp - 0x1498], 0
jmp 0x4c5bb0
mov ecx, dword [ebp - 0x1498]
add ecx, 1
mov dword [ebp - 0x1498], ecx
cmp dword [ebp - 0x1498], 0
jge 0x4c5bfd
mov eax, dword [ebp - 0x1498]
cdq
mov ecx, 5
idiv ecx
cmp edx, 1
je 0x4c5bdf
mov eax, dword [ebp - 0x1498]
cdq
mov ecx, 5
idiv ecx
cmp edx, 4
jne 0x4c5bef
nop
nop
mov edx, dword [ebp - 0x1c]
sub edx, dword [ebp - 0x1498]
mov dword [ebp - 0x1c], edx
jmp 0x4c5bfb
mov eax, dword [ebp - 0x1c]
and eax, dword [ebp - 0x1498]
mov dword [ebp - 0x1c], eax
jmp 0x4c5ba1
mov dword [ebp - 0x149c], 0
jmp 0x4c5c18
mov ecx, dword [ebp - 0x149c]
add ecx, 1
mov dword [ebp - 0x149c], ecx
cmp dword [ebp - 0x149c], 2
jge 0x4c5c65
mov eax, dword [ebp - 0x149c]
cdq
mov ecx, 5
idiv ecx
cmp edx, 1
je 0x4c5c47
mov eax, dword [ebp - 0x149c]
cdq
mov ecx, 5
idiv ecx
cmp edx, 4
jne 0x4c5c57
nop
nop
mov edx, dword [ebp - 0x1c]
sub edx, dword [ebp - 0x149c]
mov dword [ebp - 0x1c], edx
jmp 0x4c5c63
mov eax, dword [ebp - 0x1c]
and eax, dword [ebp - 0x149c]
mov dword [ebp - 0x1c], eax
jmp 0x4c5c09
mov dword [ebp - 0x14a0], 0
jmp 0x4c5c80
mov ecx, dword [ebp - 0x14a0]
add ecx, 1
mov dword [ebp - 0x14a0], ecx
cmp dword [ebp - 0x14a0], 3
jge 0x4c5ccd
mov eax, dword [ebp - 0x14a0]
cdq
mov ecx, 5
idiv ecx
cmp edx, 1
je 0x4c5caf
mov eax, dword [ebp - 0x14a0]
cdq
mov ecx, 5
idiv ecx
cmp edx, 4
jne 0x4c5cbf
nop
nop
mov edx, dword [ebp - 0x1c]
sub edx, dword [ebp - 0x14a0]
mov dword [ebp - 0x1c], edx
jmp 0x4c5ccb
mov eax, dword [ebp - 0x1c]
and eax, dword [ebp - 0x14a0]
mov dword [ebp - 0x1c], eax
jmp 0x4c5c71
mov dword [ebp - 4], 4
mov dword [ebp - 0x14a4], 0xffffffff
mov dword [ebp - 0x14a8], 0
jmp 0x4c5cf9
mov ecx, dword [ebp - 0x14a8]
add ecx, 1
mov dword [ebp - 0x14a8], ecx
cmp dword [ebp - 0x14a8], 0
jge 0x4c5d2b
mov eax, dword [ebp - 0x14a8]
cdq
mov ecx, 0x25
idiv ecx
test edx, edx
jne 0x4c5d20
mov edx, dword [ebp - 0x14a4]
movsx eax, byte [edx]
mov dword [ebp - 0x1c], eax
mov ecx, dword [ebp - 0x1c]
add ecx, 1
mov dword [ebp - 0x1c], ecx
jmp 0x4c5cea
mov dword [ebp - 4], 0xfffffffe
jmp 0x4c5d4b
mov dword [ebp - 4], 5
mov dword [ebp - 0x14ac], 0xffffffff
mov dword [ebp - 0x14b0], 0
jmp 0x4c5d77
mov edx, dword [ebp - 0x14b0]
add edx, 1
mov dword [ebp - 0x14b0], edx
cmp dword [ebp - 0x14b0], 4
jge 0x4c5da9
mov eax, dword [ebp - 0x14b0]
cdq
mov ecx, 0x25
idiv ecx
test edx, edx
jne 0x4c5d9e
mov edx, dword [ebp - 0x14ac]
movsx eax, byte [edx]
mov dword [ebp - 0x1c], eax
mov ecx, dword [ebp - 0x1c]
add ecx, 1
mov dword [ebp - 0x1c], ecx
jmp 0x4c5d68
mov dword [ebp - 4], 0xfffffffe
jmp 0x4c5dc9
mov dword [ebp - 0x14b4], 0
jmp 0x4c5de4
mov edx, dword [ebp - 0x14b4]
add edx, 1
mov dword [ebp - 0x14b4], edx
cmp dword [ebp - 0x14b4], 3
jge 0x4c5e31
mov eax, dword [ebp - 0x14b4]
cdq
mov ecx, 5
idiv ecx
cmp edx, 1
je 0x4c5e13
mov eax, dword [ebp - 0x14b4]
cdq
mov ecx, 5
idiv ecx
cmp edx, 4
jne 0x4c5e23
nop
nop
mov edx, dword [ebp - 0x1c]
sub edx, dword [ebp - 0x14b4]
mov dword [ebp - 0x1c], edx
jmp 0x4c5e2f
mov eax, dword [ebp - 0x1c]
and eax, dword [ebp - 0x14b4]
mov dword [ebp - 0x1c], eax
jmp 0x4c5dd5
mov dword [ebp - 0x14b8], 0
jmp 0x4c5e4c
mov ecx, dword [ebp - 0x14b8]
add ecx, 1
mov dword [ebp - 0x14b8], ecx
cmp dword [ebp - 0x14b8], 1
jge 0x4c5e99
mov eax, dword [ebp - 0x14b8]
cdq
mov ecx, 5
idiv ecx
cmp edx, 1
je 0x4c5e7b
mov eax, dword [ebp - 0x14b8]
cdq
mov ecx, 5
idiv ecx
cmp edx, 4
jne 0x4c5e8b
nop
nop
mov edx, dword [ebp - 0x1c]
sub edx, dword [ebp - 0x14b8]
mov dword [ebp - 0x1c], edx
jmp 0x4c5e97
mov eax, dword [ebp - 0x1c]
and eax, dword [ebp - 0x14b8]
mov dword [ebp - 0x1c], eax
jmp 0x4c5e3d
mov ecx, 1
test ecx, ecx
je 0x4c5ed3
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov dword [ebp - 0x14bc], eax
mov eax, dword [ebp - 0x14bc]
xor edx, edx
mov ecx, 7
div ecx
test edx, edx
jne 0x4c5ec5
jmp 0x4c5ed3
mov edx, dword [ebp - 0x1c]
add edx, dword [ebp - 0x14bc]
mov dword [ebp - 0x1c], edx
jmp 0x4c5e99
mov eax, dword [ebp - 0x1c]
add eax, 2
mov dword [ebp - 0x1c], eax
mov ecx, 1
test ecx, ecx
je 0x4c5f16
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov dword [ebp - 0x14c0], eax
mov eax, dword [ebp - 0x14c0]
xor edx, edx
mov ecx, 7
div ecx
test edx, edx
jne 0x4c5f08
jmp 0x4c5f16
mov edx, dword [ebp - 0x1c]
add edx, dword [ebp - 0x14c0]
mov dword [ebp - 0x1c], edx
jmp 0x4c5edc
mov eax, dword [ebp - 0x1c]
add eax, 1
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x14c4], 0
jmp 0x4c5f3a
mov ecx, dword [ebp - 0x14c4]
add ecx, 1
mov dword [ebp - 0x14c4], ecx
cmp dword [ebp - 0x14c4], 4
jge 0x4c5f7b
cmp dword [ebp - 0x1c], 0
jge 0x4c5f51
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 0x4c5f67
mov dword [ebp - 0x1c], 0
push 0xfa
lea edx, [ebp - 0x16c0]
push edx
call dword [sym.imp.KERNEL32.dll_GetWindowsDirectoryW]
jmp 0x4c5f2b
mov dword [ebp - 0x16c4], 0
jmp 0x4c5f96
mov eax, dword [ebp - 0x16c4]
add eax, 1
mov dword [ebp - 0x16c4], eax
cmp dword [ebp - 0x16c4], 4
jge 0x4c5fe3
cmp dword [ebp - 0x1c], 0
jge 0x4c5fad
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 0x4c5fc3
mov dword [ebp - 0x1c], 0
mov dword [ebp - 0x16c8], 0xfa
lea edx, [ebp - 0x16c8]
push edx
lea eax, [ebp - 0x18c0]
push eax
call dword [sym.imp.ADVAPI32.dll_GetUserNameW]
jmp 0x4c5f87
mov dword [ebp - 0x18c4], 0
jmp 0x4c5ffe
mov ecx, dword [ebp - 0x18c4]
add ecx, 1
mov dword [ebp - 0x18c4], ecx
cmp dword [ebp - 0x18c4], 2
jge 0x4c6015
mov edx, dword [ebp - 0x1c]
sub edx, dword [ebp - 0x18c4]
mov dword [ebp - 0x1c], edx
jmp 0x4c5fef
cmp dword [ebp - 0x1c], 0xffff0001
jge 0x4c6027
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 0x4c603f
call dword [sym.imp.KERNEL32.dll_GetVersion]
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x18c8], 0
jmp 0x4c605a
mov edx, dword [ebp - 0x18c8]
add edx, 1
mov dword [ebp - 0x18c8], edx
cmp dword [ebp - 0x18c8], 2
jge 0x4c609b
cmp dword [ebp - 0x1c], 0
jge 0x4c6071
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 0x4c6087
mov dword [ebp - 0x1c], 0
push 0xfa
lea edx, [ebp - 0x1ac0]
push edx
call dword [sym.imp.KERNEL32.dll_GetWindowsDirectoryW]
jmp 0x4c604b
mov dword [ebp - 0x1ac4], 0
jmp 0x4c60b6
mov eax, dword [ebp - 0x1ac4]
add eax, 1
mov dword [ebp - 0x1ac4], eax
cmp dword [ebp - 0x1ac4], 0
jge 0x4c6103
cmp dword [ebp - 0x1c], 0
jge 0x4c60cd
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 0x4c60e3
mov dword [ebp - 0x1c], 0
mov dword [ebp - 0x1ac8], 0xfa
lea edx, [ebp - 0x1ac8]
push edx
lea eax, [ebp - 0x1cc0]
push eax
call dword [sym.imp.ADVAPI32.dll_GetUserNameW]
jmp 0x4c60a7
mov ecx, 1
test ecx, ecx
je 0x4c613d
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov dword [ebp - 0x1cc4], eax
mov eax, dword [ebp - 0x1cc4]
xor edx, edx
mov ecx, 7
div ecx
test edx, edx
jne 0x4c612f
jmp 0x4c613d
mov edx, dword [ebp - 0x1c]
add edx, dword [ebp - 0x1cc4]
mov dword [ebp - 0x1c], edx
jmp 0x4c6103
mov eax, dword [ebp - 0x1c]
mov dword [ebp - 0x1c], eax
mov ecx, 1
test ecx, ecx
je 0x4c617d
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov dword [ebp - 0x1cc8], eax
mov eax, dword [ebp - 0x1cc8]
xor edx, edx
mov ecx, 7
div ecx
test edx, edx
jne 0x4c616f
jmp 0x4c617d
mov edx, dword [ebp - 0x1c]
add edx, dword [ebp - 0x1cc8]
mov dword [ebp - 0x1c], edx
jmp 0x4c6143
mov eax, dword [ebp - 0x1c]
add eax, 3
mov dword [ebp - 0x1c], eax
mov ecx, 1
test ecx, ecx
je 0x4c61c0
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov dword [ebp - 0x1ccc], eax
mov eax, dword [ebp - 0x1ccc]
xor edx, edx
mov ecx, 7
div ecx
test edx, edx
jne 0x4c61b2
mov eax, dword [ebp - 0x1c]
add eax, 4
mov dword [ebp - 0x1c], eax
mov ecx, 1
test ecx, ecx
je 0x4c6203