joyce8/EMBER2024-capa huggingface dataset:
Function at 0x10076f20
Capabilities:
Initialize winsock library

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
sub esp, 0x1a4
mov eax, dword [0x10113840]
xor eax, esp
mov dword [esp + 0x1a0], eax
push esi
push 0x10122f10
mov esi, ecx
call dword [sym.imp.KERNEL32.dll_InterlockedIncrement]
cmp eax, 1
jne 0x10076f66
lea eax, [esp + 0x10]
push eax
push 2
call dword [sym.imp.WS2_32.dll_WSAStartup]
push eax
push 0x10122f14
call dword [sym.imp.KERNEL32.dll_InterlockedExchange]
cmp byte [ebp + 8], 0
je 0x10076f7d
push 0
push 0x10122f14
call dword [sym.imp.KERNEL32.dll_InterlockedExchangeAdd]
test eax, eax
jne 0x10076f94
mov ecx, dword [esp + 0x1a4]
mov eax, esi
pop esi
xor ecx, esp
call fcn.1009fb9e
mov esp, ebp
pop ebp
ret 4
xorps xmm0, xmm0
movq qword [esp + 8], xmm0
mov dword [esp + 8], eax
call fcn.100c08f0
mov edx, str.winsock
mov dword [esp + 0xc], eax
lea ecx, [esp + 8]
call fcn.10073110
int3

Function at 0x10077600
Capabilities:
Access peb ldr_data

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x100d52b3
mov eax, dword fs:[0]
push eax
sub esp, 0x10
mov eax, dword [0x10113840]
xor eax, ebp
mov dword [ebp - 0x10], eax
push ebx
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov ebx, ecx
mov dword [ebp - 0x1c], ebx
call fcn.100094f0
mov dword [ebp - 4], 0
lea ecx, [ebx + 0x38]
mov eax, dword [ebp + 8]
mov dword [ebx], vtable.boost::asio::basic_streambuf_class_std::allocator_char__.0
mov dword [ecx], eax
mov dword [ebx + 0x3c], 0
mov dword [ebx + 0x40], 0
mov dword [ebx + 0x44], 0
mov byte [ebp - 4], 1
lea eax, [ebp - 0x18]
cmp dword [ecx], 0x80
mov dword [ebp - 0x18], 0x80
cmovbe eax, ecx
lea ecx, [ebp - 0x14]
mov esi, dword [eax]
cmp esi, 1
lea eax, [ebp - 0x18]
mov dword [ebp - 0x14], esi
cmovae eax, ecx
mov dword [ebp - 0x18], 1
lea ecx, [ebx + 0x3c]
push dword [eax]
call fcn.1004b3c0
mov eax, dword [ebx + 0xc]
mov ecx, dword [ebx + 0x3c]
mov dword [eax], ecx
mov eax, dword [ebx + 0x1c]
mov dword [eax], ecx
sub ecx, ecx
mov eax, dword [ebx + 0x2c]
mov dword [eax], ecx
mov ecx, dword [ebx + 0x10]
mov edx, dword [ebx + 0x3c]
add esi, edx
sub esi, edx
mov dword [ecx], edx
mov ecx, dword [ebx + 0x20]
mov dword [ecx], edx
mov ecx, dword [ebx + 0x30]
mov dword [ecx], esi
mov dword [ebp - 4], 0xffffffff
mov eax, ebx
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 0x10]
xor ecx, ebp
call fcn.1009fb9e
mov esp, ebp
pop ebp
ret 8
Function at 0x10080dc0
Capabilities:
Contain obfuscated stackstrings

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x104
mov eax, dword [0x10113840]
xor eax, ebp
mov dword [ebp - 4], eax
xor eax, eax
mov dword [ebp - 0x104], 0x3c303c35
push 0x3c74
push 0x10123020
mov dword [ebp - 0xe8], eax
mov dword [ebp - 0xe4], eax
mov dword [ebp - 0xe0], eax
mov dword [ebp - 0xdc], eax
mov dword [ebp - 0xd8], eax
mov dword [ebp - 0xd4], eax
mov dword [ebp - 0xd0], eax
mov dword [ebp - 0xcc], eax
mov dword [ebp - 0xc8], eax
mov dword [ebp - 0xc4], eax
mov dword [ebp - 0xc0], eax
mov dword [ebp - 0xbc], eax
mov dword [ebp - 0xb8], eax
mov dword [ebp - 0xb4], eax
mov dword [ebp - 0xb0], eax
mov dword [ebp - 0xac], eax
mov dword [ebp - 0xa8], eax
mov dword [ebp - 0xa4], eax
mov dword [ebp - 0xa0], eax
mov dword [ebp - 0x9c], eax
mov dword [ebp - 0x98], eax
mov dword [ebp - 0x94], eax
mov dword [ebp - 0x90], eax
mov dword [ebp - 0x8c], eax
mov dword [ebp - 0x88], eax
mov dword [ebp - 0x84], eax
mov dword [ebp - 0x80], eax
mov dword [ebp - 0x7c], eax
mov dword [ebp - 0x78], eax
mov dword [ebp - 0x74], eax
mov dword [ebp - 0x70], eax
mov dword [ebp - 0x6c], eax
mov dword [ebp - 0x68], eax
mov dword [ebp - 0x64], eax
mov dword [ebp - 0x60], eax
mov dword [ebp - 0x5c], eax
mov dword [ebp - 0x58], eax
mov dword [ebp - 0x54], eax
mov dword [ebp - 0x50], eax
mov dword [ebp - 0x4c], eax
mov dword [ebp - 0x48], eax
mov dword [ebp - 0x44], eax
mov dword [ebp - 0x40], eax
mov dword [ebp - 0x3c], eax
mov dword [ebp - 0x38], eax
mov dword [ebp - 0x34], eax
mov dword [ebp - 0x30], eax
mov dword [ebp - 0x2c], eax
mov dword [ebp - 0x28], eax
mov dword [ebp - 0x24], eax
mov dword [ebp - 0x20], eax
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x18], eax
mov dword [ebp - 0x14], eax
mov dword [ebp - 0x10], eax
mov dword [ebp - 0xc], eax
mov dword [ebp - 8], eax
lea eax, [ebp - 0x104]
push 0xd
push eax
mov dword [ebp - 0x100], 0x3c353c22
mov dword [ebp - 0xfc], 0x3c3d3c24
mov dword [ebp - 0xf8], 0x3c463c47
mov dword [ebp - 0xf4], 0x3c103c5a
mov dword [ebp - 0xf0], 0x3c183c18
mov dword [ebp - 0xec], 0x3c74
call fcn.100477b0
mov ecx, dword [ebp - 4]
add esp, 0x10
xor ecx, ebp
call fcn.1009fb9e
mov esp, ebp
pop ebp
ret
Function at 0x10085240
Capabilities:
Parse credit card information

Disassembly:
add ecx, 0xfffffffe
cmp ecx, 8
ja case.default.0x1008524c
jmp dword [ecx*4 + 0x10085374]
cmp dl, 0x40
jne 0x1008525e
mov eax, 4
ret
mov al, dl
or al, 0x20
cmp al, 0x61
jb 0x1008526a
cmp al, 0x7a
jbe 0x100852cd
cmp dl, 0x30
jl 0x10085274
cmp dl, 0x39
jle 0x100852cd
cmp dl, 0x2d
je 0x100852cd
cmp dl, 0x5f
je 0x100852cd
cmp dl, 0x2e
je 0x100852cd
cmp dl, 0x21
je 0x100852cd
cmp dl, 0x7e
je 0x100852cd
cmp dl, 0x2a
je 0x100852cd
cmp dl, 0x27
je 0x100852cd
cmp dl, 0x28
je 0x100852cd
cmp dl, 0x29
je 0x100852cd
cmp dl, 0x25
je 0x100852cd
cmp dl, 0x3b
je 0x100852cd
cmp dl, 0x3a
je 0x100852cd
cmp dl, 0x26
je 0x100852cd
cmp dl, 0x3d
je 0x100852cd
cmp dl, 0x2b
je 0x100852cd
cmp dl, 0x24
je 0x100852cd
cmp dl, 0x2c
jne case.default.0x1008524c
mov eax, 3
ret
cmp dl, 0x5b
jne 0x100852de
mov eax, 5
ret
mov al, dl
or al, 0x20
cmp al, 0x61
jb 0x100852ea
cmp al, 0x7a
jbe 0x100852fe
cmp dl, 0x30
jl 0x100852f4
cmp dl, 0x39
jle 0x100852fe
cmp dl, 0x2e
je 0x100852fe
cmp dl, 0x2d
jne case.default.0x1008524c
mov eax, 6
ret
mov al, dl
or al, 0x20
cmp al, 0x61
jb 0x10085310
cmp al, 0x7a
jbe 0x100852fe
cmp dl, 0x30
jl 0x1008531a
cmp dl, 0x39
jle 0x100852fe
cmp dl, 0x2e
je 0x100852fe
cmp dl, 0x2d
je 0x100852fe
cmp dl, 0x3a
jne case.default.0x1008524c
mov eax, 9
ret
cmp dl, 0x5d
jne case.0x1008524c.5
mov eax, 8
ret
cmp dl, 0x30
jl 0x10085344
cmp dl, 0x39
jle 0x1008535a
mov al, dl
or al, 0x20
cmp al, 0x61
jb 0x10085350
cmp al, 0x66
jbe 0x1008535a
cmp dl, 0x3a
je 0x1008535a
cmp dl, 0x2e
jne case.default.0x1008524c
mov eax, 7
ret
sub dl, 0x30
mov eax, 0xa
cmp dl, 9
jbe 0x10085372
mov eax, 1
ret

Function at 0x10086300
Capabilities:
Terminate process

Disassembly:
push esi
mov esi, ecx
mov ecx, dword [esi + 0x10]
test ecx, ecx
je 0x10086390
mov eax, dword [esi + 8]
cmp ecx, dword [eax]
jbe 0x10086342
mov edx, str.ERROR:
mov ecx, 0x1011f818
call fcn.10015f90
mov edx, str.Internal_error:_last_instruction_start_past_end_of_instructions_and_sizes_in_UnGetInstruction
mov ecx, eax
call fcn.10015f90
push eax
call fcn.10088160
add esp, 4
cmp byte [0x10120b44], 0
jne 0x10086392
mov ecx, dword [esi + 8]
mov eax, dword [esi + 0x10]
mov dword [ecx], eax
mov eax, 0x100
cmp word [esi + 0x14], ax
je 0x10086388
cmp word [esi + 0x16], ax
je 0x10086388
mov edx, str.ERROR:
mov ecx, 0x1011f818
call fcn.10015f90
mov edx, str.Internal_error:_two_pending_instructions_in_a_row_in_UnGetInstruction
mov ecx, eax
call fcn.10015f90
push eax
call fcn.10088160
add esp, 4
cmp byte [0x10120b44], 0
jne 0x100863a3
mov ax, word [esi + 0x16]
mov word [esi + 0x14], ax
pop esi
ret
mov ecx, 0x1011f818
call fcn.1001a0e0
push 1
call fcn.100a1eb2
mov ecx, 0x1011f818
call fcn.1001a0e0
push 1
call fcn.100a1eb2
int3
Function at 0x10086730
Capabilities:
Terminate process

Disassembly:
push ecx
mov edx, dword [ecx + 0xb4]
cmp edx, 0xfffffffd
jne 0x10086740
xor al, al
pop ecx
ret
mov ecx, dword [ecx + 0xc0]
cmp ecx, edx
jbe 0x1008679f
push edx
push ecx
push ecx
push ecx
mov edx, str.ERROR:
mov ecx, 0x1011f818
call fcn.10015f90
mov edx, str.Internal_error:_Decoded_data_size
mov ecx, eax
call fcn.10015f90
add esp, 4
mov ecx, eax
call fcn.1003be40
mov edx, str._exceeds_planned_target_file_size
mov ecx, eax
call fcn.10015f90
add esp, 4
mov ecx, eax
call fcn.1003be40
push eax
call fcn.10088160
add esp, 4
cmp byte [0x10120b44], 0
jne 0x100867a8
mov al, 1
pop ecx
ret
xor eax, eax
cmp ecx, edx
sete al
pop ecx
ret
mov ecx, 0x1011f818
call fcn.1001a0e0
push 1
call fcn.100a1eb2
int3

Function at 0x10086a90
Capabilities:
Terminate process

Disassembly:
push ebp
mov ebp, esp
push ecx
push esi
mov esi, ecx
cmp byte [esi + 0xc8], 0
je 0x10086acf
mov edx, str.ERROR:
mov ecx, 0x1011f818
call fcn.10015f90
mov edx, str.StartDecoding___called_twice_without_FinishDecoding__
mov ecx, eax
call fcn.10015f90
push eax
call fcn.10088160
add esp, 4
cmp byte [0x10120b44], 0
je 0x10086b10
jmp 0x10086b16
cmp dword [esi + 0x1c], 0x10
lea eax, [esi + 8]
mov dword [eax + 0x10], 0
jb 0x10086ae1
mov eax, dword [eax]
mov byte [eax], 0
lea eax, [esi + 0x20]
cmp dword [eax + 0x14], 0x10
mov dword [eax + 0x10], 0
jb 0x10086af6
mov eax, dword [eax]
mov byte [eax], 0
call fcn.100869e0
mov eax, dword [ebp + 8]
mov dword [esi], eax
mov eax, dword [ebp + 0xc]
mov dword [esi + 4], eax
mov byte [esi + 0xc8], 1
pop esi
pop ecx
pop ebp
ret 8
mov ecx, 0x1011f818
call fcn.1001a0e0
push 1
call fcn.100a1eb2
int3
Function at 0x10086b30
Capabilities:
Terminate process

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x100d6dab
mov eax, dword fs:[0]
push eax
sub esp, 0xc
push esi
push edi
mov eax, dword [0x10113840]
xor eax, ebp
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov edi, ecx
cmp dword [edi + 0x90], 0
lea eax, [edi + 0x90]
jne 0x10086d02
mov esi, dword [ebp + 8]
xor al, al
mov dword [ebp - 0x18], eax
mov dword [ebp - 0x14], 1
mov edx, dword [esi + 4]
mov ecx, dword [esi + 8]
sub edx, ecx
cmp edx, 3
ja case.default.0x10086b88
jmp dword [edx*4 + 0x10086d30]
mov al, byte [ecx + 3]
mov byte [ebp + 0xb], al
test al, al
mov byte [edi + 0x38], al
mov eax, dword [ebp - 0x18]
je case.0x10086b88.3
cmp byte [ebp + 0xb], 0x53
je case.0x10086b88.3
mov edx, str.ERROR:
mov ecx, 0x1011f818
call fcn.10015f90
mov edx, str.Unrecognized_VCDIFF_format_version
mov ecx, eax
call fcn.10015f90
push eax
call fcn.10088160
add esp, 4
cmp byte [0x10120b44], 0
je 0x10086c5b
mov ecx, 0x1011f818
call fcn.1001a0e0
push 1
call fcn.100a1eb2
cmp byte [ecx + 2], 0xc4
movzx eax, al
cmovne eax, dword [ebp - 0x14]
cmp byte [ecx + 1], 0xc3
movzx eax, al
cmovne eax, dword [ebp - 0x14]
cmp byte [ecx], 0xd6
jne 0x10086d17
test al, al
jne 0x10086d17
cmp edx, 5
jae 0x10086c2b
mov eax, 0xfffffffe
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
mov esp, ebp
pop ebp
ret 4
mov al, byte [ecx + 4]
test al, 1
je 0x10086c71
mov edx, str.ERROR:
mov ecx, 0x1011f818
call fcn.10015f90
mov edx, str.Secondary_compression_is_not_supported
mov ecx, eax
call fcn.10015f90
push eax
call fcn.10088160
add esp, 4
call fcn.100862e0
or eax, 0xffffffff
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
mov esp, ebp
pop ebp
ret 4
test al, 2
je 0x10086cb0
mov eax, dword [esi + 8]
mov ecx, edi
push dword [esi + 4]
add eax, 5
push eax
call fcn.10086d40
cmp eax, 0xfffffffe
je 0x10086c13
cmp eax, 0xffffffff
je 0x10086c5b
add eax, 5
mov ecx, esi
push eax
call fcn.10092f50
xor eax, eax
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
mov esp, ebp
pop ebp
ret 4
push 0x24
call fcn.1009e8b1
add esp, 4
mov dword [ebp + 8], eax
mov dword [ebp - 4], 0
test eax, eax
je 0x10086ce4
xorps xmm0, xmm0
mov ecx, eax
movdqu xmmword [eax], xmm0
movdqu xmmword [eax + 0x10], xmm0
mov dword [eax + 0x20], 0
call fcn.10092590
jmp 0x10086ce6
xor eax, eax
mov dword [ebp - 4], 0xffffffff
lea ecx, [edi + 0x90]
push eax
call fcn.10088060
push 5
mov ecx, esi
call fcn.10092f50
xor eax, eax
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
mov esp, ebp
pop ebp
ret 4
mov edx, str.ERROR:
mov ecx, 0x1011f818
call fcn.10015f90
mov edx, str.Did_not_find_VCDIFF_header_bytes__input_is_not_a_VCDIFF_delta_file
jmp 0x10086bb9
Function at 0x10086bfd
Capabilities:
Terminate process

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x100d6dab
mov eax, dword fs:[0]
push eax
sub esp, 0xc
push esi
push edi
mov eax, dword [0x10113840]
xor eax, ebp
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov edi, ecx
cmp dword [edi + 0x90], 0
lea eax, [edi + 0x90]
jne 0x10086d02
mov esi, dword [ebp + 8]
xor al, al
mov dword [ebp - 0x18], eax
mov dword [ebp - 0x14], 1
mov edx, dword [esi + 4]
mov ecx, dword [esi + 8]
sub edx, ecx
cmp edx, 3
ja case.default.0x10086b88
jmp dword [edx*4 + 0x10086d30]
mov al, byte [ecx + 3]
mov byte [ebp + 0xb], al
test al, al
mov byte [edi + 0x38], al
mov eax, dword [ebp - 0x18]
je case.0x10086b88.3
cmp byte [ebp + 0xb], 0x53
je case.0x10086b88.3
mov edx, str.ERROR:
mov ecx, 0x1011f818
call fcn.10015f90
mov edx, str.Unrecognized_VCDIFF_format_version
mov ecx, eax
call fcn.10015f90
push eax
call fcn.10088160
add esp, 4
cmp byte [0x10120b44], 0
je 0x10086c5b
mov ecx, 0x1011f818
call fcn.1001a0e0
push 1
call fcn.100a1eb2
cmp byte [ecx + 2], 0xc4
movzx eax, al
cmovne eax, dword [ebp - 0x14]
cmp byte [ecx + 1], 0xc3
movzx eax, al
cmovne eax, dword [ebp - 0x14]
cmp byte [ecx], 0xd6
jne 0x10086d17
test al, al
jne 0x10086d17
cmp edx, 5
jae 0x10086c2b
mov eax, 0xfffffffe
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
mov esp, ebp
pop ebp
ret 4
mov al, byte [ecx + 4]
test al, 1
je 0x10086c71
mov edx, str.ERROR:
mov ecx, 0x1011f818
call fcn.10015f90
mov edx, str.Secondary_compression_is_not_supported
mov ecx, eax
call fcn.10015f90
push eax
call fcn.10088160
add esp, 4
call fcn.100862e0
or eax, 0xffffffff
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
mov esp, ebp
pop ebp
ret 4
test al, 2
je 0x10086cb0
mov eax, dword [esi + 8]
mov ecx, edi
push dword [esi + 4]
add eax, 5
push eax
call fcn.10086d40
cmp eax, 0xfffffffe
je 0x10086c13
cmp eax, 0xffffffff
je 0x10086c5b
add eax, 5
mov ecx, esi
push eax
call fcn.10092f50
xor eax, eax
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
mov esp, ebp
pop ebp
ret 4
push 0x24
call fcn.1009e8b1
add esp, 4
mov dword [ebp + 8], eax
mov dword [ebp - 4], 0
test eax, eax
je 0x10086ce4
xorps xmm0, xmm0
mov ecx, eax
movdqu xmmword [eax], xmm0
movdqu xmmword [eax + 0x10], xmm0
mov dword [eax + 0x20], 0
call fcn.10092590
jmp 0x10086ce6
xor eax, eax
mov dword [ebp - 4], 0xffffffff
lea ecx, [edi + 0x90]
push eax
call fcn.10088060
push 5
mov ecx, esi
call fcn.10092f50
xor eax, eax
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
mov esp, ebp
pop ebp
ret 4
mov edx, str.ERROR:
mov ecx, 0x1011f818
call fcn.10015f90
mov edx, str.Did_not_find_VCDIFF_header_bytes__input_is_not_a_VCDIFF_delta_file
jmp 0x10086bb9
Function at 0x10086f50
Capabilities:
Terminate process

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x100d6e28
mov eax, dword fs:[0]
push eax
sub esp, 0x18
mov eax, dword [0x10113840]
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 0x10086f93
xor eax, eax
jmp 0x1008714d
cmp dword [ebx + 0x94], 0
jne 0x10086fe2
mov edx, str.ERROR:
mov ecx, 0x1011f818
call fcn.10015f90
mov edx, str.Internal_error:__custom_code_table_decoder__is_set__but_custom_code_table__is_NULL
mov ecx, eax
call fcn.10015f90
push eax
call fcn.10088160
add esp, 4
cmp byte [0x10120b44], 0
je 0x10086fda
mov ecx, 0x1011f818
call fcn.1001a0e0
push 1
call fcn.100a1eb2
or eax, 0xffffffff
jmp 0x1008714d
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.100871e0
lea edi, [ebx + 0x98]
test al, al
je 0x100870cb
cmp dword [ebx + 0xa8], 0x600
jae 0x10087052
mov eax, dword [esi + 4]
mov dword [esi + 8], eax
mov eax, 0xfffffffe
jmp 0x10087131
mov ecx, dword [ebx + 0xb0]
call fcn.100873c0
test al, al
je 0x100870cb
mov eax, dword [ebx + 0xa8]
cmp eax, 0x600
je 0x100870d0
push 0x600
push ecx
push eax
push ecx
mov edx, str.ERROR:
mov ecx, 0x1011f818
call fcn.10015f90
mov edx, str.Decoded_custom_code_table_size__
mov ecx, eax
call fcn.10015f90
add esp, 4
mov ecx, eax
call fcn.1003be40
mov edx, str.__does_not_match_size_of_a_code_table__
mov ecx, eax
call fcn.10015f90
add esp, 4
mov ecx, eax
call fcn.1003be40
mov edx, 0x100ebd68
mov ecx, eax
call fcn.10015f90
push eax
call fcn.10088160
add esp, 4
call fcn.100862e0
or eax, 0xffffffff
jmp 0x10087131
cmp dword [edi + 0x14], 0x10
jb 0x100870d8
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.1002aa20
mov eax, dword [ebx + 0xb0]
mov ecx, dword [ebp - 0x20]
push dword [eax + 0x18]
call fcn.100930e0
push 0
lea ecx, [ebx + 0xb0]
call fcn.10088090
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.10086490
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.1009fb9e
mov esp, ebp
pop ebp
ret 4
Function at 0x100871e0
Capabilities:
Terminate process

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
sub esp, 0x14
mov eax, dword [0x10113840]
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 0x1008725a
mov edx, str.ERROR:
mov ecx, 0x1011f818
call fcn.10015f90
mov edx, str.DecodeChunk___called_without_StartDecoding__
mov ecx, eax
call fcn.10015f90
push eax
call fcn.10088160
add esp, 4
cmp byte [0x10120b44], 0
jne 0x100873aa
mov ecx, esi
call fcn.100869e0
xor al, al
pop edi
pop esi
pop ebx
mov ecx, dword [esp + 0x10]
xor ecx, esp
call fcn.1009fb9e
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 0x100872a8
push edx
lea edi, [esi + 8]
push ecx
mov ecx, edi
call fcn.1001b260
cmp dword [edi + 0x14], 0x10
mov eax, dword [esi + 0x18]
jb 0x1008729a
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.10086b30
test eax, eax
jne 0x1008736f
lea eax, [esp + 0x10]
mov ecx, esi
push eax
call fcn.10086f50
test eax, eax
jne 0x1008736f
mov ecx, dword [esp + 0x14]
mov eax, ecx
mov edx, dword [esp + 0x18]
sub eax, edx
je 0x10087380
lea eax, [esi + 0x3c]
lea ecx, [esp + 0x10]
push ecx
mov ecx, eax
call fcn.10087ec0
test eax, eax
jne 0x1008736f
mov ecx, esi
call fcn.10086730
test al, al
jne 0x10087378
cmp byte [esi + 0xc9], al
jne 0x10087358
cmp dword [esi + 0x34], 0x10
lea edi, [esi + 0x20]
mov ebx, dword [esi + 0x30]
jb 0x10087318
mov ecx, dword [edi]
jmp 0x1008731a
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 0x10087344
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 0x100872e5
jmp 0x10087380
cmp eax, 0xffffffff
je 0x1008723d
mov edx, dword [esp + 0x18]
mov ecx, dword [esp + 0x14]
sub ecx, edx
push ecx
push edx
lea ecx, [esi + 8]
call fcn.10004000
push ebx
mov ecx, esi
call fcn.10087170
mov ecx, dword [esp + 0x1c]
mov al, 1
pop edi
pop esi
pop ebx
xor ecx, esp
call fcn.1009fb9e
mov esp, ebp
pop ebp
ret 0xc
mov ecx, 0x1011f818
call fcn.1001a0e0
push 1
call fcn.100a1eb2
int3
Function at 0x100873c0
Capabilities:
Terminate process

Disassembly:
push ecx
push ebx
push esi
mov esi, ecx
mov bl, 1
cmp byte [esi + 0xc8], 0
jne 0x100873ff
mov edx, str.WARNING:
mov ecx, 0x1011f818
call fcn.10015f90
mov edx, str.FinishDecoding___called_before_StartDecoding____or_called_after_DecodeChunk___returned_false
mov ecx, eax
call fcn.10015f90
push eax
call fcn.10088160
add esp, 4
cmp byte [0x10120b44], 0
je 0x10087441
jmp 0x10087450
cmp dword [esi + 0x90], 0
je 0x10087420
cmp dword [esi + 0xb0], 0
jne 0x1008742b
cmp byte [esi + 0x40], 0
jne 0x1008742b
call fcn.10086730
test al, al
jne 0x10087443
cmp dword [esi + 0x18], 0
sete al
test al, al
jne 0x10087443
mov edx, str.ERROR:
mov ecx, 0x1011f818
call fcn.10015f90
mov edx, str.FinishDecoding___called_before_parsing_entire_delta_file_window
jmp 0x100873e4
xor bl, bl
mov ecx, esi
call fcn.100869e0
pop esi
mov al, bl
pop ebx
pop ecx
ret
mov ecx, 0x1011f818
call fcn.1001a0e0
push 1
call fcn.100a1eb2
int3

Function at 0x10087470
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 0x100874ed
push eax
push ecx
push edx
push ecx
mov edx, str.ERROR:
mov ecx, 0x1011f818
call fcn.10015f90
mov edx, str.Length_of_target_window__
mov ecx, eax
call fcn.10015f90
add esp, 4
mov ecx, eax
call fcn.1003be40
mov edx, str.__exceeds_limit_of
mov ecx, eax
call fcn.10015f90
add esp, 4
mov ecx, eax
call fcn.1003be40
mov edx, str._bytes
mov ecx, eax
call fcn.10015f90
push eax
call fcn.10088160
add esp, 4
cmp byte [0x10120b44], 0
jne 0x100875b9
mov al, 1
pop edi
pop esi
pop ecx
pop ebp
ret 4
mov esi, dword [ecx + 0xb4]
cmp esi, 0xfffffffd
je 0x10087551
mov edi, dword [ecx + 0xc0]
mov eax, esi
sub eax, edi
cmp edx, eax
jbe 0x10087551
push esi
push ecx
push edi
push ecx
push edx
push ecx
mov edx, str.ERROR:
mov ecx, 0x1011f818
call fcn.10015f90
mov edx, str.Length_of_target_window__
mov ecx, eax
call fcn.10015f90
add esp, 4
mov ecx, eax
call fcn.1003be40
mov edx, str._bytes__plus_previous_windows__
mov ecx, eax
call fcn.10015f90
add esp, 4
mov ecx, eax
call fcn.1003be40
mov edx, str._bytes__would_exceed_planned_size_of
jmp 0x100874b1
mov esi, dword [ecx + 0xb8]
mov eax, esi
mov ecx, dword [ecx + 0xc0]
sub eax, ecx
cmp edx, eax
jbe 0x100875b0
push esi
push ecx
push ecx
push ecx
push edx
push ecx
mov edx, str.ERROR:
mov ecx, 0x1011f818
call fcn.10015f90
mov edx, str.Length_of_target_window__
mov ecx, eax
call fcn.10015f90
add esp, 4
mov ecx, eax
call fcn.1003be40
mov edx, str._bytes__plus_previous_windows__
mov ecx, eax
call fcn.10015f90
add esp, 4
mov ecx, eax
call fcn.1003be40
mov edx, str._bytes__would_exceed_maximum_target_file_size_of
jmp 0x100874b1
pop edi
xor al, al
pop esi
pop ecx
pop ebp
ret 4
mov ecx, 0x1011f818
call fcn.1001a0e0
push 1
call fcn.100a1eb2
int3