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

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x111eed58
mov eax, dword fs:[0]
push eax
sub esp, 0x30
push ebx
push esi
push edi
mov eax, dword [0x11279148]
xor eax, ebp
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov edi, dword [ebp + 8]
mov eax, dword [edi + 0x14]
mov ecx, dword [eax + 0x60]
and ecx, 0x70
cmp cl, 0x70
mov ecx, dword [edi + 0x24]
je 0x1100a723
mov edx, dword [ecx + 0x28]
mov ecx, dword [ecx + 0x2c]
xor ebx, ebx
mov dword [ebp - 0x20], edx
mov dword [ebp - 0x1c], ecx
cmp dword [eax + 0x40], ebx
jne 0x1100a6d8
mov esi, dword [eax + 0x4c]
mov edx, dword [eax + 0x48]
cmp esi, ebx
ja 0x1100a6cd
cmp edx, ebx
jbe 0x1100a6d8
add dword [ebp - 0x20], edx
mov ecx, dword [ebp - 0x1c]
adc ecx, esi
mov dword [ebp - 0x1c], ecx
mov esi, dword [eax + 8]
cmp ecx, 0x7fffffff
jb 0x1100a70f
ja 0x1100a6eb
cmp dword [ebp - 0x20], 0xffffffff
jbe 0x1100a70f
mov eax, dword [esi]
mov edx, dword [eax + 0x14]
mov ecx, esi
call edx
sub eax, dword [ebp - 0x20]
push 2
sbb edx, dword [ebp - 0x1c]
neg eax
adc edx, ebx
neg edx
push edx
push eax
mov eax, dword [esi]
mov edx, dword [eax + 0x10]
mov ecx, esi
call edx
jmp 0x1100a735
mov ecx, dword [ebp - 0x1c]
mov eax, dword [esi]
mov edx, dword [ebp - 0x20]
mov eax, dword [eax + 0x10]
push ebx
push ecx
push edx
mov ecx, esi
call eax
jmp 0x1100a735
mov edx, dword [ecx + 0x2c]
mov ecx, dword [ecx + 0x28]
push 1
push edx
push ecx
push eax
call fcn.11010200
xor ebx, ebx
mov edx, dword [edi + 0xc]
shr edx, 1
and dl, 1
push edi
mov byte [ebp - 0xe], dl
mov byte [ebp - 0xd], bl
mov dword [ebp - 0x38], ebx
mov dword [ebp - 0x34], ebx
call fcn.1100bca0
mov eax, dword [edi + 0x24]
mov dword [ebp - 0x28], ebx
mov dword [ebp - 0x24], ebx
cmp dword [eax + 0x1c], ebx
jb 0x1100a9a8
ja 0x1100a770
cmp dword [eax + 0x18], ebx
jbe 0x1100a9a8
lea esp, [esp]
push 0xb8
call fcn.111709c0
add esp, 4
cmp eax, ebx
je 0x1100a84b
mov edx, dword [ebp + 8]
mov dword [eax], vtable.CZipFileHeader.0
mov dword [eax + 0x48], ebx
mov dword [eax + 0x4c], ebx
mov dword [eax + 0x50], ebx
mov dword [eax + 0x58], ebx
mov dword [eax + 0x5c], ebx
mov dword [eax + 0x60], ebx
mov dword [eax + 0x9c], ebx
mov dword [eax + 0x98], ebx
mov dword [eax + 0xa0], ebx
mov ecx, vtable.CZipAutoBuffer.0
mov dword [eax + 0x94], ecx
mov dword [eax + 0xa4], ecx
mov dword [eax + 0xac], ebx
mov dword [eax + 0xa8], ebx
mov dword [eax + 0xb0], ebx
xor ecx, ecx
mov dword [eax + 0x10], ecx
mov ecx, 8
mov word [eax + 0xe], cx
xor ecx, ecx
mov dword [eax + 0x80], ebx
mov dword [eax + 0x78], ebx
mov dword [eax + 0x7c], ebx
mov dword [eax + 0x70], ebx
mov dword [eax + 0x74], ebx
mov dword [eax + 0x68], ebx
mov dword [eax + 0x6c], ebx
mov byte [eax + 8], bl
mov dword [eax + 0x14], ebx
mov dword [eax + 0x40], ebx
mov dword [eax + 0x44], ebx
mov dword [eax + 0x20], ebx
mov dword [eax + 0x24], ebx
mov dword [eax + 0x18], ebx
mov dword [eax + 0x1c], ebx
mov dword [eax + 0x38], ebx
mov dword [eax + 0x3c], ebx
mov dword [eax + 0x30], ebx
mov dword [eax + 0x34], ebx
mov dword [eax + 0x88], ebx
mov dword [eax + 0x28], ebx
mov dword [eax + 0x84], 0xff0000
mov word [eax + 0xc], cx
mov dword [eax + 0x8c], edx
mov dword [eax + 0x90], ebx
mov edi, eax
mov dword [ebp - 0x14], eax
jmp 0x1100a850
xor edi, edi
mov dword [ebp - 0x14], edi
mov eax, dword [ebp + 8]
mov esi, dword [eax + 0x1c]
mov eax, dword [esi + 4]
lea ecx, [ebp - 0x18]
mov dword [ebp - 0x18], edi
cmp ecx, eax
jae 0x1100a8d0
mov ecx, dword [esi]
lea edx, [ebp - 0x18]
cmp ecx, edx
ja 0x1100a8d0
sub edx, ecx
mov ecx, dword [esi + 8]
sar edx, 2
mov dword [ebp - 0x1c], edx
cmp eax, ecx
jne 0x1100a8be
mov edi, dword [esi]
sub eax, edi
sar eax, 2
cmp eax, 0x3ffffffe
ja 0x1100ab5a
sub ecx, edi
inc eax
sar ecx, 2
cmp eax, ecx
jbe 0x1100a8bb
mov edx, ecx
shr edx, 1
mov edi, 0x3fffffff
sub edi, edx
cmp edi, ecx
jae 0x1100a8aa
xor ecx, ecx
jmp 0x1100a8ac
add ecx, edx
cmp ecx, eax
jae 0x1100a8b2
mov ecx, eax
push ecx
call fcn.11009680
mov edx, dword [ebp - 0x1c]
mov edi, dword [ebp - 0x14]
mov eax, dword [esi]
lea edx, [eax + edx*4]
mov eax, dword [esi + 4]
cmp eax, ebx
je 0x1100a920
mov ecx, dword [edx]
mov dword [eax], ecx
jmp 0x1100a920
mov ecx, dword [esi + 8]
cmp eax, ecx
jne 0x1100a917
mov edx, dword [esi]
sub eax, edx
sar eax, 2
cmp eax, 0x3ffffffe
ja 0x1100ab5a
sub ecx, edx
inc eax
sar ecx, 2
cmp eax, ecx
jbe 0x1100a917
mov edx, ecx
shr edx, 1
mov edi, 0x3fffffff
sub edi, edx
cmp edi, ecx
jae 0x1100a906
xor ecx, ecx
jmp 0x1100a908
add ecx, edx
cmp ecx, eax
jae 0x1100a90e
mov ecx, eax
push ecx
call fcn.11009680
mov edi, dword [ebp - 0x14]
mov eax, dword [esi + 4]
cmp eax, ebx
je 0x1100a920
mov dword [eax], edi
add dword [esi + 4], 4
mov eax, dword [esi + 4]
sub eax, dword [esi]
sar eax, 2
cmp eax, ebx
je 0x1100ab65
mov esi, 1
push esi
push edi
call fcn.11006e10
test al, al
je 0x1100ab71
cmp byte [ebp - 0xe], bl
je 0x1100a97e
cmp byte [ebp - 0xd], bl
je 0x1100a95a
add dword [edi + 0x40], ebx
adc dword [edi + 0x44], esi
jmp 0x1100a97e
mov eax, dword [edi + 0x44]
mov ecx, dword [edi + 0x40]
cmp eax, dword [ebp - 0x34]
ja 0x1100a978
jb 0x1100a96c
cmp ecx, dword [ebp - 0x38]
jae 0x1100a978
add dword [edi + 0x40], ebx
mov byte [ebp - 0xd], 1
adc dword [edi + 0x44], esi
jmp 0x1100a97e
mov dword [ebp - 0x38], ecx
mov dword [ebp - 0x34], eax
add dword [ebp - 0x28], esi
mov ecx, dword [ebp - 0x24]
mov edx, dword [ebp + 8]
mov eax, dword [edx + 0x24]
adc ecx, ebx
mov dword [ebp - 0x24], ecx
cmp ecx, dword [eax + 0x1c]
jb 0x1100a770
ja 0x1100a9a6
mov ecx, dword [ebp - 0x28]
cmp ecx, dword [eax + 0x18]
jb 0x1100a770
mov edi, edx
test byte [edi + 0xc], 1
je 0x1100aca2
mov eax, dword [ebp + 8]
mov ecx, dword [eax + 0x24]
cmp dword [ecx + 0x30], 0xffffffff
jne 0x1100aca2
mov esi, eax
mov eax, dword [esi + 0x14]
call fcn.11001ec0
mov edi, dword [esi + 0x24]
cmp eax, dword [edi]
jne 0x1100aa06
cmp edx, dword [edi + 4]
jne 0x1100aa06
mov eax, dword [esi + 0x14]
mov esi, dword [eax + 0x60]
mov edx, esi
shr edx, 4
test dl, 1
je 0x1100aca2
mov ecx, esi
and ecx, 0x70
cmp cl, 0x70
je 0x1100aca2
mov eax, dword [eax + 0x40]
cmp eax, dword [edi + 8]
je 0x1100aca2
mov dword [ebp - 0x38], vtable.CZipAutoBuffer.0
mov dword [ebp - 0x30], 4
push 4
call fcn.111709c0
mov edi, eax
add esp, 4
mov dword [ebp - 0x34], edi
mov edx, dword [ebp + 8]
mov dword [ebp - 4], ebx
mov esi, dword [edx + 0x14]
push 1
push edi
mov ebx, 4
call fcn.1100e6d0
mov ecx, dword [0x11279f88]
cmp dword [edi], ecx
je 0x1100aa82
movzx eax, byte [edi]
movzx edx, cl
sub eax, edx
jne 0x1100aa76
movzx eax, byte [edi + 1]
movzx ecx, ch
sub eax, ecx
jne 0x1100aa76
movzx eax, byte [edi + 2]
movzx edx, byte [0x11279f8a]
sub eax, edx
jne 0x1100aa76
movzx eax, byte [edi + 3]
movzx ecx, byte [0x11279f8b]
sub eax, ecx
je 0x1100aa82
sar eax, 0x1f
or eax, 1
jne 0x1100ac8b
push 0xb8
call fcn.111709c0
xor ebx, ebx
add esp, 4
cmp eax, ebx
je 0x1100ab7f
mov dword [eax], vtable.CZipFileHeader.0
mov dword [eax + 0x48], ebx
mov dword [eax + 0x4c], ebx
mov dword [eax + 0x50], ebx
mov dword [eax + 0x58], ebx
mov dword [eax + 0x5c], ebx
mov dword [eax + 0x60], ebx
mov dword [eax + 0x9c], ebx
mov dword [eax + 0x98], ebx
mov dword [eax + 0xa0], ebx
mov ecx, vtable.CZipAutoBuffer.0
mov dword [eax + 0x94], ecx
mov dword [eax + 0xa4], ecx
mov ecx, dword [ebp + 8]
mov dword [eax + 0xac], ebx
mov dword [eax + 0xa8], ebx
mov dword [eax + 0xb0], ebx
xor edx, edx
mov dword [eax + 0x10], edx
mov edx, 8
mov word [eax + 0xe], dx
xor edx, edx
mov dword [eax + 0x80], ebx
mov dword [eax + 0x78], ebx
mov dword [eax + 0x7c], ebx
mov dword [eax + 0x70], ebx
mov dword [eax + 0x74], ebx
mov dword [eax + 0x68], ebx
mov dword [eax + 0x6c], ebx
mov byte [eax + 8], bl
mov dword [eax + 0x14], ebx
mov dword [eax + 0x40], ebx
mov dword [eax + 0x44], ebx
mov dword [eax + 0x20], ebx
mov dword [eax + 0x24], ebx
mov dword [eax + 0x18], ebx
mov dword [eax + 0x1c], ebx
mov dword [eax + 0x38], ebx
mov dword [eax + 0x3c], ebx
mov dword [eax + 0x30], ebx
mov dword [eax + 0x34], ebx
mov dword [eax + 0x88], ebx
mov dword [eax + 0x28], ebx
mov dword [eax + 0x84], 0xff0000
mov word [eax + 0xc], dx
mov dword [eax + 0x8c], ecx
mov dword [eax + 0x90], ebx
jmp 0x1100ab81
push str.vector_T__too_long
call dword [sym.imp.MSVCP100.dll_void___cdecl_std::_Xlength_error_char_const__]
push 0xe3
xor ecx, ecx
call fcn.110014b0
mov edx, dword [ebp + 8]
push 0xc9
push edx
call fcn.1100a610
xor eax, eax
mov edx, dword [ebp + 8]
mov esi, dword [edx + 0x1c]
mov dword [ebp - 0x14], eax
mov dword [ebp - 0x18], eax
mov eax, dword [esi + 4]
lea ecx, [ebp - 0x18]
cmp ecx, eax
jae 0x1100abfa
mov edi, dword [esi]
mov edx, ecx
cmp edi, edx
ja 0x1100abfa
mov ecx, dword [esi + 8]
sub edx, edi
sar edx, 2
mov dword [ebp - 0x1c], edx
cmp eax, ecx
jne 0x1100abe8
sub eax, edi
sar eax, 2
cmp eax, 0x3ffffffe
ja 0x1100ab5a
sub ecx, edi
inc eax
sar ecx, 2
cmp eax, ecx
jbe 0x1100abe8
mov edx, ecx
shr edx, 1
mov edi, 0x3fffffff
sub edi, edx
cmp edi, ecx
jae 0x1100abd7
xor ecx, ecx
jmp 0x1100abd9
add ecx, edx
cmp ecx, eax
jae 0x1100abdf
mov ecx, eax
push ecx
call fcn.11009680
mov edx, dword [ebp - 0x1c]
mov eax, dword [esi]
lea edx, [eax + edx*4]
mov eax, dword [esi + 4]
cmp eax, ebx
je 0x1100ac4a
mov ecx, dword [edx]
mov dword [eax], ecx
jmp 0x1100ac4a
mov ecx, dword [esi + 8]
cmp eax, ecx
jne 0x1100ac3e
mov edx, dword [esi]
sub eax, edx
sar eax, 2
cmp eax, 0x3ffffffe
ja 0x1100ab5a
sub ecx, edx
inc eax
sar ecx, 2
cmp eax, ecx
jbe 0x1100ac3e
mov edx, ecx
shr edx, 1
mov edi, 0x3fffffff
sub edi, edx
cmp edi, ecx
jae 0x1100ac30
xor ecx, ecx
jmp 0x1100ac32
add ecx, edx
cmp ecx, eax
jae 0x1100ac38
mov ecx, eax
push ecx
call fcn.11009680
mov eax, dword [esi + 4]
cmp eax, ebx
je 0x1100ac4a
mov edx, dword [ebp - 0x14]
mov dword [eax], edx
add dword [esi + 4], 4
mov eax, dword [esi + 4]
sub eax, dword [esi]
sar eax, 2
cmp eax, ebx
je 0x1100ab65
mov eax, dword [ebp - 0x14]
push ebx
push eax
call fcn.11006e10
test al, al
je 0x1100ab71
mov dword [ebp - 4], 0xffffffff
mov ecx, dword [ebp - 0x34]
push ecx
call dword [sym.imp.MSVCR100.dll_void___cdecl_operator_delete_void__]
add esp, 4
xor ebx, ebx
jmp 0x1100aa14
mov dword [ebp - 4], 0xffffffff
test edi, edi
je 0x1100aca0
push edi
call dword [sym.imp.MSVCR100.dll_void___cdecl_operator_delete_void__]
add esp, 4
xor ebx, ebx
mov edi, dword [ebp + 8]
mov eax, dword [edi + 0x1c]
mov ecx, dword [eax + 4]
mov eax, dword [eax]
mov edx, ecx
sub edx, eax
push 0x11009c40
sar edx, 2
push edx
push ecx
push eax
call fcn.1100c130
mov ecx, dword [edi + 0x1c]
mov eax, dword [ecx + 4]
sub eax, dword [ecx]
add esp, 0x10
sar eax, 2
cmp eax, 1
jbe 0x1100ad3f
mov edx, dword [ecx]
mov esi, dword [ecx + 4]
sub esi, edx
sar esi, 2
test esi, esi
jne 0x1100aced
push str.invalid_vector_T__subscript
call dword [sym.imp.MSVCP100.dll_void___cdecl_std::_Xout_of_range_char_const__]
mov esi, dword [edx]
mov edx, 1
cmp eax, edx
jbe 0x1100ad3f
mov edi, dword [ecx]
mov ecx, dword [ecx + 4]
sub ecx, edi
sar ecx, 2
mov dword [ebp - 0x18], edi
mov dword [ebp - 0x1c], ecx
jmp 0x1100ad16
mov ecx, dword [ebp - 0x1c]
mov edi, dword [ebp - 0x18]
cmp ecx, edx
jbe 0x1100ace2
mov ecx, dword [edi + edx*4]
mov edi, dword [esi + 0x28]
cmp edi, dword [ecx + 0x28]
jne 0x1100ad35
mov edi, dword [esi + 0x40]
cmp edi, dword [ecx + 0x40]
jne 0x1100ad35
mov esi, dword [esi + 0x44]
cmp esi, dword [ecx + 0x44]
je 0x1100ad66
inc edx
mov esi, ecx
cmp edx, eax
jb 0x1100ad10
mov edi, dword [ebp + 8]
mov eax, dword [edi + 0x24]
cmp byte [eax + 0x45], bl
je 0x1100ad52
movzx eax, byte [eax + 0x44]
push eax
push edi
call fcn.1100bd30
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 4
push 0xc9
xor ecx, ecx
call fcn.110014b0
int3