joyce8/EMBER2024-capa huggingface dataset:
Function at 0x100a1960
Capabilities:
Terminate process

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x118
mov edx, dword [ebp + 8]
xor eax, eax
push ebx
push esi
push edi
movzx edi, dl
mov bl, 1
add edi, 4
mov dword [ebp - 4], edi
test edi, edi
jle 0x100a1998
cmp eax, 0x103
jae 0x100a1b2d
mov byte [ebp + eax - 0x118], 0
inc eax
cmp eax, edi
jl 0x100a1980
mov eax, 0xfffffe00
lea esi, [ecx + 0x200]
sub eax, ecx
mov dword [ebp - 8], eax
jmp 0x100a19b0
lea ecx, [eax + esi]
movzx eax, byte [esi + 0x200]
push str.first
push edx
mov dl, byte [esi - 0x200]
push eax
movzx eax, byte [esi]
push eax
mov dword [ebp - 0xc], ecx
call fcn.100a1720
add esp, 0x10
test al, al
je 0x100a19e2
test bl, bl
je 0x100a19e2
mov bl, 1
jmp 0x100a19e4
xor bl, bl
movzx eax, byte [esi + 0x300]
mov dl, byte [esi - 0x100]
mov ecx, dword [ebp - 0xc]
push str.second
push dword [ebp + 8]
push eax
movzx eax, byte [esi + 0x100]
push eax
call fcn.100a1720
add esp, 0x10
test al, al
je 0x100a1a19
test bl, bl
je 0x100a1a19
mov bl, 1
jmp 0x100a1a1b
xor bl, bl
cmp byte [esi], 0
jne 0x100a1a45
cmp byte [esi - 0x100], 0
jne 0x100a1a45
movzx ecx, byte [esi + 0x200]
movzx eax, byte [esi - 0x200]
add eax, ecx
cmp eax, edi
jge 0x100a1a45
mov byte [ebp + eax - 0x118], 1
mov eax, dword [ebp - 8]
inc esi
mov edx, dword [ebp + 8]
add eax, esi
cmp eax, 0x100
mov eax, dword [ebp - 8]
jl 0x100a19b0
mov esi, dword [ebp - 4]
xor edi, edi
test esi, esi
jle 0x100a1b22
lea esp, [esp]
test edi, edi
je 0x100a1b19
cmp byte [ebp + edi - 0x118], 0
jne 0x100a1b19
cmp edi, 3
jl 0x100a1ac9
lea eax, [edi - 3]
mov edx, str.ERROR:
push eax
push ecx
mov ecx, 0x100e9268
call fcn.10015c40
mov edx, str.VCDiff:_Bad_code_table__there_is_no_opcode_for_inst_COPY__size_0__mode
mov ecx, eax
call fcn.10015c40
add esp, 4
mov ecx, eax
call fcn.10050e60
push eax
call fcn.1001a500
add esp, 4
cmp byte [0x100ea58c], 0
je 0x100a1b17
jmp 0x100a1b32
mov ecx, edi
call fcn.100a1690
mov edx, str.ERROR:
mov ecx, 0x100e9268
mov esi, eax
call fcn.10015c40
mov edx, str.VCDiff:_Bad_code_table__there_is_no_opcode_for_inst
mov ecx, eax
call fcn.10015c40
mov edx, esi
mov ecx, eax
call fcn.10015c40
mov edx, str.__size_0___mode_0
mov ecx, eax
call fcn.10015c40
push eax
call fcn.1001a500
add esp, 4
cmp byte [0x100ea58c], 0
jne 0x100a1b32
mov esi, dword [ebp - 4]
xor bl, bl
inc edi
cmp edi, esi
jl 0x100a1a70
pop edi
pop esi
mov al, bl
pop ebx
mov esp, ebp
pop ebp
ret 4
call fcn.100b1106
mov ecx, 0x100e9268
call fcn.1002d2f0
push 1
call fcn.100b18e2
int3
Function at 0x100a1c70
Capabilities:
Terminate process

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
sub esp, 8
push esi
mov esi, ecx
push edi
mov edx, dword [esi]
cmp edx, 0xfe
jg 0x100a1ddd
test edx, edx
js 0x100a1ddd
mov ecx, dword [esi + 4]
cmp ecx, 0xfe
jg 0x100a1d92
test ecx, ecx
js 0x100a1d92
lea eax, [ecx + edx]
cmp eax, 0xfe
jle 0x100a1d31
push 0x100
push ecx
push ecx
push ecx
push edx
push ecx
mov edx, str.ERROR:
mov ecx, 0x100e9268
call fcn.10015c40
mov edx, str.Using_near_cache_size
mov ecx, eax
call fcn.10015c40
add esp, 4
mov ecx, eax
call fcn.10050e60
mov edx, str._and_same_cache_size
mov ecx, eax
call fcn.10015c40
add esp, 4
mov ecx, eax
call fcn.10050e60
mov edx, str._would_exceed_maximum_number_of_COPY_modes__
mov ecx, eax
call fcn.10015c40
add esp, 4
mov ecx, eax
call fcn.10050e60
mov edx, 0x100f75ec
mov ecx, eax
call fcn.10015c40
push eax
call fcn.1001a500
add esp, 4
call fcn.10094970
xor al, al
pop edi
pop esi
mov esp, ebp
pop ebp
ret
test edx, edx
jle 0x100a1d57
mov eax, dword [esi + 0xc]
lea edi, [esp + 8]
push edi
lea ecx, [esi + 0xc]
mov dword [esp + 0xc], 0
mov dword [ecx + 4], eax
push edx
push eax
lea eax, [esp + 0x18]
push eax
call fcn.100a2280
mov edx, dword [esi + 4]
test edx, edx
jle 0x100a1d83
mov eax, dword [esi + 0x18]
lea edi, [esp + 8]
push edi
shl edx, 8
lea ecx, [esi + 0x18]
push edx
push eax
mov dword [ecx + 4], eax
lea eax, [esp + 0x18]
push eax
mov dword [esp + 0x18], 0
call fcn.100a2280
pop edi
mov dword [esi + 8], 0
mov al, 1
pop esi
mov esp, ebp
pop ebp
ret
push ecx
push ecx
mov edx, str.ERROR:
mov ecx, 0x100e9268
call fcn.10015c40
mov edx, str.Same_cache_size
mov ecx, eax
call fcn.10015c40
add esp, 4
mov ecx, eax
call fcn.10050e60
mov edx, str._is_invalid
mov ecx, eax
call fcn.10015c40
push eax
call fcn.1001a500
add esp, 4
cmp byte [0x100ea58c], 0
je 0x100a1d29
jmp 0x100a1df5
push edx
push ecx
mov edx, str.ERROR:
mov ecx, 0x100e9268
call fcn.10015c40
mov edx, str.Near_cache_size
jmp 0x100a1da8
mov ecx, 0x100e9268
call fcn.1002d2f0
push 1
call fcn.100b18e2
int3
Function at 0x100a1e50
Capabilities:
Terminate process

Disassembly:
push ebp
mov ebp, esp
sub esp, 8
push ebx
push esi
mov esi, dword [ebp + 8]
push edi
mov edi, ecx
mov dword [ebp - 4], edi
test esi, esi
jns 0x100a1eb6
push esi
push ecx
mov edx, str.ERROR:
mov ecx, 0x100e9268
call fcn.10015c40
mov edx, str.EncodeAddress_was_passed_a_negative_address:
mov ecx, eax
call fcn.10015c40
add esp, 4
mov ecx, eax
call fcn.10050e60
push eax
call fcn.1001a500
add esp, 4
cmp byte [0x100ea58c], 0
jne 0x100a1fe5
mov eax, dword [ebp + 0x10]
mov dword [eax], 0
xor al, al
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0xc
mov ecx, dword [ebp + 0xc]
cmp esi, ecx
jl 0x100a1f0a
push ecx
push ecx
push esi
push ecx
mov edx, str.ERROR:
mov ecx, 0x100e9268
call fcn.10015c40
mov edx, str.EncodeAddress_was_called_with_address__
mov ecx, eax
call fcn.10015c40
add esp, 4
mov ecx, eax
call fcn.10050e60
mov edx, str.____here_address__
mov ecx, eax
call fcn.10015c40
add esp, 4
mov ecx, eax
call fcn.10050e60
mov edx, 0x100f75ec
mov ecx, eax
call fcn.10015c40
jmp 0x100a1e8c
mov ebx, dword [edi + 4]
test ebx, ebx
jle 0x100a1f60
shl ebx, 8
mov eax, esi
cdq
idiv ebx
mov eax, dword [edi + 0x18]
mov ebx, edx
cmp dword [eax + ebx*4], esi
jne 0x100a1f60
push esi
mov ecx, edi
call fcn.100a1e10
mov ecx, ebx
and ecx, 0x800000ff
jns 0x100a1f3d
dec ecx
or ecx, 0xffffff00
inc ecx
mov eax, dword [ebp + 0x10]
mov dword [eax], ecx
mov eax, ebx
mov cl, byte [edi]
cdq
add cl, 2
and edx, 0xff
add eax, edx
sar eax, 8
add eax, ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0xc
sub ecx, esi
mov dword [ebp + 8], esi
xor bl, bl
cmp ecx, esi
jge 0x100a1f70
mov bl, 1
mov dword [ebp + 8], ecx
mov eax, dword [edi]
xor ecx, ecx
mov dword [ebp + 0xc], eax
test eax, eax
jle 0x100a1fbd
mov eax, dword [edi + 0xc]
mov edx, eax
mov edi, dword [ebp + 8]
mov dword [ebp - 8], eax
mov eax, esi
sub eax, dword [edx]
js 0x100a1f95
cmp eax, edi
jge 0x100a1f95
lea ebx, [ecx + 2]
mov edi, eax
mov eax, dword [ebp + 0xc]
inc ecx
add edx, 4
cmp ecx, eax
jl 0x100a1f86
mov dword [ebp + 8], edi
mov edi, dword [ebp - 4]
test eax, eax
jle 0x100a1fbd
mov eax, dword [edi + 8]
mov ecx, dword [ebp - 8]
mov dword [ecx + eax*4], esi
mov eax, dword [edi + 8]
inc eax
cdq
idiv dword [edi]
mov dword [edi + 8], edx
mov ecx, dword [edi + 4]
test ecx, ecx
jle 0x100a1fd2
mov eax, esi
shl ecx, 8
cdq
idiv ecx
mov ecx, dword [edi + 0x18]
mov dword [ecx + edx*4], esi
mov ecx, dword [ebp + 0x10]
mov eax, dword [ebp + 8]
pop edi
pop esi
mov dword [ecx], eax
mov al, bl
pop ebx
mov esp, ebp
pop ebp
ret 0xc
mov ecx, 0x100e9268
call fcn.1002d2f0
push 1
call fcn.100b18e2
int3
Function at 0x100a2000
Capabilities:
Terminate process

Disassembly:
push ecx
test ecx, ecx
jns 0x100a204e
push ecx
push ecx
mov edx, str.ERROR:
mov ecx, 0x100e9268
call fcn.10015c40
mov edx, str.Decoded_address
mov ecx, eax
call fcn.10015c40
add esp, 4
mov ecx, eax
call fcn.10050e60
mov edx, str._is_invalid
mov ecx, eax
call fcn.10015c40
push eax
call fcn.1001a500
add esp, 4
cmp byte [0x100ea58c], 0
jne 0x100a209c
xor al, al
pop ecx
ret
cmp ecx, edx
jl 0x100a2098
push edx
push ecx
push ecx
push ecx
mov edx, str.ERROR:
mov ecx, 0x100e9268
call fcn.10015c40
mov edx, str.Decoded_address__
mov ecx, eax
call fcn.10015c40
add esp, 4
mov ecx, eax
call fcn.10050e60
mov edx, str.__is_beyond_location_in_target_file__
mov ecx, eax
call fcn.10015c40
add esp, 4
mov ecx, eax
call fcn.10050e60
mov edx, 0x100f75ec
jmp 0x100a2031
mov al, 1
pop ecx
ret
mov ecx, 0x100e9268
call fcn.1002d2f0
push 1
call fcn.100b18e2
int3
Function at 0x100a20b0
Capabilities:
Terminate process

Disassembly:
push ebp
mov ebp, esp
sub esp, 0xc
mov eax, dword [ebp + 8]
push ebx
push esi
mov esi, ecx
mov dword [ebp - 4], esi
push edi
test eax, eax
jns 0x100a2107
push eax
push ecx
mov edx, str.ERROR:
mov ecx, 0x100e9268
call fcn.10015c40
mov edx, str.DecodeAddress_was_passed_a_negative_value_for_here_address:
mov ecx, eax
call fcn.10015c40
add esp, 4
mov ecx, eax
call fcn.10050e60
push eax
call fcn.1001a500
add esp, 4
cmp byte [0x100ea58c], 0
je 0x100a224b
jmp 0x100a2265
mov edi, dword [ebp + 0x10]
mov ecx, dword [ebp + 0x14]
mov edi, dword [edi]
mov dword [ebp - 8], edi
cmp edi, ecx
jae 0x100a2257
mov dl, byte [esi]
mov bl, byte [ebp + 0xc]
mov bh, dl
add bh, 2
cmp bl, bh
jb 0x100a2151
mov al, byte [esi + 4]
inc al
add al, dl
cmp bl, al
ja 0x100a2151
mov cl, byte [edi]
inc edi
movzx eax, bh
movzx edx, bl
mov ebx, dword [ebp - 4]
sub edx, eax
movzx eax, cl
shl edx, 8
add edx, eax
mov eax, dword [esi + 0x18]
mov esi, dword [eax + edx*4]
jmp 0x100a21a7
lea edx, [ebp - 8]
call fcn.100a7f50
mov esi, eax
cmp esi, 0xfffffffe
je 0x100a2257
cmp esi, 0xffffffff
je 0x100a2222
test bl, bl
jne 0x100a2176
mov ebx, dword [ebp - 4]
jmp 0x100a21a4
cmp bl, 1
jne 0x100a218c
mov edx, dword [ebp + 8]
mov eax, edx
mov edi, dword [ebp - 8]
sub eax, esi
mov ebx, dword [ebp - 4]
mov esi, eax
jmp 0x100a21aa
cmp bl, 2
jb 0x100a21d1
cmp bl, bh
jae 0x100a21d1
movzx ecx, bl
mov ebx, dword [ebp - 4]
mov eax, dword [ebx + 0xc]
mov eax, dword [eax + ecx*4 - 8]
add esi, eax
mov edi, dword [ebp - 8]
mov edx, dword [ebp + 8]
mov ecx, esi
call fcn.100a2000
test al, al
je 0x100a224b
mov eax, dword [ebp + 0x10]
mov ecx, ebx
push esi
mov dword [eax], edi
call fcn.100a1e10
mov eax, esi
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0x10
mov ecx, dword [ebp - 4]
mov edx, str.ERROR:
mov eax, dword [ecx + 4]
inc al
add al, byte [ecx]
movzx eax, al
push eax
push ecx
movzx eax, bl
push eax
push ecx
mov ecx, 0x100e9268
call fcn.10015c40
mov edx, str.Invalid_mode_value__
mov ecx, eax
call fcn.10015c40
add esp, 4
mov ecx, eax
call fcn.10050e60
mov edx, str.__passed_to_DecodeAddress__maximum_mode_value_
mov ecx, eax
call fcn.10015c40
add esp, 4
mov ecx, eax
call fcn.10050e60
jmp 0x100a223d
mov edx, str.ERROR:
mov ecx, 0x100e9268
call fcn.10015c40
mov edx, str.Found_invalid_variable_length_integer_as_encoded_address_value
mov ecx, eax
call fcn.10015c40
push eax
call fcn.1001a500
add esp, 4
call fcn.10094970
or eax, 0xffffffff
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0x10
pop edi
pop esi
mov eax, 0xfffffffe
pop ebx
mov esp, ebp
pop ebp
ret 0x10
mov ecx, 0x100e9268
call fcn.1002d2f0
push 1
call fcn.100b18e2
int3
Function at 0x100a25a0
Capabilities:
Terminate process

Disassembly:
push ebp
mov ebp, esp
push esi
mov esi, ecx
mov ecx, dword [ebp + 8]
mov eax, dword [esi + 4]
mov edx, dword [esi + 8]
sub eax, edx
cmp ecx, eax
jbe 0x100a2611
push eax
push ecx
push ecx
push ecx
mov edx, str.ERROR:
mov ecx, 0x100e9268
call fcn.10015c40
mov edx, str.Internal_error:_position_advanced_by
mov ecx, eax
call fcn.10015c40
add esp, 4
mov ecx, eax
call fcn.10012f00
mov edx, str._bytes__current_unparsed_size
mov ecx, eax
call fcn.10015c40
add esp, 4
mov ecx, eax
call fcn.10012f00
push eax
call fcn.1001a500
add esp, 4
cmp byte [0x100ea58c], 0
jne 0x100a261c
mov eax, dword [esi + 4]
mov dword [esi + 8], eax
pop esi
pop ebp
ret 4
lea eax, [edx + ecx]
mov dword [esi + 8], eax
pop esi
pop ebp
ret 4
mov ecx, 0x100e9268
call fcn.1002d2f0
push 1
call fcn.100b18e2
int3

Function at 0x100a2630
Capabilities:
Terminate process

Disassembly:
push ebp
mov ebp, esp
push ebx
push esi
mov esi, ecx
push edi
mov edi, dword [ebp + 8]
mov ebx, dword [esi]
cmp edi, ebx
jae 0x100a2698
mov edx, str.ERROR:
mov ecx, 0x100e9268
call fcn.10015c40
mov edx, str.Internal_error:_new_data_position
mov ecx, eax
call fcn.10015c40
mov edx, edi
mov ecx, eax
call fcn.10015c40
mov edx, str._is_beyond_start_of_data
mov ecx, eax
call fcn.10015c40
mov edx, ebx
mov ecx, eax
call fcn.10015c40
push eax
call fcn.1001a500
add esp, 4
cmp byte [0x100ea58c], 0
jne 0x100a2701
mov eax, dword [esi]
mov dword [esi + 8], eax
pop edi
pop esi
pop ebx
pop ebp
ret 4
mov ebx, dword [esi + 4]
cmp edi, ebx
jbe 0x100a26f7
mov edx, str.ERROR:
mov ecx, 0x100e9268
call fcn.10015c40
mov edx, str.Internal_error:_new_data_position
mov ecx, eax
call fcn.10015c40
mov edx, edi
mov ecx, eax
call fcn.10015c40
mov edx, str._is_beyond_end_of_data
mov ecx, eax
call fcn.10015c40
mov edx, ebx
mov ecx, eax
call fcn.10015c40
push eax
call fcn.1001a500
add esp, 4
cmp byte [0x100ea58c], 0
jne 0x100a2712
mov eax, dword [esi + 4]
mov dword [esi + 8], eax
pop edi
pop esi
pop ebx
pop ebp
ret 4
mov dword [esi + 8], edi
pop edi
pop esi
pop ebx
pop ebp
ret 4
mov ecx, 0x100e9268
call fcn.1002d2f0
push 1
call fcn.100b18e2
mov ecx, 0x100e9268
call fcn.1002d2f0
push 1
call fcn.100b18e2
int3

Function at 0x100a2730
Capabilities:
Terminate process

Disassembly:
push ebp
mov ebp, esp
mov edx, dword [ebp + 8]
push esi
mov esi, ecx
mov eax, dword [esi + 4]
mov ecx, eax
sub ecx, dword [esi + 8]
cmp edx, ecx
jbe 0x100a27a1
push ecx
push ecx
push edx
push ecx
mov edx, str.ERROR:
mov ecx, 0x100e9268
call fcn.10015c40
mov edx, str.Internal_error:_specified_number_of_remaining_bytes
mov ecx, eax
call fcn.10015c40
add esp, 4
mov ecx, eax
call fcn.10012f00
mov edx, str._is_greater_than_unparsed_data_size
mov ecx, eax
call fcn.10015c40
add esp, 4
mov ecx, eax
call fcn.10012f00
push eax
call fcn.1001a500
add esp, 4
cmp byte [0x100ea58c], 0
jne 0x100a27ab
mov eax, dword [esi + 4]
mov dword [esi + 8], eax
pop esi
pop ebp
ret 4
sub eax, edx
mov dword [esi + 8], eax
pop esi
pop ebp
ret 4
mov ecx, 0x100e9268
call fcn.1002d2f0
push 1
call fcn.100b18e2
int3
Function at 0x100a27c0
Capabilities:
Terminate process

Disassembly:
push ebp
mov ebp, esp
push ecx
push esi
mov esi, ecx
cmp dword [esi + 0xc], 0
jne 0x100a2848
mov ecx, dword [esi + 4]
lea edx, [esi + 8]
call fcn.100a7f50
cmp eax, 0xfffffffe
je 0x100a2841
cmp eax, 0xffffffff
je 0x100a27ef
mov ecx, dword [ebp + 0xc]
mov dword [ecx], eax
mov al, 1
pop esi
pop ecx
pop ebp
ret 8
mov edx, str.ERROR:
mov ecx, 0x100e9268
call fcn.10015c40
mov edx, str.Expected
mov ecx, eax
call fcn.10015c40
mov edx, dword [ebp + 8]
mov ecx, eax
call fcn.10015c40
mov edx, str.__found_invalid_variable_length_integer
mov ecx, eax
call fcn.10015c40
push eax
call fcn.1001a500
add esp, 4
cmp byte [0x100ea58c], 0
jne 0x100a2850
mov dword [esi + 0xc], 0xffffffff
xor al, al
pop esi
pop ecx
pop ebp
ret 8
mov dword [esi + 0xc], 0xfffffffe
xor al, al
pop esi
pop ecx
pop ebp
ret 8
mov ecx, 0x100e9268
call fcn.1002d2f0
push 1
call fcn.100b18e2
int3

Function at 0x100a2870
Capabilities:
Terminate process

Disassembly:
push ebp
mov ebp, esp
push ecx
push esi
mov esi, ecx
cmp dword [esi + 0xc], 0
jne 0x100a2912
mov ecx, dword [esi + 4]
lea edx, [esi + 8]
call fcn.100a80c0
mov ecx, eax
cmp ecx, 0xfffffffe
jne 0x100a28a3
cmp edx, 0xffffffff
jne 0x100a28a3
mov dword [esi + 0xc], eax
xor al, al
pop esi
pop ecx
pop ebp
ret 8
and eax, edx
cmp eax, 0xffffffff
je 0x100a2927
test edx, edx
jl 0x100a291a
jg 0x100a28b5
cmp ecx, 0xffffffff
jbe 0x100a291a
push edx
push ecx
mov edx, str.ERROR:
mov ecx, 0x100e9268
call fcn.10015c40
mov edx, str.Value_of
mov ecx, eax
call fcn.10015c40
mov edx, str.Adler32_checksum_value
mov ecx, eax
call fcn.10015c40
mov edx, 0x10103eb0
mov ecx, eax
call fcn.10015c40
mov ecx, eax
call fcn.100a2f00
mov edx, str.__is_too_large_for_unsigned_32_bit_integer
mov ecx, eax
call fcn.10015c40
push eax
call fcn.1001a500
add esp, 4
call fcn.10094970
mov dword [esi + 0xc], 0xffffffff
xor al, al
pop esi
pop ecx
pop ebp
ret 8
mov eax, dword [ebp + 0xc]
pop esi
mov dword [eax], ecx
mov al, 1
pop ecx
pop ebp
ret 8
mov edx, str.ERROR:
mov ecx, 0x100e9268
call fcn.10015c40
mov edx, str.Expected
mov ecx, eax
call fcn.10015c40
mov edx, str.Adler32_checksum_value
mov ecx, eax
call fcn.10015c40
mov edx, str.__found_invalid_variable_length_integer
mov ecx, eax
call fcn.10015c40
push eax
call fcn.1001a500
add esp, 4
cmp byte [0x100ea58c], 0
je 0x100a290b
mov ecx, 0x100e9268
call fcn.1002d2f0
push 1
call fcn.100b18e2
int3
Function at 0x100a2980
Capabilities:
Terminate process

Disassembly:
push ebp
mov ebp, esp
sub esp, 8
push ebx
push esi
push edi
lea eax, [ebp - 4]
mov dword [ebp - 4], 0
push eax
push str.source_segment_length
mov edi, ecx
call fcn.100a27c0
test al, al
je 0x100a2ae1
mov ebx, dword [ebp + 0x14]
mov eax, dword [ebp - 4]
mov esi, dword [ebp + 8]
mov dword [ebx], eax
cmp eax, esi
jbe 0x100a2a33
push esi
push ecx
push eax
push ecx
mov edx, str.ERROR:
mov ecx, 0x100e9268
call fcn.10015c40
mov edx, str.Source_segment_length__
mov ecx, eax
call fcn.10015c40
add esp, 4
mov ecx, eax
call fcn.10012f00
mov edx, str.__is_larger_than
mov ecx, eax
call fcn.10015c40
mov edx, dword [ebp + 0x10]
mov ecx, eax
call fcn.10015c40
mov edx, 0x100f75f0
mov ecx, eax
call fcn.10015c40
add esp, 4
mov ecx, eax
call fcn.10012f00
mov edx, 0x100f75ec
mov ecx, eax
call fcn.10015c40
push eax
call fcn.1001a500
add esp, 4
cmp byte [0x100ea58c], 0
je 0x100a2ada
jmp 0x100a2b1c
lea eax, [ebp + 0x14]
mov dword [ebp + 0x14], 0
push eax
push str.source_segment_position
mov ecx, edi
call fcn.100a27c0
test al, al
je 0x100a2ae1
mov eax, dword [ebp + 0x18]
mov ecx, dword [ebp + 0x14]
mov dword [eax], ecx
cmp ecx, esi
jb 0x100a2aec
cmp dword [ebx], 0
jbe 0x100a2aec
push esi
push ecx
push ecx
push ecx
mov edx, str.ERROR:
mov ecx, 0x100e9268
call fcn.10015c40
mov edx, str.Source_segment_position__
mov ecx, eax
call fcn.10015c40
add esp, 4
mov ecx, eax
call fcn.10012f00
mov edx, str.__is_past
mov ecx, eax
call fcn.10015c40
mov edx, dword [ebp + 0xc]
mov ecx, eax
call fcn.10015c40
mov edx, 0x100f75f0
mov ecx, eax
call fcn.10015c40
add esp, 4
mov ecx, eax
call fcn.10012f00
mov edx, 0x100f75ec
mov ecx, eax
call fcn.10015c40
push eax
call fcn.1001a500
add esp, 4
call fcn.10094970
mov dword [edi + 0xc], 0xffffffff
xor al, al
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0x14
mov eax, dword [ebx]
add eax, ecx
cmp eax, esi
jbe 0x100a2b11
push esi
push ecx
push eax
push ecx
mov edx, str.ERROR:
mov ecx, 0x100e9268
call fcn.10015c40
mov edx, str.Source_segment_end_position__
jmp 0x100a2a83
pop edi
pop esi
mov al, 1
pop ebx
mov esp, ebp
pop ebp
ret 0x14
mov ecx, 0x100e9268
call fcn.1002d2f0
push 1
call fcn.100b18e2
int3
Function at 0x100a2b30
Capabilities:
Terminate process

Disassembly:
push ebp
mov ebp, esp
push esi
push edi
mov edi, ecx
cmp dword [edi + 0xc], 0
jne 0x100a2b4e
mov eax, dword [edi + 4]
mov ecx, dword [edi + 8]
sub eax, ecx
jne 0x100a2b56
mov dword [edi + 0xc], 0xfffffffe
xor al, al
pop edi
pop esi
pop ebp
ret 0x18
mov esi, dword [ebp + 0x14]
mov al, byte [ecx]
mov ecx, edi
push 1
mov byte [esi], al
call fcn.100a25a0
movzx eax, byte [esi]
and eax, 3
dec eax
je 0x100a2c0e
dec eax
je 0x100a2bb0
dec eax
je 0x100a2b81
mov al, 1
pop edi
pop esi
pop ebp
ret 0x18
mov edx, str.ERROR:
mov ecx, 0x100e9268
call fcn.10015c40
mov edx, str.Win_Indicator_must_not_have_both_VCD_SOURCE_and_VCD_TARGET_set
mov ecx, eax
call fcn.10015c40
push eax
call fcn.1001a500
add esp, 4
cmp byte [0x100ea58c], 0
je 0x100a2bdf
jmp 0x100a2c2e
cmp byte [ebp + 0x10], 0
jne 0x100a2bee
mov edx, str.ERROR:
mov ecx, 0x100e9268
call fcn.10015c40
mov edx, str.Delta_file_contains_VCD_TARGET_flag__which_is_not_allowed_by_current_decoder_settings
mov ecx, eax
call fcn.10015c40
push eax
call fcn.1001a500
add esp, 4
call fcn.10094970
mov dword [edi + 0xc], 0xffffffff
xor al, al
pop edi
pop esi
pop ebp
ret 0x18
push dword [ebp + 0x1c]
mov ecx, edi
push dword [ebp + 0x18]
push str.target_file
push str.current_target_position
push dword [ebp + 0xc]
call fcn.100a2980
pop edi
pop esi
pop ebp
ret 0x18
push dword [ebp + 0x1c]
mov ecx, edi
push dword [ebp + 0x18]
push str.dictionary
push str.end_of_dictionary
push dword [ebp + 8]
call fcn.100a2980
pop edi
pop esi
pop ebp
ret 0x18
mov ecx, 0x100e9268
call fcn.1002d2f0
push 1
call fcn.100b18e2
int3

Function at 0x100a2c40
Capabilities:
Terminate process

Disassembly:
push ebp
mov ebp, esp
sub esp, 8
push esi
mov esi, ecx
cmp dword [esi + 0x14], 0
je 0x100a2c8c
mov edx, str.ERROR:
mov ecx, 0x100e9268
call fcn.10015c40
mov edx, str.Internal_error:_VCDiffHeaderParser::ParseWindowLengths_was_called_twice_for_the_same_delta_window
mov ecx, eax
call fcn.10015c40
push eax
call fcn.1001a500
add esp, 4
cmp byte [0x100ea58c], 0
jne 0x100a2cdd
mov dword [esi + 0xc], 0xffffffff
xor al, al
pop esi
mov esp, ebp
pop ebp
ret 4
lea eax, [ebp - 4]
mov dword [ebp - 4], 0
push eax
push str.length_of_the_delta_encoding
call fcn.100a27c0
test al, al
je 0x100a2c83
mov eax, dword [ebp - 4]
mov ecx, esi
mov dword [esi + 0x10], eax
mov eax, dword [esi + 8]
mov dword [esi + 0x14], eax
lea eax, [ebp - 4]
push eax
push str.size_of_the_target_window
mov dword [ebp - 4], 0
call fcn.100a27c0
test al, al
je 0x100a2c83
mov ecx, dword [ebp + 8]
mov eax, dword [ebp - 4]
pop esi
mov dword [ecx], eax
mov al, 1
mov esp, ebp
pop ebp
ret 4
mov ecx, 0x100e9268
call fcn.1002d2f0
push 1
call fcn.100b18e2
int3

Function at 0x100a2cf0
Capabilities:
Terminate process

Disassembly:
push ecx
mov edx, str.ERROR:
mov ecx, 0x100e9268
call fcn.10015c40
mov edx, str.Internal_error:_VCDiffHeaderParser::GetDeltaWindowEnd_was_called_before_ParseWindowLengths
mov ecx, eax
call fcn.10015c40
push eax
call fcn.1001a500
add esp, 4
cmp byte [0x100ea58c], 0
jne 0x100a2d22
xor eax, eax
pop ecx
ret
mov ecx, 0x100e9268
call fcn.1002d2f0
push 1
call fcn.100b18e2
int3
Function at 0x100a2d40
Capabilities:
Terminate process

Disassembly:
push ecx
push ebx
push esi
mov esi, ecx
cmp dword [esi + 0xc], 0
jne 0x100a2d5c
mov eax, dword [esi + 4]
mov ecx, dword [esi + 8]
sub eax, ecx
jne 0x100a2d62
mov dword [esi + 0xc], 0xfffffffe
xor al, al
pop esi
pop ebx
pop ecx
ret
mov bl, byte [ecx]
mov ecx, esi
push 1
call fcn.100a25a0
test bl, 7
je 0x100a2dac
mov edx, str.ERROR:
mov ecx, 0x100e9268
call fcn.10015c40
mov edx, str.Secondary_compression_of_delta_file_sections_is_not_supported
mov ecx, eax
call fcn.10015c40
push eax
call fcn.1001a500
add esp, 4
cmp byte [0x100ea58c], 0
jne 0x100a2db2
mov dword [esi + 0xc], 0xffffffff
xor al, al
pop esi
pop ebx
pop ecx
ret
pop esi
mov al, 1
pop ebx
pop ecx
ret
mov ecx, 0x100e9268
call fcn.1002d2f0
push 1
call fcn.100b18e2
int3

Function at 0x100a2dd0
Capabilities:
Terminate process

Disassembly:
push ebp
mov ebp, esp
sub esp, 8
push ebx
push esi
push edi
lea eax, [ebp - 4]
mov dword [ebp - 4], 0
push eax
push str.length_of_data_for_ADDs_and_RUNs
mov esi, ecx
call fcn.100a27c0
mov ebx, dword [ebp + 0xc]
test al, al
je 0x100a2dfc
mov eax, dword [ebp - 4]
mov dword [ebx], eax
lea eax, [ebp + 0xc]
mov dword [ebp + 0xc], 0
push eax
push str.length_of_instructions_section
mov ecx, esi
call fcn.100a27c0
mov edi, dword [ebp + 0x10]
test al, al
je 0x100a2e1f
mov eax, dword [ebp + 0xc]
mov dword [edi], eax
lea eax, [ebp + 0xc]
mov dword [ebp + 0xc], 0
push eax
push str.length_of_addresses_for_COPYs
mov ecx, esi
call fcn.100a27c0
test al, al
je 0x100a2e42
mov ecx, dword [ebp + 0x14]
mov eax, dword [ebp + 0xc]
mov dword [ecx], eax
cmp byte [ebp + 8], 0
je 0x100a2e67
lea eax, [ebp + 8]
mov dword [ebp + 8], 0
push eax
push ecx
mov ecx, esi
call fcn.100a2870
test al, al
je 0x100a2e67
mov ecx, dword [ebp + 0x18]
mov eax, dword [ebp + 8]
mov dword [ecx], eax
cmp dword [esi + 0xc], 0
jne 0x100a2ea8
mov ecx, dword [esi + 0x14]
test ecx, ecx
jne 0x100a2eb3
mov edx, str.ERROR:
mov ecx, 0x100e9268
call fcn.10015c40
mov edx, str.Internal_error:_VCDiffHeaderParser::ParseSectionLengths_was_called_before_ParseWindowLengths
mov ecx, eax
call fcn.10015c40
push eax
call fcn.1001a500
add esp, 4
cmp byte [0x100ea58c], 0
jne 0x100a2ee7
mov dword [esi + 0xc], 0xffffffff
xor al, al
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0x14
mov eax, dword [esi + 8]
sub eax, ecx
mov ecx, dword [ebp + 0x14]
add eax, dword [ebx]
add eax, dword [edi]
add eax, dword [ecx]
cmp dword [esi + 0x10], eax
je 0x100a2edc
mov edx, str.ERROR:
mov ecx, 0x100e9268
call fcn.10015c40
mov edx, str.The_length_of_the_delta_encoding_does_not_match_the_size_of_the_header_plus_the_sizes_of_the_data_sections
jmp 0x100a2e88
pop edi
pop esi
mov al, 1
pop ebx
mov esp, ebp
pop ebp
ret 0x14
mov ecx, 0x100e9268
call fcn.1002d2f0
push 1
call fcn.100b18e2
int3