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

Disassembly:
push ebp
mov ebp, esp
mov eax, dword [ebp + 0xc]
sub esp, 0x18
mov edx, dword [ebp + 8]
push ebx
mov ebx, ecx
cmp edx, eax
je 0x100085e6
mov eax, dword [ebx + 4]
mov dword [ebp - 0x10], eax
mov eax, dword [edx + 4]
mov dword [ebp - 4], eax
movzx eax, byte [edx + 8]
xor eax, 0x811c9dc5
imul ecx, eax, 0x1000193
movzx eax, byte [edx + 9]
push esi
push edi
mov edi, dword [ebx + 0xc]
mov esi, edx
xor ecx, eax
mov dword [ebp - 0x18], edi
movzx eax, byte [edx + 0xa]
imul ecx, ecx, 0x1000193
xor ecx, eax
movzx eax, byte [edx + 0xb]
imul ecx, ecx, 0x1000193
xor ecx, eax
mov eax, dword [ebx + 0x18]
imul ecx, ecx, 0x1000193
and eax, ecx
mov ecx, dword [edi + eax*8]
mov dword [ebp - 0xc], ecx
lea eax, [edi + eax*8]
mov dword [ebp - 8], eax
mov eax, dword [eax + 4]
mov dword [ebp - 0x14], eax
mov eax, esi
mov edi, esi
mov esi, dword [esi]
push 0x10
push eax
call fcn.1008ccfa
dec dword [ebx + 8]
add esp, 8
cmp edi, dword [ebp - 0x14]
je 0x10008549
mov eax, dword [ebp + 0xc]
cmp esi, eax
jne 0x10008507
mov ecx, dword [ebp - 0xc]
cmp ecx, dword [ebp + 8]
jne 0x100085dc
mov edx, dword [ebp - 8]
mov ecx, dword [ebp - 4]
pop edi
mov dword [edx], esi
mov dword [ecx], esi
mov dword [esi + 4], ecx
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 8
mov ecx, dword [ebp - 0xc]
mov edx, dword [ebp - 8]
cmp ecx, dword [ebp + 8]
jne 0x1000855d
mov eax, dword [ebp - 0x10]
mov ecx, eax
mov dword [edx], eax
jmp 0x10008560
mov ecx, dword [ebp - 4]
mov eax, dword [ebp + 0xc]
mov dword [edx + 4], ecx
cmp esi, eax
je 0x100085dc
nop word [eax + eax]
movzx eax, byte [esi + 8]
xor eax, 0x811c9dc5
imul ecx, eax, 0x1000193
movzx eax, byte [esi + 9]
xor ecx, eax
movzx eax, byte [esi + 0xa]
imul ecx, ecx, 0x1000193
xor ecx, eax
movzx eax, byte [esi + 0xb]
imul ecx, ecx, 0x1000193
xor ecx, eax
mov eax, dword [ebx + 0x18]
imul ecx, ecx, 0x1000193
and eax, ecx
mov ecx, dword [ebp - 0x18]
lea eax, [ecx + eax*8]
mov dword [ebp + 8], eax
mov eax, dword [eax + 4]
mov dword [ebp - 0x14], eax
mov eax, esi
mov edi, esi
mov esi, dword [esi]
push 0x10
push eax
call fcn.1008ccfa
dec dword [ebx + 8]
add esp, 8
mov eax, dword [ebp + 0xc]
cmp edi, dword [ebp - 0x14]
je 0x100085ed
cmp esi, eax
jne 0x100085b7
mov ecx, dword [ebp + 8]
mov dword [ecx], esi
mov ecx, dword [ebp - 4]
pop edi
mov dword [ecx], esi
mov dword [esi + 4], ecx
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 8
mov ecx, dword [ebp + 8]
mov edx, dword [ebp - 0x10]
mov dword [ecx], edx
mov dword [ecx + 4], edx
cmp esi, eax
jne 0x10008570
mov ecx, dword [ebp - 4]
pop edi
mov dword [ecx], esi
mov dword [esi + 4], ecx
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 8
Function at 0x10008720
Capabilities:
Hash data using fnv

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x100af435
mov eax, dword fs:[0]
push eax
sub esp, 0x14
push ebx
push esi
push edi
mov eax, dword [0x100db274]
xor eax, ebp
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov edi, ecx
mov ebx, dword [ebp + 0xc]
movzx eax, byte [ebx]
xor eax, 0x811c9dc5
imul edx, eax, 0x1000193
movzx eax, byte [ebx + 1]
xor edx, eax
movzx eax, byte [ebx + 2]
imul edx, edx, 0x1000193
xor edx, eax
movzx eax, byte [ebx + 3]
imul ecx, edx, 0x1000193
xor ecx, eax
imul eax, ecx, 0x1000193
mov ecx, edi
push eax
mov dword [ebp + 0xc], eax
lea eax, [ebp - 0x18]
push ebx
push eax
call fcn.10008b20
mov ecx, dword [ebp - 0x14]
test ecx, ecx
je 0x100087b3
mov eax, dword [ebp + 8]
mov dword [eax], ecx
mov byte [eax + 4], 0
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 8
cmp dword [edi + 8], 0xfffffff
je 0x10008907
lea eax, [edi + 4]
mov dword [ebp - 0x20], eax
mov dword [ebp - 4], 0
push 0x10
mov dword [ebp - 0x1c], 0
call fcn.1008c9b0
mov ecx, dword [ebx]
mov esi, eax
add esp, 4
mov dword [ebp - 0x1c], esi
mov dword [esi + 8], ecx
mov dword [esi + 0xc], 0
mov dword [ebp - 4], 1
mov eax, dword [edi + 8]
mov ebx, dword [edi + 0x1c]
inc eax
vmovss xmm1, dword [edi]
vxorps xmm0, xmm0, xmm0
vcvtsi2sd xmm0, xmm0, eax
shr eax, 0x1f
vaddsd xmm0, xmm0, qword [eax*8 + 0x100d5080]
vcvtsd2ss xmm2, xmm0, xmm0
vxorps xmm0, xmm0, xmm0
mov eax, ebx
shr eax, 0x1f
vcvtsi2sd xmm0, xmm0, ebx
vaddsd xmm0, xmm0, qword [eax*8 + 0x100d5080]
vcvtsd2ss xmm0, xmm0, xmm0
vdivss xmm0, xmm2, xmm0
vcomiss xmm0, xmm1
jbe 0x100088a9
vdivss xmm0, xmm2, xmm1
vmovss dword [ebp - 0x14], xmm0
fld dword [ebp - 0x14]
fstp qword [ebp - 0x18]
vxorpd xmm0, xmm0, xmm0
vroundsd xmm0, xmm0, qword [ebp - 0x18], 2
vmovsd qword [ebp - 0x18], xmm0
fld qword [ebp - 0x18]
fstp dword [ebp - 0x14]
vmovss xmm0, dword [ebp - 0x14]
call fcn.1008d4d0
mov ecx, 8
cmp eax, ecx
cmova ecx, eax
cmp ebx, ecx
jae 0x1000888b
cmp ebx, 0x200
jae 0x10008889
shl ebx, 3
cmp ebx, ecx
jae 0x1000888b
mov ebx, ecx
push ebx
mov ecx, edi
call fcn.100089b0
push dword [ebp + 0xc]
lea eax, [esi + 8]
mov ecx, edi
push eax
lea eax, [ebp - 0x18]
push eax
call fcn.10008b20
mov edx, dword [eax]
jmp 0x100088ac
mov edx, dword [ebp - 0x18]
mov ebx, dword [edx + 4]
inc dword [edi + 8]
mov dword [esi], edx
mov dword [esi + 4], ebx
mov dword [ebx], esi
mov dword [edx + 4], esi
mov eax, dword [edi + 0x18]
and eax, dword [ebp + 0xc]
mov ecx, dword [edi + 0xc]
mov esi, dword [ebp - 0x20]
mov edi, dword [ecx + eax*8]
cmp edi, dword [esi]
mov esi, dword [ebp - 0x1c]
jne 0x100088d7
mov dword [ecx + eax*8], esi
jmp 0x100088e6
cmp edi, edx
jne 0x100088e0
mov dword [ecx + eax*8], esi
jmp 0x100088ea
cmp dword [ecx + eax*8 + 4], ebx
jne 0x100088ea
mov dword [ecx + eax*8 + 4], esi
mov eax, dword [ebp + 8]
mov dword [eax], esi
mov byte [eax + 4], 1
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 8
push str.unordered_map_set_too_long
call fcn.1008e970
int3
Function at 0x100089b0
Capabilities:
Hash data using fnv

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x10
mov edx, dword [ebp + 8]
mov eax, 0x1fffffff
bsr eax, eax
push ebx
mov ebx, ecx
mov ecx, 1
shlx eax, ecx, eax
mov dword [ebp - 4], ebx
push esi
push edi
cmp edx, eax
ja 0x10008b0c
mov esi, dword [ebx + 4]
lea eax, [edx - 1]
or eax, ecx
mov dword [ebp + 8], esi
bsr eax, eax
push esi
inc eax
shlx edi, ecx, eax
lea ecx, [ebx + 0xc]
lea eax, [edi + edi]
push eax
call fcn.10008620
lea eax, [edi - 1]
mov dword [ebx + 0x1c], edi
mov dword [ebx + 0x18], eax
mov eax, dword [ebx + 4]
mov eax, dword [eax]
mov ecx, eax
cmp eax, esi
je 0x10008adf
movzx edx, byte [eax + 8]
xor edx, 0x811c9dc5
mov ecx, dword [ecx]
imul edi, edx, 0x1000193
movzx edx, byte [eax + 9]
xor edi, edx
movzx edx, byte [eax + 0xa]
imul edi, edi, 0x1000193
xor edi, edx
movzx edx, byte [eax + 0xb]
imul edi, edi, 0x1000193
xor edi, edx
imul edx, edi, 0x1000193
mov edi, dword [ebx + 0x18]
and edi, edx
mov edx, dword [ebx + 0xc]
lea edx, [edx + edi*8]
mov edi, dword [edx]
mov dword [ebp - 8], edx
cmp edi, esi
jne 0x10008a65
mov dword [edx], eax
mov dword [edx + 4], eax
jmp 0x10008ad5
mov edx, dword [edx + 4]
mov ebx, dword [eax + 8]
cmp ebx, dword [edx + 8]
jne 0x10008a9f
mov edx, dword [edx]
mov dword [ebp - 0xc], edx
cmp edx, eax
je 0x10008a97
mov ebx, dword [eax + 4]
mov esi, dword [ebp - 0xc]
mov dword [ebx], ecx
mov edi, dword [ecx + 4]
mov dword [edi], edx
mov edx, dword [edx + 4]
mov dword [edx], eax
mov dword [esi + 4], edi
mov esi, dword [ebp + 8]
mov dword [ecx + 4], ebx
mov dword [eax + 4], edx
mov edx, dword [ebp - 8]
mov dword [edx + 4], eax
jmp 0x10008ad2
cmp edi, edx
je 0x10008aaf
mov edx, dword [edx + 4]
cmp ebx, dword [edx + 8]
je 0x10008ae8
cmp edi, edx
jne 0x10008aa3
mov ebx, dword [eax + 4]
mov dword [ebp - 0xc], ebx
mov dword [ebx], ecx
mov ebx, dword [ecx + 4]
mov dword [ebx], edx
mov edi, dword [edx + 4]
mov dword [edi], eax
mov dword [edx + 4], ebx
mov edx, dword [ebp - 0xc]
mov dword [ecx + 4], edx
mov edx, dword [ebp - 8]
mov dword [eax + 4], edi
mov dword [edx], eax
mov ebx, dword [ebp - 4]
mov eax, ecx
cmp ecx, esi
jne 0x10008a14
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 4
mov ebx, dword [eax + 4]
mov edx, dword [edx]
mov dword [ebp - 0xc], edx
mov esi, edx
mov dword [ebx], ecx
mov edi, dword [ecx + 4]
mov dword [edi], edx
mov edx, dword [edx + 4]
mov dword [edx], eax
mov dword [esi + 4], edi
mov esi, dword [ebp + 8]
mov dword [ecx + 4], ebx
mov dword [eax + 4], edx
jmp 0x10008ad2
push str.invalid_hash_bucket_count
call fcn.1008e970
int3
Function at 0x1000a140
Capabilities:
Parse credit card information

Disassembly:
cmp byte [0x100e1065], 0
push esi
mov esi, edx
je 0x1000a171
vmovss xmm0, dword [esi + 0x40]
vucomiss xmm0, dword [0x100d4ea4]
lahf
test ah, 0x44
jnp 0x1000a171
vucomiss xmm0, dword [0x100d4ee4]
lahf
test ah, 0x44
jp 0x1000a1f4
cmp dword [ecx + 0x44], 3
jne 0x1000a1f4
push ecx
call dword [0x100e1360]
add esp, 4
test eax, eax
je 0x1000a1f4
mov ecx, dword [esi + 0x2c]
cmp ecx, dword [eax + 0xa4]
jge 0x1000a1f4
imul ecx, ecx, 0xb0
add ecx, dword [eax + 0xa8]
mov ecx, dword [ecx + eax + 0x28]
cmp ecx, 0x24
je 0x1000a1ed
cmp ecx, 0x25
je 0x1000a1ed
cmp ecx, 0x26
je 0x1000a1ed
cmp ecx, 0x27
je 0x1000a1ed
cmp ecx, 0x42
je 0x1000a1ed
cmp ecx, 0x43
je 0x1000a1ed
cmp ecx, 0x44
je 0x1000a1ed
cmp ecx, 0x45
je 0x1000a1ed
cmp ecx, 0x28
je 0x1000a1e6
cmp ecx, 0x29
je 0x1000a1e6
cmp ecx, 0x2a
je 0x1000a1e6
xor edx, edx
mov eax, 2
cmp ecx, 0x2b
pop esi
cmovne eax, edx
ret
mov eax, 2
pop esi
ret
mov eax, 1
pop esi
ret
xor eax, eax
pop esi
ret
Function at 0x1000c280
Capabilities:
Check for software breakpoints

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
sub esp, 0x14
cmp dword [0x100e10e0], 0
push ebx
push esi
push edi
jne 0x1000c468
mov edi, dword [ebp + 0x1c]
mov eax, dword [edi + 0x10]
cmp eax, dword [edi + 4]
ja 0x1000c468
mov ebx, dword [ebp + 0xc]
lea eax, [esp + 0xc]
push eax
lea eax, [esp + 0x18]
mov dword [esp + 0x10], ebx
push eax
lea ecx, [edi + 0xc]
call fcn.1000d830
mov eax, dword [esp + 0x1c]
cmp byte [eax + 0xd], 0
jne 0x1000c2d9
cmp ebx, dword [eax + 0x10]
jb 0x1000c2d9
cmp eax, dword [edi + 0xc]
jne 0x1000c468
lea eax, [ebp + 0xc]
push eax
lea eax, [esp + 0x18]
push eax
lea ecx, [edi + 0xc]
call fcn.1000d4b0
mov ebx, dword [ebp + 8]
cmp dword [ebx], 0x24c
jne 0x1000c35d
mov ecx, dword [ebx + 0xe4]
cmp byte [ecx + 0x90], 1
jne 0x1000c35d
cmp dword [ecx + 0x98], 2
jne 0x1000c35d
mov ecx, dword [ecx + 0xa0]
mov edx, dword [0x100e1508]
cmp ecx, edx
jbe 0x1000c35d
mov eax, dword [0x100e1518]
add eax, edx
cmp ecx, eax
jae 0x1000c35d
mov edx, str.Too_many_attachments_on__s_n
mov esi, 0x17
mov eax, dword [ecx]
cmp eax, dword [edx]
jne 0x1000c35d
add ecx, 4
add edx, 4
sub esi, 4
jae 0x1000c332
mov ax, word [ecx]
cmp ax, word [edx]
jne 0x1000c35d
mov al, byte [ecx + 2]
cmp al, byte [edx + 2]
jne 0x1000c35d
mov eax, dword [edi + 0x28]
mov dword [0x100e10c0], eax
jmp 0x1000c362
mov eax, dword [0x100e10c0]
test eax, eax
jne 0x1000c468
mov eax, dword [ebx]
cmp eax, 0x108
je 0x1000c38b
mov ecx, eax
cmp eax, 0xfd
jb 0x1000c44c
cmp eax, 0x110
ja 0x1000c44c
mov edx, dword [ebx + 0xe4]
mov ecx, eax
cmp byte [edx + 0x90], 1
jne 0x1000c44c
cmp dword [edx + 0x98], 2
jne 0x1000c44c
mov eax, dword [edx + 0xa0]
lea ecx, [edi + 0x14]
mov dword [esp + 0x10], eax
mov dword [esp + 0xc], eax
lea eax, [esp + 0xc]
push eax
lea eax, [esp + 0x18]
push eax
call fcn.1000d830
mov eax, dword [esp + 0x1c]
cmp byte [eax + 0xd], 0
jne 0x1000c3e5
mov ecx, dword [esp + 0x10]
cmp ecx, dword [eax + 0x10]
jb 0x1000c3e5
cmp eax, dword [edi + 0x14]
jne 0x1000c442
lea eax, [esp + 0xc]
push eax
lea eax, [esp + 0x18]
push eax
lea ecx, [edi + 0x14]
call fcn.1000d5a0
mov edx, dword [ebp + 0x18]
inc edx
cmp edx, dword [edi + 8]
jge 0x1000c442
mov ecx, dword [edi + 0x20]
mov dword [esp + 0x10], edx
mov dword [esp + 0x14], 0x300
cmp ecx, dword [edi + 0x24]
je 0x1000c42a
mov eax, dword [esp + 0xc]
mov dword [ecx], eax
mov dword [ecx + 4], 0x300
mov dword [ecx + 8], edx
add dword [edi + 0x20], 0xc
jmp 0x1000c442
lea eax, [esp + 0x10]
push eax
lea eax, [esp + 0x18]
push eax
lea eax, [esp + 0x14]
push eax
push ecx
lea ecx, [edi + 0x1c]
call fcn.1000d670
mov ecx, dword [ebx]
cmp ecx, 0x108
je 0x1000c468
mov eax, dword [ebp + 0xc]
cmp byte [eax], 0xcc
je 0x1000c468
xor eax, eax
cmp ecx, 0x93
sete al
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0x18
pop edi
pop esi
mov eax, 1
pop ebx
mov esp, ebp
pop ebp
ret 0x18
Function at 0x1000e1e0
Capabilities:
Access peb ldr_data

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x100af582
mov eax, dword fs:[0]
push eax
sub esp, 0xc
push ebx
push esi
push edi
mov eax, dword [0x100db274]
xor eax, ebp
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov ebx, ecx
mov dword [ebp - 0x14], ebx
mov dword [ebx], 0xffffffff
mov dword [ebx + 0x24], 0
mov dword [ebx + 0x28], 0
mov dword [ebx + 0x2c], 0
mov dword [ebp - 4], 0
mov dword [ebx + 0x30], 0
mov dword [ebx + 0x34], 0
mov dword [ebx + 0x38], 0
mov dword [ebx + 0x3c], 0
mov dword [ebx + 0x40], 0
mov dword [ebx + 0x44], 0
mov dword [ebx + 0x48], 0
mov dword [ebx + 0x4c], 0
mov dword [ebx + 0x50], 0
mov dword [ebx + 0x54], 0
mov dword [ebx + 0x58], 0
mov dword [ebx + 0x5c], 0
mov byte [ebp - 4], 4
lea edi, [ebx + 0x2060]
mov dword [ebp - 0x18], edi
vxorps xmm0, xmm0, xmm0
vmovss dword [edi], xmm0
push 0x24
mov dword [edi + 4], 0
mov dword [edi + 8], 0
call fcn.1008c9b0
add esp, 4
mov dword [eax], eax
mov dword [eax + 4], eax
mov dword [edi + 4], eax
mov dword [edi + 0xc], 0
mov dword [edi + 0x10], 0
mov dword [edi + 0x14], 0
mov byte [ebp - 4], 6
mov edx, eax
vmovss xmm0, dword [0x100d4ee4]
mov dword [edi + 0x18], 7
mov dword [edi + 0x1c], 8
vmovss dword [edi], xmm0
mov ecx, dword [edi + 0x10]
mov eax, ecx
sar eax, 2
mov dword [ebp - 0x10], edx
cmp eax, 0x10
jae 0x1000e361
push 0x40
call fcn.1008c9b0
mov ecx, dword [edi + 0x14]
mov esi, eax
mov eax, dword [edi + 0xc]
add esp, 4
sub ecx, eax
sar ecx, 2
test ecx, ecx
je 0x1000e343
shl ecx, 2
cmp ecx, 0x1000
jb 0x1000e339
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1000e481
mov eax, edx
push ecx
push eax
call fcn.1008ccfa
add esp, 8
lea eax, [esi + 0x40]
mov dword [edi + 0xc], esi
mov dword [edi + 0x10], eax
mov dword [edi + 0x14], eax
cmp esi, eax
je 0x1000e371
mov ecx, dword [ebp - 0x10]
mov dword [esi], ecx
add esi, 4
cmp esi, eax
jne 0x1000e356
jmp 0x1000e371
add ecx, 3
shr ecx, 2
test ecx, ecx
je 0x1000e371
mov eax, edx
xor edi, edi
rep stosd dword es:[edi], eax
mov dword [ebx + 0x2080], 0
mov eax, ebx
mov dword [ebx + 0x2084], 0
mov dword [ebx + 0x2088], 0
mov dword [ebx + 0x208c], 0
mov dword [ebx + 0x2090], 0
mov dword [ebx + 0x2094], 0
mov dword [ebx + 0x2098], 0
mov dword [ebx + 0x209c], 0
mov dword [ebx + 0x20a0], 0
mov dword [ebx + 0x20a4], 0
mov dword [ebx + 0x20a8], 0
mov dword [ebx + 0x20ac], 0
mov dword [ebx + 0x20b0], 0
mov dword [ebx + 0x20b4], 0
mov dword [ebx + 0x20b8], 0
mov dword [ebx + 0x20bc], 0
mov dword [ebx + 0x20c0], 0
mov dword [ebx + 0x20c4], 0
vxorps xmm0, xmm0, xmm0
mov dword [ebx + 4], 0xffffffff
mov dword [ebx + 8], 0xffffffff
mov dword [ebx + 0x18], 0
mov dword [ebx + 0x1c], 0
mov dword [ebx + 0x20], 0
mov dword [ebx + 0xc], 0xffffffff
vmovss dword [ebx + 0x10], xmm0
vmovss dword [ebx + 0x14], xmm0
vmovups xmmword [ebx + 0x20c8], xmm0
vmovss dword [ebx + 0x20d8], xmm0
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
call fcn.1009143f
int3
Function at 0x1000f360
Capabilities:
Hash data using fnv

Disassembly:
push ebp
mov ebp, esp
sub esp, 0xc
mov eax, 0x5397829d
push esi
mov esi, dword [ebp + 8]
push edi
mov ecx, dword [esi + 0xb94]
sub ecx, dword [0x100e1078]
imul ecx
sar edx, 7
mov ecx, edx
shr ecx, 0x1f
add ecx, edx
js 0x1000f43d
mov eax, dword [0x100e1090]
cmp ecx, dword [eax]
jge 0x1000f43d
mov eax, dword [0x100e1688]
mov edi, dword [eax + ecx*4]
test edi, edi
je 0x1000f43d
movzx eax, byte [esi]
xor eax, 0x811c9dc5
imul ecx, eax, 0x1000193
movzx eax, byte [esi + 1]
xor ecx, eax
movzx eax, byte [esi + 2]
imul ecx, ecx, 0x1000193
xor ecx, eax
movzx eax, byte [esi + 3]
imul ecx, ecx, 0x1000193
xor ecx, eax
imul eax, ecx, 0x1000193
mov ecx, 0x100e165c
push eax
push esi
lea eax, [ebp - 0xc]
push eax
call fcn.10008b20
mov ecx, dword [0x100e1660]
mov eax, dword [eax + 4]
test eax, eax
cmovne ecx, eax
cmp ecx, dword [0x100e1660]
jne 0x1000f452
cmp esi, dword [0x100e1118]
je 0x1000f421
mov eax, dword [esi + 0x308]
cmp eax, 7
je 0x1000f41b
cmp eax, 0xd
jne 0x1000f421
mov byte [ebp + 8], 1
jmp 0x1000f425
mov byte [ebp + 8], 0
push dword [ebp + 8]
push edi
push dword [0x100e1694]
push esi
call fcn.1000efa0
pop edi
pop esi
mov esp, ebp
pop ebp
ret 4
mov eax, dword [0x100e1524]
push str.CreateBrushModel:_Invalid_model_index_n
mov eax, dword [eax + 0x98]
call eax
add esp, 4
pop edi
pop esi
mov esp, ebp
pop ebp
ret 4
Function at 0x10019760
Capabilities:
Hash data using fnv

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x100af810
mov eax, dword fs:[0]
push eax
push ebx
push esi
push edi
mov eax, dword [0x100db274]
xor eax, ebp
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov ecx, dword [ebp + 0xc]
mov eax, dword [ecx]
mov edi, dword [eax + 0xc]
test edi, edi
je 0x100198c9
mov edx, dword [edi + 4]
test edx, edx
je 0x100197db
mov ecx, dword [0x100e1630]
push edx
mov eax, dword [ecx]
call dword [eax + 0x5c]
mov eax, dword [edi + 4]
mov ecx, dword [eax + 0x244]
test ecx, ecx
je 0x100197bb
mov eax, dword [ecx]
push 1
call dword [eax]
mov eax, dword [edi + 4]
mov ecx, dword [eax + 0xcc]
test ecx, ecx
je 0x100197ce
mov eax, dword [ecx]
push 1
call dword [eax]
mov ecx, dword [edi + 4]
test ecx, ecx
je 0x100197db
mov eax, dword [ecx]
push 1
call dword [eax]
mov esi, dword [edi + 8]
test esi, esi
je 0x1001984d
cmp byte [esi + 0x18], 0
je 0x1001984d
mov ecx, dword [esi + 0xc]
test ecx, ecx
je 0x1001983b
mov eax, dword [esi + 0x14]
sub eax, ecx
sar eax, 3
lea edx, [eax*8]
cmp edx, 0x1000
jb 0x1001981c
mov ebx, dword [ecx - 4]
add edx, 0x23
sub ecx, ebx
lea eax, [ecx - 4]
cmp eax, 0x1f
ja 0x10019976
mov ecx, ebx
push edx
push ecx
call fcn.1008ccfa
mov dword [esi + 0xc], 0
add esp, 8
mov dword [esi + 0x10], 0
mov dword [esi + 0x14], 0
mov ecx, esi
call fcn.10006d40
push 0x1c
push esi
call fcn.1008ccfa
add esp, 8
mov esi, dword [edi + 0xc]
test esi, esi
je 0x100198b6
cmp byte [esi + 0xc], 0
je 0x100198b6
mov ecx, dword [esi]
test ecx, ecx
je 0x100198ab
mov eax, dword [esi + 8]
sub eax, ecx
sar eax, 2
lea edx, [eax*4]
cmp edx, 0x1000
jb 0x1001988d
mov ebx, dword [ecx - 4]
add edx, 0x23
sub ecx, ebx
lea eax, [ecx - 4]
cmp eax, 0x1f
ja 0x10019976
mov ecx, ebx
push edx
push ecx
call fcn.1008ccfa
mov dword [esi], 0
add esp, 8
mov dword [esi + 4], 0
mov dword [esi + 8], 0
push 0x10
push esi
call fcn.1008ccfa
add esp, 8
push edi
mov dword [ebp - 4], 0
call fcn.10071350
mov ecx, dword [ebp + 0xc]
add esp, 4
mov eax, dword [ecx]
mov dword [eax + 0xc], 0
mov eax, dword [ecx]
movzx ecx, byte [eax + 8]
xor ecx, 0x811c9dc5
imul edx, ecx, 0x1000193
movzx ecx, byte [eax + 9]
xor edx, ecx
movzx ecx, byte [eax + 0xa]
imul edx, edx, 0x1000193
xor edx, ecx
movzx ecx, byte [eax + 0xb]
imul edx, edx, 0x1000193
xor edx, ecx
mov ecx, dword [0x100e1668]
imul edx, edx, 0x1000193
and edx, dword [0x100e1674]
lea edx, [ecx + edx*8]
mov ecx, dword [edx]
cmp dword [edx + 4], eax
jne 0x10019937
cmp ecx, eax
jne 0x1001992f
mov ecx, dword [0x100e1660]
mov dword [edx], ecx
mov dword [edx + 4], ecx
jmp 0x1001993f
mov ecx, dword [eax + 4]
mov dword [edx + 4], ecx
jmp 0x1001993f
cmp ecx, eax
jne 0x1001993f
mov ecx, dword [eax]
mov dword [edx], ecx
mov esi, dword [eax]
dec dword [0x100e1664]
mov ecx, dword [eax + 4]
push 0x10
push eax
mov dword [ecx], esi
mov ecx, dword [eax + 4]
mov dword [esi + 4], ecx
call fcn.1008ccfa
mov eax, dword [ebp + 8]
add esp, 8
mov dword [eax], esi
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 8
call fcn.1009143f
int3
Function at 0x10019990
Capabilities:
Hash data using fnv

Disassembly:
push ebp
mov ebp, esp
sub esp, 0xc
mov edx, dword [ebp + 8]
movzx eax, dl
xor eax, 0x811c9dc5
imul ecx, eax, 0x1000193
mov eax, edx
sar eax, 8
movzx eax, al
xor ecx, eax
mov eax, edx
imul ecx, ecx, 0x1000193
sar eax, 0x10
movzx eax, al
sar edx, 0x18
xor ecx, eax
movzx eax, dl
imul ecx, ecx, 0x1000193
xor ecx, eax
imul eax, ecx, 0x1000193
mov ecx, 0x100e163c
push eax
lea eax, [ebp + 8]
push eax
lea eax, [ebp - 0xc]
push eax
call fcn.10008b20
mov ecx, dword [0x100e1640]
mov eax, dword [eax + 4]
test eax, eax
cmovne ecx, eax
mov dword [ebp + 8], ecx
cmp ecx, dword [0x100e1640]
jne 0x10019a15
push str.RemoveRagdollEx:_not_found_n
call dword [0x100e11c0]
add esp, 4
mov esp, ebp
pop ebp
ret 4
lea eax, [ebp + 8]
push eax
lea eax, [ebp - 4]
push eax
call fcn.10019010
mov esp, ebp
pop ebp
ret 4
Function at 0x10019a30
Capabilities:
Hash data using fnv

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff0
mov edx, dword [ebp + 0xc]
sub esp, 0x30
movzx eax, dl
xor eax, 0x811c9dc5
imul ecx, eax, 0x1000193
mov eax, edx
sar eax, 8
movzx eax, al
xor ecx, eax
mov eax, edx
imul ecx, ecx, 0x1000193
sar eax, 0x10
movzx eax, al
sar edx, 0x18
xor ecx, eax
movzx eax, dl
imul ecx, ecx, 0x1000193
xor ecx, eax
imul eax, ecx, 0x1000193
mov ecx, 0x100e163c
push eax
lea eax, [ebp + 0xc]
push eax
lea eax, [esp + 0x20]
push eax
call fcn.10008b20
mov edx, dword [0x100e1640]
mov eax, dword [eax + 4]
test eax, eax
cmovne edx, eax
cmp edx, dword [0x100e1640]
je 0x10019bed
mov eax, dword [edx + 0xc]
mov ecx, dword [eax + 0x24]
mov eax, dword [eax + 0x28]
sub eax, ecx
test eax, 0xfffffffc
je 0x10019bed
mov ecx, dword [ecx]
mov eax, dword [ecx + 0x18]
vmovdqu xmm5, xmmword [ecx + 0x80]
vshufps xmm4, xmm5, xmm5, 0x55
vshufps xmm3, xmm5, xmm5, 0xaa
vmovdqu xmm2, xmmword [eax + 0x10]
vmovdqu xmm0, xmmword [eax + 0x30]
vmovdqu xmm6, xmmword [eax + 0x20]
vmovdqu xmm7, xmmword [eax + 0x40]
mov eax, dword [0x100e1088]
vmovdqa xmmword [esp + 0x20], xmm0
vmulss xmm0, xmm5, xmm2
vshufps xmm1, xmm2, xmm2, 0x55
vfmadd213ss xmm1, xmm4, xmm0
vmulss xmm0, xmm5, xmm6
vshufps xmm2, xmm2, xmm2, 0xaa
vfmadd213ss xmm2, xmm3, xmm1
vshufps xmm1, xmm6, xmm6, 0x55
vfmadd213ss xmm1, xmm4, xmm0
vshufps xmm6, xmm6, xmm6, 0xaa
vfmadd213ss xmm6, xmm3, xmm1
vmovdqa xmmword [esp], xmm7
vaddss xmm7, xmm2, xmm7
vaddss xmm2, xmm6, dword [esp + 4]
vmovdqa xmm6, xmmword [esp + 0x20]
vmulss xmm0, xmm5, xmm6
vshufps xmm1, xmm6, xmm6, 0x55
vfmadd213ss xmm1, xmm4, xmm0
vshufps xmm6, xmm6, xmm6, 0xaa
vfmadd213ss xmm6, xmm3, xmm1
vaddss xmm0, xmm6, dword [esp + 8]
vaddss xmm0, xmm0, dword [0x100d4f58]
vmovss dword [eax + 0x21c], xmm7
vmovss dword [eax + 0x22c], xmm2
vmovss dword [eax + 0x23c], xmm0
vmovss dword [eax + 0x24c], xmm7
vmovss dword [eax + 0x25c], xmm2
vmovss dword [eax + 0x26c], xmm0
vmovss dword [eax + 0x27c], xmm7
vmovss dword [eax + 0x28c], xmm2
vmovss dword [eax + 0x29c], xmm0
vmovss dword [eax + 0x2ac], xmm7
vmovss dword [eax + 0x2bc], xmm2
vmovss dword [eax + 0x2cc], xmm0
vmovss dword [eax + 0x2dc], xmm7
vmovss dword [eax + 0x2ec], xmm2
vmovss dword [eax + 0x2fc], xmm0
vmovss dword [eax + 0x30c], xmm7
vmovss dword [eax + 0x31c], xmm2
vmovss dword [eax + 0x32c], xmm0
mov esp, ebp
pop ebp
ret 8