Function at 0x46ad00
Capabilities:
Check os version
Get session user name

Disassembly:
push ebp
mov ebp, esp
push 0xfffffffffffffffe
push 0x47ee28
push 0x40e3c0
mov eax, dword fs:[0]
push eax
add esp, 0xfffff874
mov eax, dword [0x481398]
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 - 0x1c], 0
mov dword [ebp - 0x20], 0
jmp 0x46ad4f
mov eax, dword [ebp - 0x20]
add eax, 1
mov dword [ebp - 0x20], eax
cmp dword [ebp - 0x20], 0x26
jge 0x46ad80
mov ecx, dword [ebp - 0x1c]
xor ecx, dword [ebp - 0x20]
mov dword [ebp - 0x1c], ecx
jge 0x46ad68
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 0x46ad7e
mov dword [ebp - 0x1c], 0
jmp 0x46ad46
mov dword [ebp - 0x24], 0
jmp 0x46ad92
mov edx, dword [ebp - 0x24]
add edx, 1
mov dword [ebp - 0x24], edx
cmp dword [ebp - 0x24], 3
jge 0x46add6
cmp dword [ebp - 0x1c], 0
jge 0x46ada6
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 0x46adbc
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 0x46ad89
mov dword [ebp - 0x22c], 1
mov dword [ebp - 0x230], 1
mov dword [ebp - 0x234], 2
mov dword [ebp - 0x238], 0
mov dword [ebp - 0x23c], 0
jmp 0x46ae19
mov ecx, dword [ebp - 0x23c]
add ecx, 1
mov dword [ebp - 0x23c], ecx
cmp dword [ebp - 0x23c], 9
jge 0x46ae5a
mov edx, dword [ebp - 0x22c]
add edx, dword [ebp - 0x230]
mov dword [ebp - 0x234], edx
mov eax, dword [ebp - 0x230]
mov dword [ebp - 0x22c], eax
mov ecx, dword [ebp - 0x234]
mov dword [ebp - 0x230], ecx
mov edx, dword [ebp - 0x1c]
add edx, dword [ebp - 0x234]
mov dword [ebp - 0x1c], edx
jmp 0x46ae0a
mov eax, dword [ebp - 0x1c]
add eax, 9
mov dword [ebp - 0x1c], eax
mov ecx, 1
test ecx, ecx
je 0x46ae9d
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov dword [ebp - 0x240], eax
mov eax, dword [ebp - 0x240]
xor edx, edx
mov ecx, 7
div ecx
test edx, edx
jne 0x46ae8f
jmp 0x46ae9d
mov edx, dword [ebp - 0x1c]
add edx, dword [ebp - 0x240]
mov dword [ebp - 0x1c], edx
jmp 0x46ae63
mov eax, dword [ebp - 0x1c]
add eax, 0xe
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x244], 0
jmp 0x46aec1
mov ecx, dword [ebp - 0x244]
add ecx, 1
mov dword [ebp - 0x244], ecx
cmp dword [ebp - 0x244], 3
jge 0x46aed8
mov edx, dword [ebp - 0x1c]
sub edx, dword [ebp - 0x244]
mov dword [ebp - 0x1c], edx
jmp 0x46aeb2
cmp dword [ebp - 0x1c], 0xffff0001
jge 0x46aeea
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 0x46af02
call dword [sym.imp.KERNEL32.dll_GetVersion]
mov dword [ebp - 0x1c], eax
mov edx, 1
test edx, edx
je 0x46af3c
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov dword [ebp - 0x248], eax
mov eax, dword [ebp - 0x248]
xor edx, edx
mov ecx, 7
div ecx
test edx, edx
jne 0x46af2e
jmp 0x46af3c
mov edx, dword [ebp - 0x1c]
add edx, dword [ebp - 0x248]
mov dword [ebp - 0x1c], edx
jmp 0x46af02
mov eax, dword [ebp - 0x1c]
add eax, 1
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x24c], 0
jmp 0x46af60
mov ecx, dword [ebp - 0x24c]
add ecx, 1
mov dword [ebp - 0x24c], ecx
cmp dword [ebp - 0x24c], 3
jge 0x46af77
mov edx, dword [ebp - 0x1c]
sub edx, dword [ebp - 0x24c]
mov dword [ebp - 0x1c], edx
jmp 0x46af51
cmp dword [ebp - 0x1c], 0xffff0001
jge 0x46af89
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 0x46afa1
call dword [sym.imp.KERNEL32.dll_GetVersion]
mov dword [ebp - 0x1c], eax
mov dword [ebp - 4], 0
mov dword [ebp - 0x250], 0
jmp 0x46afc3
mov edx, dword [ebp - 0x250]
add edx, 1
mov dword [ebp - 0x250], edx
cmp dword [ebp - 0x250], 0xf
jge 0x46affe
mov eax, dword [ebp - 0x250]
cdq
mov ecx, 7
idiv ecx
cmp edx, 5
je 0x46aff2
mov eax, dword [ebp - 0x250]
cdq
mov ecx, 0xb
idiv ecx
cmp edx, 7
jne 0x46aff9
and eax, 0xbc614e
jmp 0x46affc
mov dword [ebp - 0x1c], eax
jmp 0x46afb4
mov dword [ebp - 4], 0xfffffffe
call fcn.0046b00c
jmp 0x46b014
mov dword [ebp - 4], 1
mov dword [ebp - 0x254], 0
jmp 0x46b036
mov edx, dword [ebp - 0x254]
add edx, 1
mov dword [ebp - 0x254], edx
cmp dword [ebp - 0x254], 8
jge 0x46b071
mov eax, dword [ebp - 0x254]
cdq
mov ecx, 7
idiv ecx
cmp edx, 5
je 0x46b065
mov eax, dword [ebp - 0x254]
cdq
mov ecx, 0xb
idiv ecx
cmp edx, 7
jne 0x46b06c
and eax, 0xbc614e
jmp 0x46b06f
mov dword [ebp - 0x1c], eax
jmp 0x46b027
mov dword [ebp - 4], 0xfffffffe
call fcn.0046b07f
jmp 0x46b087
mov dword [ebp - 0x258], 1
mov dword [ebp - 0x25c], 1
mov dword [ebp - 0x260], 2
mov dword [ebp - 0x264], 0
mov dword [ebp - 0x268], 0
jmp 0x46b0ca
mov edx, dword [ebp - 0x268]
add edx, 1
mov dword [ebp - 0x268], edx
cmp dword [ebp - 0x268], 4
jge 0x46b10b
mov eax, dword [ebp - 0x258]
add eax, dword [ebp - 0x25c]
mov dword [ebp - 0x260], eax
mov ecx, dword [ebp - 0x25c]
mov dword [ebp - 0x258], ecx
mov edx, dword [ebp - 0x260]
mov dword [ebp - 0x25c], edx
mov eax, dword [ebp - 0x1c]
add eax, dword [ebp - 0x260]
mov dword [ebp - 0x1c], eax
jmp 0x46b0bb
mov ecx, dword [ebp - 0x1c]
add ecx, 4
mov dword [ebp - 0x1c], ecx
mov dword [ebp - 0x26c], 0
jmp 0x46b12f
mov edx, dword [ebp - 0x26c]
add edx, 1
mov dword [ebp - 0x26c], edx
cmp dword [ebp - 0x26c], 0xe
jge 0x46b166
mov eax, dword [ebp - 0x1c]
xor eax, dword [ebp - 0x26c]
mov dword [ebp - 0x1c], eax
jge 0x46b14e
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 0x46b164
mov dword [ebp - 0x1c], 0
jmp 0x46b120
mov dword [ebp - 0x270], 1
mov dword [ebp - 0x274], 1
mov dword [ebp - 0x278], 2
mov dword [ebp - 0x27c], 0
mov dword [ebp - 0x280], 0
jmp 0x46b1a9
mov edx, dword [ebp - 0x280]
add edx, 1
mov dword [ebp - 0x280], edx
cmp dword [ebp - 0x280], 4
jge 0x46b1ea
mov eax, dword [ebp - 0x270]
add eax, dword [ebp - 0x274]
mov dword [ebp - 0x278], eax
mov ecx, dword [ebp - 0x274]
mov dword [ebp - 0x270], ecx
mov edx, dword [ebp - 0x278]
mov dword [ebp - 0x274], edx
mov eax, dword [ebp - 0x1c]
add eax, dword [ebp - 0x278]
mov dword [ebp - 0x1c], eax
jmp 0x46b19a
mov ecx, dword [ebp - 0x1c]
add ecx, 4
mov dword [ebp - 0x1c], ecx
mov dword [ebp - 4], 2
mov dword [ebp - 0x284], 0
jmp 0x46b215
mov edx, dword [ebp - 0x284]
add edx, 1
mov dword [ebp - 0x284], edx
cmp dword [ebp - 0x284], 0xb
jge 0x46b250
mov eax, dword [ebp - 0x284]
cdq
mov ecx, 7
idiv ecx
cmp edx, 5
je 0x46b244
mov eax, dword [ebp - 0x284]
cdq
mov ecx, 0xb
idiv ecx
cmp edx, 7
jne 0x46b24b
and eax, 0xbc614e
jmp 0x46b24e
mov dword [ebp - 0x1c], eax
jmp 0x46b206
mov dword [ebp - 4], 0xfffffffe
call fcn.0046b25e
jmp 0x46b266
mov edx, 1
test edx, edx
je 0x46b2a0
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov dword [ebp - 0x288], eax
mov eax, dword [ebp - 0x288]
xor edx, edx
mov ecx, 7
div ecx
test edx, edx
jne 0x46b292
jmp 0x46b2a0
mov edx, dword [ebp - 0x1c]
add edx, dword [ebp - 0x288]
mov dword [ebp - 0x1c], edx
jmp 0x46b266
mov eax, dword [ebp - 0x1c]
add eax, 3
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x28c], 0
jmp 0x46b2c4
mov ecx, dword [ebp - 0x28c]
add ecx, 1
mov dword [ebp - 0x28c], ecx
cmp dword [ebp - 0x28c], 3
jge 0x46b311
cmp dword [ebp - 0x1c], 0
jge 0x46b2db
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 0x46b2f1
mov dword [ebp - 0x1c], 0
mov dword [ebp - 0x290], 0xfa
lea edx, [ebp - 0x290]
push edx
lea eax, [ebp - 0x488]
push eax
call dword [sym.imp.ADVAPI32.dll_GetUserNameW]
jmp 0x46b2b5
mov ecx, 1
test ecx, ecx
je 0x46b34b
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov dword [ebp - 0x48c], eax
mov eax, dword [ebp - 0x48c]
xor edx, edx
mov ecx, 7
div ecx
test edx, edx
jne 0x46b33d
jmp 0x46b34b
mov edx, dword [ebp - 0x1c]
add edx, dword [ebp - 0x48c]
mov dword [ebp - 0x1c], edx
jmp 0x46b311
mov eax, dword [ebp - 0x1c]
add eax, 3
mov dword [ebp - 0x1c], eax
mov dword [ebp - 4], 3
mov dword [ebp - 0x490], 0
jmp 0x46b376
mov ecx, dword [ebp - 0x490]
add ecx, 1
mov dword [ebp - 0x490], ecx
cmp dword [ebp - 0x490], 4
jge 0x46b3b1
mov eax, dword [ebp - 0x490]
cdq
mov ecx, 7
idiv ecx
cmp edx, 5
je 0x46b3a5
mov eax, dword [ebp - 0x490]
cdq
mov ecx, 0xb
idiv ecx
cmp edx, 7
jne 0x46b3ac
and eax, 0xbc614e
jmp 0x46b3af
mov dword [ebp - 0x1c], eax
jmp 0x46b367
mov dword [ebp - 4], 0xfffffffe
call fcn.0046b3bf
jmp 0x46b3c7
mov dword [ebp - 0x494], 0
jmp 0x46b3e2
mov edx, dword [ebp - 0x494]
add edx, 1
mov dword [ebp - 0x494], edx
cmp dword [ebp - 0x494], 1
jge 0x46b3f9
mov eax, dword [ebp - 0x1c]
sub eax, dword [ebp - 0x494]
mov dword [ebp - 0x1c], eax
jmp 0x46b3d3
cmp dword [ebp - 0x1c], 0xffff0001
jge 0x46b40b
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 0x46b423
call dword [sym.imp.KERNEL32.dll_GetVersion]
mov dword [ebp - 0x1c], eax
mov edx, 1
test edx, edx
je 0x46b45d
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov dword [ebp - 0x498], eax
mov eax, dword [ebp - 0x498]
xor edx, edx
mov ecx, 7
div ecx
test edx, edx
jne 0x46b44f
jmp 0x46b45d
mov edx, dword [ebp - 0x1c]
add edx, dword [ebp - 0x498]
mov dword [ebp - 0x1c], edx
jmp 0x46b423
mov eax, dword [ebp - 0x1c]
add eax, 3
mov dword [ebp - 0x1c], eax
mov dword [ebp - 4], 4
mov dword [ebp - 0x49c], 0
jmp 0x46b488
mov ecx, dword [ebp - 0x49c]
add ecx, 1
mov dword [ebp - 0x49c], ecx
cmp dword [ebp - 0x49c], 3
jge 0x46b4c3
mov eax, dword [ebp - 0x49c]
cdq
mov ecx, 7
idiv ecx
cmp edx, 5
je 0x46b4b7
mov eax, dword [ebp - 0x49c]
cdq
mov ecx, 0xb
idiv ecx
cmp edx, 7
jne 0x46b4be
and eax, 0xbc614e
jmp 0x46b4c1
mov dword [ebp - 0x1c], eax
jmp 0x46b479
mov dword [ebp - 4], 0xfffffffe
call fcn.0046b4d1
jmp 0x46b4d9
mov dword [ebp - 0x4a0], 1
mov dword [ebp - 0x4a4], 1
mov dword [ebp - 0x4a8], 2
mov dword [ebp - 0x4ac], 0
mov dword [ebp - 0x4b0], 0
jmp 0x46b51c
mov edx, dword [ebp - 0x4b0]
add edx, 1
mov dword [ebp - 0x4b0], edx
cmp dword [ebp - 0x4b0], 1
jge 0x46b55d
mov eax, dword [ebp - 0x4a0]
add eax, dword [ebp - 0x4a4]
mov dword [ebp - 0x4a8], eax
mov ecx, dword [ebp - 0x4a4]
mov dword [ebp - 0x4a0], ecx
mov edx, dword [ebp - 0x4a8]
mov dword [ebp - 0x4a4], edx
mov eax, dword [ebp - 0x1c]
add eax, dword [ebp - 0x4a8]
mov dword [ebp - 0x1c], eax
jmp 0x46b50d
mov ecx, dword [ebp - 0x1c]
add ecx, 1
mov dword [ebp - 0x1c], ecx
mov dword [ebp - 0x4b4], 0
mov edx, 1
test edx, edx
je 0x46b5ba
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov dword [ebp - 0x4b8], eax
mov eax, dword [ebp - 0x4b8]
xor edx, edx
mov ecx, 3
div ecx
test edx, edx
jne 0x46b59c
jmp 0x46b5ba
mov edx, dword [ebp - 0x1c]
imul edx, dword [ebp - 0x4b4]
mov dword [ebp - 0x1c], edx
mov eax, dword [ebp - 0x4b4]
add eax, 1
mov dword [ebp - 0x4b4], eax
jmp 0x46b570
mov ecx, dword [ebp - 0x1c]
add ecx, 3
mov dword [ebp - 0x1c], ecx
mov dword [ebp - 0x4bc], 0
jmp 0x46b5de
mov edx, dword [ebp - 0x4bc]
add edx, 1
mov dword [ebp - 0x4bc], edx
cmp dword [ebp - 0x4bc], 0
jge 0x46b615
mov eax, dword [ebp - 0x1c]
xor eax, dword [ebp - 0x4bc]
mov dword [ebp - 0x1c], eax
jge 0x46b5fd
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 0x46b613
mov dword [ebp - 0x1c], 0
jmp 0x46b5cf
mov dword [ebp - 0x4c0], 0
mov edx, 1
test edx, edx
je 0x46b669
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov dword [ebp - 0x4c4], eax
mov eax, dword [ebp - 0x4c4]
xor edx, edx
mov ecx, 3
div ecx
test edx, edx
jne 0x46b64b
jmp 0x46b669
mov edx, dword [ebp - 0x1c]
imul edx, dword [ebp - 0x4c0]
mov dword [ebp - 0x1c], edx
mov eax, dword [ebp - 0x4c0]
add eax, 1
mov dword [ebp - 0x4c0], eax
jmp 0x46b61f
mov ecx, dword [ebp - 0x1c]
add ecx, 2
mov dword [ebp - 0x1c], ecx
mov dword [ebp - 0x4c8], 0
jmp 0x46b68d
mov edx, dword [ebp - 0x4c8]
add edx, 1
mov dword [ebp - 0x4c8], edx
cmp dword [ebp - 0x4c8], 1
jge 0x46b6c4
mov eax, dword [ebp - 0x1c]
xor eax, dword [ebp - 0x4c8]
mov dword [ebp - 0x1c], eax
jge 0x46b6ac
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 0x46b6c2
mov dword [ebp - 0x1c], 0
jmp 0x46b67e
mov dword [ebp - 0x4cc], 0
jmp 0x46b6df
mov edx, dword [ebp - 0x4cc]
add edx, 1
mov dword [ebp - 0x4cc], edx
cmp dword [ebp - 0x4cc], 0
jge 0x46b6f6
mov eax, dword [ebp - 0x1c]
sub eax, dword [ebp - 0x4cc]
mov dword [ebp - 0x1c], eax
jmp 0x46b6d0
cmp dword [ebp - 0x1c], 0xffff0001
jge 0x46b708
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 0x46b720
call dword [sym.imp.KERNEL32.dll_GetVersion]
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x4d0], 0
jmp 0x46b73b
mov edx, dword [ebp - 0x4d0]
add edx, 1
mov dword [ebp - 0x4d0], edx
cmp dword [ebp - 0x4d0], 1
jge 0x46b752
mov eax, dword [ebp - 0x1c]
sub eax, dword [ebp - 0x4d0]
mov dword [ebp - 0x1c], eax
jmp 0x46b72c
cmp dword [ebp - 0x1c], 0xffff0001
jge 0x46b764
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 0x46b77c
call dword [sym.imp.KERNEL32.dll_GetVersion]
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x4d4], 0
jmp 0x46b797
mov edx, dword [ebp - 0x4d4]
add edx, 1
mov dword [ebp - 0x4d4], edx
cmp dword [ebp - 0x4d4], 3
jge 0x46b7ae
mov eax, dword [ebp - 0x1c]
sub eax, dword [ebp - 0x4d4]
mov dword [ebp - 0x1c], eax
jmp 0x46b788
cmp dword [ebp - 0x1c], 0xffff0001
jge 0x46b7c0
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 0x46b7d8
call dword [sym.imp.KERNEL32.dll_GetVersion]
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x4d8], 0
jmp 0x46b7f3
mov edx, dword [ebp - 0x4d8]
add edx, 1
mov dword [ebp - 0x4d8], edx
cmp dword [ebp - 0x4d8], 3
jge 0x46b82a
mov eax, dword [ebp - 0x1c]
xor eax, dword [ebp - 0x4d8]
mov dword [ebp - 0x1c], eax
jge 0x46b812
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 0x46b828
mov dword [ebp - 0x1c], 0
jmp 0x46b7e4
mov dword [ebp - 0x4dc], 0
jmp 0x46b845
mov edx, dword [ebp - 0x4dc]
add edx, 1
mov dword [ebp - 0x4dc], edx
cmp dword [ebp - 0x4dc], 4
jge 0x46b87c
mov eax, dword [ebp - 0x1c]
xor eax, dword [ebp - 0x4dc]
mov dword [ebp - 0x1c], eax
jge 0x46b864
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 0x46b87a
mov dword [ebp - 0x1c], 0
jmp 0x46b836
mov dword [ebp - 4], 5
mov dword [ebp - 0x4e0], 0
jmp 0x46b89e
mov edx, dword [ebp - 0x4e0]
add edx, 1
mov dword [ebp - 0x4e0], edx
cmp dword [ebp - 0x4e0], 2
jge 0x46b8d9
mov eax, dword [ebp - 0x4e0]
cdq
mov ecx, 7
idiv ecx
cmp edx, 5
je 0x46b8cd
mov eax, dword [ebp - 0x4e0]
cdq
mov ecx, 0xb
idiv ecx
cmp edx, 7
jne 0x46b8d4
and eax, 0xbc614e
jmp 0x46b8d7
mov dword [ebp - 0x1c], eax
jmp 0x46b88f
mov dword [ebp - 4], 0xfffffffe
call fcn.0046b8e7
jmp 0x46b8ef
mov dword [ebp - 0x4e4], 0
jmp 0x46b90a
mov edx, dword [ebp - 0x4e4]
add edx, 1
mov dword [ebp - 0x4e4], edx
cmp dword [ebp - 0x4e4], 4
jge 0x46b941
mov eax, dword [ebp - 0x1c]
xor eax, dword [ebp - 0x4e4]
mov dword [ebp - 0x1c], eax
jge 0x46b929
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 0x46b93f
mov dword [ebp - 0x1c], 0
jmp 0x46b8fb
mov dword [ebp - 0x4e8], 0
jmp 0x46b95c
mov edx, dword [ebp - 0x4e8]
add edx, 1
mov dword [ebp - 0x4e8], edx
cmp dword [ebp - 0x4e8], 2
jge 0x46b973
mov eax, dword [ebp - 0x1c]
sub eax, dword [ebp - 0x4e8]
mov dword [ebp - 0x1c], eax
jmp 0x46b94d
cmp dword [ebp - 0x1c], 0xffff0001
jge 0x46b985
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 0x46b99d
call dword [sym.imp.KERNEL32.dll_GetVersion]
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x4ec], 0
mov edx, 1
test edx, edx
je 0x46b9f1
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov dword [ebp - 0x4f0], eax
mov eax, dword [ebp - 0x4f0]
xor edx, edx
mov ecx, 3
div ecx
test edx, edx
jne 0x46b9d3
jmp 0x46b9f1
mov edx, dword [ebp - 0x1c]
imul edx, dword [ebp - 0x4ec]
mov dword [ebp - 0x1c], edx
mov eax, dword [ebp - 0x4ec]
add eax, 1
mov dword [ebp - 0x4ec], eax
jmp 0x46b9a7
mov ecx, dword [ebp - 0x1c]
add ecx, 4
mov dword [ebp - 0x1c], ecx
mov dword [ebp - 0x4f4], 0
jmp 0x46ba15
mov edx, dword [ebp - 0x4f4]
add edx, 1
mov dword [ebp - 0x4f4], edx
cmp dword [ebp - 0x4f4], 4
jge 0x46ba2c
mov eax, dword [ebp - 0x1c]
sub eax, dword [ebp - 0x4f4]
mov dword [ebp - 0x1c], eax
jmp 0x46ba06
cmp dword [ebp - 0x1c], 0xffff0001
jge 0x46ba3e
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 0x46ba56
call dword [sym.imp.KERNEL32.dll_GetVersion]
mov dword [ebp - 0x1c], eax
mov dword [ebp - 4], 6
mov dword [ebp - 0x4f8], 0
jmp 0x46ba78
mov edx, dword [ebp - 0x4f8]
add edx, 1
mov dword [ebp - 0x4f8], edx
cmp dword [ebp - 0x4f8], 2
jge 0x46bab3
mov eax, dword [ebp - 0x4f8]
cdq
mov ecx, 7
idiv ecx
cmp edx, 5
je 0x46baa7
mov eax, dword [ebp - 0x4f8]
cdq
mov ecx, 0xb
idiv ecx
cmp edx, 7
jne 0x46baae
and eax, 0xbc614e
jmp 0x46bab1
mov dword [ebp - 0x1c], eax
jmp 0x46ba69
mov dword [ebp - 4], 0xfffffffe
call fcn.0046bac1
jmp 0x46bac9
mov dword [ebp - 0x4fc], 0
mov edx, 1
test edx, edx
je 0x46bb1d
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov dword [ebp - 0x500], eax
mov eax, dword [ebp - 0x500]
xor edx, edx
mov ecx, 3
div ecx
test edx, edx
jne 0x46baff
jmp 0x46bb1d
mov edx, dword [ebp - 0x1c]
imul edx, dword [ebp - 0x4fc]
mov dword [ebp - 0x1c], edx
mov eax, dword [ebp - 0x4fc]
add eax, 1
mov dword [ebp - 0x4fc], eax
jmp 0x46bad3
mov ecx, dword [ebp - 0x1c]
mov dword [ebp - 0x1c], ecx
mov edx, 1
test edx, edx
je 0x46bb5d
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov dword [ebp - 0x504], eax
mov eax, dword [ebp - 0x504]
xor edx, edx
mov ecx, 7
div ecx
test edx, edx
jne 0x46bb4f
jmp 0x46bb5d
mov edx, dword [ebp - 0x1c]
add edx, dword [ebp - 0x504]
mov dword [ebp - 0x1c], edx
jmp 0x46bb23
mov eax, dword [ebp - 0x1c]
add eax, 2
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x508], 1
mov dword [ebp - 0x50c], 1
mov dword [ebp - 0x510], 2
mov dword [ebp - 0x514], 0
mov dword [ebp - 0x518], 0
jmp 0x46bba9
mov ecx, dword [ebp - 0x518]
add ecx, 1
mov dword [ebp - 0x518], ecx
cmp dword [ebp - 0x518], 3
jge 0x46bbea
mov edx, dword [ebp - 0x508]
add edx, dword [ebp - 0x50c]
mov dword [ebp - 0x510], edx
mov eax, dword [ebp - 0x50c]
mov dword [ebp - 0x508], eax
mov ecx, dword [ebp - 0x510]
mov dword [ebp - 0x50c], ecx
mov edx, dword [ebp - 0x1c]
add edx, dword [ebp - 0x510]
mov dword [ebp - 0x1c], edx
jmp 0x46bb9a
mov eax, dword [ebp - 0x1c]
add eax, 3
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x51c], 0
mov ecx, 1
test ecx, ecx
je 0x46bc47
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov dword [ebp - 0x520], eax
mov eax, dword [ebp - 0x520]
xor edx, edx
mov ecx, 3
div ecx
test edx, edx
jne 0x46bc29
jmp 0x46bc47
mov edx, dword [ebp - 0x1c]
imul edx, dword [ebp - 0x51c]
mov dword [ebp - 0x1c], edx
mov eax, dword [ebp - 0x51c]
add eax, 1
mov dword [ebp - 0x51c], eax
jmp 0x46bbfd
mov ecx, dword [ebp - 0x1c]
mov dword [ebp - 0x1c], ecx
mov dword [ebp - 0x524], 0
jmp 0x46bc68
mov edx, dword [ebp - 0x524]
add edx, 1
mov dword [ebp - 0x524], edx
cmp dword [ebp - 0x524], 3
jge 0x46bc7f
mov eax, dword [ebp - 0x1c]
sub eax, dword [ebp - 0x524]
mov dword [ebp - 0x1c], eax
jmp 0x46bc59
cmp dword [ebp - 0x1c], 0xffff0001
jge 0x46bc91
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 0x46bca9
call dword [sym.imp.KERNEL32.dll_GetVersion]
mov dword [ebp - 0x1c], eax
mov dword [ebp - 4], 7
mov dword [ebp - 0x528], 0
jmp 0x46bccb
mov edx, dword [ebp - 0x528]
add edx, 1
mov dword [ebp - 0x528], edx
cmp dword [ebp - 0x528], 0
jge 0x46bd06
mov eax, dword [ebp - 0x528]
cdq
mov ecx, 7
idiv ecx
cmp edx, 5
je 0x46bcfa
mov eax, dword [ebp - 0x528]
cdq
mov ecx, 0xb
idiv ecx
cmp edx, 7
jne 0x46bd01
and eax, 0xbc614e
jmp 0x46bd04
mov dword [ebp - 0x1c], eax
jmp 0x46bcbc
mov dword [ebp - 4], 0xfffffffe
call fcn.0046bd14
jmp 0x46bd1c
mov dword [ebp - 0x52c], 1
mov dword [ebp - 0x530], 1
mov dword [ebp - 0x534], 2
mov dword [ebp - 0x538], 0
mov dword [ebp - 0x53c], 0
jmp 0x46bd5f
mov edx, dword [ebp - 0x53c]
add edx, 1
mov dword [ebp - 0x53c], edx
cmp dword [ebp - 0x53c], 2
jge 0x46bda0
mov eax, dword [ebp - 0x52c]
add eax, dword [ebp - 0x530]
mov dword [ebp - 0x534], eax
mov ecx, dword [ebp - 0x530]
mov dword [ebp - 0x52c], ecx
mov edx, dword [ebp - 0x534]
mov dword [ebp - 0x530], edx
mov eax, dword [ebp - 0x1c]
add eax, dword [ebp - 0x534]
mov dword [ebp - 0x1c], eax
jmp 0x46bd50
mov ecx, dword [ebp - 0x1c]
add ecx, 2
mov dword [ebp - 0x1c], ecx
mov dword [ebp - 0x540], 1
mov dword [ebp - 0x544], 1
mov dword [ebp - 0x548], 2
mov dword [ebp - 0x54c], 0
mov dword [ebp - 0x550], 0
jmp 0x46bdec
mov edx, dword [ebp - 0x550]
add edx, 1
mov dword [ebp - 0x550], edx
cmp dword [ebp - 0x550], 3
jge 0x46be2d
mov eax, dword [ebp - 0x540]
add eax, dword [ebp - 0x544]
mov dword [ebp - 0x548], eax
mov ecx, dword [ebp - 0x544]
mov dword [ebp - 0x540], ecx
mov edx, dword [ebp - 0x548]
mov dword [ebp - 0x544], edx
mov eax, dword [ebp - 0x1c]
add eax, dword [ebp - 0x548]
mov dword [ebp - 0x1c], eax
jmp 0x46bddd
mov ecx, dword [ebp - 0x1c]
add ecx, 3
mov dword [ebp - 0x1c], ecx
mov dword [ebp - 0x554], 1
mov dword [ebp - 0x558], 1
mov dword [ebp - 0x55c], 2
mov dword [ebp - 0x560], 0
mov dword [ebp - 0x564], 0
jmp 0x46be79
mov edx, dword [ebp - 0x564]
add edx, 1
mov dword [ebp - 0x564], edx
cmp dword [ebp - 0x564], 2
jge 0x46beba
mov eax, dword [ebp - 0x554]
add eax, dword [ebp - 0x558]
mov dword [ebp - 0x55c], eax
mov ecx, dword [ebp - 0x558]
mov dword [ebp - 0x554], ecx
mov edx, dword [ebp - 0x55c]
mov dword [ebp - 0x558], edx
mov eax, dword [ebp - 0x1c]
add eax, dword [ebp - 0x55c]
mov dword [ebp - 0x1c], eax
jmp 0x46be6a
mov ecx, dword [ebp - 0x1c]
add ecx, 2
mov dword [ebp - 0x1c], ecx
mov dword [ebp - 0x568], 0
jmp 0x46bede
mov edx, dword [ebp - 0x568]
add edx, 1
mov dword [ebp - 0x568], edx
cmp dword [ebp - 0x568], 1
jge 0x46bf2b
cmp dword [ebp - 0x1c], 0
jge 0x46bef5
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 0x46bf0b
mov dword [ebp - 0x1c], 0
mov dword [ebp - 0x56c], 0xfa
lea edx, [ebp - 0x56c]
push edx
lea eax, [ebp - 0x768]
push eax
call dword [sym.imp.ADVAPI32.dll_GetUserNameW]
jmp 0x46becf
mov dword [ebp - 0x76c], 1
mov dword [ebp - 0x770], 1
mov dword [ebp - 0x774], 2
mov dword [ebp - 0x778], 0
mov dword [ebp - 0x77c], 0
jmp 0x46bf6e
mov ecx, dword [ebp - 0x77c]
add ecx, 1
mov dword [ebp - 0x77c], ecx
cmp dword [ebp - 0x77c], 4
jge 0x46bfaf
mov edx, dword [ebp - 0x76c]
add edx, dword [ebp - 0x770]
mov dword [ebp - 0x774], edx
mov eax, dword [ebp - 0x770]
mov dword [ebp - 0x76c], eax
mov ecx, dword [ebp - 0x774]
mov dword [ebp - 0x770], ecx
mov edx, dword [ebp - 0x1c]
add edx, dword [ebp - 0x774]
mov dword [ebp - 0x1c], edx
jmp 0x46bf5f
mov eax, dword [ebp - 0x1c]
add eax, 4
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x780], 0
jmp 0x46bfd3
mov ecx, dword [ebp - 0x780]
add ecx, 1
mov dword [ebp - 0x780], ecx
cmp dword [ebp - 0x780], 1
jge 0x46c00a
mov edx, dword [ebp - 0x1c]
xor edx, dword [ebp - 0x780]
mov dword [ebp - 0x1c], edx
jge 0x46bff2
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 0x46c008
mov dword [ebp - 0x1c], 0
jmp 0x46bfc4
mov dword [ebp - 0x784], 0
jmp 0x46c025
mov edx, dword [ebp - 0x784]
add edx, 1
mov dword [ebp - 0x784], edx
cmp dword [ebp - 0x784], 1
jge 0x46c03c
mov eax, dword [ebp - 0x1c]
sub eax, dword [ebp - 0x784]
mov dword [ebp - 0x1c], eax
jmp 0x46c016
cmp dword [ebp - 0x1c], 0xffff0001
jge 0x46c04e
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 0x46c066
call dword [sym.imp.KERNEL32.dll_GetVersion]
mov dword [ebp - 0x1c], eax
mov edx, 1
test edx, edx
je 0x46c0a0
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov dword [ebp - 0x788], eax
mov eax, dword [ebp - 0x788]
xor edx, edx
mov ecx, 7
div ecx
test edx, edx
jne 0x46c092
jmp 0x46c0a0
mov edx, dword [ebp - 0x1c]
add edx, dword [ebp - 0x788]
mov dword [ebp - 0x1c], edx
jmp 0x46c066
mov eax, dword [ebp - 0x1c]
add eax, 1
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x78c], 0
jmp 0x46c0c4
mov ecx, dword [ebp - 0x78c]
add ecx, 1
mov dword [ebp - 0x78c], ecx
cmp dword [ebp - 0x78c], 4
jge 0x46c0fb
mov edx, dword [ebp - 0x1c]
xor edx, dword [ebp - 0x78c]
mov dword [ebp - 0x1c], edx
jge 0x46c0e3
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 0x46c0f9
mov dword [ebp - 0x1c], 0
jmp 0x46c0b5
mov dword [ebp - 0x790], 0
mov edx, 1
test edx, edx
je 0x46c14f
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov dword [ebp - 0x794], eax
mov eax, dword [ebp - 0x794]
xor edx, edx
mov ecx, 3
div ecx
test edx, edx
jne 0x46c131
jmp 0x46c14f
mov edx, dword [ebp - 0x1c]
imul edx, dword [ebp - 0x790]
mov dword [ebp - 0x1c], edx
mov eax, dword [ebp - 0x790]
add eax, 1
mov dword [ebp - 0x790], eax
jmp 0x46c105
mov ecx, dword [ebp - 0x1c]
add ecx, 4
mov dword [ebp - 0x1c], ecx
mov edx, 1
test edx, edx
je 0x46c192
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov dword [ebp - 0x798], eax
mov eax, dword [ebp - 0x798]
xor edx, edx
mov ecx, 7
div ecx
test edx, edx
jne 0x46c184
jmp 0x46c192
mov edx, dword [ebp - 0x1c]
add edx, dword [ebp - 0x798]
mov dword [ebp - 0x1c], edx
jmp 0x46c158
mov eax, dword [ebp - 0x1c]
add eax, 4
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x79c], 0
jmp 0x46c1b6
mov ecx, dword [ebp - 0x79c]
add ecx, 1
mov dword [ebp - 0x79c], ecx
cmp dword [ebp - 0x79c], 1
jge 0x46c1ed
mov edx, dword [ebp - 0x1c]
xor edx, dword [ebp - 0x79c]
mov dword [ebp - 0x1c], edx
jge 0x46c1d5
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 0x46c1eb
mov dword [ebp - 0x1c], 0
jmp 0x46c1a7
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 - 0x2c]
xor ecx, ebp
call fcn.00408b45
mov esp, ebp
pop ebp
ret