Function at 0x1007ba70
Capabilities:
Resolve function by parsing pe exports

Disassembly:
push ebp
mov ebp, esp
push ebx
push edi
push esi
and esp, 0xfffffff0
sub esp, 0x1f0
mov eax, dword [ebp + 8]
mov ebx, ecx
mov esi, edx
call 0x1007ba8b
pop edx
movzx ecx, byte [eax]
cmp cl, 0x4b
jne 0x1007c650
mov dword [esp + 0x1c], edx
movzx edx, byte [eax + 8]
mov ecx, dword [eax + 4]
mov eax, dword [eax + 0xc]
mov dword [esp + 0x20], ebx
mov dword [esp + 0x24], esi
mov byte [esp + 0xe4], dl
mov edx, dword [esi + 8]
mov dword [esp + 0x2c], eax
mov dword [esp + 0x58], ecx
cmp dword [edx + 0x120], 2
lea eax, [edx + 0x120]
mov dword [esp + 0x34], edx
jne 0x1007ca4a
mov esi, dword [esp + 0x2c]
mov dword [esp + 0xe8], 0
mov dword [esp + 0xec], 8
mov dword [esp + 0xc0], 0
mov dword [esp + 0xc4], 8
mov dword [esp + 0xf0], 0
mov dword [esp + 0xc8], 0
mov dword [esp + 0x30], eax
mov ecx, dword [esi + 0xf0]
mov edi, dword [esi + 0xc4]
mov edx, dword [esi + 0xc0]
lea eax, [esi + 0xa8]
add ecx, 8
test edi, edi
mov dword [esp + 0x88], edx
mov dword [esp + 0x8c], edi
mov dword [esp + 0x90], eax
mov dword [esp + 0xc], edi
mov dword [esp + 0x94], ecx
mov dword [esp + 0x98], 0
je 0x1007c91e
mov ecx, dword [esp + 0x58]
mov eax, dword [esi + 0x100]
mov edx, dword [esi + 0xc8]
xor ebx, ebx
mov dword [esp + 0xd4], 8
mov dword [esp + 0x5c], 0
mov dword [esp + 0x10], 0
mov edi, dword [ecx + 0x64]
mov dword [esp + 0xbc], eax
mov dword [esp + 0x84], edx
mov dword [esp + 0x14c], edi
sub edi, eax
mov eax, 0
mov dword [esp + 0x140], edi
mov edi, edx
and edi, 0xff00
mov dword [esp + 0x13c], edi
mov edi, edx
shr edi, 0x10
mov dword [esp + 0x130], edi
xor edi, edi
cmp edx, 0x50000
mov edx, ecx
setae bl
cmovb eax, dword [esp + 0xbc]
test byte [ecx + 0x78], 1
mov dword [esp + 0x12c], ebx
cmove eax, edi
mov edi, dword [esi + 0xf8]
mov dword [esp + 0x148], eax
mov eax, dword [ecx + 0xc]
mov ecx, dword [ecx + 0x60]
mov dword [esp + 0x108], edi
mov dword [esp + 0x104], eax
sub eax, edi
mov dword [esp + 0x124], ecx
mov dword [esp + 0xd0], eax
mov eax, ebx
shl eax, 3
mov dword [esp + 0x138], eax
mov eax, dword [esi + 0xe8]
mov dword [esp + 0x128], eax
mov eax, dword [esp + 0xbc]
add eax, ecx
mov ecx, dword [esp + 0x84]
mov dword [esp + 0x110], eax
movzx eax, ch
mov dword [esp + 0x144], eax
mov eax, dword [edx + 8]
mov dword [esp + 0x100], eax
lea eax, [eax + edi]
mov dword [esp + 0xdc], eax
movzx eax, cl
mov dword [esp + 0x114], eax
mov eax, dword [esi + 0xec]
mov dword [esp + 0xfc], eax
lea eax, [ebx*8 + 4]
mov dword [esp + 0x134], eax
mov ecx, dword [esp + 0x90]
xor eax, eax
mov ebx, dword [esp + 0x88]
mov dword [esp + 4], 0
mov dword [esp + 8], edi
cmp byte [ecx + 0x21], 8
mov edx, dword [ecx + 0x1c]
mov esi, dword [ecx + 0x24]
mov dword [esp + 0x14], ebx
sete al
add edx, dword [ecx + 0x18]
add esi, ebx
inc ebx
xor ecx, ecx
lea eax, [esi + eax*8]
xor esi, esi
sub eax, edx
add eax, 4
mov dword [esp + 0xe0], eax
mov eax, dword [esp + 0xc]
neg eax
movzx edx, byte [ebx - 1]
cmp ecx, 0x3f
jne 0x1007bd02
cmp dl, 2
jae 0x1007c68e
mov byte [esp + 0xa0], dl
xor edi, edi
mov dword [esp + 0x18], eax
mov eax, esi
mov esi, 0
movzx edx, byte [esp + 0xa0]
and dl, 0x7f
movzx edx, dl
shld edi, edx, cl
shl edx, cl
test cl, 0x20
cmovne edi, edx
cmovne edx, esi
mov esi, eax
or esi, edx
movzx edx, byte [esp + 0xa0]
or dword [esp + 4], edi
test dl, dl
jns 0x1007bd5a
mov eax, dword [esp + 0x18]
mov edi, dword [esp + 8]
add ecx, 7
inc ebx
inc eax
jne 0x1007bcf0
jmp 0x1007c6a2
mov eax, dword [esp + 0x18]
mov ecx, dword [esp + 4]
mov edi, esi
mov dword [esp + 0x88], ebx
not eax
or edi, ecx
mov dword [esp + 0x8c], eax
je 0x1007bed7
mov eax, dword [esp + 0x94]
mov ebx, dword [esp + 0x20]
test ecx, ecx
jne 0x1007bd9e
lea ecx, [esi - 1]
cmp ecx, dword [eax + 8]
jae 0x1007bd9e
imul ecx, ecx, 0x68
add ecx, dword [eax + 4]
jmp 0x1007be88
mov ecx, dword [eax + 0xc]
mov dh, 0x12
test ecx, ecx
je 0x1007c8c9
mov eax, dword [eax + 0x10]
mov edi, dword [esp + 8]
mov dword [esp + 0xf8], eax
movzx eax, word [ecx + 0x4d6]
mov dword [esp + 0x14], ecx
mov ebx, 0xffffffff
xor ecx, ecx
mov dword [esp + 0x120], eax
imul eax, eax, 0x68
mov dword [esp + 0x28], eax
nop dword [eax]
mov eax, dword [esp + 0x28]
add eax, ecx
je 0x1007be49
mov eax, dword [esp + 0x14]
mov edx, dword [eax + ebx*8 + 8]
mov dword [esp + 0x18], edx
mov edx, dword [eax + ebx*8 + 0xc]
xor eax, eax
mov edi, dword [esp + 0x18]
mov dword [esp + 0xc], edx
xor edx, dword [esp + 4]
xor edi, esi
or edi, edx
mov edx, dword [esp + 4]
mov edi, dword [esp + 8]
setne al
cmp esi, dword [esp + 0x18]
sbb edx, dword [esp + 0xc]
mov edx, 0xff
cmovb eax, edx
movzx edx, byte [esp + 0xa0]
inc ebx
add ecx, 0xffffff98
cmp al, 1
je 0x1007bde0
movzx eax, al
test eax, eax
je 0x1007be79
mov eax, dword [esp + 0xf8]
mov ecx, dword [esp + 0x14]
jmp 0x1007be5b
mov ebx, dword [esp + 0x120]
mov ecx, dword [esp + 0x14]
mov eax, dword [esp + 0xf8]
mov dh, 0x12
sub eax, 1
jb 0x1007c7e2
mov ecx, dword [ecx + ebx*4 + 0x4d8]
mov dword [esp + 0xf8], eax
jmp 0x1007bdb9
mov eax, dword [esp + 0x14]
mov ebx, dword [esp + 0x20]
sub eax, ecx
add eax, 0xfffffff0
mov ecx, eax
cmp byte [ecx + 0x62], 1
jne 0x1007be95
inc dword [esp + 0x98]
cmp word [ecx + 0x60], 0x2e
mov dword [esp + 8], ecx
jne 0x1007bee2
push ecx
call sym.__LT_gimli..read..abbrev..Attributes_u20_as_u20_core..ops..deref..Deref_GT_::deref::hae5686a143e62adf
add esp, 4
test edx, edx
je 0x1007bf1f
mov edi, eax
shl edx, 4
mov dword [esp + 0x18], 0
mov dword [esp + 0xc], 0
mov dword [esp + 0x14], 0
mov dword [esp + 4], 0
jmp 0x1007bf6c
dec dword [esp + 0x98]
xor edi, edi
jmp 0x1007bf23
push ecx
call sym.__LT_gimli..read..abbrev..Attributes_u20_as_u20_core..ops..deref..Deref_GT_::deref::hae5686a143e62adf
add esp, 4
mov esi, dword [esp + 0x90]
mov edi, edx
lea ecx, [esp + 0x150]
lea edx, [esp + 0x88]
push edi
push eax
push dword [esi + 0x20]
call sym.gimli::read::unit::skip_attributes::h1bfae63549a103ef
add esp, 0xc
movzx eax, byte [esp + 0x150]
cmp al, 0x4b
jne 0x1007c8d2
mov edi, dword [esp + 8]
mov eax, dword [esp + 0x8c]
test eax, eax
mov dword [esp + 0xc], eax
jne 0x1007bca4
jmp 0x1007c7e7
add eax, dword [esp + 0x148]
mov edx, 1
mov dword [esp + 0x10c], eax
mov dword [esp + 4], edx
mov dword [esp + 0xd8], edx
mov edx, dword [esp + 0xa0]
add edi, 0x10
add edx, 0xfffffff0
je 0x1007c2b7
movq xmm0, qword [edi]
movq xmm1, qword [edi + 8]
mov eax, dword [esp + 0x90]
mov dword [esp + 0xa0], edx
movq qword [esp + 0x40], xmm1
movq qword [esp + 0x38], xmm0
lea esi, [esp + 0x38]
lea ecx, [esp + 0x150]
lea edx, [esp + 0x88]
push esi
push dword [eax + 0x20]
call sym.gimli::read::unit::parse_attribute::hdd3cf4e0ff72c012
add esp, 8
mov eax, dword [esp + 0x150]
xor eax, 0x2e
or eax, dword [esp + 0x154]
je 0x1007c7bf
movzx eax, word [esp + 0x160]
cmp eax, 0x11
je 0x1007c125
mov esi, dword [esp + 0xf4]
cmp eax, 0x12
je 0x1007c086
cmp eax, 0x55
jne 0x1007bf59
lea ecx, [esp + 0x38]
lea edx, [esp + 0x150]
call sym.gimli::read::unit::Attribute_LT_R_GT_::value::h43a21af532bb1013
mov ecx, dword [esp + 0x38]
mov eax, dword [esp + 0x40]
mov edx, ecx
and dl, 0x3f
cmp dl, 0x16
je 0x1007bf3b
xor edx, edx
cmp ecx, 0x18
jne 0x1007bf4e
mov ecx, dword [esp + 0x14c]
cmp ecx, dword [esp + 0xbc]
jb 0x1007d86b
mul dword [esp + 0x144]
jo 0x1007d876
mov ecx, dword [esp + 0x140]
mov edx, dword [esp + 0xd8]
sub ecx, eax
jb 0x1007d87a
add eax, dword [esp + 0x110]
cmp dword [esp + 0x13c], 0x800
jne 0x1007c207
cmp ecx, 8
jb 0x1007d885
cmp dword [eax + 4], 0
je 0x1007c210
jmp 0x1007d8c5
lea ecx, [esp + 0x70]
lea edx, [esp + 0x150]
call sym.gimli::read::unit::Attribute_LT_R_GT_::value::h43a21af532bb1013
mov eax, dword [esp + 0x70]
test al, 0x3f
je 0x1007c1fa
cmp eax, 7
je 0x1007c1d2
cmp eax, 0xc
jne 0x1007c1ee
mov eax, dword [esp + 0x104]
cmp eax, dword [esp + 0x108]
jb 0x1007c8f9
mov eax, dword [esp + 0x78]
mul dword [esp + 0x114]
jo 0x1007c902
mov edx, dword [esp + 0xd0]
sub edx, eax
jb 0x1007c909
movzx esi, byte [esp + 0x84]
dec esi
cmp esi, 7
ja 0x1007d8f0
mov esi, dword [esi*4 + 0x1007daf8]
mov ecx, dword [esp + 0xdc]
add esi, dword [esp + 0x1c]
add ecx, eax
jmp esi
lea ecx, [esp + 0x70]
lea edx, [esp + 0x150]
call sym.gimli::read::unit::Attribute_LT_R_GT_::value::h43a21af532bb1013
mov eax, dword [esp + 0x70]
test al, 0x3f
je 0x1007c1b7
cmp eax, 0xc
jne 0x1007bf59
mov eax, dword [esp + 0x104]
cmp eax, dword [esp + 0x108]
jb 0x1007c8f9
mov eax, dword [esp + 0x78]
mul dword [esp + 0x114]
jo 0x1007c902
mov edx, dword [esp + 0xd0]
sub edx, eax
jb 0x1007c909
movzx esi, byte [esp + 0x84]
dec esi
cmp esi, 7
ja 0x1007d8f0
mov esi, dword [esi*4 + 0x1007db18]
mov ecx, dword [esp + 0xdc]
add esi, dword [esp + 0x1c]
add ecx, eax
jmp esi
mov eax, dword [esp + 0x78]
mov dword [esp + 0xb8], eax
mov eax, dword [esp + 0x7c]
mov dword [esp + 0xb4], eax
jmp 0x1007c268
mov eax, dword [esp + 0x78]
mov dword [esp + 0x11c], eax
mov eax, dword [esp + 0x7c]
mov dword [esp + 0x118], eax
mov al, 1
mov dword [esp + 0x14], eax
mov dword [esp + 0xf4], esi
jmp 0x1007bf59
mov eax, dword [esp + 0x78]
mov esi, dword [esp + 0x7c]
jmp 0x1007c29e
cmp ecx, 4
jb 0x1007d885
mov eax, dword [eax]
mov edx, 1
add eax, dword [esp + 0xbc]
jmp 0x1007bf47
mov al, 1
mov dword [esp + 0x18], eax
jmp 0x1007bf59
mov dword [esp + 0xcc], eax
mov al, 1
mov dword [esp + 0xf4], esi
mov dword [esp + 0xc], eax
jmp 0x1007bf59
test byte [esp + 4], 1
je 0x1007c3ba
mov eax, dword [esp + 0x58]
mov ecx, dword [esp + 0x134]
mov edx, dword [esp + 0x138]
mov edi, dword [esp + 8]
mov ecx, dword [eax + ecx + 0x58]
mov eax, dword [eax + edx + 0x58]
mov edx, dword [esp + 0x10c]
sub ecx, edx
jb 0x1007d958
add eax, edx
mov edx, dword [esp + 0x128]
mov dword [esp + 0x150], edx
mov edx, dword [esp + 0xfc]
mov dword [esp + 0x154], edx
mov edx, dword [esp + 0x100]
mov dword [esp + 0x158], edx
mov edx, dword [esp + 0x104]
mov dword [esp + 0x15c], edx
mov edx, dword [esp + 0x108]
mov dword [esp + 0x160], edx
mov edx, dword [esp + 0x84]
mov word [esp + 0x164], dx
mov edx, dword [esp + 0x130]
mov word [esp + 0x166], dx
mov dword [esp + 0x168], eax
mov eax, dword [esp + 0x12c]
mov dword [esp + 0x16c], ecx
mov byte [esp + 0x170], al
mov byte [esp + 0x173], 0
mov word [esp + 0x171], 0
lea ecx, [esp + 0x38]
lea edx, [esp + 0x150]
call sym.gimli::read::rnglists::RngListIter_LT_R_GT_::next::hb9c1b088416d1196
mov eax, dword [esp + 0x38]
mov ecx, dword [esp + 0x3c]
mov edx, eax
xor edx, 2
or edx, ecx
jne 0x1007c431
mov edx, dword [esp + 0x40]
cmp dl, 0x4b
je 0x1007c5ac
jmp 0x1007d962
test byte [esp + 0x18], 1
mov edi, dword [esp + 8]
je 0x1007bf23
test byte [esp + 0xc], 1
je 0x1007c505
mov esi, dword [esp + 0xcc]
mov eax, dword [esp + 0xb4]
mov ecx, dword [esp + 0xf4]
cmp dword [esp + 0xb8], esi
sbb eax, ecx
jae 0x1007bf23
mov eax, dword [esp + 0x5c]
mov edi, ecx
cmp eax, dword [esp + 0xc0]
jne 0x1007c563
lea ecx, [esp + 0xc0]
call sym.alloc::raw_vec::RawVec_LT_T_C_A_GT_::grow_one::h6ce8d1c18b6b955c
mov eax, dword [esp + 0xc4]
mov esi, dword [esp + 0xcc]
mov edi, dword [esp + 0xf4]
jmp 0x1007c55c
xor edx, edx
mov dh, dl
mov dword [esp + 4], edx
jmp 0x1007c496
mov edx, dword [esp + 0x5c]
mov esi, dword [esp + 0xd4]
movdqa xmm0, xmmword [esp + 0xa0]
mov ecx, dword [esp + 0x10]
lea eax, [edx + edx*2]
inc edx
movdqu xmmword [esi + eax*8], xmm0
mov dword [esi + eax*8 + 0x10], ecx
mov ah, 1
mov dword [esp + 0x5c], edx
mov dword [esp + 0xc8], edx
mov dword [esp + 4], eax
lea ecx, [esp + 0x38]
lea edx, [esp + 0x150]
call sym.gimli::read::rnglists::RngListIter_LT_R_GT_::next::hb9c1b088416d1196
mov eax, dword [esp + 0x38]
mov ecx, dword [esp + 0x3c]
mov edx, eax
xor edx, 2
or edx, ecx
je 0x1007c3a8
xor eax, 1
or eax, ecx
jne 0x1007c5a8
movdqu xmm1, xmmword [esp + 0x40]
pshufd xmm0, xmm1, 0x55
pshufd xmm2, xmm1, 0xff
movd ecx, xmm1
movdqa xmmword [esp + 0xa0], xmm1
pshufd xmm1, xmm1, 0xee
movd esi, xmm1
movd eax, xmm0
movd edx, xmm2
cmp ecx, esi
sbb eax, edx
jae 0x1007c471
mov eax, dword [esp + 0x5c]
cmp eax, dword [esp + 0xc0]
jne 0x1007c43b
lea ecx, [esp + 0xc0]
call sym.alloc::raw_vec::RawVec_LT_T_C_A_GT_::grow_one::h6ce8d1c18b6b955c
mov eax, dword [esp + 0xc4]
mov dword [esp + 0xd4], eax
jmp 0x1007c43b
test byte [esp + 0x14], 1
je 0x1007bf23
mov eax, dword [esp + 0xb8]
mov ecx, dword [esp + 0xb4]
mov esi, eax
mov edi, ecx
add esi, dword [esp + 0x11c]
adc edi, dword [esp + 0x118]
cmp eax, esi
mov eax, ecx
sbb eax, edi
jae 0x1007bf1f
mov eax, dword [esp + 0x5c]
cmp eax, dword [esp + 0xc0]
jne 0x1007c563
lea ecx, [esp + 0xc0]
call sym.alloc::raw_vec::RawVec_LT_T_C_A_GT_::grow_one::h6ce8d1c18b6b955c
mov eax, dword [esp + 0xc4]
mov dword [esp + 0xd4], eax
mov edx, dword [esp + 0x5c]
mov ebx, dword [esp + 0xd4]
mov ecx, dword [esp + 0xb4]
lea eax, [edx + edx*2]
inc edx
mov dword [ebx + eax*8 + 4], ecx
mov ecx, dword [esp + 0xb8]
mov dword [esp + 0x5c], edx
mov dword [ebx + eax*8], ecx
mov dword [ebx + eax*8 + 0xc], edi
mov dword [ebx + eax*8 + 8], esi
mov esi, dword [esp + 0x10]
mov edi, dword [esp + 8]
mov dword [ebx + eax*8 + 0x10], esi
mov dword [esp + 0xc8], edx
jmp 0x1007c5b5
mov edx, dword [esp + 4]
test dh, 1
je 0x1007bf23
mov ecx, dword [esp + 0x10]
mov eax, dword [esp + 0xe0]
cmp ecx, dword [esp + 0xe8]
mov dword [esp + 0x150], eax
mov dword [esp + 0x158], 2
jne 0x1007c5e7
lea ecx, [esp + 0xe8]
call sym.alloc::raw_vec::RawVec_LT_T_C_A_GT_::grow_one::ha401fd3271f3d24d
mov edx, dword [esp + 0x10]
mov eax, dword [esp + 0xec]
movsd xmm0, qword [esp + 0x170]
lea ecx, [edx + edx*4]
inc edx
movsd qword [eax + ecx*8 + 0x20], xmm0
mov dword [esp + 0x10], edx
movsd xmm0, qword [esp + 0x168]
movsd qword [eax + ecx*8 + 0x18], xmm0
movsd xmm0, qword [esp + 0x160]
movsd qword [eax + ecx*8 + 0x10], xmm0
movq xmm0, qword [esp + 0x150]
movq xmm1, qword [esp + 0x158]
movq qword [eax + ecx*8 + 8], xmm1
movq qword [eax + ecx*8], xmm0
mov dword [esp + 0xf0], edx
jmp 0x1007bf23
movzx edx, byte [eax + 3]
mov esi, dword [eax + 4]
mov byte [ebx + 0xb], dl
movzx edx, word [eax + 1]
mov word [ebx + 9], dx
movzx edx, word [eax + 9]
mov word [ebx + 0x11], dx
movzx edx, byte [eax + 0xb]
mov byte [ebx + 0x13], dl
movzx edx, byte [eax + 8]
mov eax, dword [eax + 0xc]
mov byte [ebx + 8], cl
mov dword [ebx + 0xc], esi
mov byte [ebx + 0x10], dl
mov dword [ebx + 0x14], eax
mov eax, 1
jmp 0x1007d0f9
not eax
mov dword [esp + 0x88], ebx
mov dh, 6
mov dword [esp + 0x8c], eax
jmp 0x1007c6c0
mov ecx, dword [esp + 0x14]
xor eax, eax
mov dh, 0x13
add ecx, dword [esp + 0xc]
mov dword [esp + 0x88], ecx
mov dword [esp + 0x8c], 0
mov ebx, dword [esp + 0x20]
mov byte [esp + 0x40], dh
mov byte [esp + 0x41], dl
mov dword [esp + 0x44], edi
mov dword [esp + 0x48], ecx
mov dword [esp + 0x4c], eax
mov eax, dword [esp + 0xc0]
mov dword [esp + 0x38], 1
test eax, eax
je 0x1007c703
shl eax, 3
lea eax, [eax + eax*2]
push 8
push eax
push dword [esp + 0xcc]
call sym.___rust_dealloc
add esp, 0xc
mov esi, dword [esp + 0xec]
cmp dword [esp + 0x10], 0
je 0x1007c76c
lea edi, [esi + 0x18]
jmp 0x1007c729
add edi, 0x28
dec dword [esp + 0x10]
je 0x1007c76c
mov eax, dword [edi - 0x10]
cmp eax, 2
je 0x1007c720
test eax, eax
jne 0x1007c720
mov eax, dword [edi - 8]
test eax, eax
je 0x1007c750
shl eax, 3
lea eax, [eax + eax*4]
push 8
push eax
push dword [edi - 0xc]
call sym.___rust_dealloc
add esp, 0xc
mov eax, dword [edi]
test eax, eax
je 0x1007c720
shl eax, 3
lea eax, [eax + eax*2]
push 8
push eax
push dword [edi - 4]
call sym.___rust_dealloc
add esp, 0xc
jmp 0x1007c720
mov eax, dword [esp + 0xe8]
test eax, eax
je 0x1007c789
shl eax, 3
lea eax, [eax + eax*4]
push 8
push eax
push esi
call sym.___rust_dealloc
add esp, 0xc
mov eax, dword [esp + 0x30]
mov esi, dword [esp + 0x24]
cmp dword [eax], 2
jne 0x1007ca39
movsd xmm0, qword [esp + 0x48]
movsd qword [eax + 0x10], xmm0
movq xmm0, qword [esp + 0x38]
movq xmm1, qword [esp + 0x40]
movq qword [eax + 8], xmm1
movq qword [eax], xmm0
jmp 0x1007ca46
movq xmm0, qword [esp + 0x158]
movq xmm1, qword [esp + 0x160]
movq qword [esp + 0x48], xmm1
movq qword [esp + 0x40], xmm0
jmp 0x1007c6d8
jmp 0x1007c6a0
mov edx, dword [esp + 0x5c]
cmp edx, 2
jb 0x1007c91e
mov ecx, dword [esp + 0xc4]
cmp edx, 0x15
jae 0x1007c919
lea eax, [edx + edx*2]
lea esi, [ecx + 0x18]
mov edx, ecx
mov dword [esp + 0x18], ecx
lea eax, [ecx + eax*8]
mov dword [esp + 0xa0], eax
xor eax, eax
jmp 0x1007c85c
mov ecx, dword [esp + 0x18]
mov dword [ecx], edi
mov dword [ecx + 4], ebx
mov esi, dword [esp + 4]
movq xmm0, qword [esp + 0x150]
movq xmm1, qword [esp + 0x158]
movq qword [ecx + 8], xmm0
movq qword [ecx + 0x10], xmm1
mov edx, esi
add esi, 0x18
add eax, 0xffffffe8
cmp esi, dword [esp + 0xa0]
je 0x1007c91e
mov edi, dword [edx + 0x18]
mov ebx, dword [edx + 0x1c]
cmp edi, dword [edx]
mov ecx, ebx
sbb ecx, dword [edx + 4]
jae 0x1007c847
movsd xmm0, qword [edx + 0x20]
movsd xmm1, qword [edx + 0x28]
mov edx, eax
mov dword [esp + 4], esi
movsd qword [esp + 0x158], xmm1
movsd qword [esp + 0x150], xmm0
movsd xmm0, qword [esi - 8]
test edx, edx
movsd qword [esi + 0x10], xmm0
movq xmm0, qword [esi - 0x18]
movq xmm1, qword [esi - 0x10]
movq qword [esi + 8], xmm1
movq qword [esi], xmm0
je 0x1007c81e
add edx, 0x18
cmp edi, dword [esi - 0x30]
mov ecx, ebx
sbb ecx, dword [esi - 0x2c]
lea ecx, [esi - 0x18]
mov esi, ecx
jb 0x1007c88d
jmp 0x1007c822
mov edi, dword [esp + 8]
jmp 0x1007c6c4
movq xmm1, qword [esp + 0x158]
movq xmm0, qword [esp + 0x151]
movq qword [esp + 0x48], xmm1
movq qword [esp + 0x41], xmm0
mov byte [esp + 0x40], al
jmp 0x1007c6d8
mov eax, dword [esp + 0x100]
jmp 0x1007c910
mov al, 0x35
jmp 0x1007d92f
mov eax, dword [esp + 0xdc]
mov dword [esp + 0x68], eax
jmp 0x1007d925
call sym.core::slice::sort::stable::driftsort_main::h5fdf21c9dd7bef09
mov eax, dword [esp + 0xe8]
mov edi, dword [esp + 0xf0]
mov edx, dword [esp + 0xec]
cmp eax, edi
jbe 0x1007c973
shl eax, 3
test edi, edi
lea eax, [eax + eax*4]
je 0x1007c97c
lea ecx, [edi*8]
lea esi, [ecx + ecx*4]
push esi
push 8
push eax
push edx
call sym.___rust_realloc
add esp, 0x10
test eax, eax
mov dword [esp + 0xa0], eax
jne 0x1007c993
push esi
push 8
call sym.alloc::raw_vec::handle_error::he63c9115d026ec98
add esp, 8
jmp 0x1007d7d1
mov dword [esp + 0xa0], edx
jmp 0x1007c993
push 8
push eax
push edx
call sym.___rust_dealloc
add esp, 0xc
mov dword [esp + 0xa0], 8
mov eax, dword [esp + 0xc0]
mov ebx, dword [esp + 0xc8]
mov esi, dword [esp + 0xc4]
cmp eax, ebx
jbe 0x1007c9f0
shl eax, 3
test ebx, ebx
lea ecx, [eax + eax*2]
je 0x1007c9f4
lea eax, [ebx*8]
lea eax, [eax + eax*2]
mov dword [esp + 4], eax
push eax
push 8
push ecx
push esi
mov dword [esp + 0x28], ecx
call sym.___rust_realloc
add esp, 0x10
test eax, eax
jne 0x1007ca05
mov ebx, dword [esp + 0x18]
push dword [esp + 4]
push 8
call sym.alloc::raw_vec::handle_error::he63c9115d026ec98
add esp, 8
jmp 0x1007d7d1
mov eax, esi
jmp 0x1007ca05
push 8
push ecx
push esi
call sym.___rust_dealloc
add esp, 0xc
mov eax, 8
mov ecx, dword [esp + 0xa0]
mov dword [esp + 0x3c], ecx
mov dword [esp + 0x40], edi
mov dword [esp + 0x44], eax
mov dword [esp + 0x48], ebx
mov ebx, dword [esp + 0x20]
mov dword [esp + 0x38], 0
mov eax, dword [esp + 0x30]
mov esi, dword [esp + 0x24]
cmp dword [eax], 2
je 0x1007c79a
lea ecx, [esp + 0x38]
call sym.__ZN4core3ptr184drop_in_place_LT_core..result..Result_LT_addr2line..function..Functions_LT_gimli..read..endian_slice..EndianSl
mov eax, dword [esp + 0x30]
mov edx, dword [esp + 0x34]
test byte [eax], 1
je 0x1007ca91
movzx ecx, byte [edx + 0x128]
mov edi, dword [edx + 0x12c]
cmp cl, 0x4b
je 0x1007ca97
mov esi, edx
mov eax, dword [edx + 0x134]
mov edx, dword [edx + 0x130]
mov ch, byte [esi + 0x12b]
mov byte [ebx + 0xb], ch
movzx esi, word [esi + 0x129]
mov word [ebx + 9], si
mov byte [ebx + 8], cl
mov dword [ebx + 0xc], edi
mov dword [ebx + 0x10], edx
jmp 0x1007c681
lea edi, [edx + 0x124]
mov edx, dword [edi + 0xc]
mov eax, dword [esi]
mov ebx, dword [esi + 4]
mov ecx, edi
xor edi, edi
test edx, edx
mov dword [esp + 0xa0], ebx
mov dword [esp + 0x18], eax
je 0x1007cd5b
mov eax, dword [ecx + 8]
cmp edx, 1
mov dword [esp + 0x10], ecx
mov dword [esp + 8], eax
jne 0x1007cc5d
mov eax, dword [esp + 0x18]
mov ecx, dword [esp + 8]
lea edx, [edi + edi*2]
xor edi, edi
mov esi, ebx
cmp eax, dword [ecx + edx*8]
sbb esi, dword [ecx + edx*8 + 4]
jb 0x1007cd5b
cmp eax, dword [ecx + edx*8 + 8]
mov esi, ebx
sbb esi, dword [ecx + edx*8 + 0xc]
jae 0x1007cd5b
mov eax, dword [esp + 0x10]
mov ecx, dword [ecx + edx*8 + 0x10]
mov ebx, dword [esp + 0x20]
mov edx, dword [eax + 4]
cmp ecx, edx
jae 0x1007d99f
mov eax, dword [eax]
lea ecx, [ecx + ecx*4]
cmp dword [eax + ecx*8 + 8], 2
lea esi, [eax + ecx*8]
jne 0x1007cd27
mov edi, dword [esp + 0x2c]
mov edx, dword [eax + ecx*8]
mov dword [esp + 0x30], esi
xor ecx, ecx
movzx eax, byte [edi + 0xc9]
mov esi, dword [edi + 0xcc]
mov dword [esp + 0xbc], edx
cmp al, 8
mov byte [esp + 0x84], al
mov eax, dword [edi + 0xc4]
mov dword [esp + 0xc], esi
sete cl
lea esi, [esi + ecx*8 + 4]
sub esi, eax
sub edx, esi
lea esi, [edi + 0xa8]
mov dword [esp + 4], esi
mov esi, dword [edi + 0xf0]
lea edi, [esi + 8]
mov dword [esp + 0x14], esi
jb 0x1007ccb0
mov esi, eax
sub esi, edx
jbe 0x1007ccb0
mov dword [esp + 8], edi
mov edi, dword [esp + 0x2c]
lea ecx, [ecx*8 + 4]
mov edi, dword [edi + 0xc0]
add edx, edi
add eax, edi
mov edi, dword [esp + 0xbc]
mov dword [esp + 0x38], edx
mov edx, dword [esp + 4]
mov dword [esp + 0x3c], esi
mov esi, dword [esp + 8]
mov dword [esp + 8], 0
mov dword [esp + 4], 0
mov dword [esp + 0x10], eax
sub edi, ecx
xor ecx, ecx
mov dword [esp + 0x40], edx
mov edx, dword [esp + 0x24]
sub edi, dword [esp + 0xc]
mov dword [esp + 0x44], esi
mov dword [esp + 0x48], 0
mov dword [esp + 0xc], 0
mov esi, eax
mov edx, dword [edx + 0xc]
mov dword [esp + 0xe0], edx
nop word [eax + eax]
movzx edx, byte [esi + edi]
cmp ecx, 0x3f
jne 0x1007cc12
cmp dl, 2
jae 0x1007ccc4
mov ebx, edx
mov eax, 0
and bl, 0x7f
movzx esi, bl
xor ebx, ebx
shld ebx, esi, cl
shl esi, cl
test cl, 0x20
cmovne ebx, esi
cmovne esi, eax
mov eax, edx
or dword [esp + 4], ebx
or dword [esp + 8], esi
test al, al
jns 0x1007d152
mov ebx, dword [esp + 0x20]
mov esi, dword [esp + 0x10]
add ecx, 7
inc edi
jne 0x1007cc00
mov ecx, eax
mov al, 0x13
mov edi, esi
mov dword [esp + 0x1c], eax
mov eax, ecx
jmp 0x1007cccc
xor edi, edi
jmp 0x1007cc82
mov ebx, dword [esp + 0xa0]
sub edx, esi
cmp edx, 1
jbe 0x1007caca
mov esi, edx
mov dword [esp + 4], edi
mov ebx, dword [esp + 8]
shr esi, 1
lea ecx, [esi + edi]
mov edi, dword [esp + 0x18]
lea eax, [ecx + ecx*2]
cmp edi, dword [ebx + eax*8]
mov edi, dword [esp + 0xa0]
sbb edi, dword [ebx + eax*8 + 4]
mov edi, dword [esp + 4]
jb 0x1007cc70
mov edi, ecx
jmp 0x1007cc70
mov al, 0x38
xor edx, edx
mov dword [esp + 0xc], 0
mov dword [esp + 0x1c], eax
xor eax, eax
jmp 0x1007cccc
mov al, 6
mov dword [esp + 0x1c], eax
mov eax, edx
mov esi, dword [esp + 0x30]
cmp dword [esi + 8], 2
jne 0x1007cd27
mov dword [esp + 0x14], edx
mov edx, dword [esp + 0xc]
mov ecx, eax
mov eax, 1
mov dword [esp + 8], edi
mov dword [esi + 8], eax
mov dword [esi + 0xc], edi
mov edi, dword [esp + 0x14]
movzx eax, cl
movzx ecx, byte [esp + 0x1c]
shl eax, 8
shl edi, 0x10
or eax, edi
mov edi, dword [esp + 4]
or ecx, eax
mov dword [esi + 0x10], ecx
mov ecx, dword [esp + 8]
mov dword [esi + 0x14], edi
mov dword [esi + 0x18], ecx
mov dword [esi + 0x1c], edx
mov edx, dword [esp + 0x10]
mov ecx, dword [esp + 0x28]
mov dword [esi + 0x20], edx
mov dword [esi + 0x24], ecx
test byte [esi + 8], 1
je 0x1007cd4b
movzx eax, byte [esi + 0x10]
mov ecx, ebx
mov edi, dword [esi + 0x14]
mov ebx, dword [esp + 0xa0]
cmp al, 0x4b
jne 0x1007cfe6
mov eax, dword [esp + 0x18]
jmp 0x1007cd5b
mov eax, dword [esp + 0x18]
mov ebx, dword [esp + 0xa0]
add esi, 0xc
mov edi, esi
mov edx, dword [esp + 0x34]
add eax, 1
mov dword [esp + 0x14], eax
mov eax, ebx
adc eax, 0
mov dword [esp + 0x28], eax
mov eax, dword [edx + 0x10]
xor eax, 0x2f
or eax, dword [edx + 0x14]
jne 0x1007cd86
mov ecx, edi
mov ebx, 2
jmp 0x1007d0d1
cmp dword [edx + 0x108], 2
lea esi, [edx + 0x108]
jne 0x1007ce02
mov eax, dword [esp + 0x34]
lea edx, [eax + 0x10]
lea ebx, [esp + 0x150]
mov ecx, ebx
call sym.__LT_gimli..read..line..LineProgramHeader_LT_R_C_Offset_GT__u20_as_u20_core..clone..Clone_GT_::clone::h980d01ae6650913b
mov edx, dword [esp + 0x34]
lea ecx, [esp + 0x38]
push dword [esp + 0x58]
push ebx
call sym.addr2line::Lines::parse::hc05fdd041898f81e
mov edx, dword [esp + 0x3c]
add esp, 8
cmp dword [edx + 0x108], 2
jne 0x1007cdee
movsd xmm0, qword [esp + 0x48]
movsd qword [esi + 0x10], xmm0
movq xmm0, qword [esp + 0x38]
movq xmm1, qword [esp + 0x40]
movq qword [esi + 8], xmm1
movq qword [esi], xmm0
jmp 0x1007cdfb
lea ecx, [esp + 0x38]
call sym.core::ptr::drop_in_place_LT_core..result..Result_LT_addr2line..Lines_C_gimli..read..Error_GT__GT_::h682e6776e662fdf2
mov edx, dword [esp + 0x34]
mov ebx, dword [esp + 0xa0]
test byte [esi], 1
je 0x1007ce26
movzx eax, byte [edx + 0x110]
mov ecx, dword [edx + 0x114]
cmp eax, 0x4b
jne 0x1007ceca
test ecx, ecx
jne 0x1007ce2e
jmp 0x1007cd7a
add edx, 0x10c
mov ecx, edx
mov eax, dword [ecx + 8]
mov dword [esp + 4], edi
mov dword [esp + 0x58], ecx
mov dword [esp + 0x10], eax
mov eax, dword [ecx + 0xc]
test eax, eax
mov edx, eax
mov dword [esp + 0x2c], eax
je 0x1007cf25
xor ecx, ecx
cmp eax, 1
jne 0x1007cf95
mov dword [esp + 8], ecx
lea edx, [ecx + ecx*2]
mov ecx, dword [esp + 0x10]
mov esi, dword [esp + 0x18]
mov ebx, dword [ecx + edx*8 + 8]
mov edi, dword [ecx + edx*8 + 0xc]
mov eax, dword [ecx + edx*8 + 0x14]
mov ecx, dword [ecx + edx*8 + 0x10]
mov dword [esp + 0x34], ebx
cmp esi, ebx
mov ebx, dword [esp + 0xa0]
mov dword [esp + 0xc], edi
mov dword [esp + 0x24], eax
mov edx, ebx
sbb edx, edi
mov edi, ebx
setb dh
cmp esi, ecx
sbb edi, eax
setae dl
or dl, dh
je 0x1007cf07
cmp esi, ecx
mov ecx, ebx
mov edi, dword [esp + 4]
sbb ecx, dword [esp + 0x24]
setae cl
cmp esi, dword [esp + 0x34]
mov esi, ebx
sbb esi, dword [esp + 0xc]
mov esi, dword [esp + 8]
setae ch
and ch, cl
movzx ecx, ch
add esi, ecx
jmp 0x1007cf0f
mov edi, ecx
movzx ecx, byte [edx + 0x113]
mov esi, edx
movzx edx, word [edx + 0x111]
mov ebx, dword [esp + 0x20]
shl edx, 8
shl ecx, 0x18
or ecx, edx
mov edx, dword [esi + 0x11c]
or ecx, eax
mov eax, dword [esi + 0x118]
mov dword [ebx + 8], ecx
mov dword [ebx + 0xc], edi
mov dword [ebx + 0x14], edx
mov dword [ebx + 0x10], eax
jmp 0x1007c684
mov edi, dword [esp + 4]
mov esi, dword [esp + 8]
mov eax, dword [esp + 0x2c]
test esi, esi
mov ecx, eax
cmove ecx, esi
test dl, dl
mov edx, ecx
mov ecx, dword [esp + 0x58]
cmove edx, esi
xor esi, esi
cmp edx, eax
jae 0x1007d03a
lea eax, [edx + edx*2]
mov dword [esp + 0x24], edx
mov edx, dword [esp + 0x10]
mov esi, dword [edx + eax*8 + 4]
mov edx, dword [esp + 0x24]
test esi, esi
je 0x1007d038
mov edx, dword [esp + 0x10]
mov eax, dword [edx + eax*8]
mov dword [esp + 0x34], eax
xor eax, eax
cmp esi, 1
jne 0x1007d103
mov ecx, dword [esp + 0x34]
mov esi, eax
lea eax, [eax + eax*2]
mov edx, dword [ecx + eax*8 + 4]
mov edi, dword [ecx + eax*8]
mov eax, edx
mov ecx, edi
xor eax, ebx
mov ebx, dword [esp + 0x18]
xor ecx, ebx
or ecx, eax
jne 0x1007d01b
mov edi, dword [esp + 4]
mov ecx, dword [esp + 0x58]
mov edx, dword [esp + 0x24]
jmp 0x1007d03a
mov edx, dword [esp + 0x2c]
mov eax, dword [esp + 0x10]
xor ecx, ecx
jmp 0x1007cfbb
sub edx, esi
cmp edx, 1
jbe 0x1007ce59
mov esi, edx
mov dword [esp + 8], ecx
shr esi, 1
lea ebx, [esi + ecx]
mov ecx, dword [esp + 0x18]
lea edi, [ebx + ebx*2]
cmp ecx, dword [eax + edi*8 + 8]
mov ecx, dword [esp + 0xa0]
sbb ecx, dword [eax + edi*8 + 0xc]
mov ecx, dword [esp + 8]
jb 0x1007cfb0
mov ecx, ebx
jmp 0x1007cfb0
mov edx, dword [esi + 0x1c]
mov ah, byte [esi + 0x13]
mov ebx, ecx
mov dword [esp + 0xa0], edx
mov edx, dword [esi + 0x18]
mov byte [ecx + 0xb], ah
movzx esi, word [esi + 0x11]
mov word [ecx + 9], si
mov byte [ecx + 8], al
mov dword [ecx + 0xc], edi
mov dword [ecx + 0x10], edx
mov edx, dword [esp + 0xa0]
mov dword [ecx + 0x14], edx
jmp 0x1007c684
cmp edi, ebx
mov edi, dword [esp + 4]
mov ecx, dword [esp + 0x58]
sbb edx, dword [esp + 0xa0]
mov edx, dword [esp + 0x24]
adc esi, 0
sub esi, 1
jae 0x1007d03a
xor esi, esi
mov eax, dword [esp + 0x10]
mov dword [esp + 0x38], eax
mov eax, dword [esp + 0x2c]
mov dword [esp + 0x3c], eax
mov eax, dword [esp + 0x14]
mov dword [esp + 0x40], eax
mov eax, dword [esp + 0x28]
mov dword [esp + 0x44], eax
mov dword [esp + 0x48], ecx
mov dword [esp + 0x4c], edx
mov dword [esp + 0x50], esi
lea eax, [esp + 0x38]
lea ecx, [esp + 0x150]
push eax
push ecx
call sym.__LT_addr2line..LocationRangeUnitIter_u20_as_u20_core..iter..traits..iterator..Iterator_GT_::next::h7a25ea5303e26ae7
add esp, 8
mov ebx, dword [esp + 0x160]
cmp ebx, 2
jne 0x1007d089
jmp 0x1007d0b8
mov eax, dword [esp + 0x164]
mov ecx, dword [esp + 0x174]
mov dword [esp + 0x10], eax
mov eax, dword [esp + 0x168]
mov dword [esp + 0xc], eax
mov eax, dword [esp + 0x16c]
mov dword [esp + 8], eax
mov eax, dword [esp + 0x170]
mov dword [esp + 0xa0], eax
mov esi, dword [esp + 8]
mov eax, dword [esp + 0x10]
mov edx, dword [esp + 0xc]
mov dword [esp + 0x18], ecx
mov ecx, edi
mov edi, dword [esp + 0x20]
mov dword [edi + 4], ecx
mov dword [edi + 8], ebx
mov dword [edi + 0xc], eax
mov eax, dword [esp + 0xa0]
mov dword [edi + 0x10], edx
mov dword [edi + 0x14], esi
mov ebx, edi
mov dword [edi + 0x18], eax
mov eax, dword [esp + 0x18]
mov dword [edi + 0x1c], eax
xor eax, eax
mov dword [ebx], eax
lea esp, [ebp - 0xc]
pop esi
pop edi
pop ebx
pop ebp
ret
xor eax, eax
jmp 0x1007d122
mov ebx, dword [esp + 0xa0]
sub esi, edx
cmp esi, 1
jbe 0x1007cf60
mov edx, esi
mov dword [esp + 8], eax
mov edi, dword [esp + 0x18]
shr edx, 1
add eax, edx
mov dword [esp + 0xc], eax
lea ecx, [eax + eax*2]
mov eax, dword [esp + 0x34]
cmp edi, dword [eax + ecx*8]
mov edi, ebx
mov ebx, dword [esp + 8]
sbb edi, dword [eax + ecx*8 + 4]
mov eax, ebx
jb 0x1007d110
mov eax, dword [esp + 0xc]
jmp 0x1007d110
mov esi, dword [esp + 8]
mov ecx, dword [esp + 0x10]
or esi, dword [esp + 4]
lea ecx, [edi + ecx + 1]
not edi
mov dword [esp + 0x38], ecx
mov dword [esp + 0x3c], edi
je 0x1007d9ab
cmp dword [esp + 4], 0
mov ebx, dword [esp + 0x20]
mov esi, dword [esp + 0x30]
mov edi, dword [esp + 0x14]
jne 0x1007d19e
mov eax, dword [esp + 8]
lea ecx, [eax - 1]
mov eax, edx
cmp ecx, dword [edi + 0x10]
jae 0x1007d19e
imul eax, ecx, 0x68
add eax, dword [edi + 0xc]
jmp 0x1007d26c
mov ecx, dword [edi + 0x14]
mov dword [esp + 0x28], eax
mov al, 0x12
mov dword [esp + 0x1c], eax
test ecx, ecx
je 0x1007d484
mov eax, dword [edi + 0x18]
mov dword [esp + 0xd0], eax
mov eax, dword [esp + 0x28]
mov dword [esp + 0x14], ecx
movzx ecx, word [ecx + 0x4d6]
mov edi, 0xffffffff
xor ebx, ebx
mov dword [esp + 0x5c], ecx
imul ecx, ecx, 0x68
mov dword [esp + 0x24], ecx
mov ecx, dword [esp + 0x24]
add ecx, ebx
je 0x1007d23d
mov eax, dword [esp + 0x14]
mov edx, dword [esp + 8]
xor ecx, ecx
mov esi, dword [eax + edi*8 + 8]
mov eax, dword [eax + edi*8 + 0xc]
mov dword [esp + 0x10], eax
xor eax, dword [esp + 4]
mov dword [esp + 0xc], esi
xor esi, edx
or esi, eax
mov eax, dword [esp + 4]
setne cl
cmp edx, dword [esp + 0xc]
mov edx, 0xff
sbb eax, dword [esp + 0x10]
mov eax, dword [esp + 0x28]
cmovb ecx, edx
inc edi
add ebx, 0xffffff98
cmp cl, 1
je 0x1007d1de
movzx eax, cl
test eax, eax
je 0x1007d263
mov ebx, dword [esp + 0x20]
mov eax, dword [esp + 0x28]
jmp 0x1007d245
mov edi, dword [esp + 0x5c]
mov ebx, dword [esp + 0x20]
mov ecx, dword [esp + 0x14]
sub dword [esp + 0xd0], 1
jb 0x1007d891
mov ecx, dword [ecx + edi*4 + 0x4d8]
jmp 0x1007d1c1
mov eax, dword [esp + 0x14]
sub eax, ebx
add eax, 0xfffffff0
cmp byte [eax + 0x62], 1
jne 0x1007d27a
mov dword [esp + 0x48], 1
push eax
call sym.__LT_gimli..read..abbrev..Attributes_u20_as_u20_core..ops..deref..Deref_GT_::deref::hae5686a143e62adf
add esp, 4
movzx ecx, byte [esp + 0xe4]
mov ebx, dword [esp + 0x20]
mov edi, eax
test edx, edx
mov dword [esp + 0x14], ecx
je 0x1007d48d
mov eax, dword [esp + 0x2c]
shl edx, 4
mov dword [esp + 0x10], 0
mov dword [esp + 4], edx
mov eax, dword [eax + 0xf4]
mov dword [esp + 8], eax
movzx eax, byte [esp + 0x84]
mov dword [esp + 0xc], eax
jmp 0x1007d2ef
cmp eax, 3
je 0x1007d3bb
cmp eax, 0x31
jne 0x1007d2e1
cmp dword [esp + 0x10], 0
je 0x1007d419
add edi, 0x10
add dword [esp + 4], 0xfffffff0
je 0x1007d495
movq xmm0, qword [edi]
movq xmm1, qword [edi + 8]
mov eax, dword [esp + 0x40]
movq qword [esp + 0x90], xmm1
movq qword [esp + 0x88], xmm0
lea esi, [esp + 0x88]
lea ecx, [esp + 0x150]
lea edx, [esp + 0x38]
push esi
push dword [eax + 0x20]
call sym.gimli::read::unit::parse_attribute::hdd3cf4e0ff72c012
add esp, 8
mov eax, dword [esp + 0x150]
xor eax, 0x2e
or eax, dword [esp + 0x154]
je 0x1007d6e7
movzx eax, word [esp + 0x160]
cmp eax, 0x46
jle 0x1007d2c8
cmp eax, 0x47
je 0x1007d2d6
cmp eax, 0x6e
je 0x1007d36d
cmp eax, 0x2007
jne 0x1007d2e1
lea esi, [esp + 0x88]
lea edx, [esp + 0x150]
mov ecx, esi
call sym.gimli::read::unit::Attribute_LT_R_GT_::value::h43a21af532bb1013
mov edx, dword [esp + 0x58]
lea ecx, [esp + 0x70]
push esi
push dword [esp + 0xc]
push dword [esp + 0x14]
call sym.gimli::read::dwarf::Dwarf_LT_R_GT_::attr_string::h2e2835e0fe0b4cd2
add esp, 0xc
cmp byte [esp + 0x70], 0x4b
jne 0x1007d2e1
mov eax, dword [esp + 0x78]
mov ecx, dword [esp + 0x74]
mov dword [esp + 0x28], eax
mov dword [esp + 0x10], ecx
jmp 0x1007d2e1
cmp dword [esp + 0x10], 0
jne 0x1007d2e1
lea esi, [esp + 0x88]
lea edx, [esp + 0x150]
mov ecx, esi
call sym.gimli::read::unit::Attribute_LT_R_GT_::value::h43a21af532bb1013
mov edx, dword [esp + 0x58]
lea ecx, [esp + 0x70]
push esi
push dword [esp + 0xc]
push dword [esp + 0x14]
call sym.gimli::read::dwarf::Dwarf_LT_R_GT_::attr_string::h2e2835e0fe0b4cd2
add esp, 0xc
cmp byte [esp + 0x70], 0x4b
mov eax, dword [esp + 0x24]
mov dword [esp + 0x10], 0
jne 0x1007d413
mov eax, dword [esp + 0x78]
mov ecx, dword [esp + 0x74]
mov dword [esp + 0x10], ecx
mov dword [esp + 0x24], eax
jmp 0x1007d47b
lea ecx, [esp + 0x88]
lea edx, [esp + 0x150]
call sym.gimli::read::unit::Attribute_LT_R_GT_::value::h43a21af532bb1013
mov edx, dword [esp + 0x88]
lea ecx, [esp + 0x70]
push 0x10
push dword [esp + 0x5c]
push dword [esp + 0xe8]
push dword [esp + 0x38]
push dword [esp + 0x24]
push dword [esp + 0xa4]
push dword [esp + 0xa4]
call sym.addr2line::function::name_attr::h36cd3aab840d5cc7
add esp, 0x1c
movzx eax, byte [esp + 0x70]
cmp al, 0x4b
jne 0x1007d89e
mov eax, dword [esp + 0x74]
mov dword [esp + 0x10], eax
mov eax, dword [esp + 0x78]
mov dword [esp + 0x28], eax
jmp 0x1007d2e1
mov eax, dword [esp + 0x28]
jmp 0x1007ccd0
mov dword [esp + 0x10], 0
mov dword [esp + 0x70], 0
mov dword [esp + 0x74], 8
mov dword [esp + 0x88], 0
mov dword [esp + 0x8c], 8
mov dword [esp + 0x78], 0
mov dword [esp + 0x90], 0
lea eax, [esp + 0x88]
lea esi, [esp + 0x70]
lea edx, [esp + 0x38]
lea ecx, [esp + 0x150]
push 0
push eax
push esi
push dword [esp + 0x64]
push dword [esp + 0xf0]
push dword [esp + 0x40]
push dword [esp + 0x2c]
push 0
call sym.addr2line::function::Function_LT_R_GT_::parse_children::h7fc55cba28ae7922
add esp, 0x20
mov esi, dword [esp + 0x30]
movzx eax, byte [esp + 0x150]
cmp al, 0x4b
mov dword [esp + 0x1c], eax
jne 0x1007d659
mov edx, dword [esp + 0x90]
cmp edx, 2
jb 0x1007d720
mov ecx, dword [esp + 0x8c]
cmp edx, 0x15
jae 0x1007d71b
lea eax, [edx + edx*2]
mov esi, ecx
mov dword [esp + 0x14], 0
lea edx, [ecx + eax*8]
lea eax, [ecx + 0x18]
mov dword [esp + 0xe4], edx
jmp 0x1007d59b
mov esi, ecx
mov edx, dword [esp + 0xe4]
mov eax, dword [esp + 4]
mov edi, dword [esp + 0x24]
mov dword [esi], eax
mov eax, dword [esp + 8]
mov dword [esi + 4], eax
mov eax, dword [esp + 0x1c]
mov dword [esi + 8], eax
mov eax, dword [esp + 0x2c]
mov dword [esi + 0xc], eax
mov dword [esi + 0x10], ebx
mov dword [esi + 0x14], edi
mov esi, dword [esp + 0xc]
add dword [esp + 0x14], 0x18
lea eax, [esi + 0x18]
cmp eax, edx
je 0x1007d720
mov edi, dword [esi + 0x18]
mov dword [esp + 0xc], eax
mov ebx, dword [esi + 0x28]
mov eax, dword [esi + 0x10]
mov dword [esp + 4], edi
mov edi, dword [esi + 0x1c]
cmp ebx, eax
mov dword [esp + 8], edi
jb 0x1007d5c8
ja 0x1007d587
mov eax, dword [esp + 4]
mov edi, dword [esp + 8]
cmp eax, dword [esi]
sbb edi, dword [esi + 4]
jae 0x1007d587
mov eax, dword [esi + 0x24]
movsd xmm1, qword [esi + 8]
mov edi, dword [esp + 0xc]
movq xmm0, qword [esi]
cmp esi, ecx
mov dword [esp + 0x2c], eax
mov eax, dword [esi + 0x20]
mov dword [esp + 0x1c], eax
mov eax, dword [esi + 0x2c]
movsd qword [edi + 8], xmm1
movq xmm1, qword [esi + 0x10]
mov esi, ecx
movq qword [edi], xmm0
mov dword [esp + 0x24], eax
movq qword [edi + 0x10], xmm1
je 0x1007d562
mov edx, dword [esp + 0x14]
jmp 0x1007d632
movsd xmm0, qword [eax + 0x10]
add edx, 0xffffffe8
movsd qword [esi + 0x10], xmm0
movq xmm0, qword [eax]
movq xmm1, qword [eax + 8]
movq qword [esi + 8], xmm1
movq qword [esi], xmm0
je 0x1007d559
cmp ebx, dword [ecx + edx - 8]
lea esi, [ecx + edx]
lea eax, [ecx + edx - 0x18]
jb 0x1007d60d
ja 0x1007d55b
mov edi, dword [esp + 4]
cmp edi, dword [eax]
mov edi, dword [esp + 8]
sbb edi, dword [eax + 4]
jb 0x1007d60d
jmp 0x1007d55b
movzx eax, byte [esp + 0x151]
mov ecx, dword [esp + 0x15c]
movzx edx, word [esp + 0x152]
mov dword [esp + 0x28], eax
mov eax, dword [esp + 0x154]
mov dword [esp + 0xc], ecx
mov dword [esp + 4], eax
mov eax, dword [esp + 0x158]
mov dword [esp + 8], eax
mov eax, dword [esp + 0x88]
test eax, eax
je 0x1007d6b5
shl eax, 3
lea eax, [eax + eax*2]
push 8
push eax
push dword [esp + 0x94]
mov ebx, edx
call sym.___rust_dealloc
mov edx, ebx
add esp, 0xc
mov eax, dword [esp + 0x70]
mov ebx, dword [esp + 0x20]
test eax, eax
je 0x1007d6da
shl eax, 3
lea eax, [eax + eax*4]
push 8
push eax
push dword [esp + 0x7c]
mov edi, edx
call sym.___rust_dealloc
mov edx, edi
add esp, 0xc
mov eax, dword [esp + 0x28]
mov edi, dword [esp + 8]
jmp 0x1007ccd0
mov eax, dword [esp + 0x158]
mov ecx, dword [esp + 0x15c]
mov esi, dword [esp + 0x164]
mov edi, dword [esp + 0x160]
mov edx, eax
mov dword [esp + 0x1c], eax
mov dword [esp + 4], ecx
mov dword [esp + 0xc], esi
mov al, ah
shr edx, 0x10
jmp 0x1007cccc
call sym.core::slice::sort::stable::driftsort_main::hf273773d8ddc0b51
mov ecx, dword [esp + 0x78]
mov eax, dword [esp + 0x70]
mov edi, dword [esp + 0x74]
cmp eax, ecx
mov dword [esp + 0x1c], ecx
jbe 0x1007d76a
shl eax, 3
test ecx, ecx
lea esi, [eax + eax*4]
je 0x1007d770
lea eax, [ecx*8]
lea ebx, [eax + eax*4]
push ebx
push 8
push esi
push edi
call sym.___rust_realloc
add esp, 0x10
test eax, eax
mov dword [esp + 0xc], eax
jne 0x1007d784
push ebx
push 8
call sym.alloc::raw_vec::handle_error::he63c9115d026ec98
add esp, 8
jmp 0x1007d7d1
mov dword [esp + 0xc], edi
jmp 0x1007d784
push 8
push esi
push edi
call sym.___rust_dealloc
add esp, 0xc
mov dword [esp + 0xc], 8
mov ecx, dword [esp + 0x90]
mov eax, dword [esp + 0x88]
mov edi, dword [esp + 0x8c]
cmp eax, ecx
mov dword [esp + 8], ecx
jbe 0x1007d7d3
shl eax, 3
test ecx, ecx
lea esi, [eax + eax*2]
je 0x1007d7d7
lea eax, [ecx*8]
lea ebx, [eax + eax*2]
push ebx
push 8
push esi
push edi
call sym.___rust_realloc
add esp, 0x10
test eax, eax
jne 0x1007d7e8
push ebx
push 8
call sym.alloc::raw_vec::handle_error::he63c9115d026ec98
add esp, 8
ud2
mov eax, edi
jmp 0x1007d7e8
push 8
push esi
push edi
call sym.___rust_dealloc
add esp, 0xc
mov eax, 8
mov esi, dword [esp + 0x30]
mov dword [esp + 4], eax
cmp dword [esi + 8], 2
jne 0x1007d81b
mov ecx, dword [esp + 0x1c]
mov ebx, dword [esp + 0x20]
mov edx, dword [esp + 0xbc]
mov edi, dword [esp + 0xc]
mov eax, ecx
mov cl, ch
shr eax, 0x10
mov dword [esp + 0x14], eax
xor eax, eax
jmp 0x1007cce9
mov eax, dword [esp + 0x1c]
mov ebx, dword [esp + 0x20]
test eax, eax
je 0x1007d83c
shl eax, 3
lea eax, [eax + eax*4]
push 8
push eax
push dword [esp + 0x14]
call sym.___rust_dealloc
add esp, 0xc
mov eax, dword [esp + 8]
test eax, eax
je 0x1007cd27
shl eax, 3
lea eax, [eax + eax*2]
push 8
push eax
push dword [esp + 0xc]
call sym.___rust_dealloc
add esp, 0xc
jmp 0x1007cd27
mov eax, dword [esp + 0x124]
mov cl, 0x13
jmp 0x1007d8d0
mov cl, 0x35
jmp 0x1007d8d0
mov eax, dword [esp + 0x110]
mov cl, 0x13
jmp 0x1007d8d7
mov edx, eax
mov cl, 0x13
and edx, 0xffffff00
jmp 0x1007d8cb
mov dword [esp + 0xc], 0
jmp 0x1007cccc
mov ecx, dword [esp + 0x74]
mov esi, dword [esp + 0x7c]
mov dword [esp + 0x1c], eax
movzx eax, byte [esp + 0x71]
movzx edx, word [esp + 0x72]
mov edi, dword [esp + 0x78]
mov dword [esp + 4], ecx
mov dword [esp + 0xc], esi
jmp 0x1007cccc
xor edx, edx
mov cl, 0x35
xor eax, eax
movzx eax, al
or eax, edx
mov edx, dword [esp + 0xd8]
mov byte [esp + 0x40], cl
mov dword [esp + 0x44], edx
mov dword [esp + 0x48], eax
mov dword [esp + 0x4c], 0
jmp 0x1007c6d8
mov eax, dword [esp + 0x84]
mov byte [esp + 0x61], al
mov al, 0x17
jmp 0x1007d92f
mov al, 0x13
mov dword [esp + 0x6c], 0
mov edx, dword [esp + 0x64]
mov ecx, dword [esp + 0x61]
mov esi, dword [esp + 0x6c]
mov dword [esp + 0x44], edx
mov dword [esp + 0x41], ecx
mov ecx, dword [esp + 0x68]
mov byte [esp + 0x40], al
mov dword [esp + 0x4c], esi
mov dword [esp + 0x48], ecx
jmp 0x1007c6d8
xor ecx, ecx
mov dl, 0x13
xor esi, esi
mov dh, cl
jmp 0x1007d97a
mov eax, dword [esp + 0x44]
mov ecx, dword [esp + 0x4c]
mov esi, edx
shr esi, 0x10
mov dword [esp + 0xfc], eax
mov eax, dword [esp + 0x48]
mov byte [esp + 0x40], dl
mov byte [esp + 0x41], dh
mov word [esp + 0x42], si
mov esi, dword [esp + 0xfc]
mov dword [esp + 0x44], esi
mov dword [esp + 0x48], eax
mov dword [esp + 0x4c], ecx
jmp 0x1007c6d8
push 0x10160768
push edx
push ecx
call sym.core::panicking::panic_bounds_check::hf1cd1614d6353f3c
push 0x101607b4
call sym.core::option::unwrap_failed::h4002a2165d665d64
jmp 0x1007dab3
push dword [esp + 4]
call sym.__Unwind_Resume
mov dword [esp + 4], eax
lea ecx, [esp + 0xe8]
call sym.__ZN4core3ptr273drop_in_place_LT_alloc..vec..Vec_LT__LP_gimli..read..UnitOffset_C_addr2line..lazy..LazyCell_LT_core..result..R
xor ebx, ebx
jmp 0x1007dab9
mov dword [esp + 4], eax
mov bl, 1
mov eax, dword [esp + 0xc0]
test eax, eax
je 0x1007dadc
shl eax, 3
lea eax, [eax + eax*2]
push 8
push eax
push dword [esp + 0xcc]
call sym.___rust_dealloc
add esp, 0xc
test bl, bl
je 0x1007da96
lea ecx, [esp + 0xe8]
call sym.__ZN4core3ptr273drop_in_place_LT_alloc..vec..Vec_LT__LP_gimli..read..UnitOffset_C_addr2line..lazy..LazyCell_LT_core..result..R
push dword [esp + 4]
call sym.__Unwind_Resume
nop dword [eax]
test dword [esi], eax
add byte [eax], al
call 0x7507db08
push ds
add byte [eax], al
push es
or byte [eax], al
add byte [ebp + 0x1e], ah
add byte [eax], al
push ds
add byte [eax], al
push ds
add byte [eax], al
test byte [edi], 0
add byte [edi], dl
pop es
add byte [eax], al
cwde
pop es
add byte [eax], al
push ds
add byte [eax], al
rol byte [edi], 0
add byte [ebp + 0x1e], ah
add byte [eax], al
push ds
add byte [eax], al
push ds
add byte [eax], al
cmpsb byte [esi], byte es:[edi]
pop es
add byte [eax], al
nop dword [eax + eax]