Function at 0x42aa60
Capabilities:
Check os version
Link many functions at runtime

Disassembly:
sub esp, 0x5b8
xor eax, eax
lea edx, [esp + 0x124]
mov dword [esp], eax
mov dword [esp + 0xc], eax
mov dword [esp + 4], eax
mov eax, dword [esp + 0x5c4]
sub edx, eax
mov cl, byte [eax]
mov byte [edx + eax], cl
inc eax
test cl, cl
jne 0x42aa84
push ebx
push ebp
push esi
push edi
call fcn.0042a9e0
test al, al
jne 0x42aab1
call fcn.0042aa40
test al, al
jne 0x42aab1
pop edi
pop esi
pop ebp
xor eax, eax
pop ebx
add esp, 0x5b8
ret
lea eax, [esp + 0x534]
mov dword [esp + 0x534], 0x94
push eax
call dword [sym.imp.KERNEL32.dll_GetVersionExA]
test eax, eax
jne 0x42aad9
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x5b8
ret
mov eax, dword [esp + 0x544]
mov esi, 1
cmp eax, 2
jne 0x42ab05
mov eax, dword [esp + 0x538]
cmp eax, 4
jne 0x42aafc
mov dword [esp + 0x1c], esi
jmp 0x42ab05
cmp eax, 5
jb 0x42ab05
mov dword [esp + 0x14], esi
call fcn.0042a780
mov edi, eax
call fcn.0042a7e0
mov dword [esp + 0x28], eax
call fcn.0042a840
push esi
mov dword [esp + 0x30], eax
call fcn.0042a870
mov esi, eax
push 0
mov dword [esp + 0x2c], esi
call fcn.0042a8e0
mov ebx, eax
push 0
mov dword [esp + 0x2c], ebx
call fcn.0042a950
mov ebp, eax
add esp, 0xc
mov dword [esp + 0x18], ebp
xor eax, eax
mov cl, byte [eax + str.VNCACCESS]
mov byte [esp + eax + 0x234], cl
inc eax
test cl, cl
jne 0x42ab49
xor eax, eax
mov cl, byte [eax + str.Administrators]
mov byte [esp + eax + 0x434], cl
inc eax
test cl, cl
jne 0x42ab5d
xor eax, eax
mov cl, byte [eax + str.VNCVIEWONLY]
mov byte [esp + eax + 0x334], cl
inc eax
test cl, cl
jne 0x42ab71
test edi, edi
je 0x42ab9c
lea edx, [esp + 0x234]
mov eax, edi
sub edx, edi
mov cl, byte [eax]
mov byte [edx + eax], cl
inc eax
test cl, cl
jne 0x42ab92
mov eax, dword [esp + 0x28]
test eax, eax
je 0x42abb7
lea edx, [esp + 0x434]
sub edx, eax
mov cl, byte [eax]
mov byte [edx + eax], cl
inc eax
test cl, cl
jne 0x42abad
mov eax, dword [esp + 0x2c]
test eax, eax
je 0x42abd2
lea edx, [esp + 0x334]
sub edx, eax
mov cl, byte [eax]
mov byte [edx + eax], cl
inc eax
test cl, cl
jne 0x42abc8
lea ecx, [esp + 0x234]
push ecx
call fcn.0042a750
lea edx, [esp + 0x438]
push edx
call fcn.0042a7b0
lea eax, [esp + 0x33c]
push eax
call fcn.0042a810
push esi
call fcn.0042a8b0
push ebx
call fcn.0042a920
push ebp
call fcn.0042a990
add esp, 0x18
test edi, edi
je 0x42ac30
lea edx, [esp + 0x234]
mov eax, edi
sub edx, edi
mov cl, byte [eax]
mov byte [edx + eax], cl
inc eax
test cl, cl
jne 0x42ac1d
push edi
call fcn.00447e1a
add esp, 4
mov esi, dword [esp + 0x28]
test esi, esi
je 0x42ac56
lea edx, [esp + 0x434]
mov eax, esi
sub edx, esi
mov cl, byte [eax]
mov byte [edx + eax], cl
inc eax
test cl, cl
jne 0x42ac43
push esi
call fcn.00447e1a
add esp, 4
mov esi, dword [esp + 0x2c]
test esi, esi
je 0x42ac7c
lea edx, [esp + 0x334]
mov eax, esi
sub edx, esi
mov cl, byte [eax]
mov byte [edx + eax], cl
inc eax
test cl, cl
jne 0x42ac69
push esi
call fcn.00447e1a
add esp, 4
mov ebx, dword [esp + 0x5d0]
mov ebp, dword [sym.imp.ole32.dll_CoInitialize]
mov edi, 0x4721e0
lea esi, [esp + 0x234]
mov ecx, 1
xor edx, edx
repe cmpsb byte [esi], byte es:[edi]
je 0x42b26b
lea eax, [esp + 0x30]
push 0x104
push eax
push edx
call dword [sym.imp.KERNEL32.dll_GetModuleFileNameA]
test eax, eax
je 0x42ad01
lea ecx, [esp + 0x30]
push 0x5c
push ecx
call fcn.00447e30
add esp, 8
test eax, eax
jne 0x42acd7
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x5b8
ret
mov byte [eax], 0
lea edi, [esp + 0x30]
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
mov edx, dword [str._auth.dll]
mov eax, dword [0x46592c]
mov cx, word [0x465930]
dec edi
mov dword [edi], edx
mov dword [edi + 4], eax
mov word [edi + 8], cx
lea edx, [esp + 0x30]
push edx
call dword [sym.imp.KERNEL32.dll_LoadLibraryA]
mov esi, eax
test esi, esi
je 0x42adba
push str.CUGP
push esi
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
push 0
mov dword [0x482ae0], eax
call ebp
mov edi, dword [esp + 0x24]
mov edx, dword [esp + 0x5cc]
lea eax, [esp + 0x234]
push edi
lea ecx, [esp + 0x138]
push eax
push ecx
push ebx
push edx
call dword [0x482ae0]
add esp, 0x14
mov dword [esp + 0x10], eax
call dword [sym.imp.ole32.dll_CoUninitialize]
push esi
call dword [sym.imp.KERNEL32.dll_FreeLibrary]
cmp dword [esp + 0x10], 1
je 0x42bc18
mov eax, dword [esp + 0x1c]
test eax, eax
jne 0x42ad82
mov eax, dword [esp + 0x14]
test eax, eax
je 0x42ae8c
lea eax, [esp + 0x30]
push 0x104
push eax
push 0
call dword [sym.imp.KERNEL32.dll_GetModuleFileNameA]
test eax, eax
je 0x42ae1c
lea ecx, [esp + 0x30]
push 0x5c
push ecx
call fcn.00447e30
add esp, 8
test eax, eax
jne 0x42add4
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x5b8
ret
push 0
push 0x483980
push 0x483da0
push 0
call dword [sym.imp.USER32.dll_MessageBoxA]
mov edi, dword [esp + 0x24]
jmp 0x42ad6e
mov byte [eax], 0
lea edi, [esp + 0x30]
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
mov edx, dword [str._authlogonuser.dll]
mov eax, dword [0x46adb4]
mov ecx, dword [0x46adb8]
dec edi
mov dword [edi], edx
mov edx, dword [0x46adbc]
mov dword [edi + 4], eax
mov ax, word [0x46adc0]
mov dword [edi + 8], ecx
mov cl, byte [0x46adc2]
mov dword [edi + 0xc], edx
mov word [edi + 0x10], ax
mov byte [edi + 0x12], cl
mov edi, dword [esp + 0x24]
lea edx, [esp + 0x30]
push edx
call dword [sym.imp.KERNEL32.dll_LoadLibraryA]
mov esi, eax
test esi, esi
je 0x42ae78
push str.CUGP
push esi
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
push 0
mov dword [0x482ae0], eax
call ebp
mov edx, dword [esp + 0x5cc]
lea eax, [esp + 0x234]
push edi
lea ecx, [esp + 0x138]
push eax
push ecx
push ebx
push edx
call dword [0x482ae0]
add esp, 0x14
mov dword [esp + 0x10], eax
call dword [sym.imp.ole32.dll_CoUninitialize]
push esi
call dword [sym.imp.KERNEL32.dll_FreeLibrary]
jmp 0x42ae8c
push 0
push 0x483980
push 0x483da0
push 0
call dword [sym.imp.USER32.dll_MessageBoxA]
cmp dword [esp + 0x10], 1
je 0x42bc18
call fcn.0042a9c0
test al, al
je 0x42af5e
lea eax, [esp + 0x30]
push 0x104
push eax
push 0
call dword [sym.imp.KERNEL32.dll_GetModuleFileNameA]
test eax, eax
je 0x42af04
lea ecx, [esp + 0x30]
push 0x5c
push ecx
call fcn.00447e30
add esp, 8
test eax, eax
jne 0x42aed8
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x5b8
ret
mov byte [eax], 0
lea edi, [esp + 0x30]
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
mov edx, dword [str._authad.dll]
mov eax, dword [0x46ada8]
mov ecx, dword [0x46adac]
dec edi
mov dword [edi], edx
mov dword [edi + 4], eax
mov dword [edi + 8], ecx
mov edi, dword [esp + 0x24]
lea edx, [esp + 0x30]
push edx
call dword [sym.imp.KERNEL32.dll_LoadLibraryA]
mov esi, eax
test esi, esi
je 0x42af5e
push str.CUGP
push esi
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
push 0
mov dword [0x482ae0], eax
call ebp
mov edx, dword [esp + 0x5cc]
lea eax, [esp + 0x234]
push edi
lea ecx, [esp + 0x138]
push eax
push ecx
push ebx
push edx
call dword [0x482ae0]
add esp, 0x14
mov dword [esp + 0x10], eax
call dword [sym.imp.ole32.dll_CoUninitialize]
push esi
call dword [sym.imp.KERNEL32.dll_FreeLibrary]
cmp dword [esp + 0x10], 1
je 0x42bc18
call fcn.0042a9c0
test al, al
je 0x42b055
mov eax, dword [esp + 0x14]
test eax, eax
je 0x42b055
cmp edi, 2
je 0x42af90
cmp edi, 3
jne 0x42b055
lea eax, [esp + 0x30]
push 0x104
push eax
push 0
call dword [sym.imp.KERNEL32.dll_GetModuleFileNameA]
test eax, eax
je 0x42affb
lea ecx, [esp + 0x30]
push 0x5c
push ecx
call fcn.00447e30
add esp, 8
test eax, eax
jne 0x42afc4
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x5b8
ret
mov byte [eax], 0
lea edi, [esp + 0x30]
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
mov edx, dword [str.ldapauth.dll]
mov eax, dword [0x46ad98]
mov ecx, dword [0x46ad9c]
dec edi
mov dword [edi], edx
mov dx, word [0x46ada0]
mov dword [edi + 4], eax
mov dword [edi + 8], ecx
mov word [edi + 0xc], dx
mov edi, dword [esp + 0x24]
lea eax, [esp + 0x30]
push eax
call dword [sym.imp.KERNEL32.dll_LoadLibraryA]
mov esi, eax
test esi, esi
je 0x42b055
push str.CUGP
push esi
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
push 0
mov dword [0x482ae0], eax
call ebp
mov eax, dword [esp + 0x5cc]
lea ecx, [esp + 0x234]
push edi
lea edx, [esp + 0x138]
push ecx
push edx
push ebx
push eax
call dword [0x482ae0]
add esp, 0x14
mov dword [esp + 0x10], eax
call dword [sym.imp.ole32.dll_CoUninitialize]
push esi
call dword [sym.imp.KERNEL32.dll_FreeLibrary]
cmp dword [esp + 0x10], 1
je 0x42bc18
call fcn.0042a9c0
test al, al
je 0x42b15f
mov eax, dword [esp + 0x1c]
test eax, eax
je 0x42b15f
call fcn.0042aa00
test al, al
je 0x42b15f
cmp edi, 2
je 0x42b094
cmp edi, 3
jne 0x42b15f
lea ecx, [esp + 0x30]
push 0x104
push ecx
push 0
call dword [sym.imp.KERNEL32.dll_GetModuleFileNameA]
test eax, eax
je 0x42b105
lea edx, [esp + 0x30]
push 0x5c
push edx
call fcn.00447e30
add esp, 8
test eax, eax
jne 0x42b0c8
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x5b8
ret
mov byte [eax], 0
lea edi, [esp + 0x30]
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
mov eax, dword [str.ldapauthnt4.dll]
mov ecx, dword [0x46ad84]
mov edx, dword [0x46ad88]
dec edi
mov dword [edi], eax
mov eax, dword [0x46ad8c]
mov dword [edi + 4], ecx
mov cl, byte [0x46ad90]
mov dword [edi + 8], edx
mov dword [edi + 0xc], eax
mov byte [edi + 0x10], cl
mov edi, dword [esp + 0x24]
lea edx, [esp + 0x30]
push edx
call dword [sym.imp.KERNEL32.dll_LoadLibraryA]
mov esi, eax
test esi, esi
je 0x42b15f
push str.CUGP
push esi
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
push 0
mov dword [0x482ae0], eax
call ebp
mov edx, dword [esp + 0x5cc]
lea eax, [esp + 0x234]
push edi
lea ecx, [esp + 0x138]
push eax
push ecx
push ebx
push edx
call dword [0x482ae0]
add esp, 0x14
mov dword [esp + 0x10], eax
call dword [sym.imp.ole32.dll_CoUninitialize]
push esi
call dword [sym.imp.KERNEL32.dll_FreeLibrary]
cmp dword [esp + 0x10], 1
je 0x42bc18
call fcn.0042a9c0
test al, al
je 0x42b260
mov eax, dword [esp + 0x1c]
test eax, eax
jne 0x42b260
mov eax, dword [esp + 0x14]
test eax, eax
jne 0x42b260
cmp edi, 2
je 0x42b19d
cmp edi, 3
jne 0x42b260
lea eax, [esp + 0x30]
push 0x104
push eax
push 0
call dword [sym.imp.KERNEL32.dll_GetModuleFileNameA]
test eax, eax
je 0x42b206
lea ecx, [esp + 0x30]
push 0x5c
push ecx
call fcn.00447e30
add esp, 8
test eax, eax
jne 0x42b1d1
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x5b8
ret
mov byte [eax], 0
lea edi, [esp + 0x30]
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
mov edx, dword [str.ldapauth9x.dll]
mov eax, dword [0x46ad74]
mov ecx, dword [0x46ad78]
dec edi
mov dword [edi], edx
mov edx, dword [0x46ad7c]
mov dword [edi + 4], eax
mov dword [edi + 8], ecx
mov dword [edi + 0xc], edx
mov edi, dword [esp + 0x24]
lea eax, [esp + 0x30]
push eax
call dword [sym.imp.KERNEL32.dll_LoadLibraryA]
mov esi, eax
test esi, esi
je 0x42b260
push str.CUGP
push esi
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
push 0
mov dword [0x482ae0], eax
call ebp
mov eax, dword [esp + 0x5cc]
lea ecx, [esp + 0x234]
push edi
lea edx, [esp + 0x138]
push ecx
push edx
push ebx
push eax
call dword [0x482ae0]
add esp, 0x14
mov dword [esp + 0x10], eax
call dword [sym.imp.ole32.dll_CoUninitialize]
push esi
call dword [sym.imp.KERNEL32.dll_FreeLibrary]
cmp dword [esp + 0x10], 1
je 0x42bc18
mov edi, 0x4721e0
lea esi, [esp + 0x434]
mov ecx, 1
xor edx, edx
repe cmpsb byte [esi], byte es:[edi]
je 0x42b84d
lea eax, [esp + 0x30]
push 0x104
push eax
push edx
call dword [sym.imp.KERNEL32.dll_GetModuleFileNameA]
test eax, eax
je 0x42b2e3
lea ecx, [esp + 0x30]
push 0x5c
push ecx
call fcn.00447e30
add esp, 8
test eax, eax
jne 0x42b2b9
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x5b8
ret
mov byte [eax], 0
lea edi, [esp + 0x30]
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
mov edx, dword [str._auth.dll]
mov eax, dword [0x46592c]
mov cx, word [0x465930]
dec edi
mov dword [edi], edx
mov dword [edi + 4], eax
mov word [edi + 8], cx
lea edx, [esp + 0x30]
push edx
call dword [sym.imp.KERNEL32.dll_LoadLibraryA]
mov esi, eax
test esi, esi
je 0x42b343
push str.CUGP
push esi
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
push 0
mov dword [0x482ae0], eax
call ebp
mov eax, dword [esp + 0x20]
lea ecx, [esp + 0x434]
push eax
mov eax, dword [esp + 0x5d0]
lea edx, [esp + 0x138]
push ecx
push edx
push ebx
push eax
call dword [0x482ae0]
add esp, 0x14
mov dword [esp + 0x10], eax
call dword [sym.imp.ole32.dll_CoUninitialize]
push esi
call dword [sym.imp.KERNEL32.dll_FreeLibrary]
jmp 0x42b357
push 0
push 0x483980
push 0x483da0
push 0
call dword [sym.imp.USER32.dll_MessageBoxA]
cmp dword [esp + 0x10], 1
je 0x42bc18
mov eax, dword [esp + 0x1c]
test eax, eax
jne 0x42b376
mov eax, dword [esp + 0x14]
test eax, eax
je 0x42b462
lea ecx, [esp + 0x30]
push 0x104
push ecx
push 0
call dword [sym.imp.KERNEL32.dll_GetModuleFileNameA]
test eax, eax
je 0x42b3ee
lea edx, [esp + 0x30]
push 0x5c
push edx
call fcn.00447e30
add esp, 8
test eax, eax
jne 0x42b3aa
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x5b8
ret
mov byte [eax], 0
lea edi, [esp + 0x30]
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
mov eax, dword [str._authlogonuser.dll]
mov ecx, dword [0x46adb4]
mov edx, dword [0x46adb8]
dec edi
mov dword [edi], eax
mov eax, dword [0x46adbc]
mov dword [edi + 4], ecx
mov cx, word [0x46adc0]
mov dword [edi + 8], edx
mov dl, byte [0x46adc2]
mov dword [edi + 0xc], eax
mov word [edi + 0x10], cx
mov byte [edi + 0x12], dl
lea eax, [esp + 0x30]
push eax
call dword [sym.imp.KERNEL32.dll_LoadLibraryA]
mov esi, eax
test esi, esi
je 0x42b44e
push str.CUGP
push esi
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
push 0
mov dword [0x482ae0], eax
call ebp
mov ecx, dword [esp + 0x20]
lea edx, [esp + 0x434]
push ecx
mov ecx, dword [esp + 0x5d0]
lea eax, [esp + 0x138]
push edx
push eax
push ebx
push ecx
call dword [0x482ae0]
add esp, 0x14
mov dword [esp + 0x10], eax
call dword [sym.imp.ole32.dll_CoUninitialize]
push esi
call dword [sym.imp.KERNEL32.dll_FreeLibrary]
jmp 0x42b462
push 0
push 0x483980
push 0x483da0
push 0
call dword [sym.imp.USER32.dll_MessageBoxA]
cmp dword [esp + 0x10], 1
je 0x42bc18
call fcn.0042a9c0
test al, al
je 0x42b534
lea edx, [esp + 0x30]
push 0x104
push edx
push 0
call dword [sym.imp.KERNEL32.dll_GetModuleFileNameA]
test eax, eax
je 0x42b4d6
lea eax, [esp + 0x30]
push 0x5c
push eax
call fcn.00447e30
add esp, 8
test eax, eax
jne 0x42b4ae
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x5b8
ret
mov byte [eax], 0
lea edi, [esp + 0x30]
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
mov ecx, dword [str._authad.dll]
mov edx, dword [0x46ada8]
mov eax, dword [0x46adac]
dec edi
mov dword [edi], ecx
mov dword [edi + 4], edx
mov dword [edi + 8], eax
lea ecx, [esp + 0x30]
push ecx
call dword [sym.imp.KERNEL32.dll_LoadLibraryA]
mov esi, eax
test esi, esi
je 0x42b534
push str.CUGP
push esi
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
push 0
mov dword [0x482ae0], eax
call ebp
mov edx, dword [esp + 0x20]
lea eax, [esp + 0x434]
push edx
mov edx, dword [esp + 0x5d0]
lea ecx, [esp + 0x138]
push eax
push ecx
push ebx
push edx
call dword [0x482ae0]
add esp, 0x14
mov dword [esp + 0x10], eax
call dword [sym.imp.ole32.dll_CoUninitialize]
push esi
call dword [sym.imp.KERNEL32.dll_FreeLibrary]
cmp dword [esp + 0x10], 1
je 0x42bc18
call fcn.0042a9c0
test al, al
je 0x42b62f
mov eax, dword [esp + 0x14]
test eax, eax
je 0x42b62f
mov edi, dword [esp + 0x20]
cmp edi, 2
je 0x42b56a
cmp edi, 3
jne 0x42b62f
lea eax, [esp + 0x30]
push 0x104
push eax
push 0
call dword [sym.imp.KERNEL32.dll_GetModuleFileNameA]
test eax, eax
je 0x42b5d5
lea ecx, [esp + 0x30]
push 0x5c
push ecx
call fcn.00447e30
add esp, 8
test eax, eax
jne 0x42b59e
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x5b8
ret
mov byte [eax], 0
lea edi, [esp + 0x30]
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
mov edx, dword [str.ldapauth.dll]
mov eax, dword [0x46ad98]
mov ecx, dword [0x46ad9c]
dec edi
mov dword [edi], edx
mov dx, word [0x46ada0]
mov dword [edi + 4], eax
mov dword [edi + 8], ecx
mov word [edi + 0xc], dx
mov edi, dword [esp + 0x20]
lea eax, [esp + 0x30]
push eax
call dword [sym.imp.KERNEL32.dll_LoadLibraryA]
mov esi, eax
test esi, esi
je 0x42b62f
push str.CUGP
push esi
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
push 0
mov dword [0x482ae0], eax
call ebp
mov eax, dword [esp + 0x5cc]
lea ecx, [esp + 0x434]
push edi
lea edx, [esp + 0x138]
push ecx
push edx
push ebx
push eax
call dword [0x482ae0]
add esp, 0x14
mov dword [esp + 0x10], eax
call dword [sym.imp.ole32.dll_CoUninitialize]
push esi
call dword [sym.imp.KERNEL32.dll_FreeLibrary]
cmp dword [esp + 0x10], 1
je 0x42bc18
call fcn.0042a9c0
test al, al
je 0x42b73d
mov eax, dword [esp + 0x1c]
test eax, eax
je 0x42b73d
call fcn.0042aa00
test al, al
je 0x42b73d
mov edi, dword [esp + 0x20]
cmp edi, 2
je 0x42b672
cmp edi, 3
jne 0x42b73d
lea ecx, [esp + 0x30]
push 0x104
push ecx
push 0
call dword [sym.imp.KERNEL32.dll_GetModuleFileNameA]
test eax, eax
je 0x42b6e3
lea edx, [esp + 0x30]
push 0x5c
push edx
call fcn.00447e30
add esp, 8
test eax, eax
jne 0x42b6a6
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x5b8
ret
mov byte [eax], 0
lea edi, [esp + 0x30]
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
mov eax, dword [str.ldapauthnt4.dll]
mov ecx, dword [0x46ad84]
mov edx, dword [0x46ad88]
dec edi
mov dword [edi], eax
mov eax, dword [0x46ad8c]
mov dword [edi + 4], ecx
mov cl, byte [0x46ad90]
mov dword [edi + 8], edx
mov dword [edi + 0xc], eax
mov byte [edi + 0x10], cl
mov edi, dword [esp + 0x20]
lea edx, [esp + 0x30]
push edx
call dword [sym.imp.KERNEL32.dll_LoadLibraryA]
mov esi, eax
test esi, esi
je 0x42b73d
push str.CUGP
push esi
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
push 0
mov dword [0x482ae0], eax
call ebp
mov edx, dword [esp + 0x5cc]
lea eax, [esp + 0x434]
push edi
lea ecx, [esp + 0x138]
push eax
push ecx
push ebx
push edx
call dword [0x482ae0]
add esp, 0x14
mov dword [esp + 0x10], eax
call dword [sym.imp.ole32.dll_CoUninitialize]
push esi
call dword [sym.imp.KERNEL32.dll_FreeLibrary]
cmp dword [esp + 0x10], 1
je 0x42bc18
call fcn.0042a9c0
test al, al
je 0x42b842
mov eax, dword [esp + 0x1c]
test eax, eax
jne 0x42b842
mov eax, dword [esp + 0x14]
test eax, eax
jne 0x42b842
mov edi, dword [esp + 0x20]
cmp edi, 2
je 0x42b77f
cmp edi, 3
jne 0x42b842
lea eax, [esp + 0x30]
push 0x104
push eax
push 0
call dword [sym.imp.KERNEL32.dll_GetModuleFileNameA]
test eax, eax
je 0x42b7e8
lea ecx, [esp + 0x30]
push 0x5c
push ecx
call fcn.00447e30
add esp, 8
test eax, eax
jne 0x42b7b3
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x5b8
ret
mov byte [eax], 0
lea edi, [esp + 0x30]
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
mov edx, dword [str.ldapauth9x.dll]
mov eax, dword [0x46ad74]
mov ecx, dword [0x46ad78]
dec edi
mov dword [edi], edx
mov edx, dword [0x46ad7c]
mov dword [edi + 4], eax
mov dword [edi + 8], ecx
mov dword [edi + 0xc], edx
mov edi, dword [esp + 0x20]
lea eax, [esp + 0x30]
push eax
call dword [sym.imp.KERNEL32.dll_LoadLibraryA]
mov esi, eax
test esi, esi
je 0x42b842
push str.CUGP
push esi
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
push 0
mov dword [0x482ae0], eax
call ebp
mov eax, dword [esp + 0x5cc]
lea ecx, [esp + 0x434]
push edi
lea edx, [esp + 0x138]
push ecx
push edx
push ebx
push eax
call dword [0x482ae0]
add esp, 0x14
mov dword [esp + 0x10], eax
call dword [sym.imp.ole32.dll_CoUninitialize]
push esi
call dword [sym.imp.KERNEL32.dll_FreeLibrary]
cmp dword [esp + 0x10], 1
je 0x42bc18
mov edi, 0x4721e0
lea esi, [esp + 0x334]
mov ecx, 1
xor edx, edx
repe cmpsb byte [esi], byte es:[edi]
je 0x42bf33
lea eax, [esp + 0x30]
push 0x104
push eax
push edx
call dword [sym.imp.KERNEL32.dll_GetModuleFileNameA]
test eax, eax
je 0x42b8c5
lea ecx, [esp + 0x30]
push 0x5c
push ecx
call fcn.00447e30
add esp, 8
test eax, eax
jne 0x42b89b
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x5b8
ret
mov byte [eax], 0
lea edi, [esp + 0x30]
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
mov edx, dword [str._auth.dll]
mov eax, dword [0x46592c]
mov cx, word [0x465930]
dec edi
mov dword [edi], edx
mov dword [edi + 4], eax
mov word [edi + 8], cx
lea edx, [esp + 0x30]
push edx
call dword [sym.imp.KERNEL32.dll_LoadLibraryA]
mov esi, eax
test esi, esi
je 0x42b925
push str.CUGP
push esi
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
push 0
mov dword [0x482ae0], eax
call ebp
mov eax, dword [esp + 0x18]
lea ecx, [esp + 0x334]
push eax
mov eax, dword [esp + 0x5d0]
lea edx, [esp + 0x138]
push ecx
push edx
push ebx
push eax
call dword [0x482ae0]
add esp, 0x14
mov dword [esp + 0x10], eax
call dword [sym.imp.ole32.dll_CoUninitialize]
push esi
call dword [sym.imp.KERNEL32.dll_FreeLibrary]
jmp 0x42b939
push 0
push 0x483980
push 0x483da0
push 0
call dword [sym.imp.USER32.dll_MessageBoxA]
cmp dword [esp + 0x10], 1
je 0x42bc18
mov eax, dword [esp + 0x1c]
test eax, eax
jne 0x42b958
mov eax, dword [esp + 0x14]
test eax, eax
je 0x42ba44
lea ecx, [esp + 0x30]
push 0x104
push ecx
push 0
call dword [sym.imp.KERNEL32.dll_GetModuleFileNameA]
test eax, eax
je 0x42b9d0
lea edx, [esp + 0x30]
push 0x5c
push edx
call fcn.00447e30
add esp, 8
test eax, eax
jne 0x42b98c
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x5b8
ret
mov byte [eax], 0
lea edi, [esp + 0x30]
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
mov eax, dword [str._authlogonuser.dll]
mov ecx, dword [0x46adb4]
mov edx, dword [0x46adb8]
dec edi
mov dword [edi], eax
mov eax, dword [0x46adbc]
mov dword [edi + 4], ecx
mov cx, word [0x46adc0]
mov dword [edi + 8], edx
mov dl, byte [0x46adc2]
mov dword [edi + 0xc], eax
mov word [edi + 0x10], cx
mov byte [edi + 0x12], dl
lea eax, [esp + 0x30]
push eax
call dword [sym.imp.KERNEL32.dll_LoadLibraryA]
mov esi, eax
test esi, esi
je 0x42ba30
push str.CUGP
push esi
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
push 0
mov dword [0x482ae0], eax
call ebp
mov ecx, dword [esp + 0x18]
lea edx, [esp + 0x334]
push ecx
mov ecx, dword [esp + 0x5d0]
lea eax, [esp + 0x138]
push edx
push eax
push ebx
push ecx
call dword [0x482ae0]
add esp, 0x14
mov dword [esp + 0x10], eax
call dword [sym.imp.ole32.dll_CoUninitialize]
push esi
call dword [sym.imp.KERNEL32.dll_FreeLibrary]
jmp 0x42ba44
push 0
push 0x483980
push 0x483da0
push 0
call dword [sym.imp.USER32.dll_MessageBoxA]
cmp dword [esp + 0x10], 1
je 0x42bc18
call fcn.0042a9c0
test al, al
je 0x42bb16
lea edx, [esp + 0x30]
push 0x104
push edx
push 0
call dword [sym.imp.KERNEL32.dll_GetModuleFileNameA]
test eax, eax
je 0x42bab8
lea eax, [esp + 0x30]
push 0x5c
push eax
call fcn.00447e30
add esp, 8
test eax, eax
jne 0x42ba90
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x5b8
ret
mov byte [eax], 0
lea edi, [esp + 0x30]
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
mov ecx, dword [str._authad.dll]
mov edx, dword [0x46ada8]
mov eax, dword [0x46adac]
dec edi
mov dword [edi], ecx
mov dword [edi + 4], edx
mov dword [edi + 8], eax
lea ecx, [esp + 0x30]
push ecx
call dword [sym.imp.KERNEL32.dll_LoadLibraryA]
mov esi, eax
test esi, esi
je 0x42bb16
push str.CUGP
push esi
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
push 0
mov dword [0x482ae0], eax
call ebp
mov edx, dword [esp + 0x18]
lea eax, [esp + 0x334]
push edx
mov edx, dword [esp + 0x5d0]
lea ecx, [esp + 0x138]
push eax
push ecx
push ebx
push edx
call dword [0x482ae0]
add esp, 0x14
mov dword [esp + 0x10], eax
call dword [sym.imp.ole32.dll_CoUninitialize]
push esi
call dword [sym.imp.KERNEL32.dll_FreeLibrary]
cmp dword [esp + 0x10], 1
je 0x42bc18
call fcn.0042a9c0
test al, al
je 0x42bc11
mov eax, dword [esp + 0x14]
test eax, eax
je 0x42bc11
mov edi, dword [esp + 0x18]
cmp edi, 2
je 0x42bb4c
cmp edi, 3
jne 0x42bc11
lea eax, [esp + 0x30]
push 0x104
push eax
push 0
call dword [sym.imp.KERNEL32.dll_GetModuleFileNameA]
test eax, eax
je 0x42bbb7
lea ecx, [esp + 0x30]
push 0x5c
push ecx
call fcn.00447e30
add esp, 8
test eax, eax
jne 0x42bb80
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x5b8
ret
mov byte [eax], 0
lea edi, [esp + 0x30]
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
mov edx, dword [str.ldapauth.dll]
mov eax, dword [0x46ad98]
mov ecx, dword [0x46ad9c]
dec edi
mov dword [edi], edx
mov dx, word [0x46ada0]
mov dword [edi + 4], eax
mov dword [edi + 8], ecx
mov word [edi + 0xc], dx
mov edi, dword [esp + 0x18]
lea eax, [esp + 0x30]
push eax
call dword [sym.imp.KERNEL32.dll_LoadLibraryA]
mov esi, eax
test esi, esi
je 0x42bc11
push str.CUGP
push esi
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
push 0
mov dword [0x482ae0], eax
call ebp
mov eax, dword [esp + 0x5cc]
lea ecx, [esp + 0x334]
push edi
lea edx, [esp + 0x138]
push ecx
push edx
push ebx
push eax
call dword [0x482ae0]
add esp, 0x14
mov dword [esp + 0x10], eax
call dword [sym.imp.ole32.dll_CoUninitialize]
push esi
call dword [sym.imp.KERNEL32.dll_FreeLibrary]
cmp dword [esp + 0x10], 1
jne 0x42bc86
lea ecx, [esp + 0x30]
push 0x104
push ecx
push 0
call dword [sym.imp.KERNEL32.dll_GetModuleFileNameA]
test eax, eax
je 0x42bc67
lea edx, [esp + 0x30]
push 0x5c
push edx
call fcn.00447e30
mov byte [eax], 0
lea edi, [esp + 0x38]
or ecx, 0xffffffff
xor eax, eax
add esp, 8
mov dx, word [0x465930]
repne scasb al, byte es:[edi]
mov eax, dword [str._auth.dll]
mov ecx, dword [0x46592c]
dec edi
mov dword [edi], eax
mov dword [edi + 4], ecx
mov word [edi + 8], dx
lea eax, [esp + 0x30]
push eax
call dword [sym.imp.KERNEL32.dll_LoadLibraryA]
mov esi, eax
test esi, esi
je 0x42bfbb
push str.LOGLOGONUSER
jmp 0x42bf98
call fcn.0042a9c0
test al, al
je 0x42bd8b
mov eax, dword [esp + 0x1c]
test eax, eax
je 0x42bd8b
call fcn.0042aa00
test al, al
je 0x42bd8b
mov edi, dword [esp + 0x18]
cmp edi, 2
je 0x42bcbe
cmp edi, 3
jne 0x42bd8f
lea eax, [esp + 0x30]
push 0x104
push eax
push 0
call dword [sym.imp.KERNEL32.dll_GetModuleFileNameA]
test eax, eax
je 0x42bd2f
lea ecx, [esp + 0x30]
push 0x5c
push ecx
call fcn.00447e30
add esp, 8
test eax, eax
jne 0x42bcf2
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x5b8
ret
mov byte [eax], 0
lea edi, [esp + 0x30]
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
mov edx, dword [str.ldapauthnt4.dll]
mov eax, dword [0x46ad84]
mov ecx, dword [0x46ad88]
dec edi
mov dword [edi], edx
mov edx, dword [0x46ad8c]
mov dword [edi + 4], eax
mov al, byte [0x46ad90]
mov dword [edi + 8], ecx
mov dword [edi + 0xc], edx
mov byte [edi + 0x10], al
mov edi, dword [esp + 0x18]
lea ecx, [esp + 0x30]
push ecx
call dword [sym.imp.KERNEL32.dll_LoadLibraryA]
mov esi, eax
test esi, esi
je 0x42bd8f
push str.CUGP
push esi
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
push 0
mov dword [0x482ae0], eax
call ebp
mov ecx, dword [esp + 0x5cc]
lea edx, [esp + 0x334]
push edi
lea eax, [esp + 0x138]
push edx
push eax
push ebx
push ecx
call dword [0x482ae0]
add esp, 0x14
mov dword [esp + 0x10], eax
call dword [sym.imp.ole32.dll_CoUninitialize]
push esi
call dword [sym.imp.KERNEL32.dll_FreeLibrary]
jmp 0x42bd8f
mov edi, dword [esp + 0x18]
cmp dword [esp + 0x10], 1
je 0x42be9b
call fcn.0042a9c0
test al, al
je 0x42be90
mov eax, dword [esp + 0x1c]
test eax, eax
jne 0x42be90
mov eax, dword [esp + 0x14]
test eax, eax
jne 0x42be90
cmp edi, 2
je 0x42bdcd
cmp edi, 3
jne 0x42be90
lea edx, [esp + 0x30]
push 0x104
push edx
push 0
call dword [sym.imp.KERNEL32.dll_GetModuleFileNameA]
test eax, eax
je 0x42be36
lea eax, [esp + 0x30]
push 0x5c
push eax
call fcn.00447e30
add esp, 8
test eax, eax
jne 0x42be01
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x5b8
ret
mov byte [eax], 0
lea edi, [esp + 0x30]
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
mov ecx, dword [str.ldapauth9x.dll]
mov edx, dword [0x46ad74]
mov eax, dword [0x46ad78]
dec edi
mov dword [edi], ecx
mov ecx, dword [0x46ad7c]
mov dword [edi + 4], edx
mov dword [edi + 8], eax
mov dword [edi + 0xc], ecx
mov edi, dword [esp + 0x18]
lea edx, [esp + 0x30]
push edx
call dword [sym.imp.KERNEL32.dll_LoadLibraryA]
mov esi, eax
test esi, esi
je 0x42be90
push str.CUGP
push esi
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
push 0
mov dword [0x482ae0], eax
call ebp
mov edx, dword [esp + 0x5cc]
lea eax, [esp + 0x334]
push edi
lea ecx, [esp + 0x138]
push eax
push ecx
push ebx
push edx
call dword [0x482ae0]
add esp, 0x14
mov dword [esp + 0x10], eax
call dword [sym.imp.ole32.dll_CoUninitialize]
push esi
call dword [sym.imp.KERNEL32.dll_FreeLibrary]
cmp dword [esp + 0x10], 1
jne 0x42bf33
lea eax, [esp + 0x30]
push 0x104
push eax
push 0
call dword [sym.imp.KERNEL32.dll_GetModuleFileNameA]
test eax, eax
je 0x42beea
lea ecx, [esp + 0x30]
push 0x5c
push ecx
call fcn.00447e30
mov byte [eax], 0
lea edi, [esp + 0x38]
or ecx, 0xffffffff
xor eax, eax
add esp, 8
mov edx, dword [str._auth.dll]
repne scasb al, byte es:[edi]
mov eax, dword [0x46592c]
mov cx, word [0x465930]
dec edi
mov dword [edi], edx
mov dword [edi + 4], eax
mov word [edi + 8], cx
lea edx, [esp + 0x30]
push edx
call dword [sym.imp.KERNEL32.dll_LoadLibraryA]
mov esi, eax
test esi, esi
je 0x42bf23
push str.LOGLOGONUSER
push esi
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov ecx, dword [esp + 0x5cc]
lea edx, [esp + 0x134]
push ecx
push edx
call eax
add esp, 8
push esi
call dword [sym.imp.KERNEL32.dll_FreeLibrary]
pop edi
pop esi
pop ebp
mov eax, 2
pop ebx
add esp, 0x5b8
ret
lea eax, [esp + 0x30]
push 0x104
push eax
push 0
call dword [sym.imp.KERNEL32.dll_GetModuleFileNameA]
test eax, eax
je 0x42bf82
lea ecx, [esp + 0x30]
push 0x5c
push ecx
call fcn.00447e30
mov byte [eax], 0
lea edi, [esp + 0x38]
or ecx, 0xffffffff
xor eax, eax
add esp, 8
mov edx, dword [str._auth.dll]
repne scasb al, byte es:[edi]
mov eax, dword [0x46592c]
mov cx, word [0x465930]
dec edi
mov dword [edi], edx
mov dword [edi + 4], eax
mov word [edi + 8], cx
lea edx, [esp + 0x30]
push edx
call dword [sym.imp.KERNEL32.dll_LoadLibraryA]
mov esi, eax
test esi, esi
je 0x42bfbb
push str.LOGFAILEDUSER
push esi
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov ecx, dword [esp + 0x5cc]
lea edx, [esp + 0x134]
push ecx
push edx
call eax
add esp, 8
push esi
call dword [sym.imp.KERNEL32.dll_FreeLibrary]
mov eax, dword [esp + 0x10]
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x5b8
ret