Function at 0x42d590
Capabilities:
Encrypt data using speck

Disassembly:
push ebp
mov ebp, esp
push ebx
push edi
push esi
and esp, 0xfffffff0
sub esp, 0x350
call 0x42d5a4
pop eax
mov edi, edx
mov ebx, ecx
mov dword [esp + 0x1c], eax
mov eax, dword [ebp + 8]
mov eax, dword [eax + 0x28]
test eax, eax
je 0x42d5f9
mov edx, dword [edi]
lea esi, [esp + 0x1c0]
mov ecx, esi
push eax
push dword [edi + 4]
call dbg.abbreviations<gimli::read::endian_slice::EndianSlice<gimli::endianity::LittleEndian>>
add esp, 8
lea ecx, [esp + 0xe8]
mov edx, esi
call sym.core::result::Result_LT_T_C_E_GT_::map::h3cb45aff338a21a6
movzx eax, byte [esp + 0xe8]
cmp al, 0x4b
jne 0x42d8f0
mov eax, dword [esp + 0xec]
mov dword [esp + 0x58], ebx
jmp 0x42d615
mov eax, dword [edi + 0x6c]
test eax, eax
je 0x42d939
lock inc dword [eax - 8]
jle 0x42f9c6
mov dword [esp + 0x58], ebx
add eax, 0xfffffff8
mov dword [esp + 0x18], eax
mov ecx, dword [ebp + 8]
cmp byte [edi + 0x70], 0
mov dword [esp + 0x134], edi
movsd xmm3, qword [esp + 0x2e0]
movsd xmm2, qword [esp + 0x2d4]
movsd xmm1, qword [ecx + 8]
mov edx, dword [ecx + 0x20]
setne bl
movsd xmm0, qword [ecx]
movsd qword [esp + 0x270], xmm1
movsd xmm1, qword [ecx + 0x10]
mov eax, edx
movsd qword [esp + 0x268], xmm0
movq xmm0, qword [esp + 0x2f8]
shr eax, 0x10
cmp ax, 5
setae bh
and edx, 0xff00
xor eax, eax
movsd qword [esp + 0x278], xmm1
movsd xmm1, qword [ecx + 0x18]
cmp edx, 0x800
sete al
xor edi, edi
test bl, bh
lea esi, [eax*8 + 8]
lea edx, [eax*8 + 0xc]
cmove esi, edi
cmove edx, edi
mov edi, dword [ecx + 8]
xor eax, eax
movsd qword [esp + 0x280], xmm1
movsd xmm1, qword [ecx + 0x20]
add edi, 0xfffffffd
movsd qword [esp + 0x288], xmm1
movsd xmm1, qword [ecx + 0x28]
cmp edi, 2
mov edi, dword [esp + 0x18]
setb al
movsd qword [esp + 0x290], xmm1
movsd xmm1, qword [esp + 0x2f0]
mov dword [esp + 0x2b0], edi
mov dword [esp + 0x298], 0
mov dword [esp + 0x2a0], 0
mov dword [esp + 0x2a8], 0
mov dword [esp + 0x2ac], 0
mov dword [esp + 0x2b4], esi
mov dword [esp + 0x2b8], 0
mov dword [esp + 0x2bc], edx
mov dword [esp + 0x2c0], edx
mov dword [esp + 0x1d0], 0x2f
mov dword [esp + 0x1d4], 0
mov edx, dword [esp + 0x2dc]
movq qword [esp + 0x200], xmm0
movsd qword [esp + 0x1e8], xmm3
lea esi, [esp + 0x268]
add edi, 8
movsd qword [esp + 0x1f8], xmm1
movsd xmm1, qword [esp + 0x2e8]
movsd qword [esp + 0x1f0], xmm1
mov dword [esp + 0x234], edx
mov edx, dword [esp + 0x2d0]
movq xmm1, qword [esp + 0x2c8]
movsd qword [esp + 0x22c], xmm2
mov dword [esp + 0x24c], edx
movq qword [esp + 0x244], xmm1
mov dword [esp + 0x1c0], eax
mov eax, dword [ecx + 0x14]
mov dword [esp + 0x1c4], 0
mov dword [esp + 0x1cc], eax
mov eax, dword [ecx + 0x10]
mov dword [esp + 0x1c8], eax
mov eax, dword [esp + 0x280]
mov ebx, dword [esp + 0x284]
mov dword [esp + 0xa8], eax
mov dword [esp + 0xac], ebx
mov dword [esp + 0xb0], esi
mov dword [esp + 0xb4], edi
mov dword [esp + 0xb8], 0
mov dword [esp + 0xd4], 0
lea ecx, [esp + 0xe8]
lea edx, [esp + 0xa8]
call dbg.next_entry<gimli::read::endian_slice::EndianSlice<gimli::endianity::LittleEndian>>
movzx eax, byte [esp + 0xe8]
cmp al, 0x4b
jne 0x42d892
lea esi, [esp + 0xe8]
lea edi, [esp + 0xa8]
nop word cs:[eax + eax]
nop
cmp byte [esp + 0xe9], 0
mov ebx, dword [esp + 0xb8]
je 0x42d99c
test ebx, ebx
jne 0x42d9a4
mov ecx, esi
mov edx, edi
call dbg.next_entry<gimli::read::endian_slice::EndianSlice<gimli::endianity::LittleEndian>>
movzx eax, byte [esp + 0xe8]
cmp al, 0x4b
je 0x42d860
mov edx, dword [esp + 0x58]
movzx ecx, byte [esp + 0xe9]
movzx edi, word [esp + 0xea]
mov esi, dword [esp + 0xf0]
mov byte [edx + 8], al
mov byte [edx + 9], cl
mov ecx, dword [esp + 0xec]
mov word [edx + 0xa], di
mov dword [edx + 0xc], ecx
mov ecx, dword [esp + 0xf4]
mov dword [edx + 0x10], esi
mov dword [edx + 0x14], ecx
mov dword [edx + 4], 0
mov dword [edx], 2
mov eax, dword [esp + 0x2b0]
lock dec dword [eax]
je 0x42e476
jmp 0x42e482
mov ecx, dword [esp + 0xec]
mov edx, dword [esp + 0xf0]
mov esi, dword [esp + 0xf4]
movzx edi, word [esp + 0xe9]
mov ah, byte [esp + 0xeb]
mov word [ebx + 9], di
mov byte [ebx + 0xb], ah
mov byte [ebx + 8], al
mov dword [ebx + 0xc], ecx
mov dword [ebx + 0x14], esi
mov dword [ebx + 0x10], edx
mov dword [ebx + 4], 0
mov dword [ebx], 2
jmp 0x42e519
mov edx, dword [edi]
lea esi, [esp + 0x1c0]
mov ecx, esi
push 0
push dword [edi + 4]
call dbg.abbreviations<gimli::read::endian_slice::EndianSlice<gimli::endianity::LittleEndian>>
add esp, 8
lea ecx, [esp + 0xa8]
mov edx, esi
call sym.core::result::Result_LT_T_C_E_GT_::map::h3cb45aff338a21a6
movzx eax, byte [esp + 0xa8]
cmp al, 0x4b
jne 0x42de20
mov ecx, dword [esp + 0xac]
xor eax, eax
lea edx, [ecx + 8]
lock cmpxchg dword [edi + 0x6c], edx
mov dword [esp + 0x58], ebx
jne 0x42e377
mov dword [esp + 0x18], ecx
lock inc dword [ecx]
jg 0x42d619
jmp 0x42f9c6
test ebx, ebx
je 0x42dff6
mov eax, dword [esp + 0xbc]
mov dword [esp + 0x18], eax
push dword [esp + 0xc0]
call sym.__LT_gimli..read..abbrev..Attributes_u20_as_u20_core..ops..deref..Deref_GT_::deref::h739ebf6399092e36
add esp, 4
mov esi, eax
mov eax, dword [esp + 0x18]
mov dword [esp + 0x170], ebx
movdqa xmm0, xmmword [0x4bc8e0]
mov edi, edx
mov dword [esp + 0x90], 0
mov dword [esp + 0x16c], 0x2e
mov dword [esp + 0x168], 0
mov dword [esp + 0x18], 0
mov dword [esp + 0x174], eax
lea eax, [esp + 0xb8]
mov dword [esp + 0x178], esi
mov dword [esp + 0x17c], edx
movdqa xmmword [esp + 0x190], xmm0
movdqa xmmword [esp + 0x70], xmm0
mov dword [esp + 0x180], eax
mov eax, dword [esp + 0x1c0]
mov dword [esp + 0x24], eax
mov eax, dword [esp + 0x1c4]
mov dword [esp + 0x10], eax
jmp 0x42da90
test edi, edi
je 0x42db30
movsd xmm0, qword [esi]
movsd xmm1, qword [esi + 8]
mov eax, dword [esp + 0x180]
movsd qword [esp + 0x50], xmm1
movsd qword [esp + 0x48], xmm0
mov eax, dword [eax + 0xc]
lea ecx, [esp + 0xe8]
lea ebx, [esp + 0x48]
lea edx, [esp + 0x170]
push ebx
push dword [eax + 0x20]
call dbg.parse_attribute<gimli::read::endian_slice::EndianSlice<gimli::endianity::LittleEndian>>
add esp, 8
mov eax, dword [esp + 0xe8]
mov ecx, dword [esp + 0xec]
mov edx, eax
xor edx, 0x2e
or edx, ecx
je 0x42de59
lea edx, [esp + 0xf0]
add esi, 0x10
dec edi
movq xmm0, qword [edx]
movq xmm1, qword [edx + 8]
mov dword [esp + 0x178], esi
mov dword [esp + 0x17c], edi
movq qword [esp + 0x118], xmm1
movq qword [esp + 0x110], xmm0
jmp 0x42db59
mov eax, dword [esp + 0x180]
cmp dword [eax + 0x14], 0
jne 0x42db50
mov ecx, dword [esp + 0x170]
sub ecx, dword [eax]
mov dword [eax + 0x14], 1
mov dword [eax + 0x18], ecx
xor edi, edi
mov eax, 0x2e
xor ecx, ecx
movsd xmm0, qword [esp + 0x110]
movsd xmm1, qword [esp + 0x118]
mov edx, eax
xor edx, 0x2e
or edx, ecx
movsd qword [esp + 0x148], xmm1
movsd qword [esp + 0x140], xmm0
je 0x42ddf0
movq xmm0, qword [esp + 0x140]
movq xmm1, qword [esp + 0x148]
mov dword [esp + 0xe8], eax
lea eax, [esp + 0xf0]
mov dword [esp + 0xec], ecx
movq qword [eax + 8], xmm1
movq qword [eax], xmm0
movzx eax, word [esp + 0xf8]
cmp eax, 0x71
jle 0x42dc20
cmp eax, 0x2130
jg 0x42dc60
add eax, 0xffffff8e
cmp eax, 0x1a
ja 0x42da90
mov eax, dword [eax*4 + 0x42fb84]
add eax, dword [esp + 0x1c]
jmp eax
add eax, 0xfffffffd
cmp eax, 0x18
ja 0x42da90
mov eax, dword [eax*4 + 0x42fb20]
add eax, dword [esp + 0x1c]
jmp eax
cmp eax, 0x2131
je 0x42dd77
cmp eax, 0x2132
je 0x42dcae
cmp eax, 0x2133
jne 0x42da90
lea ecx, [esp + 0x48]
lea edx, [esp + 0xe8]
call dbg.value<gimli::read::endian_slice::EndianSlice<gimli::endianity::LittleEndian>>
mov eax, dword [esp + 0x48]
xor eax, 0xb
or eax, dword [esp + 0x4c]
jne 0x42da90
mov eax, dword [esp + 0x50]
mov dword [esp + 0x2b8], eax
jmp 0x42da90
lea ecx, [esp + 0x48]
lea edx, [esp + 0xe8]
call dbg.value<gimli::read::endian_slice::EndianSlice<gimli::endianity::LittleEndian>>
mov eax, dword [esp + 0x48]
xor eax, 0x17
or eax, dword [esp + 0x4c]
jne 0x42da90
mov eax, dword [esp + 0x50]
mov dword [esp + 0x2c0], eax
jmp 0x42da90
mov eax, dword [esp + 0x24]
or eax, dword [esp + 0x10]
jne 0x42da90
lea ecx, [esp + 0x48]
lea edx, [esp + 0xe8]
call dbg.value<gimli::read::endian_slice::EndianSlice<gimli::endianity::LittleEndian>>
mov eax, dword [esp + 0x48]
mov dword [esp + 0x10], 0
xor eax, 0x2d
or eax, dword [esp + 0x4c]
jne 0x42dde3
mov eax, dword [esp + 0x50]
mov ecx, dword [esp + 0x54]
mov dword [esp + 0x1c4], 0
mov dword [esp + 0x1c0], 1
mov dword [esp + 0x24], 1
mov dword [esp + 0x1cc], ecx
mov dword [esp + 0x1c8], eax
jmp 0x42da90
mov dword [esp + 0x24], 0
jmp 0x42da90
movdqa xmm1, xmmword [esp + 0x70]
movd ecx, xmm1
pshufd xmm0, xmm1, 0x55
movd eax, xmm0
xor ecx, 0x2e
or ecx, eax
jne 0x42de8e
mov ebx, dword [esp + 0x58]
mov edi, dword [esp + 0x134]
xor eax, eax
jmp 0x42dee5
movzx ecx, byte [esp + 0xab]
mov esi, dword [esp + 0xb4]
mov edx, dword [esp + 0xb0]
mov byte [esp + 0xeb], cl
movzx ecx, word [esp + 0xa9]
mov word [esp + 0xe9], cx
mov ecx, dword [esp + 0xac]
jmp 0x42d905
lea eax, [esp + 0xf0]
movsd xmm0, qword [eax]
movsd xmm1, qword [eax + 8]
mov eax, dword [esp + 0x58]
movsd qword [esp + 0x140], xmm0
movsd qword [esp + 0x148], xmm1
movsd qword [eax + 0x10], xmm1
movsd qword [eax + 8], xmm0
jmp 0x42e005
movzx eax, byte [esp + 0x289]
movdqu xmmword [esp + 0x328], xmm1
mov edi, dword [esp + 0x134]
lea esi, [esp + 0x328]
lea ecx, [esp + 0xa8]
mov edx, edi
push esi
push dword [esp + 0x2b8]
push eax
call dbg.attr_string<gimli::read::endian_slice::EndianSlice<gimli::endianity::LittleEndian>>
add esp, 0xc
xor eax, eax
cmp byte [esp + 0xa8], 0x4b
mov ebx, dword [esp + 0x58]
jne 0x42dede
mov eax, dword [esp + 0xac]
mov edx, dword [esp + 0xb0]
movdqa xmm1, xmmword [esp + 0x190]
mov dword [esp + 0x298], eax
mov dword [esp + 0x70], eax
mov dword [esp + 0x29c], edx
mov dword [esp + 0x10], edx
movd ecx, xmm1
pshufd xmm0, xmm1, 0x55
movd eax, xmm0
xor ecx, 0x2e
or ecx, eax
jne 0x42df4a
cmp dword [esp + 0x18], 0
mov dword [esp + 0x2a0], 0
je 0x42e027
movzx eax, byte [esp + 0x288]
mov dword [esp + 0x80], 0
mov byte [esp + 0x18], al
jmp 0x42dfcb
movzx eax, byte [esp + 0x289]
movdqu xmmword [esp + 0x338], xmm1
mov edx, edi
lea edi, [esp + 0x338]
lea ecx, [esp + 0xa8]
push edi
push dword [esp + 0x2b8]
push eax
call dbg.attr_string<gimli::read::endian_slice::EndianSlice<gimli::endianity::LittleEndian>>
add esp, 0xc
movzx eax, byte [esp + 0xa8]
mov ecx, dword [esp + 0xac]
xor esi, esi
mov edx, 0
mov edi, dword [esp + 0xb0]
cmp al, 0x4b
cmove edx, ecx
cmp dword [esp + 0x18], 0
mov dword [esp + 0x2a0], edx
mov dword [esp + 0x2a4], edi
je 0x42e027
movzx edx, byte [esp + 0x288]
cmp al, 0x4b
cmove esi, ecx
mov dword [esp + 0x80], esi
mov byte [esp + 0x18], dl
mov ecx, dword [esp + 0x134]
mov dword [esp + 0x58], ebx
mov eax, dword [ecx + 0x20]
mov edx, dword [ecx + 0x24]
mov ecx, dword [esp + 0x13c]
sub edx, ecx
jae 0x42e3a7
xor edi, edi
mov cl, 0x13
mov edx, eax
jmp 0x42e445
mov eax, dword [esp + 0x58]
mov byte [eax + 8], 0x42
mov dword [eax + 0xc], 0
mov dword [eax + 4], 0
mov dword [eax], 2
mov eax, dword [esp + 0x2b0]
lock dec dword [eax]
je 0x42e476
jmp 0x42e482
movsd xmm1, qword [esp + 0x2f0]
mov eax, dword [esp + 0x2dc]
movsd xmm0, qword [esp + 0x2f8]
movsd xmm3, qword [esp + 0x2e0]
movsd xmm2, qword [esp + 0x2d4]
mov dword [esp + 0x24], 0
mov dword [esp + 0x40], 0x2f
movsd qword [esp + 0x180], xmm1
movsd xmm1, qword [esp + 0x2e8]
mov dword [esp + 0x148], eax
mov eax, dword [esp + 0x2d0]
movsd qword [esp + 0x188], xmm0
movsd qword [esp + 0x170], xmm3
movsd qword [esp + 0x140], xmm2
movsd qword [esp + 0x178], xmm1
movq xmm1, qword [esp + 0x2c8]
mov dword [esp + 0x1b0], eax
mov dword [esp + 0x190], eax
movq qword [esp + 0x1a8], xmm1
mov eax, dword [esp + 0x1d0]
xor eax, 0x2f
or eax, dword [esp + 0x1d4]
je 0x42e167
mov eax, dword [esp + 0x220]
mov edi, edx
test eax, eax
je 0x42e101
shl eax, 2
push 2
push eax
push dword [esp + 0x22c]
call sym.___rust_dealloc
mov edx, edi
add esp, 0xc
mov eax, dword [esp + 0x22c]
test eax, eax
je 0x42e123
shl eax, 4
push 8
push eax
push dword [esp + 0x238]
call sym.___rust_dealloc
mov edx, edi
add esp, 0xc
mov eax, dword [esp + 0x238]
test eax, eax
je 0x42e145
shl eax, 2
push 2
push eax
push dword [esp + 0x244]
call sym.___rust_dealloc
mov edx, edi
add esp, 0xc
mov eax, dword [esp + 0x244]
test eax, eax
je 0x42e167
imul eax, eax, 0x38
push 8
push eax
push dword [esp + 0x250]
call sym.___rust_dealloc
mov edx, edi
add esp, 0xc
mov eax, dword [esp + 0x40]
movsd xmm0, qword [esp + 0x188]
lea ecx, [esp + 0x1e8]
movq xmm1, qword [esp + 0x178]
mov dword [esp + 0x1d0], eax
mov eax, dword [esp + 0x24]
mov dword [esp + 0x1d4], eax
mov eax, dword [esp + 0x70]
mov dword [esp + 0x1d8], eax
mov eax, dword [esp + 0x10]
mov dword [esp + 0x1dc], eax
mov dword [esp + 0x1e4], 0
mov dword [esp + 0x1e0], 0
movsd qword [ecx + 0x18], xmm0
movsd xmm0, qword [esp + 0x180]
mov eax, dword [esp + 0x164]
movq qword [ecx + 8], xmm1
movsd qword [ecx + 0x10], xmm0
movsd xmm0, qword [esp + 0x170]
movsd qword [ecx], xmm0
mov dword [esp + 0x208], esi
mov dword [esp + 0x20c], eax
mov eax, dword [esp + 0x6c]
movsd xmm0, qword [esp + 0x140]
mov dword [esp + 0x210], eax
mov eax, dword [esp + 0x1b8]
mov dword [esp + 0x214], eax
mov eax, dword [esp + 0x1bc]
mov dword [esp + 0x218], edx
mov dword [esp + 0x21c], eax
mov eax, dword [esp + 0x88]
mov dword [esp + 0x220], eax
mov eax, dword [esp + 0x8c]
mov dword [esp + 0x224], eax
mov eax, dword [esp + 0x128]
mov dword [esp + 0x228], eax
mov eax, dword [esp + 0x148]
movsd qword [ecx + 0x44], xmm0
movsd xmm0, qword [esp + 0x1a8]
mov dword [ecx + 0x4c], eax
mov eax, dword [esp + 0x44]
mov dword [esp + 0x238], eax
mov eax, dword [esp + 0x30]
mov dword [esp + 0x23c], eax
mov eax, dword [esp + 0x68]
mov dword [esp + 0x240], eax
mov eax, dword [esp + 0x1b0]
movsd qword [ecx + 0x5c], xmm0
mov dword [ecx + 0x64], eax
movzx eax, byte [esp + 0x18]
mov ecx, dword [esp + 0x16c]
mov byte [esp + 0x250], al
movzx eax, byte [esp + 0x3f]
mov edx, ecx
xor edx, 0x2e
or edx, dword [esp + 0x168]
mov byte [esp + 0x251], al
mov eax, dword [esp + 0x190]
mov word [esp + 0x252], ax
mov eax, dword [esp + 0x13c]
mov dword [esp + 0x254], eax
mov eax, dword [esp + 0x130]
mov dword [esp + 0x258], eax
mov eax, dword [esp + 0x12c]
mov dword [esp + 0x25c], eax
movzx eax, byte [esp + 0xa4]
mov byte [esp + 0x260], al
movzx eax, byte [esp + 0xa7]
mov byte [esp + 0x261], al
movzx eax, byte [esp + 0x5f]
mov byte [esp + 0x262], al
movzx eax, byte [esp + 0xa6]
mov byte [esp + 0x263], al
movzx eax, byte [esp + 0xa5]
mov byte [esp + 0x264], al
movzx eax, byte [esp + 0x5e]
mov byte [esp + 0x265], al
jne 0x42e3b9
lea eax, [esp + 0x1c0]
push 0x108
push eax
push ebx
call sym._memcpy
jmp 0x42e516
mov dword [esp + 0x1c0], ecx
mov esi, eax
lock dec dword [ecx]
jne 0x42e391
lea ecx, [esp + 0x1c0]
call dbg.drop_slow<gimli::read::abbrev::Abbreviations, alloc::alloc::Global>
lock inc dword [esi - 8]
jle 0x42f9c6
add esi, 0xfffffff8
mov dword [esp + 0x18], esi
jmp 0x42d619
add eax, ecx
cmp edx, 4
jae 0x42e3f1
mov ecx, eax
xor edi, edi
mov bl, 0x13
shr ecx, 8
jmp 0x42e421
mov eax, ecx
mov dword [esp + 0x58], ebx
and al, 0x3f
cmp al, 0xc
je 0x42e53a
and ecx, 0x3f
jne 0x42e568
mov edi, dword [esp + 0x84]
shr edi, 8
xor esi, esi
mov cl, 1
xor ebx, ebx
xor edx, edx
mov dword [esp + 0x1c], 0
jmp 0x42e5e2
lea ecx, [eax + 4]
mov dword [esp + 0x1bc], edi
lea edi, [edx - 4]
mov byte [esp + 0x3f], 4
mov dword [esp + 0xc], ecx
mov ecx, dword [eax]
cmp ecx, 0xffffffef
jbe 0x42e521
cmp ecx, 0xffffffff
je 0x42e648
xor ecx, ecx
mov bl, 0x10
xor edi, edi
mov byte [esp + 0x60], al
mov eax, edi
mov word [esp + 0x65], di
mov dword [esp + 0x61], ecx
shld edi, ecx, 8
shr eax, 0x10
mov byte [esp + 0x67], al
mov edx, dword [esp + 0x60]
mov ecx, ebx
mov ebx, dword [esp + 0x2c]
shl esi, 8
movzx eax, cl
or eax, esi
mov esi, dword [esp + 0x58]
mov dword [esi + 8], eax
mov dword [esi + 0xc], ebx
mov dword [esi + 0x10], edx
mov dword [esi + 0x14], edi
mov dword [esi + 4], 0
mov dword [esi], 2
mov eax, dword [esp + 0x2b0]
lock dec dword [eax]
jne 0x42e482
lea ecx, [esp + 0x2b0]
call dbg.drop_slow<gimli::read::abbrev::Abbreviations, alloc::alloc::Global>
mov eax, dword [esp + 0x1d0]
xor eax, 0x2f
or eax, dword [esp + 0x1d4]
je 0x42e519
mov eax, dword [esp + 0x220]
test eax, eax
je 0x42e4b9
shl eax, 2
push 2
push eax
push dword [esp + 0x22c]
call sym.___rust_dealloc
add esp, 0xc
mov eax, dword [esp + 0x22c]
test eax, eax
je 0x42e4d9
shl eax, 4
push 8
push eax
push dword [esp + 0x238]
call sym.___rust_dealloc
add esp, 0xc
mov eax, dword [esp + 0x238]
test eax, eax
je 0x42e4f9
shl eax, 2
push 2
push eax
push dword [esp + 0x244]
call sym.___rust_dealloc
add esp, 0xc
mov eax, dword [esp + 0x244]
test eax, eax
je 0x42e519
imul eax, eax, 0x38
push 8
push eax
push dword [esp + 0x250]
call sym.___rust_dealloc
add esp, 0xc
lea esp, [ebp - 0xc]
pop esi
pop edi
pop ebx
pop ebp
ret
mov eax, ecx
cmp edi, eax
jae 0x42e739
mov edx, dword [esp + 0xc]
mov cl, 0x13
xor edi, edi
mov ebx, edx
jmp 0x42e445
mov eax, dword [esp + 0x134]
mov ebx, dword [esp + 0x2b8]
mov esi, dword [eax + 0xc]
mov ecx, dword [eax + 8]
sub esi, ebx
jae 0x42e581
mov al, 0x13
mov dword [esp + 0xaf], ecx
mov dword [esp + 0xb3], 0
jmp 0x42e5a1
mov dword [esp + 0x84], eax
xor esi, esi
xor ebx, ebx
xor ecx, ecx
mov dword [esp + 0x1c], 0
xor edx, edx
jmp 0x42e5e2
movzx eax, byte [esp + 0x288]
mov byte [esp + 0x18], al
movzx edi, al
mov eax, dword [esp + 0x84]
mul edi
jno 0x42e6b5
mov al, 0x35
mov dword [esp + 0x18], eax
movzx ecx, byte [esp + 0xb2]
movzx edi, word [esp + 0xb0]
movzx eax, byte [esp + 0xaf]
xor ebx, ebx
mov esi, 1
shl ecx, 0x10
mov dword [esp + 0x84], eax
or edi, ecx
mov ecx, dword [esp + 0xb3]
mov dword [esp + 0x90], ecx
mov ecx, dword [esp + 0x18]
mov eax, edx
movzx ecx, cl
shl edi, 8
shl eax, 8
or ecx, eax
movzx eax, byte [esp + 0x84]
or eax, edi
or esi, ebx
je 0x42e621
mov esi, dword [esp + 0x58]
mov edi, dword [esp + 0x1c]
mov dword [esi + 8], ecx
mov ecx, dword [esp + 0x90]
shld edi, edx, 8
mov dword [esi + 0xc], edi
mov dword [esi + 0x10], eax
mov dword [esi + 0x14], ecx
jmp 0x42e45d
mov ebx, dword [esp + 0x58]
cmp ecx, 1
jne 0x42e35f
mov ecx, dword [esp + 0x90]
mov dword [esp + 0x2a8], eax
mov dword [esp + 0x2ac], ecx
jmp 0x42e35f
cmp edi, 8
jae 0x42e70e
mov eax, dword [esp + 0xc]
xor edi, edi
mov bl, 0x13
mov dword [esp + 0x4f], eax
movzx eax, byte [esp + 0x52]
movq xmm0, qword [esp + 0x48]
mov byte [esp + 0xb2], al
movzx eax, word [esp + 0x50]
movd esi, xmm0
mov word [esp + 0xb0], ax
movq qword [esp + 0xa8], xmm0
shufps xmm0, xmm0, 0x55
mov dword [esp + 0xb3], 0
movd eax, xmm0
shld eax, esi, 8
mov dword [esp + 0x2c], eax
mov eax, dword [esp + 0xaf]
mov ecx, eax
shr ecx, 8
jmp 0x42e421
mov edx, esi
add ecx, ebx
sub edx, eax
jb 0x42e552
dec edi
cmp edi, 7
ja 0x42e879
mov ebx, dword [esp + 0x1c]
add ecx, eax
add ebx, dword [edi*4 + 0x42fc4c]
jmp ebx
mov esi, dword [esp + 0xc]
cmp dword [esi + 4], 0
jne 0x42e7a0
mov edi, dword [esi]
add eax, 0xc
add edx, 0xfffffff4
mov byte [esp + 0x3f], 8
mov dword [esp + 0xc], eax
mov eax, edi
mov edi, edx
cmp edi, eax
jb 0x42e52b
mov edx, dword [esp + 0xc]
cmp eax, 2
jae 0x42e74b
mov cl, 0x13
xor edi, edi
jmp 0x42dff1
movzx edi, word [edx]
mov dword [esp + 0x130], eax
mov eax, edi
add eax, 0xfffffffa
cmp ax, 0xfffc
jae 0x42e76c
movzx edx, di
mov cl, 0x11
xor edi, edi
jmp 0x42dff1
mov eax, dword [esp + 0x130]
mov esi, edx
cmp di, 4
lea edx, [eax - 2]
lea eax, [esi + 2]
jbe 0x42e8d8
test edx, edx
je 0x42ea94
cmp dword [esp + 0x130], 3
jne 0x42e7ab
mov edx, dword [esp + 0xc]
add edx, 3
jmp 0x42e742
xor ecx, ecx
mov bl, 0x35
xor edi, edi
jmp 0x42e421
mov edx, dword [esp + 0xc]
movzx eax, byte [edx + 2]
mov byte [esp + 0x18], al
lea eax, [edx + 4]
mov dword [esp + 0x34], eax
cmp byte [edx + 3], 0
je 0x42e8ce
mov cl, 0x41
jmp 0x42dff1
movzx eax, byte [esp + 0x18]
movzx ecx, word [esp + 0xac]
mov byte [esp + 0xa8], al
movzx eax, byte [esp + 0xae]
mov edx, dword [esp + 0xa8]
shl eax, 0x10
or ecx, eax
mov al, 0x17
mov dword [esp + 0x1c], ecx
mov dword [esp + 0x18], eax
jmp 0x42e5a5
mov edx, dword [esp + 0x130]
add edx, 0xfffffffc
cmp ecx, 0xfffffff0
jb 0x42e92b
cmp edx, 8
jae 0x42e93f
mov dword [esp + 0xaf], eax
and eax, 0xffffff00
mov bl, 0x13
movq xmm0, qword [esp + 0xa8]
movdqa xmmword [esp + 0x310], xmm0
movdqa xmm1, xmm0
movd ecx, xmm0
movzx edx, byte [esp + 0x317]
shufps xmm1, xmm0, 0x55
movd esi, xmm1
shld esi, ecx, 8
mov ecx, eax
mov dword [esp + 0x2c], esi
mov eax, edx
jmp 0x42ea2a
cmp edx, 4
jae 0x42e95b
mov ecx, eax
mov bl, 0x13
and ecx, 0xffffff00
jmp 0x42ea2a
cmp dword [eax + 4], 0
jne 0x42ea26
mov esi, dword [eax]
mov ecx, edx
add eax, 8
mov dword [esp + 0x6c], eax
add ecx, 0xfffffff8
mov eax, esi
jmp 0x42e971
mov ecx, edx
lea edx, [eax + 4]
add ecx, 0xfffffffc
mov dword [esp + 0x34], edx
mov dword [esp + 0x6c], edx
mov dword [esp + 0x38], ecx
mov eax, dword [eax]
sub ecx, eax
jb 0x42ea19
test eax, eax
mov dword [esp + 0x1b8], ecx
mov dword [esp + 0x190], edi
mov dword [esp + 0x12c], eax
je 0x42ea19
mov eax, dword [esp + 0x6c]
movzx eax, byte [eax]
test al, al
mov byte [esp + 0xa7], al
je 0x42ea3a
mov eax, dword [esp + 0x12c]
cmp word [esp + 0x190], 4
mov byte [esp + 0x5f], 1
lea ecx, [eax - 1]
mov eax, dword [esp + 0x6c]
lea eax, [eax + 1]
jb 0x42e9fe
test ecx, ecx
je 0x42ea94
mov eax, dword [esp + 0x12c]
lea ecx, [eax - 2]
mov eax, dword [esp + 0x6c]
mov dword [esp + 0x38], ecx
movzx eax, byte [eax + 1]
test al, al
mov byte [esp + 0x5f], al
je 0x42ea8a
mov eax, dword [esp + 0x6c]
add eax, 2
test ecx, ecx
je 0x42ea94
lea esi, [eax + 1]
cmp ecx, 1
mov dword [esp + 0x34], esi
jne 0x42ea41
mov edx, esi
jmp 0x42e742
mov edx, dword [esp + 0x6c]
mov cl, 0x13
xor edi, edi
jmp 0x42dff1
mov bl, 0x35
xor ecx, ecx
movzx edx, al
movd esi, xmm0
xor edi, edi
or edx, ecx
jmp 0x42e43f
mov cl, 0x1a
jmp 0x42dff1
movzx edx, byte [eax]
mov edi, ecx
add edi, 0xfffffffe
mov dword [esp + 0x38], edi
je 0x42ea91
mov dh, byte [eax + 1]
lea esi, [eax + 3]
mov dword [esp + 0x34], esi
mov byte [esp + 0xa6], dh
mov dh, byte [eax + 2]
test dh, dh
mov byte [esp + 0xa5], dh
je 0x42ea9d
test dl, dl
setne byte [esp + 0xa4]
cmp ecx, 3
jne 0x42eaa4
mov ebx, esi
mov cl, 0x13
xor edi, edi
mov edx, ebx
jmp 0x42dff1
mov cl, 0x1b
jmp 0x42dff1
add eax, 2
mov cl, 0x13
xor edi, edi
jmp 0x42dfef
mov cl, 0x1c
jmp 0x42dff1
movzx edx, byte [eax + 3]
test dl, dl
mov byte [esp + 0x5e], dl
je 0x42eae8
movzx ebx, byte [esp + 0x5e]
lea edx, [ecx - 4]
lea esi, [eax + 4]
mov dword [esp + 0x138], esi
dec bl
movzx ebx, bl
sub edx, ebx
mov edi, ebx
mov dword [esp + 0x164], ebx
jae 0x42eaef
mov eax, dword [esp + 0x138]
mov cl, 0x13
xor edi, edi
mov edx, eax
mov ebx, eax
jmp 0x42e445
mov cl, 0x1d
jmp 0x42dff1
mov edi, dword [esp + 0x164]
mov esi, dword [esp + 0x138]
cmp word [esp + 0x190], 4
mov dword [esp + 0x110], 0
mov dword [esp + 0x114], 8
mov dword [esp + 0x118], 0
lea esi, [esi + edi]
mov dword [esp + 0x34], esi
mov dword [esp + 0xc], esi
mov dword [esp + 0x38], edx
ja 0x42ebfc
test edx, edx
je 0x42ed3a
add eax, ecx
xor esi, esi
mov dword [esp + 0x24], 8
mov dword [esp + 0x2c], edi
mov edi, dword [esp + 0xc]
xor ebx, ebx
cmp byte [edi + ebx], 0
je 0x42eb6e
lea ecx, [edi + ebx + 1]
inc ebx
cmp ecx, eax
jne 0x42eb5a
jmp 0x42ecf6
mov eax, ebx
lea ecx, [edi + ebx + 1]
not eax
mov dword [esp + 0x34], ecx
add eax, edx
test ebx, ebx
mov dword [esp + 0x38], eax
je 0x42f032
cmp esi, dword [esp + 0x110]
jne 0x42ebb1
lea ecx, [esp + 0x110]
mov edx, esi
call dbg.reserve_for_push<gimli::read::unit::AttributeValue<gimli::read::endian_slice::EndianSlice<gimli::endianity::LittleEndian>, usize>, alloc::alloc::Global>
mov eax, dword [esp + 0x114]
mov esi, dword [esp + 0x118]
mov dword [esp + 0x24], eax
mov edx, dword [esp + 0x24]
mov eax, esi
mov ecx, esi
mov dword [esp + 0x2c], edi
shl eax, 4
inc ecx
mov esi, ecx
mov dword [edx + eax + 4], 0
mov dword [edx + eax], 0x1f
mov dword [edx + eax + 8], edi
mov dword [edx + eax + 0xc], ebx
mov dword [esp + 0x118], ecx
mov eax, dword [esp + 0x34]
mov edx, dword [esp + 0x38]
mov dword [esp + 0xc], eax
add eax, edx
test edx, edx
jne 0x42eb50
jmp 0x42ed3a
lea ecx, [esp + 0xa8]
lea edx, [esp + 0x34]
call sym.gimli::read::line::FileEntryFormat::parse::he0b5eaddd6418ceb
movzx eax, byte [esp + 0xa8]
cmp al, 0x4b
mov dword [esp + 0x28], eax
jne 0x42ecfc
mov ecx, dword [esp + 0x34]
mov eax, dword [esp + 0xac]
mov edx, dword [esp + 0xb0]
mov dword [esp + 0xc], ecx
mov ecx, dword [esp + 0x38]
mov dword [esp + 0x88], eax
mov dword [esp + 0x8c], edx
test ecx, ecx
je 0x42ed6c
mov eax, ecx
mov ecx, dword [esp + 0xb4]
mov esi, dword [esp + 0xc]
mov dword [esp + 0x44], 0
mov dword [esp + 0x68], 0
mov ebx, 0
mov dword [esp + 0x128], ecx
lea ecx, [esi + eax]
neg eax
inc esi
mov dword [esp + 0x80], ecx
mov dword [esp + 0x40], eax
xor ecx, ecx
movzx eax, byte [esi - 1]
cmp ecx, 0x3f
mov edx, esi
mov byte [esp + 0x24], al
jne 0x42eca6
cmp byte [esp + 0x24], 2
jae 0x42ed74
movzx eax, byte [esp + 0x24]
xor edi, edi
mov edx, eax
and dl, 0x7f
movzx edx, dl
shld edi, edx, cl
shl edx, cl
test cl, 0x20
cmovne edi, edx
cmovne edx, ebx
or dword [esp + 0x68], edi
or dword [esp + 0x44], edx
test al, al
jns 0x42edf9
add ecx, 7
inc esi
inc dword [esp + 0x40]
jne 0x42ec8c
mov eax, dword [esp + 0x80]
mov dword [esp + 0x34], eax
mov dword [esp + 0x38], 0
mov dword [esp + 0xc], eax
jmp 0x42ed6c
mov dword [esp + 0xc], edi
jmp 0x42ed3a
movzx eax, byte [esp + 0xab]
movzx esi, word [esp + 0xa9]
mov edi, dword [esp + 0xb4]
mov bl, 1
shl eax, 0x10
or esi, eax
mov eax, dword [esp + 0xac]
mov dword [esp + 0x2c], eax
mov eax, dword [esp + 0xb0]
mov dword [esp + 0x60], eax
mov dword [esp + 0xc], eax
mov dword [esp + 0x64], edi
jmp 0x42eda1
mov eax, dword [esp + 0xc]
mov dword [esp + 0x8c], 2
xor edi, edi
mov dword [esp + 0x88], 0
xor ebx, ebx
mov dword [esp + 0x60], eax
mov al, 0x13
mov dword [esp + 0x64], 0
mov dword [esp + 0x28], eax
jmp 0x42eda1
mov al, 0x13
mov dword [esp + 0x28], eax
jmp 0x42ed88
mov eax, dword [esp + 0x40]
mov dword [esp + 0x34], esi
not eax
mov dword [esp + 0x38], eax
mov al, 6
mov dword [esp + 0x28], eax
mov eax, dword [esp + 0xc]
movzx esi, byte [esp + 0x24]
xor edi, edi
xor ebx, ebx
mov dword [esp + 0x60], eax
mov dword [esp + 0x64], 0
mov eax, dword [esp + 0x110]
test eax, eax
je 0x42edc1
shl eax, 4
push 8
push eax
push dword [esp + 0x11c]
call sym.___rust_dealloc
add esp, 0xc
cmp dword [esp + 0x88], 0
sete al
or bl, al
jne 0x42edec
mov eax, dword [esp + 0x88]
shl eax, 2
push 2
push eax
push dword [esp + 0x94]
call sym.___rust_dealloc
add esp, 0xc
mov edx, dword [esp + 0xc]
mov ecx, dword [esp + 0x28]
jmp 0x42e441
mov ecx, dword [esp + 0x44]
mov eax, dword [esp + 0x40]
mov dword [esp + 0x34], esi
or ecx, dword [esp + 0x68]
not eax
mov dword [esp + 0x38], eax
je 0x42f00a
cmp dword [esp + 0x128], 0
je 0x42f9aa
movzx eax, byte [esp + 0x3f]
movzx ecx, byte [esp + 0x18]
mov dword [esp + 0x14], 0
mov dword [esp + 0xe0], 8
mov dword [esp + 0x124], 0
mov dword [esp + 0xe4], 0
shl eax, 8
lea ebx, [eax + ecx + 0x50000]
mov eax, dword [esp + 0x128]
lea eax, [eax*4]
mov dword [esp + 0x20], eax
add dword [esp + 0x124], 1
mov dword [esp + 0x24], 0x2e
mov dword [esp + 0x40], 0
adc dword [esp + 0xe4], 0
xor esi, esi
mov eax, dword [esp + 0x8c]
movzx eax, word [eax + esi + 2]
lea ecx, [esp + 0xa8]
lea edx, [esp + 0x34]
push eax
push ebx
call sym.gimli::read::line::parse_attribute::hd73ed31c268fe8b3
add esp, 8
mov eax, dword [esp + 0xa8]
mov ecx, dword [esp + 0xb0]
mov edi, dword [esp + 0xbc]
or eax, dword [esp + 0xac]
mov dword [esp + 0x28], ecx
mov eax, dword [esp + 0xb4]
mov ecx, dword [esp + 0xb8]
mov dword [esp + 0x2c], eax
mov dword [esp + 0xc], ecx
jne 0x42eff0
mov eax, dword [esp + 0x8c]
mov ecx, dword [esp + 0x80]
mov edx, dword [esp + 0x30]
cmp word [eax + esi], 1
cmove ecx, dword [esp + 0xc]
cmove edx, edi
mov dword [esp + 0x30], edx
mov edx, dword [esp + 0x40]
mov dword [esp + 0x80], ecx
mov ecx, dword [esp + 0x24]
cmove edx, dword [esp + 0x2c]
cmove ecx, dword [esp + 0x28]
add esi, 4
cmp dword [esp + 0x20], esi
mov dword [esp + 0x40], edx
mov dword [esp + 0x24], ecx
jne 0x42ee94
mov eax, dword [esp + 0x24]
xor eax, 0x2e
or eax, dword [esp + 0x40]
je 0x42f9aa
mov eax, dword [esp + 0x14]
cmp eax, dword [esp + 0x110]
jne 0x42ef89
mov edx, dword [esp + 0x14]
lea ecx, [esp + 0x110]
call dbg.reserve_for_push<gimli::read::unit::AttributeValue<gimli::read::endian_slice::EndianSlice<gimli::endianity::LittleEndian>, usize>, alloc::alloc::Global>
mov eax, dword [esp + 0x114]
mov ecx, dword [esp + 0x118]
mov dword [esp + 0xe0], eax
mov dword [esp + 0x14], ecx
mov ecx, dword [esp + 0x14]
mov edx, dword [esp + 0xe0]
mov esi, dword [esp + 0x24]
mov eax, ecx
inc ecx
shl eax, 4
mov dword [esp + 0x14], ecx
mov dword [edx + eax], esi
mov esi, dword [esp + 0x40]
mov dword [edx + eax + 4], esi
mov esi, dword [esp + 0x80]
mov dword [edx + eax + 8], esi
mov esi, dword [esp + 0x30]
mov dword [edx + eax + 0xc], esi
mov esi, dword [esp + 0x124]
mov edx, dword [esp + 0xe4]
mov dword [esp + 0x118], ecx
cmp esi, dword [esp + 0x44]
sbb edx, dword [esp + 0x68]
jb 0x42ee72
mov dword [esp + 0x80], 0
jmp 0x42f053
mov esi, dword [esp + 0x28]
mov eax, dword [esp + 0xc]
mov dword [esp + 0x64], edi
xor ebx, ebx
shr esi, 8
mov dword [esp + 0x60], eax
jmp 0x42eda1
mov dword [esp + 0x48], 0
mov dword [esp + 0x4c], 8
mov dword [esp + 0x50], 0
mov dword [esp + 0x80], 0
jmp 0x42f258
mov dword [esp + 0x8c], 2
mov dword [esp + 0x128], 0
mov dword [esp + 0x88], 0
cmp word [esp + 0x190], 5
mov dword [esp + 0x48], 0
mov dword [esp + 0x4c], 8
mov dword [esp + 0x50], 0
jae 0x42f258
cmp dword [esp + 0x70], 0
mov eax, 0x2e
mov ecx, 0x1f
cmove ecx, eax
mov eax, dword [esp + 0x34]
mov dword [esp + 0x40], ecx
mov dword [esp + 0xc], eax
mov eax, dword [esp + 0x38]
test eax, eax
je 0x42f8e2
mov ecx, dword [esp + 0xc]
xor esi, esi
mov dword [esp + 0x24], 0
mov dword [esp + 0x44], 8
add ecx, eax
mov edx, dword [esp + 0x30]
mov edi, dword [esp + 0xc]
xor ebx, ebx
mov dword [esp + 0x2c], edx
mov dword [esp + 0x30], edi
mov edx, dword [esp + 0x30]
cmp byte [edx + ebx], 0
je 0x42f0ea
mov edx, dword [esp + 0x30]
lea edx, [edx + ebx + 1]
inc ebx
cmp edx, ecx
jne 0x42f0ce
jmp 0x42f38c
mov ecx, ebx
not ecx
add ecx, eax
mov eax, dword [esp + 0x30]
test ebx, ebx
lea eax, [eax + ebx + 1]
mov dword [esp + 0x34], eax
mov dword [esp + 0x38], ecx
je 0x42f96d
lea ecx, [esp + 0xa8]
lea edx, [esp + 0x34]
push ebx
push dword [esp + 0x34]
call sym.gimli::read::line::FileEntry_LT_R_C_Offset_GT_::parse::he648e7eb36f2e252
add esp, 8
mov ebx, dword [esp + 0xa8]
mov ecx, dword [esp + 0xac]
mov edx, dword [esp + 0xb4]
mov edi, dword [esp + 0xbc]
mov eax, ebx
mov dword [esp + 0x68], ecx
mov dword [esp + 0x2c], edx
xor eax, 0x2e
or eax, ecx
mov eax, dword [esp + 0xb0]
mov ecx, dword [esp + 0xb8]
mov dword [esp + 0x28], eax
mov dword [esp + 0xc], ecx
je 0x42f98a
lea eax, [esp + 0xc0]
cmp esi, dword [esp + 0x48]
movsd xmm1, qword [eax + 0x10]
movq xmm0, qword [eax + 0x18]
movsd xmm2, qword [eax]
movsd qword [esp + 0xf8], xmm1
movq xmm1, qword [eax + 8]
movq qword [esp + 0x100], xmm0
movsd qword [esp + 0xe8], xmm2
movq qword [esp + 0xf0], xmm1
jne 0x42f1c2
lea ecx, [esp + 0x48]
mov edx, esi
call dbg.reserve_for_push<gimli::read::line::FileEntry<gimli::read::endian_slice::EndianSlice<gimli::endianity::LittleEndian>, usize>, alloc::alloc::Global>
mov eax, dword [esp + 0x4c]
mov esi, dword [esp + 0x50]
mov dword [esp + 0x44], eax
mov edx, esi
imul eax, esi, 0x38
mov esi, dword [esp + 0x44]
mov ecx, dword [esp + 0x68]
inc edx
mov dword [esi + eax + 4], ecx
mov ecx, dword [esp + 0x28]
mov dword [esi + eax], ebx
mov dword [esi + eax + 8], ecx
mov ecx, dword [esp + 0x2c]
mov dword [esi + eax + 0xc], ecx
mov ecx, dword [esp + 0xc]
mov dword [esi + eax + 0x10], ecx
mov dword [esi + eax + 0x14], edi
movsd xmm0, qword [esp + 0xe8]
movq xmm1, qword [esp + 0xf0]
movsd qword [esi + eax + 0x18], xmm0
movq qword [esi + eax + 0x20], xmm1
movsd xmm0, qword [esp + 0xf8]
movsd qword [esi + eax + 0x28], xmm0
movq xmm0, qword [esp + 0x100]
movq qword [esi + eax + 0x30], xmm0
mov esi, edx
mov dword [esp + 0x50], edx
mov edx, dword [esp + 0x30]
mov ecx, dword [esp + 0x34]
mov eax, dword [esp + 0x38]
mov dword [esp + 0x2c], edx
mov dword [esp + 0xc], ecx
add ecx, eax
test eax, eax
jne 0x42f0bc
jmp 0x42f8e2
lea ecx, [esp + 0xa8]
lea edx, [esp + 0x34]
call sym.gimli::read::line::FileEntryFormat::parse::he0b5eaddd6418ceb
movzx eax, byte [esp + 0xa8]
cmp al, 0x4b
mov dword [esp + 0x28], eax
jne 0x42f343
mov ecx, dword [esp + 0x34]
mov eax, dword [esp + 0xac]
mov edx, dword [esp + 0xb0]
mov dword [esp + 0xc], ecx
mov ecx, dword [esp + 0x38]
mov dword [esp + 0x44], eax
mov dword [esp + 0x30], edx
test ecx, ecx
je 0x42f384
mov eax, ecx
mov ecx, dword [esp + 0xb4]
mov esi, dword [esp + 0xc]
mov dword [esp + 0x24], 0
mov dword [esp + 0x40], 0
mov ebx, 0
mov dword [esp + 0x68], ecx
lea ecx, [esi + eax]
neg eax
inc esi
mov dword [esp + 0x2c], ecx
mov dword [esp + 0x10], eax
xor ecx, ecx
movzx eax, byte [esi - 1]
cmp ecx, 0x3f
mov edx, esi
mov byte [esp + 0x70], al
jne 0x42f2f6
cmp byte [esp + 0x70], 2
jae 0x42f399
movzx eax, byte [esp + 0x70]
xor edi, edi
mov edx, eax
and dl, 0x7f
movzx edx, dl
shld edi, edx, cl
shl edx, cl
test cl, 0x20
cmovne edi, edx
cmovne edx, ebx
or dword [esp + 0x40], edi
or dword [esp + 0x24], edx
test al, al
jns 0x42f3cb
add ecx, 7
inc esi
inc dword [esp + 0x10]
jne 0x42f2dc
mov eax, dword [esp + 0x2c]
mov dword [esp + 0x34], eax
mov dword [esp + 0x38], 0
mov dword [esp + 0xc], eax
jmp 0x42f384
movzx eax, byte [esp + 0xab]
movzx esi, word [esp + 0xa9]
mov edi, dword [esp + 0xb4]
mov bl, 1
shl eax, 0x10
or esi, eax
mov eax, dword [esp + 0xac]
mov dword [esp + 0x2c], eax
mov eax, dword [esp + 0xb0]
mov dword [esp + 0x60], eax
mov dword [esp + 0xc], eax
mov dword [esp + 0x64], edi
jmp 0x42f923
mov al, 0x13
mov dword [esp + 0x28], eax
jmp 0x42f3ad
mov eax, dword [esp + 0x30]
mov dword [esp + 0xc], eax
jmp 0x42f8e2
mov eax, dword [esp + 0x10]
mov dword [esp + 0x34], esi
not eax
mov dword [esp + 0x38], eax
mov al, 6
mov dword [esp + 0x28], eax
mov eax, dword [esp + 0xc]
movzx esi, byte [esp + 0x70]
xor edi, edi
xor ebx, ebx
mov dword [esp + 0x60], eax
mov dword [esp + 0x64], 0
jmp 0x42f923
mov ecx, dword [esp + 0x24]
mov eax, dword [esp + 0x10]
mov dword [esp + 0x34], esi
or ecx, dword [esp + 0x40]
not eax
mov dword [esp + 0x38], eax
je 0x42f840
cmp dword [esp + 0x68], 0
je 0x42f9b9
movzx eax, byte [esp + 0x3f]
movzx ecx, byte [esp + 0x18]
mov dword [esp + 0x10c], 0
mov dword [esp + 0x154], 8
mov dword [esp + 0x15c], 0
mov dword [esp + 0x158], 0
shl eax, 8
lea ebx, [eax + ecx + 0x50000]
mov eax, dword [esp + 0x68]
lea eax, [eax*4]
mov dword [esp + 0x124], eax
add dword [esp + 0x15c], 1
pxor xmm0, xmm0
mov dword [esp + 0xe4], 0x2e
mov dword [esp + 0xe0], 0
mov dword [esp + 0x160], 0
mov dword [esp + 0x70], 0
mov dword [esp + 0x10], 0
mov dword [esp + 0x98], 0
mov dword [esp + 0x94], 0
mov dword [esp + 0xa0], 0
mov dword [esp + 0x9c], 0
movdqa xmmword [esp + 0x300], xmm0
adc dword [esp + 0x158], 0
xor esi, esi
jmp 0x42f4f8
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x20]
mov dword [esp + 0x70], eax
mov dword [esp + 0x10], ecx
add esi, 4
cmp dword [esp + 0x124], esi
je 0x42f747
mov eax, dword [esp + 0x10]
mov dword [esp + 0x20], eax
mov eax, dword [esp + 0x70]
mov dword [esp + 0x14], eax
mov eax, dword [esp + 0x30]
movzx eax, word [eax + esi + 2]
lea ecx, [esp + 0xa8]
lea edx, [esp + 0x34]
push eax
push ebx
call sym.gimli::read::line::parse_attribute::hd73ed31c268fe8b3
add esp, 8
mov eax, dword [esp + 0xa8]
mov ecx, dword [esp + 0xb0]
mov edi, dword [esp + 0xbc]
or eax, dword [esp + 0xac]
mov dword [esp + 0x28], ecx
mov eax, dword [esp + 0xb4]
mov ecx, dword [esp + 0xb8]
mov dword [esp + 0x2c], eax
mov dword [esp + 0xc], ecx
jne 0x42f90e
mov eax, dword [esp + 0x30]
movzx ecx, word [eax + esi]
dec ecx
cmp ecx, 4
ja 0x42f4d8
mov ecx, dword [ecx*4 + 0x42fbf0]
mov eax, dword [esp + 0xc]
add ecx, dword [esp + 0x1c]
shr eax, 8
jmp ecx
mov eax, dword [esp + 0xe4]
xor eax, 0x2e
or eax, dword [esp + 0xe0]
je 0x42f9b9
mov eax, dword [esp + 0x10c]
cmp eax, dword [esp + 0x48]
jne 0x42f791
mov edx, dword [esp + 0x10c]
lea ecx, [esp + 0x48]
call dbg.reserve_for_push<gimli::read::line::FileEntry<gimli::read::endian_slice::EndianSlice<gimli::endianity::LittleEndian>, usize>, alloc::alloc::Global>
mov eax, dword [esp + 0x4c]
mov ecx, dword [esp + 0x50]
mov dword [esp + 0x154], eax
mov dword [esp + 0x10c], ecx
mov ecx, dword [esp + 0x10c]
mov edx, dword [esp + 0x154]
mov esi, dword [esp + 0xe0]
movdqa xmm0, xmmword [esp + 0x300]
imul eax, ecx, 0x38
inc ecx
mov dword [edx + eax + 4], esi
mov esi, dword [esp + 0xe4]
mov dword [esp + 0x10c], ecx
mov dword [edx + eax], esi
mov esi, dword [esp + 0x1b4]
mov dword [edx + eax + 8], esi
mov esi, dword [esp + 0x160]
mov dword [edx + eax + 0xc], esi
mov esi, dword [esp + 0x70]
mov dword [edx + eax + 0x10], esi
mov esi, dword [esp + 0x10]
mov dword [edx + eax + 0x14], esi
mov esi, dword [esp + 0x94]
mov dword [edx + eax + 0x1c], esi
mov esi, dword [esp + 0x98]
mov dword [edx + eax + 0x18], esi
mov esi, dword [esp + 0x9c]
mov dword [edx + eax + 0x24], esi
mov esi, dword [esp + 0xa0]
mov dword [edx + eax + 0x20], esi
mov esi, dword [esp + 0x15c]
movdqu xmmword [edx + eax + 0x28], xmm0
mov edx, dword [esp + 0x158]
mov dword [esp + 0x50], ecx
cmp esi, dword [esp + 0x24]
sbb edx, dword [esp + 0x40]
jb 0x42f444
mov dword [esp + 0x24], 0
mov dword [esp + 0x40], 0x2e
mov dword [esp + 0x10], 0
movsd xmm0, qword [esp + 0x110]
mov eax, dword [esp + 0x6c]
mov edx, dword [esp + 0x118]
mov ecx, dword [esp + 0x50]
mov ebx, dword [esp + 0x58]
mov esi, dword [esp + 0x138]
movsd qword [esp + 0x140], xmm0
movsd xmm0, qword [esp + 0x48]
add eax, dword [esp + 0x12c]
mov dword [esp + 0x148], edx
mov edx, dword [esp + 0x80]
mov dword [esp + 0x1b0], ecx
movsd qword [esp + 0x1a8], xmm0
xorps xmm0, xmm0
mov dword [esp + 0x6c], eax
movaps xmmword [esp + 0x170], xmm0
movaps xmmword [esp + 0x180], xmm0
mov eax, dword [esp + 0x1d0]
xor eax, 0x2f
or eax, dword [esp + 0x1d4]
jne 0x42e0dd
jmp 0x42e167
mov eax, dword [esp + 0xc]
mov dword [esp + 0x30], 2
xor edi, edi
mov dword [esp + 0x60], eax
mov al, 0x13
mov dword [esp + 0x64], 0
mov dword [esp + 0x28], eax
mov dword [esp + 0x44], 0
xor ebx, ebx
jmp 0x42f923
mov esi, dword [esp + 0x28]
mov eax, dword [esp + 0xc]
xor ebx, ebx
mov dword [esp + 0x60], eax
shr esi, 8
mov dword [esp + 0x64], edi
mov eax, dword [esp + 0x48]
test eax, eax
je 0x42f93d
imul eax, eax, 0x38
push 8
push eax
push dword [esp + 0x54]
call sym.___rust_dealloc
add esp, 0xc
cmp dword [esp + 0x44], 0
sete al
or bl, al
je 0x42f950
xor ebx, ebx
jmp 0x42eda1
mov eax, dword [esp + 0x44]
shl eax, 2
push 2
push eax
push dword [esp + 0x38]
call sym.___rust_dealloc
add esp, 0xc
xor ebx, ebx
jmp 0x42eda1
mov dword [esp + 0x30], 2
mov dword [esp + 0x44], 0
mov dword [esp + 0x68], 0
jmp 0x42f858
mov esi, dword [esp + 0x28]
mov eax, dword [esp + 0xc]
mov dword [esp + 0x30], 2
shr esi, 8
mov dword [esp + 0x60], eax
mov dword [esp + 0x64], edi
jmp 0x42f902
push 0x4bd874
call sym.core::option::unwrap_failed::hef9527eb823b8d2a
add esp, 4
jmp 0x42f9c6
push 0x4bd864
call sym.core::option::unwrap_failed::hef9527eb823b8d2a
add esp, 4
ud2