Function at 0x100aafe0
Capabilities:
Resolve function by parsing pe exports

Disassembly:
push ebp
push edi
push esi
push ebx
sub esp, 0x2c
mov ebx, dword [esp + 0x40]
mov ecx, dword [ebx + 0x18]
test ecx, ecx
jne 0x100ab006
mov eax, dword [ebx + 0x3a80]
mov edi, dword [eax]
test edi, edi
je 0x100ab076
add esp, 0x2c
pop ebx
pop esi
pop edi
pop ebp
ret
mov eax, dword [ebx + 0x9480]
add eax, 0x88
mov dword [esp], eax
call fcn.100a9f90
mov eax, dword [ebx + 0x9480]
mov edx, dword [eax + 0x84]
test edx, edx
je 0x100ab05b
jmp 0x100ab170
lea edx, [eax + 0x88]
add eax, 0xa0
mov dword [esp + 4], edx
mov dword [esp], eax
call fcn.100aa420
mov eax, dword [ebx + 0x9480]
mov ebp, dword [eax + 0x84]
test ebp, ebp
jne 0x100ab170
cmp byte [eax + 1], 0
jne 0x100ab030
add eax, 0x88
mov dword [esp + 0x40], eax
add esp, 0x2c
pop ebx
pop esi
pop edi
pop ebp
jmp fcn.100aa000
mov eax, dword [ebx + 0x9480]
mov esi, dword [eax + 0x58]
test esi, esi
je 0x100aaffe
mov dword [esp + 4], ebx
mov dword [esp], 0x10091140
call fcn.10029d00
mov esi, dword [ebx + 0x9480]
mov edx, dword [esi + 0xc]
mov eax, dword [esi + 0x50]
test edx, edx
mov edi, dword [eax]
je 0x100ab0be
mov dword [esp + 4], edx
mov dword [esp], ebx
call fcn.1002d990
mov esi, dword [ebx + 0x9480]
mov eax, dword [esi + 0x50]
mov dword [esi + 0xc], edi
mov eax, dword [eax]
add dword [edi + 0x2eb8], 1
movzx edi, byte [eax + 0x82]
lea eax, [edi + 1]
mov dword [esp + 0x1c], eax
jmp 0x100ab11a
mov ecx, dword [esi + 0x58]
test ecx, ecx
je 0x100ab14b
mov eax, dword [esi + 0x84]
sub edi, 1
mov edx, dword [esi + 0x7c]
lea ecx, [eax + 1]
lea ebp, [edx + eax*4]
mov eax, dword [esi + 0x50]
mov dword [esi + 0x84], ecx
mov dword [esp], eax
call fcn.1002d920
mov dword [ebp], eax
sub dword [esi + 0x58], 1
cmp edi, 0xffffffff
je 0x100ab1d0
mov eax, dword [esi + 0x80]
cmp dword [esi + 0x84], eax
jl 0x100ab0e0
mov dword [esp + 8], 0x2f
mov dword [esp + 4], str.encoder_lookahead.c
mov dword [esp], str.dst__i_size___dst__i_max_size
call fcn.102dafab
mov ecx, dword [esi + 0x58]
test ecx, ecx
jne 0x100ab0e7
mov dword [esp + 8], 0x30
mov dword [esp + 4], str.encoder_lookahead.c
mov dword [esp], str.src__i_size
call fcn.102dafab
jmp 0x100ab0e7
mov edx, dword [eax + 0x7c]
mov edx, dword [edx]
movzx esi, byte [edx + 0x82]
lea esi, [esi]
mov eax, dword [eax + 0x7c]
sub esi, 1
mov dword [esp], eax
call fcn.1002d920
mov dword [esp + 4], eax
mov eax, dword [ebx + 0x3a80]
mov dword [esp], eax
call fcn.1002d850
mov eax, dword [ebx + 0x9480]
sub dword [eax + 0x84], 1
cmp esi, 0xffffffff
jne 0x100ab180
add eax, 0xa4
mov dword [esp], eax
call fcn.100aa180
mov eax, dword [ebx + 0x9480]
jmp 0x100ab061
lea eax, [esi + 0xa0]
add esi, 0x78
mov dword [esp], eax
call fcn.100aa180
mov dword [esp], esi
call fcn.100aa180
mov eax, dword [ebx + 0x9480]
cmp byte [eax + 2], 0
je 0x100ab221
mov edx, dword [eax + 0xc]
mov edx, dword [edx + 0x10]
sub edx, 1
cmp edx, 1
ja 0x100ab221
mov eax, dword [esp + 0x1c]
mov dword [esp + 4], ebx
mov dword [esp], fcn.1008e510
mov dword [esp + 8], eax
call fcn.10029d00
mov eax, dword [ebx + 0x9480]
mov edx, dword [eax + 0x84]
test edx, edx
je 0x100aaffe
mov eax, dword [eax + 0x7c]
mov edx, dword [eax]
movzx esi, byte [edx + 0x82]
jmp 0x100ab246
mov eax, dword [eax + 0x7c]
sub esi, 1
mov dword [esp], eax
call fcn.1002d920
mov dword [esp + 4], eax
mov eax, dword [ebx + 0x3a80]
mov dword [esp], eax
call fcn.1002d850
mov eax, dword [ebx + 0x9480]
sub dword [eax + 0x84], 1
test esi, esi
jne 0x100ab240
add eax, 0xa4
mov dword [esp + 0x40], eax
add esp, 0x2c
pop ebx
pop esi
pop edi
pop ebp
jmp fcn.100aa180