Function at 0x1004bae7
Capabilities:
Accept command line arguments

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x24
push ebx
push esi
push edi
push 2
pop esi
mov edi, ecx
lea ecx, [ebp - 0x24]
push esi
call fcn.100172b6
mov dword [ebp - 0xc], 0x9b58331c
xor ebx, ebx
mov dword [ebp - 0xc], 0xdf8e3bf1
mov dword [ebp - 0xc], 9
mov dword [ebp - 0xc], ebx
jmp 0x1004bb26
mov ecx, dword [ebp - 0xc]
mov eax, dword [ebp - 0x24]
mov dword [eax + ecx*4], esi
inc dword [ebp - 0xc]
cmp dword [ebp - 0xc], esi
jl 0x1004bb1a
mov esi, dword [ebp - 0x24]
cmp dword [esi], ebx
je 0x1004bb51
mov edx, dword [esi + 4]
xor ecx, ecx
cmp dword [esi], edx
setle cl
xor eax, eax
cmp ecx, edx
setge al
cmp eax, 3
jle 0x1004bb51
test edx, edx
je 0x1004bb51
xor ecx, ecx
inc ecx
jmp 0x1004bb53
mov ecx, ebx
xor eax, eax
cmp ecx, dword [esi]
setne al
mov dword [ebp - 0xc], eax
mov eax, dword [ebp - 0xc]
mov eax, dword [ebp - 0xc]
mov eax, dword [ebp - 0x24]
mov edx, dword [eax]
mov eax, dword [ebp - 0xc]
add eax, edx
imul ecx, eax, 0x2dc6a476
mov eax, dword [ebp - 0x24]
mov eax, dword [eax + 4]
sub eax, ecx
xor ecx, ecx
cmp eax, edx
setg cl
xor eax, eax
cmp ecx, 0xd022
setle al
mov dword [ebp - 0xc], eax
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0xc], eax
mov byte [ebp - 1], bl
cmp byte [ebp - 1], bl
je 0x1004bba5
push ebx
call dword [sym.imp.KERNEL32.dll_DeleteCriticalSection]
lea ecx, [ebp - 0x24]
call fcn.10017ad3
push edi
push 1
push 0x20c8
call fcn.10046595
push edi
call fcn.100301a1
mov dword [ebp - 8], 0x2c03342e
add esp, 0x10
mov dword [ebp - 0xc], 0x8d0336d0
mov edi, eax
mov dword [ebp - 8], 0x1b
jmp 0x1004bccc
push 4
lea ecx, [ebp - 0x18]
call fcn.100172b6
mov dword [ebp - 0xc], ebx
mov dword [ebp - 0xc], 0x31966c47
mov dword [ebp - 0xc], ebx
jmp 0x1004bc08
mov ecx, dword [ebp - 0xc]
mov eax, dword [ebp - 0x18]
mov dword [eax + ecx*4], 0x45307222
inc dword [ebp - 0xc]
cmp dword [ebp - 0xc], 4
jl 0x1004bbf8
mov ecx, dword [ebp - 0x18]
xor edx, edx
mov dword [ebp - 0xc], 3
mov eax, dword [ebp - 0xc]
mov esi, dword [ebp - 0x18]
cmp eax, dword [ecx + 4]
mov ecx, dword [ebp - 8]
mov eax, dword [ebp - 8]
setle dl
imul ecx, edx
xor edx, edx
cmp ecx, eax
mov eax, dword [ebp - 0x18]
setl dl
sub edx, dword [esi + 8]
mov esi, dword [esi + 8]
neg edx
sbb edx, edx
xor ecx, ecx
inc edx
imul edx, dword [eax]
mov dword [ebp - 0xc], edx
mov eax, dword [ebp - 0xc]
cmp esi, eax
mov eax, dword [ebp - 0x18]
setg cl
xor edx, edx
cmp ecx, dword [eax]
setg dl
sub edx, 0xfffffffb
neg edx
sbb edx, edx
add edx, 0x5343
neg edx
sbb edx, edx
inc edx
cmp esi, edx
jne 0x1004bc84
mov dword [ebp - 0xc], 0x477ae271
mov dword [ebp - 0xc], 0x2f4e55b6
jmp 0x1004bca2
mov byte [ebp - 1], bl
cmp byte [ebp - 1], bl
je 0x1004bca2
push ebx
push 0x442
push 0x174d
push 0x2191
call dword [sym.imp.KERNEL32.dll_RaiseException]
mov dword [ebp - 0xc], ebx
jmp 0x1004bcbb
mov byte [ebp - 1], bl
cmp byte [ebp - 1], bl
je 0x1004bcb5
call dword [sym.imp.KERNEL32.dll_GetCommandLineW]
mov eax, dword [ebp - 0xc]
inc dword [ebp - 0xc]
cmp dword [ebp - 0xc], 3
jle 0x1004bca7
lea ecx, [ebp - 0x18]
call fcn.10017ad3
dec dword [ebp - 8]
cmp dword [ebp - 8], 0xffffffe6
jne 0x1004bbdf
mov dword [ebp - 8], ebx
jmp 0x1004bcfd
mov byte [ebp - 1], bl
cmp byte [ebp - 1], bl
je 0x1004bcfa
push 0x844
push 0x2699
call dword [sym.imp.USER32.dll_GetDesktopWindow]
push eax
call dword [sym.imp.USER32.dll_EnableScrollBar]
dec dword [ebp - 8]
cmp dword [ebp - 8], 0xfffffffa
je 0x1004bcdb
mov eax, edi
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret