Function at 0x1004a1d
Capabilities:
Link many functions at runtime

Disassembly:
mov edi, edi
push ebp
mov ebp, esp
sub esp, 0xd14
mov eax, dword [0x100c004]
push ebx
push esi
push edi
mov edi, dword [ebp + 0x10]
mov esi, 0x100cfe0
xor ebx, ebx
push esi
mov dword [ebp - 4], eax
mov dword [ebp - 0xd14], edi
mov byte [ebp - 0x504], bl
call fcn.01003282
lea eax, [ebp - 0x504]
push eax
push esi
call fcn.010034d6
push 0x1001fe4
push 2
call fcn.010035e7
pop ecx
pop ecx
push 0x1001fd4
mov dword [0x100cfb8], ebx
mov dword [0x100cfc0], ebx
mov dword [0x100d008], ebx
mov dword [0x100cfc8], ebx
mov dword [0x100d004], ebx
mov dword [0x100cfc4], ebx
mov dword [0x100cfbc], ebx
call dword [sym.imp.KERNEL32.dll_LoadLibraryA]
cmp eax, ebx
mov dword [0x100cfb8], eax
jne 0x1004ae9
call dword [sym.imp.KERNEL32.dll_GetLastError]
push ebx
push 0x100
mov esi, eax
lea eax, [ebp - 0x104]
push eax
push ebx
push esi
push ebx
push 0x1000
call dword [sym.imp.KERNEL32.dll_FormatMessageA]
lea eax, [ebp - 0x104]
push eax
push esi
push 0x1001fac
push 1
call fcn.010035e7
add esp, 0x10
push 0xfffffffffffffff6
jmp 0x1004f84
mov esi, dword [sym.imp.KERNEL32.dll_GetProcAddress]
push 0x1001f9c
push eax
call esi
cmp eax, ebx
mov dword [0x100cfc0], eax
jne 0x1004b32
call dword [sym.imp.KERNEL32.dll_GetLastError]
push ebx
push 0x100
mov esi, eax
lea eax, [ebp - 0x104]
push eax
push ebx
push esi
push ebx
push 0x1000
call dword [sym.imp.KERNEL32.dll_FormatMessageA]
lea eax, [ebp - 0x104]
push eax
push esi
push 0x1001f58
jmp 0x1004ad8
push 0x1001f44
push dword [0x100cfb8]
call esi
cmp eax, ebx
mov dword [0x100d008], eax
jne 0x1004b7d
call dword [sym.imp.KERNEL32.dll_GetLastError]
push ebx
push 0x100
mov esi, eax
lea eax, [ebp - 0x104]
push eax
push ebx
push esi
push ebx
push 0x1000
call dword [sym.imp.KERNEL32.dll_FormatMessageA]
lea eax, [ebp - 0x104]
push eax
push esi
push 0x1001f00
jmp 0x1004ad8
push 0x1001eec
push dword [0x100cfb8]
call esi
cmp eax, ebx
mov dword [0x100cfc8], eax
jne 0x1004bc8
call dword [sym.imp.KERNEL32.dll_GetLastError]
push ebx
push 0x100
mov esi, eax
lea eax, [ebp - 0x104]
push eax
push ebx
push esi
push ebx
push 0x1000
call dword [sym.imp.KERNEL32.dll_FormatMessageA]
lea eax, [ebp - 0x104]
push eax
push esi
push 0x1001ea8
jmp 0x1004ad8
push 0x1001e98
push dword [0x100cfb8]
call esi
cmp eax, ebx
mov dword [0x100d004], eax
jne 0x1004c13
call dword [sym.imp.KERNEL32.dll_GetLastError]
push ebx
push 0x100
mov esi, eax
lea eax, [ebp - 0x104]
push eax
push ebx
push esi
push ebx
push 0x1000
call dword [sym.imp.KERNEL32.dll_FormatMessageA]
lea eax, [ebp - 0x104]
push eax
push esi
push 0x1001e58
jmp 0x1004ad8
push 0x1001e44
push dword [0x100cfb8]
call esi
cmp eax, ebx
mov dword [0x100cfc4], eax
je 0x1004c3f
push 0x1001e30
push dword [0x100cfb8]
call esi
cmp eax, ebx
mov dword [0x100cfbc], eax
jne 0x1004c74
call dword [sym.imp.KERNEL32.dll_GetLastError]
push ebx
push 0x100
mov esi, eax
lea eax, [ebp - 0x104]
push eax
push ebx
push esi
push ebx
push 0x1000
call dword [sym.imp.KERNEL32.dll_FormatMessageA]
lea eax, [ebp - 0x104]
push eax
push esi
push 0x1001de8
jmp 0x1004ad8
push dword [0x100cff0]
call dword [0x100d004]
push dword [0x100cffc]
call dword [0x100cfc4]
push dword [0x100cff8]
call dword [0x100cfbc]
mov eax, edi
mov dword [ebp - 0xd0c], ebx
lea esi, [eax + 1]
mov cl, byte [eax]
inc eax
cmp cl, bl
jne 0x1004ca3
sub eax, esi
add eax, 2
push eax
call fcn.01005424
mov dword [ebp - 0xd08], eax
mov eax, edi
pop ecx
lea esi, [eax + 1]
mov cl, byte [eax]
inc eax
cmp cl, bl
jne 0x1004cc1
sub eax, esi
add eax, 2
push eax
call fcn.01005424
pop ecx
mov ecx, edi
mov dword [ebp - 0xd10], eax
mov word [eax], 0x20
mov esi, ecx
mov dl, byte [ecx]
inc ecx
cmp dl, bl
jne 0x1004ce3
sub ecx, esi
mov edi, eax
mov edx, ecx
dec edi
mov cl, byte [edi + 1]
inc edi
cmp cl, bl
jne 0x1004cf1
mov ecx, edx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
cmp byte [eax], bl
mov edi, dword [ebp - 0xd08]
mov esi, eax
je 0x1004d8f
mov cl, byte [esi]
xor edx, edx
cmp cl, 0x22
sete dl
xor dword [ebp - 0xd0c], edx
jne 0x1004d64
cmp cl, 0x20
je 0x1004d2f
cmp cl, 9
jne 0x1004d64
lea ecx, [esi + 1]
mov dl, byte [ecx]
cmp dl, 0x2f
je 0x1004d43
cmp dl, 0x2d
je 0x1004d43
cmp dl, 0x40
jne 0x1004d64
push 0x400
lea eax, [ebp - 0x504]
push eax
push 0x100cfe0
push ecx
call fcn.01004018
mov esi, eax
mov eax, dword [ebp - 0xd10]
jmp 0x1004d6a
mov cl, byte [esi]
mov byte [edi], cl
inc edi
inc esi
cmp byte [esi], bl
jne 0x1004d13
cmp dword [ebp - 0xd0c], ebx
je 0x1004d8f
lea eax, [ebp - 0x504]
push 0x10013c0
push eax
call fcn.01005363
mov eax, dword [ebp - 0xd10]
pop ecx
pop ecx
push eax
call fcn.010053c2
pop ecx
push dword [ebp - 0xd08]
mov byte [edi], bl
call fcn.01003ad6
mov esi, eax
cmp byte [esi], bl
je 0x1004ddc
lea eax, [ebp - 0x504]
push eax
lea eax, [ebp - 0xd08]
push eax
push esi
call fcn.01003115
cmp eax, 1
jne 0x1004ddc
mov eax, dword [ebp - 0xd08]
mov ecx, dword [0x100d000]
mov dword [eax + 0x14], ecx
mov eax, dword [ebp - 0xd08]
mov dword [0x100d000], eax
push esi
call fcn.010053c2
push dword [ebp - 0xd14]
push 0x1001dc0
push 2
call fcn.010035e7
add esp, 0x10
mov esi, 0x100cfe0
push esi
call fcn.01003620
cmp byte [ebp - 0x504], bl
lea eax, [ebp - 0x504]
je 0x1004e2f
cmp dword [0x100cff0], ebx
jne 0x1004e24
push 0x10
push 0x1001dac
jmp 0x1004ec0
push eax
push 0x1001d84
jmp 0x1004ed3
push eax
push esi
call fcn.010036f3
test eax, eax
jne 0x1004e53
cmp dword [0x100cff0], ebx
lea eax, [ebp - 0x504]
je 0x1004eb9
push eax
push 0x1001d64
jmp 0x1004ed3
cmp dword [0x100d000], ebx
jne 0x1004e84
cmp dword [0x100cff0], ebx
jne 0x1004e71
push 0x10
push 0x1001d54
push 0x1001d3c
jmp 0x1004ec1
push 0x1001d3c
push 1
call fcn.010035e7
pop ecx
pop ecx
jmp 0x1004f83
cmp dword [0x100cfe0], ebx
je 0x1004ee2
call fcn.01003e65
push 0x400
lea eax, [ebp - 0x504]
push eax
push esi
call fcn.01004609
test eax, eax
jne 0x1004f83
cmp dword [0x100cff0], ebx
lea eax, [ebp - 0x504]
jne 0x1004ecd
push 0x10
push 0x1001d54
push eax
push ebx
call dword [sym.imp.USER32.dll_MessageBoxA]
call fcn.01003b93
push eax
push 0x1001d1c
push 1
call fcn.010035e7
add esp, 0xc
jmp 0x1004ae2
push 0x1001d08
push 1
call fcn.010035e7
mov esi, dword [0x100d000]
pop ecx
pop ecx
jmp 0x1004f7b
lea eax, [ebp - 0x504]
push eax
push ebx
push esi
mov byte [ebp - 0x504], bl
call dword [0x100cfc0]
mov edi, eax
cmp edi, ebx
jge 0x1004f78
push edi
lea eax, [ebp - 0x504]
push eax
push dword [esi + 4]
push 0x1001cd4
push 1
call fcn.010035e7
add esp, 0x14
cmp dword [0x100cff0], ebx
jne 0x1004f6c
push edi
lea eax, [ebp - 0x504]
push eax
push dword [esi + 4]
lea eax, [ebp - 0xd04]
push 0x1001cb8
push eax
call fcn.01005363
add esp, 0x14
push 0x10
push 0x1001ca0
lea eax, [ebp - 0xd04]
push eax
push ebx
call dword [sym.imp.USER32.dll_MessageBoxA]
cmp dword [0x100cff4], ebx
je 0x1004ae2
mov esi, dword [esi + 0x14]
cmp esi, ebx
jne 0x1004efb
push ebx
call fcn.01003b54
int3