Function at 0x4360d0
Capabilities:
Link many functions at runtime

Disassembly:
push ebp
mov ebp, esp
sub esp, 8
push ebx
push esi
push edi
call dword [sym.imp.KERNEL32.dll_GetVersion]
mov dword [ebp - 4], eax
cmp dword [ebp - 4], 0x80000000
jae 0x436112
mov dword [0x47c7e8], 0
mov dword [0x47c7ec], 0
mov dword [0x47c7e4], 1
jmp 0x4361a0
xor eax, eax
mov al, byte [ebp - 4]
cmp eax, 4
jge 0x436182
xor eax, eax
mov al, byte [ebp - 4]
cmp eax, 3
jne 0x43615f
xor eax, eax
mov al, byte [ebp - 3]
cmp eax, 0x5e
jg 0x43615f
mov dword [0x47c7e8], 0
mov dword [0x47c7e4], 0
mov dword [0x47c7ec], 1
jmp 0x43617d
mov dword [0x47c7e8], 1
mov dword [0x47c7e4], 0
mov dword [0x47c7ec], 0
jmp 0x4361a0
mov dword [0x47c7e8], 1
mov dword [0x47c7e4], 0
mov dword [0x47c7ec], 0
cmp dword [0x47c7e8], 0
je 0x43624b
cmp dword [0x47c798], 0
je 0x4361c7
cmp dword [0x47c798], 0xffffffff
jne 0x4361e6
push 0
push 0x80
push 4
push 0
push 0
push 0
push str..VSAUTHD.VXD
call dword [sym.imp.KERNEL32.dll_CreateFileA]
mov dword [0x47c798], eax
cmp dword [0x47c798], 0xffffffff
jne 0x4361fa
xor al, al
jmp 0x4364df
call dword [sym.imp.KERNEL32.dll_GetCurrentThread]
mov dword [0x47c79c], eax
cmp dword [0x47c7a0], 0
jne 0x43623f
push 0x47c804
push 1
push 1
push 0
call dword [sym.imp.KERNEL32.dll_CreateSemaphoreA]
mov dword [0x47c7a0], eax
push str.SAuth95PassThruSem
push 0
push 0x100002
call dword [sym.imp.KERNEL32.dll_OpenSemaphoreA]
mov dword [0x47c7a0], eax
mov al, 1
jmp 0x4364df
cmp dword [0x47c7ec], 0
je 0x43647d
cmp dword [0x47c7f0], 0
jne 0x436451
push str.swa32ut.dll
call dword [sym.imp.KERNEL32.dll_LoadLibraryA]
mov dword [0x484100], eax
cmp dword [0x484100], 0
je 0x43644a
push str.setup
mov eax, dword [0x484100]
push eax
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov dword [0x4840b8], eax
push str.first
mov eax, dword [0x484100]
push eax
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov dword [0x4840fc], eax
push str.next
mov eax, dword [0x484100]
push eax
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov dword [0x4840e0], eax
push str.access
mov eax, dword [0x484100]
push eax
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov dword [0x484104], eax
push str.databyte
mov eax, dword [0x484100]
push eax
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov dword [0x4840dc], eax
push str.gndtest
mov eax, dword [0x484100]
push eax
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov dword [0x484108], eax
push str.romdata
mov eax, dword [0x484100]
push eax
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov dword [0x4840bc], eax
push str.dowcheck
mov eax, dword [0x484100]
push eax
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov dword [0x4840c4], eax
push str.keyopen
mov eax, dword [0x484100]
push eax
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov dword [0x4840d0], eax
push str.keyclose
mov eax, dword [0x484100]
push eax
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov dword [0x4840ac], eax
push str.OverdriveOn
mov eax, dword [0x484100]
push eax
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov dword [0x4840c0], eax
push str.OverdriveOff
mov eax, dword [0x484100]
push eax
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov dword [0x4840d4], eax
cmp dword [0x4840b8], 0
je 0x436428
cmp dword [0x4840fc], 0
je 0x436428
cmp dword [0x4840e0], 0
je 0x436428
cmp dword [0x484104], 0
je 0x436428
cmp dword [0x4840dc], 0
je 0x436428
cmp dword [0x484108], 0
je 0x436428
cmp dword [0x4840bc], 0
je 0x436428
cmp dword [0x4840c4], 0
je 0x436428
cmp dword [0x4840ac], 0
je 0x436428
cmp dword [0x4840d0], 0
je 0x436428
mov dword [0x47c7f0], 1
push 0x4376f4
call fcn.00443639
add esp, 4
jmp 0x436445
mov eax, dword [0x484100]
push eax
call dword [sym.imp.KERNEL32.dll_FreeLibrary]
mov dword [0x47c7f0], 0
xor al, al
jmp 0x4364df
jmp 0x436451
xor al, al
jmp 0x4364df
cmp dword [0x4840c4], 0
je 0x43646c
call dword [0x4840c4]
mov byte [ebp - 8], al
jmp 0x436470
mov byte [ebp - 8], 0
mov al, byte [ebp - 8]
jmp 0x4364df
cmp dword [0x47c7e4], 0
je 0x4364d8
push 0
push 0x80
push 3
push 0
push 0
push 0xc0000000
push 0x47c8b0
call dword [sym.imp.KERNEL32.dll_CreateFileA]
mov dword [0x4840e4], eax
cmp dword [0x4840e4], 0xffffffff
jne 0x4364c5
xor al, al
jmp 0x4364df
mov eax, dword [0x4840e4]
push eax
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov al, 1
jmp 0x4364df
xor al, al
jmp 0x4364df
pop edi
pop esi
pop ebx
leave
ret