Function at 0x781320e1
Capabilities:
Accept command line arguments
Get thread local storage value

Disassembly:
push 0x10
push 0x781b4b58
call fcn.78138c80
mov eax, dword [ebp + 0xc]
cmp eax, 1
jne 0x78132252
mov edi, 0x94
push edi
push 0
mov ebx, dword [sym.imp.KERNEL32.dll_GetProcessHeap]
call ebx
push eax
call dword [sym.imp.KERNEL32.dll_HeapAlloc]
mov esi, eax
test esi, esi
jne 0x7813211d
xor eax, eax
jmp 0x78132325
mov dword [esi], edi
push esi
call dword [sym.imp.KERNEL32.dll_GetVersionExA]
push esi
test eax, eax
jne 0x78132137
push eax
call ebx
push eax
call dword [sym.imp.KERNEL32.dll_HeapFree]
jmp 0x78132116
mov eax, dword [esi + 0x10]
mov dword [ebp + 0xc], eax
mov eax, dword [esi + 4]
mov dword [ebp - 0x1c], eax
mov eax, dword [esi + 8]
mov dword [ebp - 0x20], eax
mov edi, dword [esi + 0xc]
and edi, 0x7fff
xor esi, esi
push esi
call ebx
push eax
call dword [sym.imp.KERNEL32.dll_HeapFree]
mov ebx, dword [ebp + 0xc]
cmp ebx, 2
je 0x7813216c
or edi, 0x8000
mov ecx, dword [ebp - 0x1c]
mov eax, ecx
shl eax, 8
mov edx, dword [ebp - 0x20]
add eax, edx
mov dword [sym.MSVCR80.dll__osplatform], ebx
mov dword [sym.MSVCR80.dll__winver], eax
mov dword [sym.MSVCR80.dll__winmajor], ecx
mov dword [sym.MSVCR80.dll__winminor], edx
mov dword [sym.MSVCR80.dll__osver], edi
push 1
call fcn.78134a63
pop ecx
test eax, eax
je 0x78132116
call fcn.78132fd7
test eax, eax
jne 0x781321b9
call fcn.78134ac9
jmp 0x78132116
call fcn.78136d6d
test eax, eax
jge 0x781321c9
call fcn.78132cb6
jmp 0x781321af
call fcn.7813ac94
mov dword [0x781c3b28], eax
call dword [sym.imp.KERNEL32.dll_GetCommandLineA]
mov dword [sym.MSVCR80.dll__acmdln], eax
call fcn.7813abf5
mov dword [sym.MSVCR80.dll__wcmdln], eax
call fcn.781379b0
call fcn.78132739
test eax, eax
jl 0x7813223d
push esi
call fcn.78131902
pop ecx
test eax, eax
jne 0x7813223d
mov ecx, dword [ebp + 8]
call fcn.78131d76
test eax, eax
jne 0x78132247
mov dword [ebp - 4], esi
push 0x22
call fcn.78131aca
pop ecx
jmp 0x78132236
mov dword [ebp - 4], 0xfffffffe
call fcn.78136fad
jmp 0x781321c2
inc dword [0x781c3b1c]
jmp 0x78132322
xor edi, edi
cmp eax, edi
jne 0x78132299
cmp dword [0x781c3b1c], edi
jle 0x78132116
dec dword [0x781c3b1c]
cmp dword [0x781c37fc], edi
jne 0x78132277
call sym.MSVCR80.dll__cexit
call fcn.78131a1c
cmp dword [ebp + 0x10], edi
jne 0x78132322
call fcn.78136fad
call fcn.78132cb6
call fcn.78134ac9
jmp 0x78132322
cmp eax, 2
jne 0x7813230f
call sym.MSVCR80.dll___set_flsgetvalue
push dword [0x781bf1f0]
push dword [0x781bf1f4]
call dword [sym.imp.KERNEL32.dll_TlsGetValue]
call eax
test eax, eax
jne 0x78132322
push 0x214
push 1
call sym.MSVCR80.dll__calloc_crt
pop ecx
pop ecx
mov esi, eax
cmp esi, edi
je 0x78132116
push esi
push dword [0x781bf1f0]
push dword [0x781c3d98]
call sym.MSVCR80.dll__decode_pointer
pop ecx
call eax
test eax, eax
je 0x78132303
push edi
push esi
call sym.MSVCR80.dll__initptd
pop ecx
pop ecx
call dword [sym.imp.KERNEL32.dll_GetCurrentThreadId]
mov dword [esi], eax
or dword [esi + 4], 0xffffffff
jmp 0x78132322
push esi
call sym.MSVCR80.dll_free
pop ecx
jmp 0x78132116
cmp eax, 3
jne 0x7813231d
push edi
call fcn.78132f62
pop ecx
jmp 0x78132322
call sub.msvcrt.dll__getdrives
xor eax, eax
inc eax
call fcn.78138cc5
ret