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

Disassembly:
push ebp
mov ebp, esp
push 0xfffffffffffffffe
push 0x47ee98
push 0x40e3c0
mov eax, dword fs:[0]
push eax
sub esp, 8
mov eax, 0x20f8
call fcn.00418010
mov eax, dword [0x481398]
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 - 0x1c], 0
mov dword [ebp - 0x20], 0
jmp 0x46c266
mov eax, dword [ebp - 0x20]
add eax, 1
mov dword [ebp - 0x20], eax
cmp dword [ebp - 0x20], 0xd
jge 0x46c2aa
cmp dword [ebp - 0x1c], 0
jge 0x46c27a
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 0x46c290
mov dword [ebp - 0x1c], 0
mov dword [ebp - 0x24], 0xfa
lea edx, [ebp - 0x24]
push edx
lea eax, [ebp - 0x220]
push eax
call dword [sym.imp.ADVAPI32.dll_GetUserNameW]
jmp 0x46c25d
mov ecx, 1
test ecx, ecx
je 0x46c2e4
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov dword [ebp - 0x224], eax
mov eax, dword [ebp - 0x224]
xor edx, edx
mov ecx, 7
div ecx
test edx, edx
jne 0x46c2d6
jmp 0x46c2e4
mov edx, dword [ebp - 0x1c]
add edx, dword [ebp - 0x224]
mov dword [ebp - 0x1c], edx
jmp 0x46c2aa
mov eax, dword [ebp - 0x1c]
add eax, 0x14
mov dword [ebp - 0x1c], eax
mov dword [ebp - 4], 0
mov dword [ebp - 0x228], 0
jmp 0x46c30f
mov ecx, dword [ebp - 0x228]
add ecx, 1
mov dword [ebp - 0x228], ecx
cmp dword [ebp - 0x228], 0xc
jge 0x46c34a
mov eax, dword [ebp - 0x228]
cdq
mov ecx, 7
idiv ecx
cmp edx, 5
je 0x46c33e
mov eax, dword [ebp - 0x228]
cdq
mov ecx, 0xb
idiv ecx
cmp edx, 7
jne 0x46c345
and eax, 0xbc614e
jmp 0x46c348
mov dword [ebp - 0x1c], eax
jmp 0x46c300
mov dword [ebp - 4], 0xfffffffe
call fcn.0046c358
jmp 0x46c360
mov edx, 1
test edx, edx
je 0x46c39a
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 0x46c38c
jmp 0x46c39a
mov edx, dword [ebp - 0x1c]
add edx, dword [ebp - 0x22c]
mov dword [ebp - 0x1c], edx
jmp 0x46c360
mov eax, dword [ebp - 0x1c]
add eax, 0x10
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x230], 0
jmp 0x46c3be
mov ecx, dword [ebp - 0x230]
add ecx, 1
mov dword [ebp - 0x230], ecx
cmp dword [ebp - 0x230], 0x1b
jge 0x46c3f5
mov edx, dword [ebp - 0x1c]
xor edx, dword [ebp - 0x230]
mov dword [ebp - 0x1c], edx
jge 0x46c3dd
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 0x46c3f3
mov dword [ebp - 0x1c], 0
jmp 0x46c3af
mov dword [ebp - 0x234], 0
mov edx, 1
test edx, edx
je 0x46c449
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov dword [ebp - 0x238], eax
mov eax, dword [ebp - 0x238]
xor edx, edx
mov ecx, 3
div ecx
test edx, edx
jne 0x46c42b
jmp 0x46c449
mov edx, dword [ebp - 0x1c]
imul edx, dword [ebp - 0x234]
mov dword [ebp - 0x1c], edx
mov eax, dword [ebp - 0x234]
add eax, 1
mov dword [ebp - 0x234], eax
jmp 0x46c3ff
mov ecx, dword [ebp - 0x1c]
add ecx, 0xf
mov dword [ebp - 0x1c], ecx
mov dword [ebp - 0x23c], 0
mov edx, 1
test edx, edx
je 0x46c4a6
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov dword [ebp - 0x240], eax
mov eax, dword [ebp - 0x240]
xor edx, edx
mov ecx, 3
div ecx
test edx, edx
jne 0x46c488
jmp 0x46c4a6
mov edx, dword [ebp - 0x1c]
imul edx, dword [ebp - 0x23c]
mov dword [ebp - 0x1c], edx
mov eax, dword [ebp - 0x23c]
add eax, 1
mov dword [ebp - 0x23c], eax
jmp 0x46c45c
mov ecx, dword [ebp - 0x1c]
add ecx, 3
mov dword [ebp - 0x1c], ecx
mov dword [ebp - 0x244], 0
mov edx, 1
test edx, edx
je 0x46c503
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov dword [ebp - 0x248], eax
mov eax, dword [ebp - 0x248]
xor edx, edx
mov ecx, 3
div ecx
test edx, edx
jne 0x46c4e5
jmp 0x46c503
mov edx, dword [ebp - 0x1c]
imul edx, dword [ebp - 0x244]
mov dword [ebp - 0x1c], edx
mov eax, dword [ebp - 0x244]
add eax, 1
mov dword [ebp - 0x244], eax
jmp 0x46c4b9
mov ecx, dword [ebp - 0x1c]
mov dword [ebp - 0x1c], ecx
mov dword [ebp - 0x24c], 1
mov dword [ebp - 0x250], 1
mov dword [ebp - 0x254], 2
mov dword [ebp - 0x258], 0
mov dword [ebp - 0x25c], 0
jmp 0x46c54c
mov edx, dword [ebp - 0x25c]
add edx, 1
mov dword [ebp - 0x25c], edx
cmp dword [ebp - 0x25c], 6
jge 0x46c58d
mov eax, dword [ebp - 0x24c]
add eax, dword [ebp - 0x250]
mov dword [ebp - 0x254], eax
mov ecx, dword [ebp - 0x250]
mov dword [ebp - 0x24c], ecx
mov edx, dword [ebp - 0x254]
mov dword [ebp - 0x250], edx
mov eax, dword [ebp - 0x1c]
add eax, dword [ebp - 0x254]
mov dword [ebp - 0x1c], eax
jmp 0x46c53d
mov ecx, dword [ebp - 0x1c]
add ecx, 6
mov dword [ebp - 0x1c], ecx
mov dword [ebp - 0x260], 0
jmp 0x46c5b1
mov edx, dword [ebp - 0x260]
add edx, 1
mov dword [ebp - 0x260], edx
cmp dword [ebp - 0x260], 0
jge 0x46c5c8
mov eax, dword [ebp - 0x1c]
sub eax, dword [ebp - 0x260]
mov dword [ebp - 0x1c], eax
jmp 0x46c5a2
cmp dword [ebp - 0x1c], 0xffff0001
jge 0x46c5da
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 0x46c5f2
call dword [sym.imp.KERNEL32.dll_GetVersion]
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x264], 0
jmp 0x46c60d
mov edx, dword [ebp - 0x264]
add edx, 1
mov dword [ebp - 0x264], edx
cmp dword [ebp - 0x264], 0
jge 0x46c65a
cmp dword [ebp - 0x1c], 0
jge 0x46c624
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 0x46c63a
mov dword [ebp - 0x1c], 0
mov dword [ebp - 0x268], 0xfa
lea edx, [ebp - 0x268]
push edx
lea eax, [ebp - 0x460]
push eax
call dword [sym.imp.ADVAPI32.dll_GetUserNameW]
jmp 0x46c5fe
mov dword [ebp - 0x464], 1
mov dword [ebp - 0x468], 1
mov dword [ebp - 0x46c], 2
mov dword [ebp - 0x470], 0
mov dword [ebp - 0x474], 0
jmp 0x46c69d
mov ecx, dword [ebp - 0x474]
add ecx, 1
mov dword [ebp - 0x474], ecx
cmp dword [ebp - 0x474], 6
jge 0x46c6de
mov edx, dword [ebp - 0x464]
add edx, dword [ebp - 0x468]
mov dword [ebp - 0x46c], edx
mov eax, dword [ebp - 0x468]
mov dword [ebp - 0x464], eax
mov ecx, dword [ebp - 0x46c]
mov dword [ebp - 0x468], ecx
mov edx, dword [ebp - 0x1c]
add edx, dword [ebp - 0x46c]
mov dword [ebp - 0x1c], edx
jmp 0x46c68e
mov eax, dword [ebp - 0x1c]
add eax, 6
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x478], 1
mov dword [ebp - 0x47c], 1
mov dword [ebp - 0x480], 2
mov dword [ebp - 0x484], 0
mov dword [ebp - 0x488], 0
jmp 0x46c72a
mov ecx, dword [ebp - 0x488]
add ecx, 1
mov dword [ebp - 0x488], ecx
cmp dword [ebp - 0x488], 5
jge 0x46c76b
mov edx, dword [ebp - 0x478]
add edx, dword [ebp - 0x47c]
mov dword [ebp - 0x480], edx
mov eax, dword [ebp - 0x47c]
mov dword [ebp - 0x478], eax
mov ecx, dword [ebp - 0x480]
mov dword [ebp - 0x47c], ecx
mov edx, dword [ebp - 0x1c]
add edx, dword [ebp - 0x480]
mov dword [ebp - 0x1c], edx
jmp 0x46c71b
mov eax, dword [ebp - 0x1c]
add eax, 5
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x48c], 0
mov ecx, 1
test ecx, ecx
je 0x46c7c8
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov dword [ebp - 0x490], eax
mov eax, dword [ebp - 0x490]
xor edx, edx
mov ecx, 3
div ecx
test edx, edx
jne 0x46c7aa
jmp 0x46c7c8
mov edx, dword [ebp - 0x1c]
imul edx, dword [ebp - 0x48c]
mov dword [ebp - 0x1c], edx
mov eax, dword [ebp - 0x48c]
add eax, 1
mov dword [ebp - 0x48c], eax
jmp 0x46c77e
mov ecx, dword [ebp - 0x1c]
add ecx, 4
mov dword [ebp - 0x1c], ecx
mov dword [ebp - 0x494], 0
jmp 0x46c7ec
mov edx, dword [ebp - 0x494]
add edx, 1
mov dword [ebp - 0x494], edx
cmp dword [ebp - 0x494], 4
jge 0x46c823
mov eax, dword [ebp - 0x1c]
xor eax, dword [ebp - 0x494]
mov dword [ebp - 0x1c], eax
jge 0x46c80b
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 0x46c821
mov dword [ebp - 0x1c], 0
jmp 0x46c7dd
mov dword [ebp - 0x498], 1
mov dword [ebp - 0x49c], 1
mov dword [ebp - 0x4a0], 2
mov dword [ebp - 0x4a4], 0
mov dword [ebp - 0x4a8], 0
jmp 0x46c866
mov edx, dword [ebp - 0x4a8]
add edx, 1
mov dword [ebp - 0x4a8], edx
cmp dword [ebp - 0x4a8], 4
jge 0x46c8a7
mov eax, dword [ebp - 0x498]
add eax, dword [ebp - 0x49c]
mov dword [ebp - 0x4a0], eax
mov ecx, dword [ebp - 0x49c]
mov dword [ebp - 0x498], ecx
mov edx, dword [ebp - 0x4a0]
mov dword [ebp - 0x49c], edx
mov eax, dword [ebp - 0x1c]
add eax, dword [ebp - 0x4a0]
mov dword [ebp - 0x1c], eax
jmp 0x46c857
mov ecx, dword [ebp - 0x1c]
add ecx, 4
mov dword [ebp - 0x1c], ecx
mov dword [ebp - 4], 1
mov dword [ebp - 0x4ac], 0
jmp 0x46c8d2
mov edx, dword [ebp - 0x4ac]
add edx, 1
mov dword [ebp - 0x4ac], edx
cmp dword [ebp - 0x4ac], 7
jge 0x46c90d
mov eax, dword [ebp - 0x4ac]
cdq
mov ecx, 7
idiv ecx
cmp edx, 5
je 0x46c901
mov eax, dword [ebp - 0x4ac]
cdq
mov ecx, 0xb
idiv ecx
cmp edx, 7
jne 0x46c908
and eax, 0xbc614e
jmp 0x46c90b
mov dword [ebp - 0x1c], eax
jmp 0x46c8c3
mov dword [ebp - 4], 0xfffffffe
call fcn.0046c91b
jmp 0x46c923
mov dword [ebp - 4], 2
mov dword [ebp - 0x4b0], 0
jmp 0x46c945
mov edx, dword [ebp - 0x4b0]
add edx, 1
mov dword [ebp - 0x4b0], edx
cmp dword [ebp - 0x4b0], 3
jge 0x46c980
mov eax, dword [ebp - 0x4b0]
cdq
mov ecx, 7
idiv ecx
cmp edx, 5
je 0x46c974
mov eax, dword [ebp - 0x4b0]
cdq
mov ecx, 0xb
idiv ecx
cmp edx, 7
jne 0x46c97b
and eax, 0xbc614e
jmp 0x46c97e
mov dword [ebp - 0x1c], eax
jmp 0x46c936
mov dword [ebp - 4], 0xfffffffe
call fcn.0046c98e
jmp 0x46c996
mov dword [ebp - 0x4b4], 0
jmp 0x46c9b1
mov edx, dword [ebp - 0x4b4]
add edx, 1
mov dword [ebp - 0x4b4], edx
cmp dword [ebp - 0x4b4], 8
jge 0x46c9fe
cmp dword [ebp - 0x1c], 0
jge 0x46c9c8
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 0x46c9de
mov dword [ebp - 0x1c], 0
mov dword [ebp - 0x4b8], 0xfa
lea edx, [ebp - 0x4b8]
push edx
lea eax, [ebp - 0x6b0]
push eax
call dword [sym.imp.ADVAPI32.dll_GetUserNameW]
jmp 0x46c9a2
mov dword [ebp - 0x6b4], 0
jmp 0x46ca19
mov ecx, dword [ebp - 0x6b4]
add ecx, 1
mov dword [ebp - 0x6b4], ecx
cmp dword [ebp - 0x6b4], 5
jge 0x46ca66
cmp dword [ebp - 0x1c], 0
jge 0x46ca30
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 0x46ca46
mov dword [ebp - 0x1c], 0
mov dword [ebp - 0x6b8], 0xfa
lea edx, [ebp - 0x6b8]
push edx
lea eax, [ebp - 0x8b0]
push eax
call dword [sym.imp.ADVAPI32.dll_GetUserNameW]
jmp 0x46ca0a
mov dword [ebp - 0x8b4], 0
jmp 0x46ca81
mov ecx, dword [ebp - 0x8b4]
add ecx, 1
mov dword [ebp - 0x8b4], ecx
cmp dword [ebp - 0x8b4], 7
jge 0x46ca98
mov edx, dword [ebp - 0x1c]
sub edx, dword [ebp - 0x8b4]
mov dword [ebp - 0x1c], edx
jmp 0x46ca72
cmp dword [ebp - 0x1c], 0xffff0001
jge 0x46caaa
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 0x46cac2
call dword [sym.imp.KERNEL32.dll_GetVersion]
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x8b8], 0
mov edx, 1
test edx, edx
je 0x46cb16
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov dword [ebp - 0x8bc], eax
mov eax, dword [ebp - 0x8bc]
xor edx, edx
mov ecx, 3
div ecx
test edx, edx
jne 0x46caf8
jmp 0x46cb16
mov edx, dword [ebp - 0x1c]
imul edx, dword [ebp - 0x8b8]
mov dword [ebp - 0x1c], edx
mov eax, dword [ebp - 0x8b8]
add eax, 1
mov dword [ebp - 0x8b8], eax
jmp 0x46cacc
mov ecx, dword [ebp - 0x1c]
add ecx, 5
mov dword [ebp - 0x1c], ecx
mov edx, 1
test edx, edx
je 0x46cb59
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov dword [ebp - 0x8c0], eax
mov eax, dword [ebp - 0x8c0]
xor edx, edx
mov ecx, 7
div ecx
test edx, edx
jne 0x46cb4b
jmp 0x46cb59
mov edx, dword [ebp - 0x1c]
add edx, dword [ebp - 0x8c0]
mov dword [ebp - 0x1c], edx
jmp 0x46cb1f
mov eax, dword [ebp - 0x1c]
add eax, 1
mov dword [ebp - 0x1c], eax
mov dword [ebp - 4], 3
mov dword [ebp - 0x8c4], 0
jmp 0x46cb84
mov ecx, dword [ebp - 0x8c4]
add ecx, 1
mov dword [ebp - 0x8c4], ecx
cmp dword [ebp - 0x8c4], 7
jge 0x46cbbf
mov eax, dword [ebp - 0x8c4]
cdq
mov ecx, 7
idiv ecx
cmp edx, 5
je 0x46cbb3
mov eax, dword [ebp - 0x8c4]
cdq
mov ecx, 0xb
idiv ecx
cmp edx, 7
jne 0x46cbba
and eax, 0xbc614e
jmp 0x46cbbd
mov dword [ebp - 0x1c], eax
jmp 0x46cb75
mov dword [ebp - 4], 0xfffffffe
call fcn.0046cbcd
jmp 0x46cbd5
mov dword [ebp - 0x8c8], 1
mov dword [ebp - 0x8cc], 1
mov dword [ebp - 0x8d0], 2
mov dword [ebp - 0x8d4], 0
mov dword [ebp - 0x8d8], 0
jmp 0x46cc18
mov edx, dword [ebp - 0x8d8]
add edx, 1
mov dword [ebp - 0x8d8], edx
cmp dword [ebp - 0x8d8], 3
jge 0x46cc59
mov eax, dword [ebp - 0x8c8]
add eax, dword [ebp - 0x8cc]
mov dword [ebp - 0x8d0], eax
mov ecx, dword [ebp - 0x8cc]
mov dword [ebp - 0x8c8], ecx
mov edx, dword [ebp - 0x8d0]
mov dword [ebp - 0x8cc], edx
mov eax, dword [ebp - 0x1c]
add eax, dword [ebp - 0x8d0]
mov dword [ebp - 0x1c], eax
jmp 0x46cc09
mov ecx, dword [ebp - 0x1c]
add ecx, 3
mov dword [ebp - 0x1c], ecx
mov dword [ebp - 0x8dc], 1
mov dword [ebp - 0x8e0], 1
mov dword [ebp - 0x8e4], 2
mov dword [ebp - 0x8e8], 0
mov dword [ebp - 0x8ec], 0
jmp 0x46cca5
mov edx, dword [ebp - 0x8ec]
add edx, 1
mov dword [ebp - 0x8ec], edx
cmp dword [ebp - 0x8ec], 7
jge 0x46cce6
mov eax, dword [ebp - 0x8dc]
add eax, dword [ebp - 0x8e0]
mov dword [ebp - 0x8e4], eax
mov ecx, dword [ebp - 0x8e0]
mov dword [ebp - 0x8dc], ecx
mov edx, dword [ebp - 0x8e4]
mov dword [ebp - 0x8e0], edx
mov eax, dword [ebp - 0x1c]
add eax, dword [ebp - 0x8e4]
mov dword [ebp - 0x1c], eax
jmp 0x46cc96
mov ecx, dword [ebp - 0x1c]
add ecx, 7
mov dword [ebp - 0x1c], ecx
mov dword [ebp - 0x8f0], 0
jmp 0x46cd0a
mov edx, dword [ebp - 0x8f0]
add edx, 1
mov dword [ebp - 0x8f0], edx
cmp dword [ebp - 0x8f0], 4
jge 0x46cd41
mov eax, dword [ebp - 0x1c]
xor eax, dword [ebp - 0x8f0]
mov dword [ebp - 0x1c], eax
jge 0x46cd29
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 0x46cd3f
mov dword [ebp - 0x1c], 0
jmp 0x46ccfb
mov dword [ebp - 0x8f4], 0
jmp 0x46cd5c
mov edx, dword [ebp - 0x8f4]
add edx, 1
mov dword [ebp - 0x8f4], edx
cmp dword [ebp - 0x8f4], 6
jge 0x46cd93
mov eax, dword [ebp - 0x1c]
xor eax, dword [ebp - 0x8f4]
mov dword [ebp - 0x1c], eax
jge 0x46cd7b
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 0x46cd91
mov dword [ebp - 0x1c], 0
jmp 0x46cd4d
mov dword [ebp - 0x8f8], 0
jmp 0x46cdae
mov edx, dword [ebp - 0x8f8]
add edx, 1
mov dword [ebp - 0x8f8], edx
cmp dword [ebp - 0x8f8], 6
jge 0x46cdc5
mov eax, dword [ebp - 0x1c]
sub eax, dword [ebp - 0x8f8]
mov dword [ebp - 0x1c], eax
jmp 0x46cd9f
cmp dword [ebp - 0x1c], 0xffff0001
jge 0x46cdd7
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 0x46cdef
call dword [sym.imp.KERNEL32.dll_GetVersion]
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x8fc], 0
jmp 0x46ce0a
mov edx, dword [ebp - 0x8fc]
add edx, 1
mov dword [ebp - 0x8fc], edx
cmp dword [ebp - 0x8fc], 4
jge 0x46ce41
mov eax, dword [ebp - 0x1c]
xor eax, dword [ebp - 0x8fc]
mov dword [ebp - 0x1c], eax
jge 0x46ce29
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 0x46ce3f
mov dword [ebp - 0x1c], 0
jmp 0x46cdfb
mov dword [ebp - 0x900], 0
jmp 0x46ce5c
mov edx, dword [ebp - 0x900]
add edx, 1
mov dword [ebp - 0x900], edx
cmp dword [ebp - 0x900], 8
jge 0x46ce93
mov eax, dword [ebp - 0x1c]
xor eax, dword [ebp - 0x900]
mov dword [ebp - 0x1c], eax
jge 0x46ce7b
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 0x46ce91
mov dword [ebp - 0x1c], 0
jmp 0x46ce4d
mov edx, 1
test edx, edx
je 0x46cecd
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov dword [ebp - 0x904], eax
mov eax, dword [ebp - 0x904]
xor edx, edx
mov ecx, 7
div ecx
test edx, edx
jne 0x46cebf
jmp 0x46cecd
mov edx, dword [ebp - 0x1c]
add edx, dword [ebp - 0x904]
mov dword [ebp - 0x1c], edx
jmp 0x46ce93
mov eax, dword [ebp - 0x1c]
add eax, 6
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x908], 1
mov dword [ebp - 0x90c], 1
mov dword [ebp - 0x910], 2
mov dword [ebp - 0x914], 0
mov dword [ebp - 0x918], 0
jmp 0x46cf19
mov ecx, dword [ebp - 0x918]
add ecx, 1
mov dword [ebp - 0x918], ecx
cmp dword [ebp - 0x918], 2
jge 0x46cf5a
mov edx, dword [ebp - 0x908]
add edx, dword [ebp - 0x90c]
mov dword [ebp - 0x910], edx
mov eax, dword [ebp - 0x90c]
mov dword [ebp - 0x908], eax
mov ecx, dword [ebp - 0x910]
mov dword [ebp - 0x90c], ecx
mov edx, dword [ebp - 0x1c]
add edx, dword [ebp - 0x910]
mov dword [ebp - 0x1c], edx
jmp 0x46cf0a
mov eax, dword [ebp - 0x1c]
add eax, 2
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x91c], 0
jmp 0x46cf7e
mov ecx, dword [ebp - 0x91c]
add ecx, 1
mov dword [ebp - 0x91c], ecx
cmp dword [ebp - 0x91c], 7
jge 0x46cf95
mov edx, dword [ebp - 0x1c]
sub edx, dword [ebp - 0x91c]
mov dword [ebp - 0x1c], edx
jmp 0x46cf6f
cmp dword [ebp - 0x1c], 0xffff0001
jge 0x46cfa7
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 0x46cfbf
call dword [sym.imp.KERNEL32.dll_GetVersion]
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x920], 1
mov dword [ebp - 0x924], 1
mov dword [ebp - 0x928], 2
mov dword [ebp - 0x92c], 0
mov dword [ebp - 0x930], 0
jmp 0x46d002
mov edx, dword [ebp - 0x930]
add edx, 1
mov dword [ebp - 0x930], edx
cmp dword [ebp - 0x930], 2
jge 0x46d043
mov eax, dword [ebp - 0x920]
add eax, dword [ebp - 0x924]
mov dword [ebp - 0x928], eax
mov ecx, dword [ebp - 0x924]
mov dword [ebp - 0x920], ecx
mov edx, dword [ebp - 0x928]
mov dword [ebp - 0x924], edx
mov eax, dword [ebp - 0x1c]
add eax, dword [ebp - 0x928]
mov dword [ebp - 0x1c], eax
jmp 0x46cff3
mov ecx, dword [ebp - 0x1c]
add ecx, 2
mov dword [ebp - 0x1c], ecx
mov dword [ebp - 4], 4
mov dword [ebp - 0x934], 0
jmp 0x46d06e
mov edx, dword [ebp - 0x934]
add edx, 1
mov dword [ebp - 0x934], edx
cmp dword [ebp - 0x934], 8
jge 0x46d0a9
mov eax, dword [ebp - 0x934]
cdq
mov ecx, 7
idiv ecx
cmp edx, 5
je 0x46d09d
mov eax, dword [ebp - 0x934]
cdq
mov ecx, 0xb
idiv ecx
cmp edx, 7
jne 0x46d0a4
and eax, 0xbc614e
jmp 0x46d0a7
mov dword [ebp - 0x1c], eax
jmp 0x46d05f
mov dword [ebp - 4], 0xfffffffe
call fcn.0046d0b7
jmp 0x46d0bf
mov dword [ebp - 0x938], 0
jmp 0x46d0da
mov edx, dword [ebp - 0x938]
add edx, 1
mov dword [ebp - 0x938], edx
cmp dword [ebp - 0x938], 4
jge 0x46d0f1
mov eax, dword [ebp - 0x1c]
sub eax, dword [ebp - 0x938]
mov dword [ebp - 0x1c], eax
jmp 0x46d0cb
cmp dword [ebp - 0x1c], 0xffff0001
jge 0x46d103
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 0x46d11b
call dword [sym.imp.KERNEL32.dll_GetVersion]
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x93c], 0
jmp 0x46d136
mov edx, dword [ebp - 0x93c]
add edx, 1
mov dword [ebp - 0x93c], edx
cmp dword [ebp - 0x93c], 7
jge 0x46d183
cmp dword [ebp - 0x1c], 0
jge 0x46d14d
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 0x46d163
mov dword [ebp - 0x1c], 0
mov dword [ebp - 0x940], 0xfa
lea edx, [ebp - 0x940]
push edx
lea eax, [ebp - 0xb38]
push eax
call dword [sym.imp.ADVAPI32.dll_GetUserNameW]
jmp 0x46d127
mov dword [ebp - 0xb3c], 0
jmp 0x46d19e
mov ecx, dword [ebp - 0xb3c]
add ecx, 1
mov dword [ebp - 0xb3c], ecx
cmp dword [ebp - 0xb3c], 1
jge 0x46d1d5
mov edx, dword [ebp - 0x1c]
xor edx, dword [ebp - 0xb3c]
mov dword [ebp - 0x1c], edx
jge 0x46d1bd
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 0x46d1d3
mov dword [ebp - 0x1c], 0
jmp 0x46d18f
mov dword [ebp - 0xb40], 1
mov dword [ebp - 0xb44], 1
mov dword [ebp - 0xb48], 2
mov dword [ebp - 0xb4c], 0
mov dword [ebp - 0xb50], 0
jmp 0x46d218
mov edx, dword [ebp - 0xb50]
add edx, 1
mov dword [ebp - 0xb50], edx
cmp dword [ebp - 0xb50], 2
jge 0x46d259
mov eax, dword [ebp - 0xb40]
add eax, dword [ebp - 0xb44]
mov dword [ebp - 0xb48], eax
mov ecx, dword [ebp - 0xb44]
mov dword [ebp - 0xb40], ecx
mov edx, dword [ebp - 0xb48]
mov dword [ebp - 0xb44], edx
mov eax, dword [ebp - 0x1c]
add eax, dword [ebp - 0xb48]
mov dword [ebp - 0x1c], eax
jmp 0x46d209
mov ecx, dword [ebp - 0x1c]
add ecx, 2
mov dword [ebp - 0x1c], ecx
mov dword [ebp - 0xb54], 0
jmp 0x46d27d
mov edx, dword [ebp - 0xb54]
add edx, 1
mov dword [ebp - 0xb54], edx
cmp dword [ebp - 0xb54], 2
jge 0x46d2b4
mov eax, dword [ebp - 0x1c]
xor eax, dword [ebp - 0xb54]
mov dword [ebp - 0x1c], eax
jge 0x46d29c
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 0x46d2b2
mov dword [ebp - 0x1c], 0
jmp 0x46d26e
mov dword [ebp - 0xb58], 0
jmp 0x46d2cf
mov edx, dword [ebp - 0xb58]
add edx, 1
mov dword [ebp - 0xb58], edx
cmp dword [ebp - 0xb58], 1
jge 0x46d31c
cmp dword [ebp - 0x1c], 0
jge 0x46d2e6
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 0x46d2fc
mov dword [ebp - 0x1c], 0
mov dword [ebp - 0xb5c], 0xfa
lea edx, [ebp - 0xb5c]
push edx
lea eax, [ebp - 0xd58]
push eax
call dword [sym.imp.ADVAPI32.dll_GetUserNameW]
jmp 0x46d2c0
mov dword [ebp - 0xd5c], 0
jmp 0x46d337
mov ecx, dword [ebp - 0xd5c]
add ecx, 1
mov dword [ebp - 0xd5c], ecx
cmp dword [ebp - 0xd5c], 0
jge 0x46d34e
mov edx, dword [ebp - 0x1c]
sub edx, dword [ebp - 0xd5c]
mov dword [ebp - 0x1c], edx
jmp 0x46d328
cmp dword [ebp - 0x1c], 0xffff0001
jge 0x46d360
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 0x46d378
call dword [sym.imp.KERNEL32.dll_GetVersion]
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0xd60], 0
jmp 0x46d393
mov edx, dword [ebp - 0xd60]
add edx, 1
mov dword [ebp - 0xd60], edx
cmp dword [ebp - 0xd60], 3
jge 0x46d3ca
mov eax, dword [ebp - 0x1c]
xor eax, dword [ebp - 0xd60]
mov dword [ebp - 0x1c], eax
jge 0x46d3b2
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 0x46d3c8
mov dword [ebp - 0x1c], 0
jmp 0x46d384
mov dword [ebp - 0xd64], 0
jmp 0x46d3e5
mov edx, dword [ebp - 0xd64]
add edx, 1
mov dword [ebp - 0xd64], edx
cmp dword [ebp - 0xd64], 3
jge 0x46d432
cmp dword [ebp - 0x1c], 0
jge 0x46d3fc
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 0x46d412
mov dword [ebp - 0x1c], 0
mov dword [ebp - 0xd68], 0xfa
lea edx, [ebp - 0xd68]
push edx
lea eax, [ebp - 0xf60]
push eax
call dword [sym.imp.ADVAPI32.dll_GetUserNameW]
jmp 0x46d3d6
mov dword [ebp - 0xf64], 1
mov dword [ebp - 0xf68], 1
mov dword [ebp - 0xf6c], 2
mov dword [ebp - 0xf70], 0
mov dword [ebp - 0xf74], 0
jmp 0x46d475
mov ecx, dword [ebp - 0xf74]
add ecx, 1
mov dword [ebp - 0xf74], ecx
cmp dword [ebp - 0xf74], 0
jge 0x46d4b6
mov edx, dword [ebp - 0xf64]
add edx, dword [ebp - 0xf68]
mov dword [ebp - 0xf6c], edx
mov eax, dword [ebp - 0xf68]
mov dword [ebp - 0xf64], eax
mov ecx, dword [ebp - 0xf6c]
mov dword [ebp - 0xf68], ecx
mov edx, dword [ebp - 0x1c]
add edx, dword [ebp - 0xf6c]
mov dword [ebp - 0x1c], edx
jmp 0x46d466
mov eax, dword [ebp - 0x1c]
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0xf78], 0
jmp 0x46d4d7
mov ecx, dword [ebp - 0xf78]
add ecx, 1
mov dword [ebp - 0xf78], ecx
cmp dword [ebp - 0xf78], 2
jge 0x46d524
cmp dword [ebp - 0x1c], 0
jge 0x46d4ee
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 0x46d504
mov dword [ebp - 0x1c], 0
mov dword [ebp - 0xf7c], 0xfa
lea edx, [ebp - 0xf7c]
push edx
lea eax, [ebp - 0x1178]
push eax
call dword [sym.imp.ADVAPI32.dll_GetUserNameW]
jmp 0x46d4c8
mov dword [ebp - 0x117c], 0
mov ecx, 1
test ecx, ecx
je 0x46d578
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov dword [ebp - 0x1180], eax
mov eax, dword [ebp - 0x1180]
xor edx, edx
mov ecx, 3
div ecx
test edx, edx
jne 0x46d55a
jmp 0x46d578
mov edx, dword [ebp - 0x1c]
imul edx, dword [ebp - 0x117c]
mov dword [ebp - 0x1c], edx
mov eax, dword [ebp - 0x117c]
add eax, 1
mov dword [ebp - 0x117c], eax
jmp 0x46d52e
mov ecx, dword [ebp - 0x1c]
add ecx, 3
mov dword [ebp - 0x1c], ecx
mov dword [ebp - 0x1184], 0
jmp 0x46d59c
mov edx, dword [ebp - 0x1184]
add edx, 1
mov dword [ebp - 0x1184], edx
cmp dword [ebp - 0x1184], 1
jge 0x46d5e9
cmp dword [ebp - 0x1c], 0
jge 0x46d5b3
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 0x46d5c9
mov dword [ebp - 0x1c], 0
mov dword [ebp - 0x1188], 0xfa
lea edx, [ebp - 0x1188]
push edx
lea eax, [ebp - 0x1380]
push eax
call dword [sym.imp.ADVAPI32.dll_GetUserNameW]
jmp 0x46d58d
mov ecx, 1
test ecx, ecx
je 0x46d623
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov dword [ebp - 0x1384], eax
mov eax, dword [ebp - 0x1384]
xor edx, edx
mov ecx, 7
div ecx
test edx, edx
jne 0x46d615
jmp 0x46d623
mov edx, dword [ebp - 0x1c]
add edx, dword [ebp - 0x1384]
mov dword [ebp - 0x1c], edx
jmp 0x46d5e9
mov eax, dword [ebp - 0x1c]
add eax, 3
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x1388], 0
mov ecx, 1
test ecx, ecx
je 0x46d680
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov dword [ebp - 0x138c], eax
mov eax, dword [ebp - 0x138c]
xor edx, edx
mov ecx, 3
div ecx
test edx, edx
jne 0x46d662
jmp 0x46d680
mov edx, dword [ebp - 0x1c]
imul edx, dword [ebp - 0x1388]
mov dword [ebp - 0x1c], edx
mov eax, dword [ebp - 0x1388]
add eax, 1
mov dword [ebp - 0x1388], eax
jmp 0x46d636
mov ecx, dword [ebp - 0x1c]
add ecx, 1
mov dword [ebp - 0x1c], ecx
mov dword [ebp - 0x1390], 0
jmp 0x46d6a4
mov edx, dword [ebp - 0x1390]
add edx, 1
mov dword [ebp - 0x1390], edx
cmp dword [ebp - 0x1390], 2
jge 0x46d6f1
cmp dword [ebp - 0x1c], 0
jge 0x46d6bb
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 0x46d6d1
mov dword [ebp - 0x1c], 0
mov dword [ebp - 0x1394], 0xfa
lea edx, [ebp - 0x1394]
push edx
lea eax, [ebp - 0x1590]
push eax
call dword [sym.imp.ADVAPI32.dll_GetUserNameW]
jmp 0x46d695
mov dword [ebp - 0x1594], 0
jmp 0x46d70c
mov ecx, dword [ebp - 0x1594]
add ecx, 1
mov dword [ebp - 0x1594], ecx
cmp dword [ebp - 0x1594], 0
jge 0x46d743
mov edx, dword [ebp - 0x1c]
xor edx, dword [ebp - 0x1594]
mov dword [ebp - 0x1c], edx
jge 0x46d72b
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 0x46d741
mov dword [ebp - 0x1c], 0
jmp 0x46d6fd
mov dword [ebp - 0x1598], 1
mov dword [ebp - 0x159c], 1
mov dword [ebp - 0x15a0], 2
mov dword [ebp - 0x15a4], 0
mov dword [ebp - 0x15a8], 0
jmp 0x46d786
mov edx, dword [ebp - 0x15a8]
add edx, 1
mov dword [ebp - 0x15a8], edx
cmp dword [ebp - 0x15a8], 4
jge 0x46d7c7
mov eax, dword [ebp - 0x1598]
add eax, dword [ebp - 0x159c]
mov dword [ebp - 0x15a0], eax
mov ecx, dword [ebp - 0x159c]
mov dword [ebp - 0x1598], ecx
mov edx, dword [ebp - 0x15a0]
mov dword [ebp - 0x159c], edx
mov eax, dword [ebp - 0x1c]
add eax, dword [ebp - 0x15a0]
mov dword [ebp - 0x1c], eax
jmp 0x46d777
mov ecx, dword [ebp - 0x1c]
add ecx, 4
mov dword [ebp - 0x1c], ecx
mov dword [ebp - 0x15ac], 1
mov dword [ebp - 0x15b0], 1
mov dword [ebp - 0x15b4], 2
mov dword [ebp - 0x15b8], 0
mov dword [ebp - 0x15bc], 0
jmp 0x46d813
mov edx, dword [ebp - 0x15bc]
add edx, 1
mov dword [ebp - 0x15bc], edx
cmp dword [ebp - 0x15bc], 2
jge 0x46d854
mov eax, dword [ebp - 0x15ac]
add eax, dword [ebp - 0x15b0]
mov dword [ebp - 0x15b4], eax
mov ecx, dword [ebp - 0x15b0]
mov dword [ebp - 0x15ac], ecx
mov edx, dword [ebp - 0x15b4]
mov dword [ebp - 0x15b0], edx
mov eax, dword [ebp - 0x1c]
add eax, dword [ebp - 0x15b4]
mov dword [ebp - 0x1c], eax
jmp 0x46d804
mov ecx, dword [ebp - 0x1c]
add ecx, 2
mov dword [ebp - 0x1c], ecx
mov edx, 1
test edx, edx
je 0x46d897
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov dword [ebp - 0x15c0], eax
mov eax, dword [ebp - 0x15c0]
xor edx, edx
mov ecx, 7
div ecx
test edx, edx
jne 0x46d889
jmp 0x46d897
mov edx, dword [ebp - 0x1c]
add edx, dword [ebp - 0x15c0]
mov dword [ebp - 0x1c], edx
jmp 0x46d85d
mov eax, dword [ebp - 0x1c]
add eax, 2
mov dword [ebp - 0x1c], eax
mov ecx, 1
test ecx, ecx
je 0x46d8da
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov dword [ebp - 0x15c4], eax
mov eax, dword [ebp - 0x15c4]
xor edx, edx
mov ecx, 7
div ecx
test edx, edx
jne 0x46d8cc
jmp 0x46d8da
mov edx, dword [ebp - 0x1c]
add edx, dword [ebp - 0x15c4]
mov dword [ebp - 0x1c], edx
jmp 0x46d8a0
mov eax, dword [ebp - 0x1c]
add eax, 1
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x15c8], 1
mov dword [ebp - 0x15cc], 1
mov dword [ebp - 0x15d0], 2
mov dword [ebp - 0x15d4], 0
mov dword [ebp - 0x15d8], 0
jmp 0x46d926
mov ecx, dword [ebp - 0x15d8]
add ecx, 1
mov dword [ebp - 0x15d8], ecx
cmp dword [ebp - 0x15d8], 1
jge 0x46d967
mov edx, dword [ebp - 0x15c8]
add edx, dword [ebp - 0x15cc]
mov dword [ebp - 0x15d0], edx
mov eax, dword [ebp - 0x15cc]
mov dword [ebp - 0x15c8], eax
mov ecx, dword [ebp - 0x15d0]
mov dword [ebp - 0x15cc], ecx
mov edx, dword [ebp - 0x1c]
add edx, dword [ebp - 0x15d0]
mov dword [ebp - 0x1c], edx
jmp 0x46d917
mov eax, dword [ebp - 0x1c]
add eax, 1
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x15dc], 0
jmp 0x46d98b
mov ecx, dword [ebp - 0x15dc]
add ecx, 1
mov dword [ebp - 0x15dc], ecx
cmp dword [ebp - 0x15dc], 2
jge 0x46d9c2
mov edx, dword [ebp - 0x1c]
xor edx, dword [ebp - 0x15dc]
mov dword [ebp - 0x1c], edx
jge 0x46d9aa
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 0x46d9c0
mov dword [ebp - 0x1c], 0
jmp 0x46d97c
mov dword [ebp - 0x15e0], 0
jmp 0x46d9dd
mov edx, dword [ebp - 0x15e0]
add edx, 1
mov dword [ebp - 0x15e0], edx
cmp dword [ebp - 0x15e0], 1
jge 0x46d9f4
mov eax, dword [ebp - 0x1c]
sub eax, dword [ebp - 0x15e0]
mov dword [ebp - 0x1c], eax
jmp 0x46d9ce
cmp dword [ebp - 0x1c], 0xffff0001
jge 0x46da06
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 0x46da1e
call dword [sym.imp.KERNEL32.dll_GetVersion]
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x15e4], 0
jmp 0x46da39
cmp dword [ebp - 0x15e4], 4
jge 0x46da70
mov eax, dword [ebp - 0x1c]
xor eax, dword [ebp - 0x15e4]
mov dword [ebp - 0x1c], eax
jge 0x46da58
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 0x46da6e
mov dword [ebp - 0x15e8], 0
jmp 0x46da8b
cmp dword [ebp - 0x15e8], 0
jge 0x46dad8