News:

Download Pelles C here: http://www.pellesc.se

Main Menu

Windows domain membership

Started by Vortex, January 11, 2026, 06:34:18 PM

Previous topic - Next topic

Vortex

This quick code checks if your computer is a member of a domain :

include IsDomainMemb.inc

.data

m1  db 'The computer is not joined to a domain.',0
m2  db 'The computer is joined to a domain.',0
tbl dd OFFSET m1,OFFSET m2

.code

start:

    invoke  IsOS,OS_DOMAINMEMBER

    xor     ecx,ecx
    test    eax,eax
    setne   cl
    push    ecx
    shl     ecx,2
    lea     edx,[tbl+ecx]

    invoke  StdOut,DWORD PTR [edx]

    pop     eax
    invoke  ExitProcess,eax
Code it... That's all...

Marco

Hi Vortex,

Although I wrote some programs in pure assembly language in 1992, it is not my area of expertise. Nevertheless, I would like to thank you for consistently providing new examples.

Marco

Vortex

Hello,

Here is the 64-bit version :

OS_DOMAINMEMBER equ 28

ExitProcess PROTO :QWORD
IsOS PROTO :QWORD
printf PROTO :QWORD,:VARARG

.data

m1  db 'The computer is not joined to a domain.',0
m2  db 'The computer is joined to a domain.',0
tbl dq OFFSET m1,OFFSET m2

.data?

rv  dq ?

.code

start:

    sub     rsp,4*8+8

    invoke  IsOS,OS_DOMAINMEMBER

    xor     rdx,rdx
    test    rax,rax
    setne   dl
    mov     rv,rdx
    shl     rdx,3
    lea     rax,[tbl+rdx]

    invoke  printf,QWORD PTR [rax]

    invoke  ExitProcess,rv

END start
Code it... That's all...

TimoVJL

May the source be with you