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

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x100e4318
mov eax, dword fs:[0]
push eax
sub esp, 0x18
mov eax, dword [0x10001840]
xor eax, ebp
mov dword [ebp - 0x14], eax
push ebx
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov ebx, ecx
cmp dword [ebx + 0xb0], 0
mov esi, dword [ebp + 8]
mov dword [ebp - 0x20], esi
jne 0x10093c43
xor eax, eax
jmp 0x10093dfd
cmp dword [ebx + 0x94], 0
jne 0x10093c92
mov edx, str.ERROR:
mov ecx, 0x100e6780
call fcn.100200d0
mov edx, str.Internal_error:__custom_code_table_decoder__is_set__but_custom_code_table__is_NULL
mov ecx, eax
call fcn.100200d0
push eax
call fcn.10094e10
add esp, 4
cmp byte [0x100e7ab4], 0
je 0x10093c8a
mov ecx, 0x100e6780
call fcn.100239b0
push 1
call fcn.100aecb2
or eax, 0xffffffff
jmp 0x10093dfd
xorps xmm0, xmm0
movq qword [ebp - 0x1c], xmm0
mov dword [ebp - 0x1c], vtable.open_vcdiff::OutputStringInterface.0
mov dword [ebp - 4], 0
lea edi, [ebx + 0x98]
mov dword [ebp - 0x1c], vtable.open_vcdiff::OutputString_class_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char___.0
mov dword [ebp - 0x18], edi
mov dword [ebp - 4], 1
lea edi, [ebp - 0x1c]
mov ecx, dword [esi + 8]
mov eax, dword [esi + 4]
sub eax, ecx
push edi
push eax
push ecx
mov ecx, dword [ebx + 0xb0]
call fcn.10093e90
lea edi, [ebx + 0x98]
test al, al
je 0x10093d7b
cmp dword [ebx + 0xa8], 0x600
jae 0x10093d02
mov eax, dword [esi + 4]
mov dword [esi + 8], eax
mov eax, 0xfffffffe
jmp 0x10093de1
mov ecx, dword [ebx + 0xb0]
call fcn.10094070
test al, al
je 0x10093d7b
mov eax, dword [ebx + 0xa8]
cmp eax, 0x600
je 0x10093d80
push 0x600
push ecx
push eax
push ecx
mov edx, str.ERROR:
mov ecx, 0x100e6780
call fcn.100200d0
mov edx, str.Decoded_custom_code_table_size__
mov ecx, eax
call fcn.100200d0
add esp, 4
mov ecx, eax
call fcn.10046f30
mov edx, str.__does_not_match_size_of_a_code_table__
mov ecx, eax
call fcn.100200d0
add esp, 4
mov ecx, eax
call fcn.10046f30
mov edx, 0x100fdca8
mov ecx, eax
call fcn.100200d0
push eax
call fcn.10094e10
add esp, 4
call fcn.10092f90
or eax, 0xffffffff
jmp 0x10093de1
cmp dword [edi + 0x14], 0x10
jb 0x10093d88
mov edi, dword [edi]
mov esi, edi
mov ecx, 0x180
mov edi, dword [ebx + 0x94]
rep movsd dword es:[edi], dword [esi]
lea ecx, [ebx + 0x98]
call fcn.100341b0
mov eax, dword [ebx + 0xb0]
mov ecx, dword [ebp - 0x20]
push dword [eax + 0x18]
call fcn.1009fd90
push 0
lea ecx, [ebx + 0xb0]
call fcn.10094d40
mov eax, dword [ebx + 0x90]
mov ecx, dword [eax + 4]
inc cl
add cl, byte [eax]
movzx eax, cl
lea ecx, [ebx + 0x3c]
push eax
push dword [ebx + 0x94]
call fcn.10093140
xor eax, eax
mov dword [ebp - 4], 0xffffffff
mov dword [ebp - 0x1c], vtable.open_vcdiff::OutputString_class_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char___.0
mov dword [ebp - 4], 0xffffffff
mov dword [ebp - 0x1c], vtable.open_vcdiff::OutputStringInterface.0
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 0x14]
xor ecx, ebp
call fcn.100ac90e
mov esp, ebp
pop ebp
ret 4
Function at 0x10093e90
Capabilities:
Terminate process

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
sub esp, 0x14
mov eax, dword [0x10001840]
xor eax, esp
mov dword [esp + 0x10], eax
push ebx
mov ebx, dword [ebp + 0x10]
push esi
mov esi, ecx
mov dword [esp + 8], ebx
mov ecx, dword [ebp + 8]
push edi
cmp byte [esi + 0xc8], 0
jne 0x10093f0a
mov edx, str.ERROR:
mov ecx, 0x100e6780
call fcn.100200d0
mov edx, str.DecodeChunk___called_without_StartDecoding__
mov ecx, eax
call fcn.100200d0
push eax
call fcn.10094e10
add esp, 4
cmp byte [0x100e7ab4], 0
jne 0x1009405a
mov ecx, esi
call fcn.10093690
xor al, al
pop edi
pop esi
pop ebx
mov ecx, dword [esp + 0x10]
xor ecx, esp
call fcn.100ac90e
mov esp, ebp
pop ebp
ret 0xc
cmp dword [esi + 0x18], 0
xorps xmm0, xmm0
mov edx, dword [ebp + 0xc]
movq qword [esp + 0x10], xmm0
mov dword [esp + 0x18], 0
mov dword [esp + 0x10], ecx
lea eax, [ecx + edx]
mov dword [esp + 0x18], ecx
mov dword [esp + 0x14], eax
je 0x10093f58
push edx
lea edi, [esi + 8]
push ecx
mov ecx, edi
call fcn.10024b20
cmp dword [edi + 0x14], 0x10
mov eax, dword [esi + 0x18]
jb 0x10093f4a
mov edi, dword [edi]
add eax, edi
mov dword [esp + 0x10], edi
mov dword [esp + 0x14], eax
mov dword [esp + 0x18], edi
lea eax, [esp + 0x10]
mov ecx, esi
push eax
call fcn.100937e0
test eax, eax
jne 0x1009401f
lea eax, [esp + 0x10]
mov ecx, esi
push eax
call fcn.10093c00
test eax, eax
jne 0x1009401f
mov ecx, dword [esp + 0x14]
mov eax, ecx
mov edx, dword [esp + 0x18]
sub eax, edx
je 0x10094030
lea eax, [esi + 0x3c]
lea ecx, [esp + 0x10]
push ecx
mov ecx, eax
call fcn.10094b70
test eax, eax
jne 0x1009401f
mov ecx, esi
call fcn.100933e0
test al, al
jne 0x10094028
cmp byte [esi + 0xc9], al
jne 0x10094008
cmp dword [esi + 0x34], 0x10
lea edi, [esi + 0x20]
mov ebx, dword [esi + 0x30]
jb 0x10093fc8
mov ecx, dword [edi]
jmp 0x10093fca
mov ecx, edi
mov edx, dword [esp + 0xc]
mov eax, dword [esi + 0xc4]
sub ebx, eax
push ebx
mov ebx, dword [esp + 0x10]
add eax, ecx
mov edx, dword [edx]
mov ecx, ebx
push eax
call dword [edx + 4]
cmp dword [edi + 0x14], 0x10
mov dword [edi + 0x10], 0
jb 0x10093ff4
mov edi, dword [edi]
mov byte [edi], 0
mov dword [esi + 0x6c], 0
mov dword [esi + 0xc4], 0
mov ecx, dword [esp + 0x14]
mov eax, ecx
mov edx, dword [esp + 0x18]
sub eax, edx
lea eax, [esi + 0x3c]
jne 0x10093f95
jmp 0x10094030
cmp eax, 0xffffffff
je 0x10093eed
mov edx, dword [esp + 0x18]
mov ecx, dword [esp + 0x14]
sub ecx, edx
push ecx
push edx
lea ecx, [esi + 8]
call fcn.10010290
push ebx
mov ecx, esi
call fcn.10093e20
mov ecx, dword [esp + 0x1c]
mov al, 1
pop edi
pop esi
pop ebx
xor ecx, esp
call fcn.100ac90e
mov esp, ebp
pop ebp
ret 0xc
mov ecx, 0x100e6780
call fcn.100239b0
push 1
call fcn.100aecb2
int3
Function at 0x10094070
Capabilities:
Terminate process

Disassembly:
push ecx
push ebx
push esi
mov esi, ecx
mov bl, 1
cmp byte [esi + 0xc8], 0
jne 0x100940af
mov edx, str.WARNING:
mov ecx, 0x100e6780
call fcn.100200d0
mov edx, str.FinishDecoding___called_before_StartDecoding____or_called_after_DecodeChunk___returned_false
mov ecx, eax
call fcn.100200d0
push eax
call fcn.10094e10
add esp, 4
cmp byte [0x100e7ab4], 0
je 0x100940f1
jmp 0x10094100
cmp dword [esi + 0x90], 0
je 0x100940d0
cmp dword [esi + 0xb0], 0
jne 0x100940db
cmp byte [esi + 0x40], 0
jne 0x100940db
call fcn.100933e0
test al, al
jne 0x100940f3
cmp dword [esi + 0x18], 0
sete al
test al, al
jne 0x100940f3
mov edx, str.ERROR:
mov ecx, 0x100e6780
call fcn.100200d0
mov edx, str.FinishDecoding___called_before_parsing_entire_delta_file_window
jmp 0x10094094
xor bl, bl
mov ecx, esi
call fcn.10093690
pop esi
mov al, bl
pop ebx
pop ecx
ret
mov ecx, 0x100e6780
call fcn.100239b0
push 1
call fcn.100aecb2
int3

Function at 0x10094120
Capabilities:
Terminate process

Disassembly:
push ebp
mov ebp, esp
push ecx
mov eax, dword [ecx + 0xbc]
mov edx, dword [ebp + 8]
push esi
push edi
cmp edx, eax
jbe 0x1009419d
push eax
push ecx
push edx
push ecx
mov edx, str.ERROR:
mov ecx, 0x100e6780
call fcn.100200d0
mov edx, str.Length_of_target_window__
mov ecx, eax
call fcn.100200d0
add esp, 4
mov ecx, eax
call fcn.10046f30
mov edx, str.__exceeds_limit_of
mov ecx, eax
call fcn.100200d0
add esp, 4
mov ecx, eax
call fcn.10046f30
mov edx, str._bytes
mov ecx, eax
call fcn.100200d0
push eax
call fcn.10094e10
add esp, 4
cmp byte [0x100e7ab4], 0
jne 0x10094269
mov al, 1
pop edi
pop esi
pop ecx
pop ebp
ret 4
mov esi, dword [ecx + 0xb4]
cmp esi, 0xfffffffd
je 0x10094201
mov edi, dword [ecx + 0xc0]
mov eax, esi
sub eax, edi
cmp edx, eax
jbe 0x10094201
push esi
push ecx
push edi
push ecx
push edx
push ecx
mov edx, str.ERROR:
mov ecx, 0x100e6780
call fcn.100200d0
mov edx, str.Length_of_target_window__
mov ecx, eax
call fcn.100200d0
add esp, 4
mov ecx, eax
call fcn.10046f30
mov edx, str._bytes__plus_previous_windows__
mov ecx, eax
call fcn.100200d0
add esp, 4
mov ecx, eax
call fcn.10046f30
mov edx, str._bytes__would_exceed_planned_size_of
jmp 0x10094161
mov esi, dword [ecx + 0xb8]
mov eax, esi
mov ecx, dword [ecx + 0xc0]
sub eax, ecx
cmp edx, eax
jbe 0x10094260
push esi
push ecx
push ecx
push ecx
push edx
push ecx
mov edx, str.ERROR:
mov ecx, 0x100e6780
call fcn.100200d0
mov edx, str.Length_of_target_window__
mov ecx, eax
call fcn.100200d0
add esp, 4
mov ecx, eax
call fcn.10046f30
mov edx, str._bytes__plus_previous_windows__
mov ecx, eax
call fcn.100200d0
add esp, 4
mov ecx, eax
call fcn.10046f30
mov edx, str._bytes__would_exceed_maximum_target_file_size_of
jmp 0x10094161
pop edi
xor al, al
pop esi
pop ecx
pop ebp
ret 4
mov ecx, 0x100e6780
call fcn.100239b0
push 1
call fcn.100aecb2
int3
Function at 0x10094310
Capabilities:
Terminate process

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x10
push ebx
push esi
mov esi, dword [ebp + 8]
mov ebx, ecx
push edi
mov ecx, esi
mov dword [ebp - 0xc], 0
mov dword [ebp - 8], 0
lea eax, [ebx + 0x38]
mov dword [ebp - 4], 0
push eax
lea eax, [ebp - 4]
push eax
lea eax, [ebp - 8]
push eax
lea eax, [ebp - 0xc]
push eax
movzx eax, byte [ebx + 0x34]
push eax
call fcn.100a0430
test al, al
jne 0x1009435f
mov eax, dword [esi + 0xc]
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 4
mov eax, dword [ebx]
mov edx, dword [ebp - 0xc]
cmp byte [eax + 0x38], 0x53
mov eax, dword [ebp - 4]
jne 0x100943b0
test edx, edx
jne 0x100943b0
test eax, eax
jne 0x100943b0
mov eax, dword [ebp - 8]
mov ecx, ebx
mov dword [ebx + 0x28], eax
push dword [esi + 4]
push dword [esi + 8]
call fcn.100931b0
mov eax, dword [ebx + 0x10]
mov ecx, dword [eax + 4]
add eax, 8
mov dword [ebx + 0x44], eax
xor eax, eax
mov dword [ebx + 0x48], ecx
mov dword [ebx + 0x4c], 0
mov dword [ebx + 0x50], 0x1000100
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 4
add eax, dword [ebp - 8]
mov ecx, dword [esi + 4]
add eax, edx
mov edi, dword [esi + 8]
sub ecx, edi
cmp ecx, eax
jae 0x100943cf
mov eax, 0xfffffffe
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 4
push edx
push edi
lea ecx, [ebx + 0x18]
call fcn.10093090
mov eax, dword [ebx + 0x18]
lea ecx, [ebx + 0x10]
push dword [ebp - 8]
push dword [eax + 4]
call fcn.10093090
mov eax, dword [ebx + 0x10]
lea ecx, [ebx + 0x20]
push dword [ebp - 4]
push dword [eax + 4]
call fcn.10093090
mov eax, dword [ebx + 0x20]
mov esi, dword [eax + 4]
mov eax, dword [ebp + 8]
mov ecx, dword [eax + 0x14]
test ecx, ecx
jne 0x10094412
call fcn.100a0350
jmp 0x10094417
mov eax, dword [eax + 0x10]
add eax, ecx
cmp esi, eax
je 0x10094388
mov edx, str.ERROR:
mov ecx, 0x100e6780
call fcn.100200d0
mov edx, str.The_end_of_the_instructions_section_does_not_match_the_end_of_the_delta_window
mov ecx, eax
call fcn.100200d0
push eax
call fcn.10094e10
add esp, 4
cmp byte [0x100e7ab4], 0
jne 0x10094458
pop edi
pop esi
or eax, 0xffffffff
pop ebx
mov esp, ebp
pop ebp
ret 4
mov ecx, 0x100e6780
call fcn.100239b0
push 1
call fcn.100aecb2
int3
Function at 0x10094610
Capabilities:
Terminate process

Disassembly:
push ebp
mov ebp, esp
sub esp, 0xc
push ebx
push esi
mov esi, ecx
push edi
mov dword [ebp - 8], esi
mov ecx, dword [esi]
mov ebx, dword [esi + 0xc]
mov eax, dword [ecx + 0x30]
sub eax, dword [esi + 0x30]
mov ecx, dword [ecx + 0x90]
add ebx, eax
mov dword [ebp - 4], eax
mov eax, dword [esi + 0x20]
push dword [eax + 4]
lea edx, [eax + 8]
push edx
push dword [ebp + 0xc]
push ebx
call fcn.1009f710
mov edi, eax
cmp edi, 0xfffffffe
je 0x100947a4
cmp edi, 0xffffffff
je 0x1009477b
test edi, edi
js 0x10094728
cmp edi, ebx
jg 0x10094728
mov ebx, dword [ebp + 8]
mov ecx, dword [esi + 0xc]
lea eax, [edi + ebx]
cmp eax, ecx
ja 0x10094694
mov eax, dword [esi + 8]
mov ecx, dword [esi]
add eax, edi
push ebx
push eax
add ecx, 0x20
call fcn.10024b20
xor eax, eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 8
cmp edi, ecx
jae 0x100946bf
mov eax, dword [esi + 8]
sub ecx, edi
push ecx
mov dword [ebp + 0xc], ecx
add eax, edi
mov ecx, dword [esi]
push eax
add ecx, 0x20
call fcn.10024b20
mov eax, dword [ebp - 4]
mov ecx, dword [ebp + 0xc]
add eax, ecx
add edi, ecx
mov dword [ebp - 4], eax
sub ebx, ecx
jmp 0x100946c2
mov eax, dword [ebp - 4]
mov ecx, dword [esi]
sub edi, dword [esi + 0xc]
add ecx, 0x20
cmp dword [ecx + 0x14], 0x10
jb 0x100946d2
mov ecx, dword [ecx]
mov edx, dword [esi + 0x30]
mov esi, eax
add edx, ecx
sub esi, edi
mov dword [ebp + 0xc], edx
cmp ebx, esi
jbe 0x1009470b
lea eax, [edx + edi]
push esi
push eax
mov eax, dword [ebp - 8]
mov ecx, dword [eax]
add ecx, 0x20
call fcn.10024b20
mov eax, dword [ebp - 4]
add edi, esi
mov edx, dword [ebp + 0xc]
add eax, esi
sub ebx, esi
mov dword [ebp - 4], eax
mov esi, eax
sub esi, edi
cmp ebx, esi
ja 0x100946e2
lea eax, [edx + edi]
push ebx
push eax
mov eax, dword [ebp - 8]
mov ecx, dword [eax]
add ecx, 0x20
call fcn.10024b20
xor eax, eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 8
push ebx
push ecx
push edi
push ecx
mov edx, str.ERROR:
mov ecx, 0x100e6780
call fcn.100200d0
mov edx, str.Internal_error:_unexpected_address
mov ecx, eax
call fcn.100200d0
add esp, 4
mov ecx, eax
call fcn.1004dc70
mov edx, str._returned_from_DecodeAddress__with_here_address_
mov ecx, eax
call fcn.100200d0
add esp, 4
mov ecx, eax
call fcn.1004dc70
push eax
call fcn.10094e10
add esp, 4
cmp byte [0x100e7ab4], 0
je 0x10094798
jmp 0x100947b2
mov edx, str.ERROR:
mov ecx, 0x100e6780
call fcn.100200d0
mov edx, str.Unable_to_decode_address_for_COPY
mov ecx, eax
call fcn.100200d0
jmp 0x10094767
or eax, 0xffffffff
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 8
pop edi
pop esi
mov eax, 0xfffffffe
pop ebx
mov esp, ebp
pop ebp
ret 8
mov ecx, 0x100e6780
call fcn.100239b0
push 1
call fcn.100aecb2
int3
Function at 0x10094b70
Capabilities:
Terminate process

Disassembly:
push ebp
mov ebp, esp
push ecx
push esi
mov esi, ecx
push edi
cmp dword [esi], 0
jne 0x10094bb3
mov edx, str.ERROR:
mov ecx, 0x100e6780
call fcn.100200d0
mov edx, str.Internal_error:_VCDiffDeltaFileWindow::DecodeWindow___called_before_VCDiffDeltaFileWindow::Init__
mov ecx, eax
call fcn.100200d0
push eax
call fcn.10094e10
add esp, 4
cmp byte [0x100e7ab4], 0
je 0x10094caa
jmp 0x10094cb4
cmp byte [esi + 4], 0
jne 0x10094c06
mov edi, dword [ebp + 8]
push edi
call fcn.10094470
cmp eax, 0xfffffffe
je 0x10094bfa
cmp eax, 0xffffffff
je 0x10094caa
mov eax, dword [esi]
mov ecx, dword [eax + 0x90]
call fcn.1009f2d0
test al, al
jne 0x10094c4f
mov edx, str.ERROR:
mov ecx, 0x100e6780
call fcn.100200d0
mov edx, str.Error_initializing_address_cache
jmp 0x10094c95
mov eax, 0xfffffffe
pop edi
pop esi
pop ecx
pop ebp
ret 4
cmp byte [esi + 0x24], 0
je 0x10094c25
mov edx, str.ERROR:
mov ecx, 0x100e6780
call fcn.100200d0
mov edx, str.Internal_error:_Resumed_decoding_of_a_delta_file_window_when_interleaved_format_is_not_being_used
jmp 0x10094b91
mov edi, dword [ebp + 8]
push dword [edi + 4]
push dword [edi + 8]
call fcn.100931b0
mov eax, dword [esi + 0x10]
mov ecx, dword [eax + 4]
add eax, 8
mov dword [esi + 0x44], eax
mov dword [esi + 0x48], ecx
mov eax, dword [eax]
mov dword [esi + 0x4c], eax
mov ax, word [esi + 0x50]
mov word [esi + 0x52], ax
push edi
mov ecx, esi
call fcn.100947d0
cmp eax, 0xfffffffe
je 0x10094c71
cmp eax, 0xffffffff
je 0x10094caa
mov ecx, esi
call fcn.10094280
xor eax, eax
pop edi
pop esi
pop ecx
pop ebp
ret 4
cmp byte [esi + 0x24], 0
jne 0x10094c81
cmp dword [esi + 0x28], 0
jg 0x10094bfa
mov edx, str.ERROR:
mov ecx, 0x100e6780
call fcn.100200d0
mov edx, str.End_of_data_reached_while_decoding_VCDIFF_delta_file
mov ecx, eax
call fcn.100200d0
push eax
call fcn.10094e10
add esp, 4
call fcn.10092f90
pop edi
or eax, 0xffffffff
pop esi
pop ecx
pop ebp
ret 4
mov ecx, 0x100e6780
call fcn.100239b0
push 1
call fcn.100aecb2
int3

Function at 0x100951e0
Capabilities:
Terminate process

Disassembly:
push ebp
mov ebp, esp
push esi
mov esi, ecx
mov ecx, dword [esi + 4]
mov eax, dword [esi]
mov edx, dword [ecx]
push dword [eax + 4]
mov eax, dword [edx + 4]
call eax
test al, al
jne 0x1009522d
mov edx, str.ERROR:
mov ecx, 0x100e6780
call fcn.100200d0
mov edx, str.Internal_error:_Initialization_of_code_table_writer_failed
mov ecx, eax
call fcn.100200d0
push eax
call fcn.10094e10
add esp, 4
cmp byte [0x100e7ab4], 0
jne 0x10095271
xor al, al
pop esi
pop ebp
ret 4
mov eax, dword [esi]
mov ecx, dword [esi + 4]
push dword [eax + 4]
mov edx, dword [ecx]
push dword [eax]
mov eax, dword [edx + 0x24]
call eax
test al, al
jne 0x10095258
mov edx, str.ERROR:
mov ecx, 0x100e6780
call fcn.100200d0
mov edx, str.Dictionary_not_valid_for_writer
jmp 0x1009520d
mov ecx, dword [esi + 4]
push dword [esi + 8]
push dword [ebp + 8]
mov eax, dword [ecx]
call dword [eax + 8]
mov byte [esi + 0xd], 1
mov al, 1
pop esi
pop ebp
ret 4
mov ecx, 0x100e6780
call fcn.100239b0
push 1
call fcn.100aecb2
int3
Function at 0x10095290
Capabilities:
Terminate process

Disassembly:
push ebp
mov ebp, esp
push ebx
mov ebx, ecx
push esi
push edi
cmp byte [ebx + 0xd], 0
jne 0x100952d8
mov edx, str.ERROR:
mov ecx, 0x100e6780
call fcn.100200d0
mov edx, str.EncodeChunk_called_before_StartEncoding
mov ecx, eax
call fcn.100200d0
push eax
call fcn.10094e10
add esp, 4
cmp byte [0x100e7ab4], 0
jne 0x10095358
xor al, al
pop edi
pop esi
pop ebx
pop ebp
ret 0xc
mov ecx, dword [ebx + 4]
mov esi, dword [ebp + 0xc]
mov edi, dword [ebp + 8]
push esi
mov eax, dword [ecx]
push edi
mov eax, dword [eax + 0x28]
call eax
test al, al
jne 0x10095304
mov edx, str.ERROR:
mov ecx, 0x100e6780
call fcn.100200d0
mov edx, str.Target_chunk_not_valid_for_writer
jmp 0x100952b2
test byte [ebx + 8], 2
je 0x1009532b
mov esi, dword [ebx + 4]
xor ecx, ecx
push dword [ebp + 0xc]
mov edx, dword [ebp + 8]
mov edi, dword [esi]
call fcn.1009e920
add esp, 4
mov ecx, esi
push eax
call dword [edi + 0x18]
mov esi, dword [ebp + 0xc]
mov edi, dword [ebp + 8]
cmp byte [ebx + 0xc], 0
mov eax, dword [ebx + 4]
mov ecx, dword [ebx]
push eax
push dword [ebp + 0x10]
push esi
push edi
je 0x1009534a
call fcn.100a0820
mov al, 1
pop edi
pop esi
pop ebx
pop ebp
ret 0xc
call fcn.100a09f0
pop edi
pop esi
mov al, 1
pop ebx
pop ebp
ret 0xc
mov ecx, 0x100e6780
call fcn.100239b0
push 1
call fcn.100aecb2
int3

Function at 0x10095370
Capabilities:
Terminate process

Disassembly:
push ebp
mov ebp, esp
push ecx
cmp byte [ecx + 0xd], 0
jne 0x100953ae
mov edx, str.ERROR:
mov ecx, 0x100e6780
call fcn.100200d0
mov edx, str.FinishEncoding_called_before_StartEncoding
mov ecx, eax
call fcn.100200d0
push eax
call fcn.10094e10
add esp, 4
cmp byte [0x100e7ab4], 0
jne 0x100953c4
xor al, al
pop ecx
pop ebp
ret 4
push dword [ebp + 8]
mov byte [ecx + 0xd], 0
mov ecx, dword [ecx + 4]
mov eax, dword [ecx]
call dword [eax + 0x20]
mov al, 1
pop ecx
pop ebp
ret 4
mov ecx, 0x100e6780
call fcn.100239b0
push 1
call fcn.100aecb2
int3
Function at 0x1009eb90
Capabilities:
Terminate process

Disassembly:
push ebp
mov ebp, esp
push ecx
push ebx
push esi
mov esi, ecx
push edi
mov eax, dword [esi + 8]
test eax, eax
jne 0x1009ebd6
mov edx, str.ERROR:
mov ecx, 0x100e6780
call fcn.100200d0
mov edx, str.Internal_error:_GetNextInstruction___called_before_Init__
mov ecx, eax
call fcn.100200d0
push eax
call fcn.10094e10
add esp, 4
cmp byte [0x100e7ab4], 0
je 0x1009ec9a
jmp 0x1009ecd0
mov eax, dword [eax]
mov dword [esi + 0x10], eax
mov ax, word [esi + 0x14]
mov word [esi + 0x16], ax
mov ecx, pe_nt_image_headers32
cmp word [esi + 0x14], cx
jne 0x1009ec31
mov ecx, dword [esi + 8]
mov eax, dword [ecx]
cmp eax, dword [esi + 0xc]
jae 0x1009ecae
mov dl, byte [eax]
mov eax, dword [esi]
movzx edi, dl
cmp byte [edi + eax + 0x100], 0
je 0x1009ec15
movsx ax, dl
mov word [esi + 0x14], ax
inc dword [ecx]
mov eax, dword [esi]
mov bl, byte [edi + eax]
movzx edx, byte [edi + eax + 0x200]
mov bh, byte [edi + eax + 0x400]
test bl, bl
jne 0x1009ec53
jmp 0x1009ebe3
mov al, byte [esi + 0x14]
mov word [esi + 0x14], cx
movzx ecx, al
mov eax, dword [esi]
mov bl, byte [ecx + eax + 0x100]
movzx edx, byte [ecx + eax + 0x300]
mov bh, byte [ecx + eax + 0x500]
test edx, edx
jne 0x1009ecbb
mov edx, dword [esi + 8]
mov ecx, dword [esi + 0xc]
call fcn.100a45a0
mov ecx, dword [ebp + 8]
mov dword [ecx], eax
cmp eax, 0xfffffffe
je 0x1009eca7
cmp eax, 0xffffffff
jne 0x1009ecc0
mov edx, str.ERROR:
mov ecx, 0x100e6780
call fcn.100200d0
mov edx, str.Instruction_size_is_not_a_valid_variable_length_integer
mov ecx, eax
call fcn.100200d0
push eax
call fcn.10094e10
add esp, 4
call fcn.10092f90
mov eax, 4
pop edi
pop esi
pop ebx
pop ecx
pop ebp
ret 8
mov ecx, esi
call fcn.10092fb0
mov eax, 5
pop edi
pop esi
pop ebx
pop ecx
pop ebp
ret 8
mov eax, dword [ebp + 8]
mov dword [eax], edx
mov eax, dword [ebp + 0xc]
pop edi
pop esi
mov byte [eax], bh
movzx eax, bl
pop ebx
pop ecx
pop ebp
ret 8
mov ecx, 0x100e6780
call fcn.100239b0
push 1
call fcn.100aecb2
int3

Function at 0x1009ecf0
Capabilities:
Terminate process

Disassembly:
push ecx
cmp ecx, 3
ja case.default.0x1009ecf6
jmp dword [ecx*4 + 0x1009ed6c]
mov eax, str.NOOP
pop ecx
ret
mov eax, 0x101010f0
pop ecx
ret
mov eax, 0x101010f4
pop ecx
ret
mov eax, str.COPY
pop ecx
ret
push ecx
push ecx
mov edx, str.ERROR:
mov ecx, 0x100e6780
call fcn.100200d0
mov edx, str.Unexpected_instruction_type
mov ecx, eax
call fcn.100200d0
add esp, 4
mov ecx, eax
call fcn.1004dc70
push eax
call fcn.10094e10
add esp, 4
cmp byte [0x100e7ab4], 0
jne 0x1009ed59
mov eax, 0x100f4a0c
pop ecx
ret
mov ecx, 0x100e6780
call fcn.100239b0
push 1
call fcn.100aecb2
mov edi, edi
std
in al, dx
or dword [eax], edx
add al, 0xed
or dword [eax], edx
or ebp, ebp
or dword [eax], edx
adc ch, ch
or dword [eax], edx
int3
Function at 0x1009ed80
Capabilities:
Terminate process

Disassembly:
push ebp
mov ebp, esp
push ecx
push ebx
push esi
mov bl, dl
mov esi, ecx
mov al, 1
push edi
mov edi, dword [ebp + 0x14]
cmp bl, 3
jbe 0x1009ee04
movzx eax, bl
mov edx, str.ERROR:
push eax
push ecx
push esi
push ecx
mov ecx, 0x100e6780
call fcn.100200d0
mov edx, str.VCDiff:_Bad_code_table__opcode
mov ecx, eax
call fcn.100200d0
add esp, 4
mov ecx, eax
call fcn.1004dc70
mov edx, str._has_invalid
mov ecx, eax
call fcn.100200d0
mov edx, edi
mov ecx, eax
call fcn.100200d0
mov edx, str._instruction_type
mov ecx, eax
call fcn.100200d0
add esp, 4
mov ecx, eax
call fcn.1004dc70
push eax
call fcn.10094e10
add esp, 4
cmp byte [0x100e7ab4], 0
jne 0x1009ef70
xor al, al
mov bh, byte [ebp + 0xc]
cmp bh, byte [ebp + 0x10]
jbe 0x1009ee7b
movzx eax, bh
mov edx, str.ERROR:
push eax
push ecx
push esi
push ecx
mov ecx, 0x100e6780
call fcn.100200d0
mov edx, str.VCDiff:_Bad_code_table__opcode
mov ecx, eax
call fcn.100200d0
add esp, 4
mov ecx, eax
call fcn.1004dc70
mov edx, str._has_invalid
mov ecx, eax
call fcn.100200d0
mov edx, edi
mov ecx, eax
call fcn.100200d0
mov edx, str._mode
mov ecx, eax
call fcn.100200d0
add esp, 4
mov ecx, eax
call fcn.1004dc70
push eax
call fcn.10094e10
add esp, 4
cmp byte [0x100e7ab4], 0
jne 0x1009ef81
xor al, al
test bl, bl
jne 0x1009eef6
mov cl, byte [ebp + 8]
test cl, cl
je 0x1009eefb
movzx eax, cl
mov edx, str.ERROR:
push eax
push ecx
push esi
push ecx
mov ecx, 0x100e6780
call fcn.100200d0
mov edx, str.VCDiff:_Bad_code_table__opcode
mov ecx, eax
call fcn.100200d0
add esp, 4
mov ecx, eax
call fcn.1004dc70
mov edx, str._has
mov ecx, eax
call fcn.100200d0
mov edx, edi
mov ecx, eax
call fcn.100200d0
mov edx, str._instruction_NOOP_with_nonzero_size
mov ecx, eax
call fcn.100200d0
add esp, 4
mov ecx, eax
call fcn.1004dc70
push eax
call fcn.10094e10
add esp, 4
cmp byte [0x100e7ab4], bl
jne 0x1009ef92
xor al, al
jmp 0x1009eefb
cmp bl, 3
je 0x1009ef6a
test bh, bh
je 0x1009ef6a
movzx eax, bh
mov edx, str.ERROR:
push eax
push ecx
push esi
push ecx
mov ecx, 0x100e6780
call fcn.100200d0
mov edx, str.VCDiff:_Bad_code_table__opcode
mov ecx, eax
call fcn.100200d0
add esp, 4
mov ecx, eax
call fcn.1004dc70
mov edx, str._has_non_COPY
mov ecx, eax
call fcn.100200d0
mov edx, edi
mov ecx, eax
call fcn.100200d0
mov edx, str._instruction_with_nonzero_mode
mov ecx, eax
call fcn.100200d0
add esp, 4
mov ecx, eax
call fcn.1004dc70
push eax
call fcn.10094e10
add esp, 4
cmp byte [0x100e7ab4], 0
jne 0x1009efa3
xor al, al
pop edi
pop esi
pop ebx
pop ecx
pop ebp
ret
mov ecx, 0x100e6780
call fcn.100239b0
push 1
call fcn.100aecb2
mov ecx, 0x100e6780
call fcn.100239b0
push 1
call fcn.100aecb2
mov ecx, 0x100e6780
call fcn.100239b0
push 1
call fcn.100aecb2
mov ecx, 0x100e6780
call fcn.100239b0
push 1
call fcn.100aecb2
int3