joyce8/EMBER2024-capa huggingface dataset:
Function at 0x10030770
Capabilities:
Hash data using fnv

Disassembly:
push ebp
mov ebp, esp
push ebx
push edi
push esi
sub esp, 0x14
mov edi, ecx
mov ebx, dword [ebp + 0xc]
mov esi, dword [ebp + 8]
mov eax, dword [0x1038100c]
xor eax, ebp
mov dword [ebp - 0x10], eax
cmp dword [ecx + 0x1d44], esi
jbe 0x100307a9
mov eax, dword [edi + 0x1d48]
mov eax, dword [eax + esi*4]
xor ecx, ecx
cmp eax, 0xffffffff
cmovne ecx, eax
jmp 0x10030856
mov eax, esi
shr eax, 0x18
mov edx, esi
shr edx, 0x10
mov ecx, esi
shr ecx, 8
mov dword [ebp - 0x18], edi
mov edi, 0xff
mov ebx, esi
and ebx, edi
xor ebx, 0x811c9dc5
imul ebx, ebx, 0x1000193
and ecx, edi
xor ebx, ecx
imul ebx, ebx, 0x1000193
and edx, edi
xor ebx, edx
imul edi, ebx, 0x1000193
xor edi, eax
imul eax, edi, 0x1000193
mov ebx, dword [ebp - 0x18]
and eax, dword [ebx + 0x1d64]
mov edi, dword [ebx + 0x1d50]
mov ebx, dword [ebx + 0x1d58]
shl edx, 0x10
and esi, 0xff0000ff
or esi, edx
mov dword [ebp - 0x20], ebx
mov ebx, dword [ebx + eax*8]
add eax, eax
inc eax
mov dword [ebp - 0x1c], eax
shl ecx, 8
or esi, ecx
mov edx, ebx
cmp edi, ebx
je 0x10030830
mov eax, dword [ebp - 0x20]
mov ecx, dword [ebp - 0x1c]
mov eax, dword [eax + ecx*4]
mov eax, dword [eax]
jmp 0x10030832
mov eax, ebx
xor ecx, ecx
cmp edx, eax
je 0x10030841
cmp dword [edx + 8], esi
je 0x10030849
mov edx, dword [edx]
jmp 0x1003081f
mov edi, dword [ebp - 0x18]
mov ebx, dword [ebp + 0xc]
jmp 0x10030856
cmp edx, edi
mov edi, dword [ebp - 0x18]
mov ebx, dword [ebp + 0xc]
je 0x10030856
mov ecx, dword [edx + 0xc]
mov esi, dword [ebp + 0x10]
cmp ebx, 0x84f4
je 0x10030878
cmp ebx, 0x84f3
jne 0x10030892
mov byte [ebp - 0x11], 1
cmp byte [ecx + 9], 1
jne 0x1003087d
xor eax, eax
inc eax
jmp 0x10030890
mov eax, dword [ecx + 0xc]
jmp 0x10030890
lea eax, [ebp - 0x11]
push eax
push edi
call fcn.100425b0
cmp eax, 1
je 0x10030892
movzx eax, byte [ebp - 0x11]
mov dword [esi], eax
mov ecx, dword [ebp - 0x10]
xor ecx, ebp
call fcn.1021e470
add esp, 0x14
pop esi
pop edi
pop ebx
pop ebp
ret 0xc
Function at 0x100308b0
Capabilities:
Hash data using fnv

Disassembly:
push ebp
mov ebp, esp
push ebx
push edi
push esi
sub esp, 0xc
mov eax, dword [ebp + 8]
mov dword [ebp - 0x10], ecx
mov edx, dword [ecx + 0x1278]
cmp dword [edx + 0x60], eax
jbe 0x100308de
mov ecx, dword [edx + 0x64]
mov edi, dword [ecx + eax*4]
cmp edi, 0xffffffff
jne 0x10030970
jmp 0x10030989
mov ebx, eax
shr ebx, 0x10
mov edi, eax
shr edi, 8
mov ecx, 0xff
mov esi, eax
and esi, ecx
and edi, ecx
and ebx, ecx
mov ecx, eax
shr ecx, 0x18
xor esi, 0x811c9dc5
imul esi, esi, 0x1000193
xor esi, edi
imul esi, esi, 0x1000193
xor esi, ebx
imul esi, esi, 0x1000193
xor esi, ecx
imul esi, esi, 0x1000193
and esi, dword [edx + 0x80]
mov ecx, dword [edx + 0x6c]
mov edx, dword [edx + 0x74]
shl ebx, 0x10
and eax, 0xff0000ff
or eax, ebx
mov dword [ebp - 0x18], edx
mov edx, dword [edx + esi*8]
add esi, esi
inc esi
mov dword [ebp - 0x14], esi
shl edi, 8
or eax, edi
mov ebx, edx
cmp ecx, edx
je 0x10030958
mov esi, dword [ebp - 0x18]
mov edi, dword [ebp - 0x14]
mov esi, dword [esi + edi*4]
mov esi, dword [esi]
jmp 0x1003095a
mov esi, edx
xor edi, edi
cmp ebx, esi
je 0x1003098b
cmp dword [ebx + 8], eax
je 0x10030969
mov ebx, dword [ebx]
jmp 0x10030947
cmp ebx, ecx
je 0x1003098b
mov edi, dword [ebx + 0xc]
test edi, edi
je 0x10030989
cmp dword [edi + 0x174], 0
je 0x1003098b
mov ecx, edi
push dword [ebp - 0x10]
call fcn.1005d010
jmp 0x1003098b
xor edi, edi
mov ecx, edi
push dword [ebp + 0x14]
push dword [ebp + 0xc]
push dword [ebp - 0x10]
call fcn.10061410
add esp, 0xc
pop esi
pop edi
pop ebx
pop ebp
ret 0x10

Function at 0x100309b0
Capabilities:
Hash data using fnv

Disassembly:
push ebp
mov ebp, esp
push ebx
push edi
push esi
sub esp, 0xc
mov eax, dword [ebp + 8]
mov dword [ebp - 0x10], ecx
mov edx, dword [ecx + 0x1278]
cmp dword [edx + 0x60], eax
jbe 0x100309de
mov ecx, dword [edx + 0x64]
mov edi, dword [ecx + eax*4]
cmp edi, 0xffffffff
jne 0x10030a70
jmp 0x10030a89
mov ebx, eax
shr ebx, 0x10
mov edi, eax
shr edi, 8
mov ecx, 0xff
mov esi, eax
and esi, ecx
and edi, ecx
and ebx, ecx
mov ecx, eax
shr ecx, 0x18
xor esi, 0x811c9dc5
imul esi, esi, 0x1000193
xor esi, edi
imul esi, esi, 0x1000193
xor esi, ebx
imul esi, esi, 0x1000193
xor esi, ecx
imul esi, esi, 0x1000193
and esi, dword [edx + 0x80]
mov ecx, dword [edx + 0x6c]
mov edx, dword [edx + 0x74]
shl ebx, 0x10
and eax, 0xff0000ff
or eax, ebx
mov dword [ebp - 0x18], edx
mov edx, dword [edx + esi*8]
add esi, esi
inc esi
mov dword [ebp - 0x14], esi
shl edi, 8
or eax, edi
mov ebx, edx
cmp ecx, edx
je 0x10030a58
mov esi, dword [ebp - 0x18]
mov edi, dword [ebp - 0x14]
mov esi, dword [esi + edi*4]
mov esi, dword [esi]
jmp 0x10030a5a
mov esi, edx
xor edi, edi
cmp ebx, esi
je 0x10030a8b
cmp dword [ebx + 8], eax
je 0x10030a69
mov ebx, dword [ebx]
jmp 0x10030a47
cmp ebx, ecx
je 0x10030a8b
mov edi, dword [ebx + 0xc]
test edi, edi
je 0x10030a89
cmp dword [edi + 0x174], 0
je 0x10030a8b
mov ecx, edi
push dword [ebp - 0x10]
call fcn.1005d010
jmp 0x10030a8b
xor edi, edi
mov ecx, edi
push dword [ebp + 0x14]
push dword [ebp + 0xc]
push dword [ebp - 0x10]
call fcn.100616c0
add esp, 0xc
pop esi
pop edi
pop ebx
pop ebp
ret 0x10
Function at 0x10030ab0
Capabilities:
Hash data using fnv

Disassembly:
push ebp
mov ebp, esp
push ebx
push edi
push esi
push eax
mov eax, dword [ebp + 8]
cmp dword [ecx + 0x1d44], eax
jbe 0x10030ad9
mov ecx, dword [ecx + 0x1d48]
mov eax, dword [ecx + eax*4]
cmp eax, 0xffffffff
jne 0x10030b69
jmp 0x10030b72
mov edi, eax
shr edi, 0x10
mov esi, eax
shr esi, 8
mov edx, 0xff
mov ebx, eax
and ebx, edx
and esi, edx
and edi, edx
mov edx, eax
shr edx, 0x18
xor ebx, 0x811c9dc5
imul ebx, ebx, 0x1000193
xor ebx, esi
imul ebx, ebx, 0x1000193
xor ebx, edi
imul ebx, ebx, 0x1000193
xor ebx, edx
imul ebx, ebx, 0x1000193
and ebx, dword [ecx + 0x1d64]
mov edx, dword [ecx + 0x1d50]
mov ecx, dword [ecx + 0x1d58]
shl edi, 0x10
and eax, 0xff0000ff
or eax, edi
mov dword [ebp - 0x10], ecx
mov ecx, dword [ecx + ebx*8]
add ebx, ebx
inc ebx
shl esi, 8
or eax, esi
mov esi, ecx
cmp edx, ecx
je 0x10030b53
mov edi, dword [ebp - 0x10]
mov edi, dword [edi + ebx*4]
mov edi, dword [edi]
jmp 0x10030b55
mov edi, ecx
cmp esi, edi
je 0x10030b72
cmp dword [esi + 8], eax
je 0x10030b62
mov esi, dword [esi]
jmp 0x10030b45
cmp esi, edx
je 0x10030b72
mov eax, dword [esi + 0xc]
test eax, eax
je 0x10030b72
mov al, byte [eax + 8]
jmp 0x10030b74
xor eax, eax
add esp, 4
pop esi
pop edi
pop ebx
pop ebp
ret 4

Function at 0x10030c20
Capabilities:
Hash data using fnv

Disassembly:
push ebp
mov ebp, esp
push ebx
push edi
push esi
sub esp, 0xc
mov edi, ecx
mov ebx, dword [ebp + 0xc]
mov esi, dword [ebp + 8]
cmp dword [ecx + 0x1d44], esi
jbe 0x10030c4f
mov eax, dword [edi + 0x1d48]
mov eax, dword [eax + esi*4]
xor ecx, ecx
cmp eax, 0xffffffff
cmovne ecx, eax
jmp 0x10030cfc
mov eax, esi
shr eax, 0x18
mov edx, esi
shr edx, 0x10
mov ecx, esi
shr ecx, 8
mov dword [ebp - 0x10], edi
mov edi, 0xff
mov ebx, esi
and ebx, edi
xor ebx, 0x811c9dc5
imul ebx, ebx, 0x1000193
and ecx, edi
xor ebx, ecx
imul ebx, ebx, 0x1000193
and edx, edi
xor ebx, edx
imul edi, ebx, 0x1000193
xor edi, eax
imul eax, edi, 0x1000193
mov ebx, dword [ebp - 0x10]
and eax, dword [ebx + 0x1d64]
mov edi, dword [ebx + 0x1d50]
mov ebx, dword [ebx + 0x1d58]
shl edx, 0x10
and esi, 0xff0000ff
or esi, edx
mov dword [ebp - 0x18], ebx
mov ebx, dword [ebx + eax*8]
add eax, eax
inc eax
mov dword [ebp - 0x14], eax
shl ecx, 8
or esi, ecx
mov edx, ebx
cmp edi, ebx
je 0x10030cd6
mov eax, dword [ebp - 0x18]
mov ecx, dword [ebp - 0x14]
mov eax, dword [eax + ecx*4]
mov eax, dword [eax]
jmp 0x10030cd8
mov eax, ebx
xor ecx, ecx
cmp edx, eax
je 0x10030ce7
cmp dword [edx + 8], esi
je 0x10030cef
mov edx, dword [edx]
jmp 0x10030cc5
mov edi, dword [ebp - 0x10]
mov ebx, dword [ebp + 0xc]
jmp 0x10030cfc
cmp edx, edi
mov edi, dword [ebp - 0x10]
mov ebx, dword [ebp + 0xc]
je 0x10030cfc
mov ecx, dword [edx + 0xc]
push ebx
push edi
call fcn.10042570
add esp, 0xc
pop esi
pop edi
pop ebx
pop ebp
ret 8
Function at 0x10030d10
Capabilities:
Hash data using fnv

Disassembly:
push ebp
mov ebp, esp
push ebx
push edi
push esi
sub esp, 0x14
mov edi, ecx
mov edx, dword [ebp + 8]
mov eax, dword [0x1038100c]
xor eax, ebp
mov dword [ebp - 0x10], eax
cmp dword [ecx + 0x1d44], edx
jbe 0x10030d46
mov eax, dword [edi + 0x1d48]
mov eax, dword [eax + edx*4]
xor ecx, ecx
cmp eax, 0xffffffff
cmovne ecx, eax
jmp 0x10030ded
mov eax, edx
shr eax, 0x18
mov ebx, edx
shr ebx, 0x10
mov ecx, edx
shr ecx, 8
mov esi, 0xff
mov dword [ebp - 0x18], edi
mov edi, edx
and edi, esi
xor edi, 0x811c9dc5
imul edi, edi, 0x1000193
and ecx, esi
xor edi, ecx
imul edi, edi, 0x1000193
and ebx, esi
xor edi, ebx
imul esi, edi, 0x1000193
xor esi, eax
imul eax, esi, 0x1000193
mov edi, dword [ebp - 0x18]
and eax, dword [edi + 0x1d64]
mov esi, dword [edi + 0x1d50]
mov edi, dword [edi + 0x1d58]
shl ebx, 0x10
and edx, 0xff0000ff
or edx, ebx
mov dword [ebp - 0x20], edi
mov edi, dword [edi + eax*8]
add eax, eax
inc eax
mov dword [ebp - 0x1c], eax
shl ecx, 8
or edx, ecx
mov ebx, edi
cmp esi, edi
je 0x10030dcd
mov eax, dword [ebp - 0x20]
mov ecx, dword [ebp - 0x1c]
mov eax, dword [eax + ecx*4]
mov eax, dword [eax]
jmp 0x10030dcf
mov eax, edi
xor ecx, ecx
cmp ebx, eax
je 0x10030dde
cmp dword [ebx + 8], edx
je 0x10030de3
mov ebx, dword [ebx]
jmp 0x10030dbc
mov edi, dword [ebp - 0x18]
jmp 0x10030ded
cmp ebx, esi
mov edi, dword [ebp - 0x18]
je 0x10030ded
mov ecx, dword [ebx + 0xc]
lea esi, [ebp - 0x11]
mov byte [esi], 1
push esi
push edi
call fcn.100425b0
mov ebx, eax
cmp eax, 1
movzx eax, byte [esi]
cmovne ebx, eax
mov ecx, dword [ebp - 0x10]
xor ecx, ebp
call fcn.1021e470
mov eax, ebx
add esp, 0x14
pop esi
pop edi
pop ebx
pop ebp
ret 4
Function at 0x10031720
Capabilities:
Hash data using fnv

Disassembly:
push ebp
mov ebp, esp
push ebx
push edi
push esi
push eax
mov eax, dword [ebp + 8]
test eax, eax
je 0x10031745
mov edx, dword [ecx + 0x1280]
cmp dword [edx + 0x38], eax
jbe 0x1003174c
mov ecx, dword [edx + 0x3c]
cmp dword [ecx + eax*4], 0xffffffff
jmp 0x100317d0
mov al, 1
jmp 0x100317d3
mov edi, eax
shr edi, 0x10
mov esi, eax
shr esi, 8
mov ecx, 0xff
mov ebx, eax
and ebx, ecx
and esi, ecx
and edi, ecx
mov ecx, eax
shr ecx, 0x18
xor ebx, 0x811c9dc5
imul ebx, ebx, 0x1000193
xor ebx, esi
imul ebx, ebx, 0x1000193
xor ebx, edi
imul ebx, ebx, 0x1000193
xor ebx, ecx
imul ebx, ebx, 0x1000193
and ebx, dword [edx + 0x58]
mov ecx, dword [edx + 0x44]
mov edx, dword [edx + 0x4c]
shl edi, 0x10
and eax, 0xff0000ff
or eax, edi
mov dword [ebp - 0x10], edx
mov edx, dword [edx + ebx*8]
add ebx, ebx
inc ebx
shl esi, 8
or eax, esi
mov esi, edx
cmp ecx, edx
je 0x100317bd
mov edi, dword [ebp - 0x10]
mov edi, dword [edi + ebx*4]
mov edi, dword [edi]
jmp 0x100317bf
mov edi, edx
cmp esi, edi
je 0x100317cc
cmp dword [esi + 8], eax
je 0x100317ce
mov esi, dword [esi]
jmp 0x100317af
mov esi, ecx
cmp esi, ecx
setne al
add esp, 4
pop esi
pop edi
pop ebx
pop ebp
ret 4

Function at 0x100317e0
Capabilities:
Hash data using fnv

Disassembly:
push ebp
mov ebp, esp
push ebx
push edi
push esi
push eax
mov eax, dword [ebp + 8]
test eax, eax
je 0x10031805
mov edx, dword [ecx + 0x128c]
cmp dword [edx + 0x38], eax
jbe 0x1003180c
mov ecx, dword [edx + 0x3c]
cmp dword [ecx + eax*4], 0xffffffff
jmp 0x10031890
mov al, 1
jmp 0x10031893
mov edi, eax
shr edi, 0x10
mov esi, eax
shr esi, 8
mov ecx, 0xff
mov ebx, eax
and ebx, ecx
and esi, ecx
and edi, ecx
mov ecx, eax
shr ecx, 0x18
xor ebx, 0x811c9dc5
imul ebx, ebx, 0x1000193
xor ebx, esi
imul ebx, ebx, 0x1000193
xor ebx, edi
imul ebx, ebx, 0x1000193
xor ebx, ecx
imul ebx, ebx, 0x1000193
and ebx, dword [edx + 0x58]
mov ecx, dword [edx + 0x44]
mov edx, dword [edx + 0x4c]
shl edi, 0x10
and eax, 0xff0000ff
or eax, edi
mov dword [ebp - 0x10], edx
mov edx, dword [edx + ebx*8]
add ebx, ebx
inc ebx
shl esi, 8
or eax, esi
mov esi, edx
cmp ecx, edx
je 0x1003187d
mov edi, dword [ebp - 0x10]
mov edi, dword [edi + ebx*4]
mov edi, dword [edi]
jmp 0x1003187f
mov edi, edx
cmp esi, edi
je 0x1003188c
cmp dword [esi + 8], eax
je 0x1003188e
mov esi, dword [esi]
jmp 0x1003186f
mov esi, ecx
cmp esi, ecx
setne al
add esp, 4
pop esi
pop edi
pop ebx
pop ebp
ret 4
Function at 0x100318a0
Capabilities:
Hash data using fnv

Disassembly:
push ebp
mov ebp, esp
push ebx
push edi
push esi
push eax
mov eax, dword [ebp + 8]
test eax, eax
je 0x100318c5
mov edx, dword [ecx + 0x1290]
cmp dword [edx + 0x38], eax
jbe 0x100318cc
mov ecx, dword [edx + 0x3c]
cmp dword [ecx + eax*4], 0xffffffff
jmp 0x10031950
mov al, 1
jmp 0x10031953
mov edi, eax
shr edi, 0x10
mov esi, eax
shr esi, 8
mov ecx, 0xff
mov ebx, eax
and ebx, ecx
and esi, ecx
and edi, ecx
mov ecx, eax
shr ecx, 0x18
xor ebx, 0x811c9dc5
imul ebx, ebx, 0x1000193
xor ebx, esi
imul ebx, ebx, 0x1000193
xor ebx, edi
imul ebx, ebx, 0x1000193
xor ebx, ecx
imul ebx, ebx, 0x1000193
and ebx, dword [edx + 0x58]
mov ecx, dword [edx + 0x44]
mov edx, dword [edx + 0x4c]
shl edi, 0x10
and eax, 0xff0000ff
or eax, edi
mov dword [ebp - 0x10], edx
mov edx, dword [edx + ebx*8]
add ebx, ebx
inc ebx
shl esi, 8
or eax, esi
mov esi, edx
cmp ecx, edx
je 0x1003193d
mov edi, dword [ebp - 0x10]
mov edi, dword [edi + ebx*4]
mov edi, dword [edi]
jmp 0x1003193f
mov edi, edx
cmp esi, edi
je 0x1003194c
cmp dword [esi + 8], eax
je 0x1003194e
mov esi, dword [esi]
jmp 0x1003192f
mov esi, ecx
cmp esi, ecx
setne al
add esp, 4
pop esi
pop edi
pop ebx
pop ebp
ret 4

Function at 0x100320b0
Capabilities:
Hash data using fnv

Disassembly:
push ebp
mov ebp, esp
push ebx
push edi
push esi
sub esp, 8
mov esi, dword [ebp + 0xc]
movzx eax, byte [esi]
xor eax, 0x811c9dc5
imul eax, eax, 0x1000193
movzx edx, byte [esi + 1]
xor edx, eax
imul eax, edx, 0x1000193
movzx edx, byte [esi + 2]
xor edx, eax
imul eax, edx, 0x1000193
movzx edx, byte [esi + 3]
xor edx, eax
imul eax, edx, 0x1000193
and eax, dword [ecx + 0x18]
mov edx, dword [ecx + 0xc]
mov ebx, dword [edx + eax*8]
add eax, eax
inc eax
mov dword [ebp - 0x14], eax
mov dword [ebp - 0x10], ecx
mov eax, dword [ecx + 4]
mov esi, dword [esi]
mov ecx, ebx
cmp eax, ebx
je 0x10032115
mov edi, dword [ebp - 0x14]
mov edi, dword [edx + edi*4]
mov edi, dword [edi]
jmp 0x10032117
mov edi, ebx
cmp ecx, edi
je 0x10032133
cmp dword [ecx + 8], esi
je 0x10032124
mov ecx, dword [ecx]
jmp 0x10032107
cmp ecx, eax
je 0x10032133
mov eax, dword [ebp + 8]
mov dword [eax], ecx
mov byte [eax + 4], 0
jmp 0x1003218f
mov esi, dword [eax]
mov edi, dword [esi + 4]
push 0x10
call dword [sym.imp.mozglue.dll_moz_xmalloc]
add esp, 4
test esi, esi
mov ecx, esi
cmove ecx, eax
mov dword [eax], ecx
mov ecx, edi
cmove ecx, eax
mov dword [eax + 4], ecx
mov ecx, dword [ebp + 0xc]
mov ecx, dword [ecx]
mov dword [eax + 8], ecx
mov dword [eax + 0xc], 0
mov ecx, dword [ebp - 0x10]
mov edx, dword [ecx + 8]
cmp edx, 0xffffffe
je 0x10032199
inc edx
mov dword [ecx + 8], edx
mov dword [esi + 4], eax
mov dword [edi], eax
mov eax, dword [ecx + 4]
mov eax, dword [eax]
push eax
add eax, 8
push eax
mov esi, dword [ebp + 8]
push esi
call fcn.100321b0
mov eax, esi
add esp, 8
pop esi
pop edi
pop ebx
pop ebp
ret 8
push str.list_T__too_long
call sub.MSVCP140.dll_void___cdecl_std::_Xlength_error_char_const__
int3
Function at 0x100323d0
Capabilities:
Hash data using fnv

Disassembly:
push ebp
mov ebp, esp
push ebx
push edi
push esi
sub esp, 0x20
mov esi, ecx
mov ebx, dword [ebp + 0xc]
mov eax, dword [0x1038100c]
xor eax, ebp
mov dword [ebp - 0x10], eax
push 0xd0
call dword [sym.imp.mozglue.dll_moz_xmalloc]
add esp, 4
mov edi, eax
mov ecx, eax
push ebx
push dword [ebp + 8]
call fcn.10006290
inc dword [edi + 4]
mov dword [ebp - 0x20], esi
cmp dword [esi + 0x38], ebx
mov dword [ebp - 0x28], edi
jbe 0x10032426
mov eax, dword [ebp - 0x20]
mov eax, dword [eax + 0x3c]
cmp dword [eax + ebx*4], 0xffffffff
jne 0x100324bd
jmp 0x100324af
mov eax, ebx
shr eax, 0x18
mov edx, ebx
shr edx, 0x10
mov ecx, ebx
shr ecx, 8
mov esi, 0xff
mov edi, ebx
and edi, esi
xor edi, 0x811c9dc5
imul edi, edi, 0x1000193
and ecx, esi
xor edi, ecx
imul edi, edi, 0x1000193
and edx, esi
xor edi, edx
imul esi, edi, 0x1000193
xor esi, eax
imul edi, esi, 0x1000193
mov esi, dword [ebp - 0x20]
and edi, dword [esi + 0x58]
mov eax, dword [esi + 0x44]
shl edx, 0x10
and ebx, 0xff0000ff
or ebx, edx
mov edx, dword [esi + 0x4c]
shl ecx, 8
or ebx, ecx
mov esi, dword [edx + edi*8]
lea ecx, [edi + edi]
inc ecx
mov dword [ebp - 0x24], ecx
mov ecx, esi
cmp eax, esi
je 0x1003249c
mov edi, dword [ebp - 0x24]
mov edi, dword [edx + edi*4]
mov edi, dword [edi]
jmp 0x1003249e
mov edi, esi
cmp ecx, edi
je 0x100324af
cmp dword [ecx + 8], ebx
je 0x100324ab
mov ecx, dword [ecx]
jmp 0x1003248e
cmp ecx, eax
jne 0x100324bd
mov eax, dword [ebp - 0x20]
lea ecx, [eax + 4]
push dword [ebp + 0xc]
call fcn.100507c0
mov ecx, dword [ebp + 0xc]
mov dword [ebp - 0x1c], ecx
cmp ecx, 0x3fff
ja 0x10032554
mov edi, dword [ebp - 0x20]
mov eax, dword [edi + 0x38]
cmp eax, ecx
ja 0x1003254c
mov ebx, eax
add eax, eax
cmp ebx, ecx
jbe 0x100324d9
xor ecx, ecx
dec ecx
mov edx, 4
mov eax, ebx
mul edx
cmovo eax, ecx
mov ecx, dword [edi + 0x3c]
mov dword [ebp - 0x24], ecx
push eax
call dword [sym.imp.mozglue.dll_moz_xmalloc]
add esp, 4
mov dword [ebp - 0x2c], eax
mov dword [edi + 0x3c], eax
mov esi, dword [edi + 0x38]
lea edx, [eax + esi*4]
mov ecx, ebx
sub ecx, esi
shl ecx, 2
push ecx
push 0xff
push edx
call sub.VCRUNTIME140.dll_memset
add esp, 0xc
shl esi, 2
push esi
mov esi, dword [ebp - 0x24]
push esi
push dword [ebp - 0x2c]
call sub.VCRUNTIME140.dll_memcpy
mov ecx, dword [ebp + 0xc]
add esp, 0xc
mov dword [edi + 0x38], ebx
test esi, esi
je 0x1003254c
push esi
call dword [sym.imp.mozglue.dll_free]
mov ecx, dword [ebp + 0xc]
add esp, 4
shl ecx, 2
add ecx, dword [edi + 0x3c]
jmp 0x1003256c
mov ecx, dword [ebp - 0x20]
add ecx, 0x40
lea eax, [ebp - 0x1c]
lea esi, [ebp - 0x18]
push eax
push esi
call fcn.100320b0
mov ecx, dword [esi]
add ecx, 0xc
mov esi, dword [ebp - 0x28]
mov dword [ecx], esi
mov ecx, dword [ebp - 0x10]
xor ecx, ebp
call fcn.1021e470
mov eax, esi
add esp, 0x20
pop esi
pop edi
pop ebx
pop ebp
ret 8
Function at 0x10032c90
Capabilities:
Hash data using fnv

Disassembly:
push ebp
mov ebp, esp
push ebx
push edi
push esi
sub esp, 0xc
mov dword [ebp - 0x10], edx
mov esi, dword [ebp + 8]
movzx eax, byte [esi]
xor eax, 0x811c9dc5
imul eax, eax, 0x1000193
movzx edx, byte [esi + 1]
xor edx, eax
imul eax, edx, 0x1000193
movzx edx, byte [esi + 2]
xor edx, eax
imul eax, edx, 0x1000193
movzx edx, byte [esi + 3]
xor edx, eax
imul eax, edx, 0x1000193
and eax, dword [ecx + 0x18]
mov edx, dword [ecx + 0xc]
mov ebx, dword [edx + eax*8]
add eax, eax
inc eax
mov dword [ebp - 0x18], eax
mov dword [ebp - 0x14], ecx
mov eax, dword [ecx + 4]
mov edi, dword [esi]
mov ecx, ebx
cmp eax, ebx
je 0x10032cf8
mov esi, dword [ebp - 0x18]
mov esi, dword [edx + esi*4]
mov esi, dword [esi]
jmp 0x10032cfa
mov esi, ebx
cmp ecx, esi
je 0x10032d16
cmp dword [ecx + 8], edi
je 0x10032d07
mov ecx, dword [ecx]
jmp 0x10032cea
cmp ecx, eax
je 0x10032d16
mov eax, dword [ebp - 0x10]
mov dword [eax], ecx
mov byte [eax + 4], 0
jmp 0x10032d76
mov esi, dword [eax]
mov edi, dword [esi + 4]
push 0x10
call dword [sym.imp.mozglue.dll_moz_xmalloc]
add esp, 4
test esi, esi
mov ecx, esi
cmove ecx, eax
mov dword [eax], ecx
mov ecx, edi
cmove ecx, eax
mov dword [eax + 4], ecx
mov ecx, dword [ebp + 8]
mov ecx, dword [ecx]
mov dword [eax + 8], ecx
mov dword [eax + 0xc], 0
mov ecx, dword [ebp - 0x14]
mov edx, dword [ecx + 8]
cmp edx, 0xffffffe
je 0x10032d7e
inc edx
mov dword [ecx + 8], edx
mov dword [esi + 4], eax
mov dword [edi], eax
mov eax, dword [ecx + 4]
mov eax, dword [eax]
mov esi, dword [ebp - 0x10]
mov edx, esi
push eax
add eax, 8
push eax
call fcn.10032990
add esp, 8
mov eax, esi
add esp, 0xc
pop esi
pop edi
pop ebx
pop ebp
ret
push str.list_T__too_long
call sub.MSVCP140.dll_void___cdecl_std::_Xlength_error_char_const__
int3
Function at 0x10032d90
Capabilities:
Hash data using fnv

Disassembly:
push ebp
mov ebp, esp
push ebx
push edi
push esi
sub esp, 0xc
mov dword [ebp - 0x10], edx
mov esi, dword [ebp + 8]
movzx eax, byte [esi]
xor eax, 0x811c9dc5
imul eax, eax, 0x1000193
movzx edx, byte [esi + 1]
xor edx, eax
imul eax, edx, 0x1000193
movzx edx, byte [esi + 2]
xor edx, eax
imul eax, edx, 0x1000193
movzx edx, byte [esi + 3]
xor edx, eax
imul eax, edx, 0x1000193
and eax, dword [ecx + 0x18]
mov edx, dword [ecx + 0xc]
mov ebx, dword [edx + eax*8]
add eax, eax
inc eax
mov dword [ebp - 0x18], eax
mov dword [ebp - 0x14], ecx
mov eax, dword [ecx + 4]
mov edi, dword [esi]
mov ecx, ebx
cmp eax, ebx
je 0x10032df8
mov esi, dword [ebp - 0x18]
mov esi, dword [edx + esi*4]
mov esi, dword [esi]
jmp 0x10032dfa
mov esi, ebx
cmp ecx, esi
je 0x10032e16
cmp dword [ecx + 8], edi
je 0x10032e07
mov ecx, dword [ecx]
jmp 0x10032dea
cmp ecx, eax
je 0x10032e16
mov eax, dword [ebp - 0x10]
mov dword [eax], ecx
mov byte [eax + 4], 0
jmp 0x10032e76
mov esi, dword [eax]
mov edi, dword [esi + 4]
push 0x10
call dword [sym.imp.mozglue.dll_moz_xmalloc]
add esp, 4
test esi, esi
mov ecx, esi
cmove ecx, eax
mov dword [eax], ecx
mov ecx, edi
cmove ecx, eax
mov dword [eax + 4], ecx
mov ecx, dword [ebp + 8]
mov ecx, dword [ecx]
mov dword [eax + 8], ecx
mov dword [eax + 0xc], 0
mov ecx, dword [ebp - 0x14]
mov edx, dword [ecx + 8]
cmp edx, 0xffffffe
je 0x10032e7e
inc edx
mov dword [ecx + 8], edx
mov dword [esi + 4], eax
mov dword [edi], eax
mov eax, dword [ecx + 4]
mov eax, dword [eax]
mov esi, dword [ebp - 0x10]
mov edx, esi
push eax
add eax, 8
push eax
call fcn.10032e90
add esp, 8
mov eax, esi
add esp, 0xc
pop esi
pop edi
pop ebx
pop ebp
ret
push str.list_T__too_long
call sub.MSVCP140.dll_void___cdecl_std::_Xlength_error_char_const__
int3
Function at 0x10041570
Capabilities:
Encode data using xor

Disassembly:
push ebp
mov ebp, esp
push ebx
push edi
push esi
sub esp, 0x30
mov ebx, dword [ebp + 8]
mov esi, dword [ebp + 0x10]
mov eax, dword [0x1038100c]
xor eax, ebp
mov dword [ebp - 0x10], eax
mov eax, dword [ecx]
mov edx, dword [eax + 4]
cmp byte [edx + 0xd], 0
mov edi, eax
jne 0x100415da
mov dword [ebp - 0x28], eax
mov dword [ebp - 0x24], ecx
mov cl, byte [ebp + 0xc]
mov ebx, dword [esi]
mov edi, edx
mov esi, dword [edx + 0x10]
xor edx, edx
cmp esi, ebx
setae dl
xor eax, eax
cmp ebx, esi
setb al
test cl, cl
cmovne eax, edx
mov edx, eax
xor dl, 1
movzx edx, dl
mov edx, dword [edi + edx*8]
cmp byte [edx + 0xd], 0
je 0x100415a1
test al, al
je 0x1004163b
mov ebx, dword [ebp + 8]
mov ecx, dword [ebp - 0x24]
mov esi, dword [ebp + 0x10]
mov eax, dword [ebp - 0x28]
cmp edi, dword [eax]
je 0x100415ee
cmp byte [edi + 0xd], 0
mov dword [ebp - 0x24], ecx
je 0x10041617
mov ecx, dword [edi + 8]
mov bl, 1
jmp 0x10041642
mov al, byte [ebp - 0x18]
mov byte [esp + 0x10], al
mov dword [esp + 0xc], esi
mov dword [esp + 8], edi
lea esi, [ebp - 0x14]
mov dword [esp], esi
mov dword [esp + 4], 1
call fcn.100416c0
sub esp, 0x14
mov eax, dword [esi]
jmp 0x10041675
mov eax, dword [edi]
cmp byte [eax + 0xd], 0
je 0x1004162e
mov eax, dword [edi + 4]
cmp byte [eax + 0xd], 0
je 0x1004169c
mov bl, 1
mov ecx, eax
jmp 0x10041642
mov ecx, eax
mov eax, dword [eax + 8]
cmp byte [eax + 0xd], 0
je 0x1004162e
jmp 0x100415ea
xor ebx, ebx
mov ecx, edi
mov esi, dword [ebp + 0x10]
mov eax, dword [ecx + 0x10]
cmp eax, dword [esi]
jae 0x1004167d
mov al, byte [ebp - 0x20]
mov byte [esp + 0x10], al
mov dword [esp + 0xc], esi
mov dword [esp + 8], edi
movzx eax, bl
mov dword [esp + 4], eax
lea esi, [ebp - 0x1c]
mov dword [esp], esi
mov ecx, dword [ebp - 0x24]
call fcn.100416c0
sub esp, 0x14
mov eax, dword [esi]
mov ebx, dword [ebp + 8]
mov dword [ebx], eax
mov byte [ebx + 4], 1
jmp 0x10041686
mov ebx, dword [ebp + 8]
mov dword [ebx], ecx
mov byte [ebx + 4], 0
mov ecx, dword [ebp - 0x10]
xor ecx, ebp
call fcn.1021e470
mov eax, ebx
add esp, 0x30
pop esi
pop edi
pop ebx
pop ebp
ret 0x10
mov ecx, edi
mov edx, eax
cmp ecx, dword [eax]
jne 0x100416b1
mov eax, dword [edx + 4]
cmp byte [eax + 0xd], 0
mov ecx, edx
je 0x1004169e
jmp 0x100416b3
mov eax, edx
mov bl, 1
cmp byte [ecx + 0xd], 0
jne 0x10041642
jmp 0x10041628