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

Disassembly:
push ebp
mov ebp, esp
push ebx
push edi
push esi
and esp, 0xfffffff0
sub esp, 0x170
mov esi, dword [ebp + 0x10]
mov ebx, dword [ebp + 0x18]
mov dword [esp + 0xc], ecx
xor ecx, ecx
mov edi, 0
mov eax, dword [esi + 0xc8]
mov esi, dword [esi + 0x100]
cmp eax, 0x50000
cmovb edi, esi
setae byte [esp + 0x37]
test byte [ebx + 0x78], 1
cmove edi, ecx
mov ecx, dword [edx + 0x10]
mov dword [esp + 0x168], edi
cmp ecx, dword [ebp + 8]
mov dword [esp + 0x94], ecx
call 0x51a369
pop ecx
mov dword [esp + 0x9c], ecx
jle 0x51b5ee
mov ecx, dword [ebp + 0x18]
xor ebx, ebx
mov dword [esp + 0x90], eax
mov ecx, dword [ecx + 0x64]
mov dword [esp + 0x158], ecx
sub ecx, esi
mov dword [esp + 0x150], ecx
mov ecx, eax
and ecx, 0xff00
mov dword [esp + 0x14c], ecx
mov ecx, eax
shr ecx, 0x10
mov dword [esp + 0x148], ecx
mov ecx, dword [ebp + 0x10]
mov edi, dword [ecx + 0xf8]
mov ecx, dword [ebp + 0x18]
mov ecx, dword [ecx + 0xc]
mov dword [esp + 0xf8], edi
mov dword [esp + 0xf4], ecx
sub ecx, edi
mov dword [esp + 0xcc], ecx
movzx ecx, byte [esp + 0x37]
mov bl, cl
lea ecx, [ebx*8 + 4]
shl ebx, 3
mov dword [esp + 0x160], ebx
mov ebx, esi
mov esi, dword [edx + 8]
mov dword [esp + 0x15c], ecx
mov ecx, dword [edx]
mov dword [esp + 0x11c], ebx
mov eax, dword [esi + 0x24]
mov dword [esp + 0x10], ecx
mov dword [esp + 0x100], esi
add eax, ecx
xor ecx, ecx
cmp byte [esi + 0x21], 8
sete cl
lea ecx, [eax + ecx*8]
mov eax, dword [esi + 0x1c]
add eax, dword [esi + 0x18]
mov esi, edx
mov edx, dword [ebp + 0x10]
mov dword [esp + 0x14], esi
sub ecx, eax
mov eax, dword [esp + 0x90]
add ecx, 4
mov dword [esp + 0x54], ecx
movzx ecx, byte [edx + 0xc9]
mov byte [esp + 0x36], cl
movzx ecx, word [edx + 0xca]
mov word [esp + 0xfe], cx
mov ecx, dword [edx + 0xf4]
mov edx, dword [ebp + 0x18]
mov dword [esp + 0x120], ecx
mov ecx, dword [edx + 0x60]
mov dword [esp + 0x140], ecx
lea ecx, [ecx + ebx]
mov dword [esp + 0x110], ecx
movzx ecx, ah
movzx eax, al
mov dword [esp + 0x154], ecx
mov ecx, dword [edx + 8]
mov edx, dword [ebp + 0x10]
mov dword [esp + 0x118], eax
mov eax, dword [edx + 0xec]
mov dword [esp + 0xf0], ecx
lea ecx, [ecx + edi]
mov dword [esp + 0xc8], ecx
mov dword [esp + 0x114], eax
mov eax, dword [edx + 0xe8]
mov dword [esp + 0x144], eax
mov eax, dword [ebp + 0x24]
lea eax, [eax + 1]
mov dword [esp + 0x164], eax
mov ecx, dword [esi + 4]
mov edi, dword [esp + 0xc]
mov edx, dword [esp + 0x10]
test ecx, ecx
je 0x51b621
lea eax, [edx + 1]
mov dword [esp + 0x18], ecx
lea esi, [ecx - 1]
xor edi, edi
xor edx, edx
xor ecx, ecx
nop word cs:[eax + eax]
nop dword [eax]
mov bh, byte [eax - 1]
cmp ecx, 0x3f
jne 0x51a511
cmp bh, 2
jae 0x51b5f7
mov bl, bh
mov dword [esp + 0x1c], esi
mov esi, edx
mov byte [esp + 0x30], bh
xor edx, edx
mov dword [esp + 0xd0], edi
mov edi, 0
and bl, 0x7f
movzx ebx, bl
shld edx, ebx, cl
shl ebx, cl
test cl, 0x20
cmovne edx, ebx
cmovne ebx, edi
mov edi, dword [esp + 0xd0]
or esi, edx
mov edx, esi
or edi, ebx
mov bh, byte [esp + 0x30]
test bh, bh
jns 0x51a570
mov esi, dword [esp + 0x1c]
add ecx, 7
inc eax
add esi, 0xffffffff
jb 0x51a500
jmp 0x51b608
mov ecx, dword [esp + 0x14]
mov ebx, edi
or ebx, edx
mov dword [ecx], eax
mov eax, dword [esp + 0x1c]
mov dword [ecx + 4], eax
je 0x51a6c5
mov ebx, edx
mov edx, edi
mov eax, dword [ecx + 0xc]
mov edi, dword [esp + 0xc]
test ebx, ebx
jne 0x51a5a9
lea ecx, [edx - 1]
cmp ecx, dword [eax + 8]
jae 0x51a5a9
imul edx, ecx, 0x68
add edx, dword [eax + 4]
jmp 0x51a68e
mov ecx, dword [eax + 0xc]
mov bl, 0x12
test ecx, ecx
je 0x51b693
mov eax, dword [eax + 0x10]
mov dword [esp + 0xd0], edx
mov edx, esi
mov dword [esp + 0x18], eax
movzx eax, word [ecx + 0x4d6]
mov dword [esp + 0x10], ecx
mov ebx, 0xffffffff
lea ecx, [eax*8]
mov dword [esp + 0x38], eax
nop word cs:[eax + eax]
nop dword [eax + eax]
test ecx, ecx
je 0x51a653
mov eax, dword [esp + 0x10]
mov edi, dword [eax + ebx*8 + 8]
mov dword [esp + 0x30], edi
mov edi, dword [eax + ebx*8 + 0xc]
xor eax, eax
mov dword [esp + 0x1c], edi
xor edi, edx
mov edx, dword [esp + 0x30]
xor edx, dword [esp + 0xd0]
or edx, edi
mov edx, dword [esp + 0xd0]
setne al
cmp edx, dword [esp + 0x30]
mov edx, esi
sbb edx, dword [esp + 0x1c]
mov edx, 0xff
cmovb eax, edx
mov edx, esi
inc ebx
add ecx, 0xfffffff8
cmp al, 1
je 0x51a5f0
movzx eax, al
test eax, eax
je 0x51a67f
mov eax, dword [esp + 0x18]
mov ecx, dword [esp + 0x8c]
jmp 0x51a662
mov ebx, dword [esp + 0x38]
mov ecx, dword [esp + 0x8c]
mov eax, dword [esp + 0x18]
sub eax, 1
jb 0x51b68b
mov ecx, dword [esp + 0x10]
mov dword [esp + 0x18], eax
mov ecx, dword [ecx + ebx*4 + 0x4d8]
jmp 0x51a5c6
mov ecx, dword [esp + 0x10]
mov edi, dword [esp + 0xc]
imul eax, ebx, 0x68
lea edx, [ecx + eax + 0x58]
cmp byte [edx + 0x62], 1
mov esi, dword [esp + 0x14]
jne 0x51a6a3
mov eax, dword [esp + 0x94]
inc eax
mov dword [esi + 0x10], eax
movzx eax, word [edx + 0x60]
mov dword [esp + 0x8c], edx
cmp eax, 0x1d
je 0x51a6e2
cmp eax, 0x2e
jne 0x51a6f6
test byte [edx], 1
je 0x51a70a
mov ebx, dword [edx + 8]
mov eax, dword [edx + 0xc]
jmp 0x51a719
mov eax, dword [esp + 0x94]
mov esi, ecx
mov dword [esp + 0x8c], 0
dec eax
mov dword [ecx + 0x10], eax
jmp 0x51b44f
test byte [edx], 1
je 0x51a961
mov eax, dword [edx + 8]
mov ecx, dword [edx + 0xc]
jmp 0x51a970
test byte [edx], 1
je 0x51a9c6
mov ebx, dword [edx + 8]
mov eax, dword [edx + 0xc]
jmp 0x51a9d5
mov eax, dword [edx + 4]
cmp eax, 6
jae 0x51b734
lea ebx, [edx + 8]
lea ecx, [esp + 0xa0]
mov edx, esi
push eax
push ebx
mov eax, dword [esp + 0x108]
push dword [eax + 0x20]
call sym.gimli::read::unit::skip_attributes::h1bfae63549a103ef
add esp, 0xc
movzx ecx, byte [esp + 0xa0]
cmp cl, 0x4b
jne 0x51b6a9
mov ecx, dword [esi + 0x10]
cmp ecx, dword [esp + 0x94]
jle 0x51b44f
mov edx, dword [esi + 4]
mov eax, dword [esi]
test edx, edx
je 0x51b6ee
mov dword [esp + 0x100], ecx
mov dword [esp + 0x18], edx
mov dword [esp + 0x10], eax
dec edx
inc eax
xor esi, esi
xor edi, edi
xor ecx, ecx
nop dword [eax + eax]
mov dword [esp + 0x1c], edx
movzx edx, byte [eax - 1]
cmp ecx, 0x3f
jne 0x51a796
cmp dl, 2
jae 0x51b642
mov byte [esp + 0xd0], dl
xor edx, edx
mov dword [esp + 0x30], edi
mov edi, esi
mov esi, 0
movzx ebx, byte [esp + 0xd0]
and bl, 0x7f
movzx ebx, bl
shld edx, ebx, cl
shl ebx, cl
test cl, 0x20
cmovne edx, ebx
cmovne ebx, esi
mov esi, edi
mov edi, dword [esp + 0x30]
or esi, ebx
movzx ebx, byte [esp + 0xd0]
or edi, edx
test bl, bl
jns 0x51a7ee
mov edx, dword [esp + 0x1c]
add ecx, 7
inc eax
add edx, 0xffffffff
jb 0x51a780
jmp 0x51b657
mov ecx, dword [esp + 0x14]
mov edx, dword [esp + 0x1c]
mov ebx, esi
mov dword [ecx], eax
mov dword [ecx + 4], edx
mov edx, ebx
mov esi, ecx
or ebx, edi
je 0x51a938
mov eax, dword [esi + 0xc]
mov dword [esp + 0x30], edi
test edi, edi
mov edi, dword [esp + 0xc]
jne 0x51a82b
lea ecx, [edx - 1]
cmp ecx, dword [eax + 8]
jae 0x51a82b
imul ecx, ecx, 0x68
add ecx, dword [eax + 4]
jmp 0x51a8ed
mov ebx, dword [eax + 0xc]
mov cl, 0x12
test ebx, ebx
je 0x51b72f
mov eax, dword [eax + 0x10]
mov dword [esp + 0x18], edx
mov dword [esp + 0x38], eax
movzx eax, word [ebx + 0x4d6]
mov dword [esp + 0x10], ebx
mov ebx, 0xffffffff
mov dword [esp + 0x98], eax
lea eax, [eax*8]
test eax, eax
je 0x51a8b6
mov ecx, dword [esp + 0x10]
mov esi, dword [esp + 0x18]
mov edi, dword [ecx + ebx*8 + 0xc]
mov edx, dword [ecx + ebx*8 + 8]
xor ecx, ecx
mov dword [esp + 0xd0], edi
xor edi, dword [esp + 0x30]
mov dword [esp + 0x1c], edx
xor edx, esi
or edx, edi
mov edx, dword [esp + 0x30]
setne cl
cmp esi, dword [esp + 0x1c]
sbb edx, dword [esp + 0xd0]
mov edx, 0xff
cmovb ecx, edx
inc ebx
add eax, 0xfffffff8
cmp cl, 1
je 0x51a861
movzx eax, cl
test eax, eax
jne 0x51a8bd
jmp 0x51a8de
mov ebx, dword [esp + 0x98]
mov eax, dword [esp + 0x38]
sub eax, 1
jb 0x51b6f2
mov ecx, dword [esp + 0x10]
mov dword [esp + 0x38], eax
mov ebx, dword [ecx + ebx*4 + 0x4d8]
jmp 0x51a843
mov ecx, dword [esp + 0x10]
mov esi, dword [esp + 0x14]
imul eax, ebx, 0x68
lea ecx, [ecx + eax + 0x58]
cmp byte [ecx + 0x62], 1
jne 0x51a8fe
mov eax, dword [esp + 0x100]
inc eax
mov dword [esi + 0x10], eax
mov dword [esp + 0x54], ecx
call sym.__LT_gimli..read..abbrev..Attributes_u20_as_u20_core..ops..deref..Deref_GT_::deref::hae5686a143e62adf
mov edi, dword [esi + 8]
mov ebx, edx
lea ecx, [esp + 0xa0]
mov edx, esi
push ebx
push eax
push dword [edi + 0x20]
call sym.gimli::read::unit::skip_attributes::h1bfae63549a103ef
add esp, 0xc
movzx ecx, byte [esp + 0xa0]
cmp cl, 0x4b
jne 0x51b6fd
mov ecx, dword [esi + 0x10]
jmp 0x51a94b
mov ecx, dword [esp + 0x100]
mov dword [esp + 0x54], 0
dec ecx
mov dword [esi + 0x10], ecx
mov edi, dword [esp + 0xc]
cmp ecx, dword [esp + 0x94]
jg 0x51a757
jmp 0x51b44f
mov ecx, dword [edx + 4]
cmp ecx, 6
jae 0x51b736
lea eax, [edx + 8]
test ecx, ecx
je 0x51aa05
shl ecx, 4
xorps xmm0, xmm0
mov dword [esp + 0x1c], 0
mov dword [esp + 0x10], 0
mov dword [esp + 0x18], 0
mov dword [esp + 0x38], 0
mov dword [esp + 0xec], 0
mov dword [esp + 0x4c], 0
mov dword [esp + 0x50], 0
movaps xmmword [esp + 0x100], xmm0
jmp 0x51ab8f
mov eax, dword [edx + 4]
cmp eax, 6
jae 0x51b734
lea ebx, [edx + 8]
lea ecx, [esp + 0xa0]
mov edx, esi
push eax
push ebx
mov eax, dword [esp + 0x108]
push dword [eax + 0x20]
call sym.gimli::read::unit::skip_attributes::h1bfae63549a103ef
add esp, 0xc
cmp byte [esp + 0xa0], 0x4b
je 0x51b44f
jmp 0x51b695
pxor xmm0, xmm0
mov dword [esp + 0x50], 0
mov dword [esp + 0x1c], 0
mov dword [esp + 0x4c], 0
mov dword [esp + 0xec], 0
mov dword [esp + 0x38], 0
mov dword [esp + 0x10], 0
mov dword [esp + 0x18], 0
movdqa xmmword [esp + 0x100], xmm0
mov edi, dword [ebp + 0x1c]
mov esi, dword [edi + 8]
cmp esi, dword [edi]
jne 0x51aa5e
mov ecx, edi
call sym.alloc::raw_vec::RawVec_LT_T_C_A_GT_::grow_one::ha401fd3271f3d24d
mov eax, dword [edi + 4]
movdqa xmm0, xmmword [esp + 0x100]
mov edx, dword [esp + 0x1c]
lea ecx, [esi + esi*4]
mov ebx, dword [esp + 0x18]
test byte [esp + 0x38], 1
movdqu xmmword [eax + ecx*8], xmm0
mov dword [eax + ecx*8 + 0x10], edx
mov edx, dword [esp + 0x98]
mov dword [eax + ecx*8 + 0x14], edx
mov edx, dword [esp + 0x54]
mov dword [eax + ecx*8 + 0x18], edx
mov edx, dword [esp + 0x10]
mov dword [eax + ecx*8 + 0x1c], edx
mov dword [eax + ecx*8 + 0x20], ebx
lea ecx, [esi + 1]
mov dword [edi + 8], ecx
je 0x51aae6
mov edx, dword [ebp + 0x18]
mov eax, dword [esp + 0x15c]
mov ecx, dword [edx + eax + 0x58]
mov eax, dword [esp + 0x160]
mov eax, dword [edx + eax + 0x58]
mov edx, dword [esp + 0x13c]
sub ecx, edx
jae 0x51b1dd
mov esi, dword [esp + 0x114]
mov cl, 0x13
xor edx, edx
xor ebx, ebx
xor edi, edi
jmp 0x51b2b7
test byte [esp + 0x50], 1
je 0x51b3f9
test byte [esp + 0x4c], 1
mov eax, dword [esp + 0x88]
je 0x51b377
cmp dword [esp + 0x40], eax
mov ecx, dword [esp + 0x3c]
sbb ecx, dword [esp + 0x84]
jae 0x51b3f9
mov ebx, dword [ebp + 0x20]
mov edi, dword [ebx + 8]
cmp edi, dword [ebx]
jne 0x51ab29
mov ecx, ebx
call sym.alloc::raw_vec::RawVec_LT_T_C_A_GT_::grow_one::h6ce8d1c18b6b955c
mov eax, dword [ebx + 4]
mov edx, dword [esp + 0x3c]
lea ecx, [edi + edi*2]
inc edi
mov dword [eax + ecx*8 + 4], edx
mov edx, dword [esp + 0x40]
mov dword [eax + ecx*8], edx
mov edx, dword [esp + 0x84]
mov dword [eax + ecx*8 + 0xc], edx
mov edx, dword [esp + 0x88]
mov dword [eax + ecx*8 + 8], edx
mov edx, dword [ebp + 0x24]
mov dword [eax + ecx*8 + 0x10], edx
mov dword [eax + ecx*8 + 0x14], esi
mov dword [ebx + 8], edi
jmp 0x51b3f9
mov esi, ebx
mov eax, dword [esp + 0x30]
mov ecx, dword [esp + 0xd0]
add eax, 0x10
add ecx, 0xfffffff0
je 0x51aa4d
movq xmm0, qword [eax]
movq xmm1, qword [eax + 8]
mov dword [esp + 0x30], eax
mov eax, dword [esi + 8]
mov ebx, esi
mov edx, esi
lea esi, [esp + 0x68]
mov dword [esp + 0xd0], ecx
lea ecx, [esp + 0xa0]
movq qword [esp + 0x70], xmm1
movq qword [esp + 0x68], xmm0
push esi
push dword [eax + 0x20]
call sym.gimli::read::unit::parse_attribute::hdd3cf4e0ff72c012
add esp, 8
mov eax, dword [esp + 0xa0]
mov ecx, eax
xor ecx, 0x2e
or ecx, dword [esp + 0xa4]
je 0x51b1bc
movzx ecx, word [esp + 0xb0]
lea edx, [ecx - 3]
cmp edx, 0x56
ja 0x51ac7a
mov ecx, dword [edx*4 + 0x51b748]
mov esi, ebx
add ecx, dword [esp + 0x9c]
jmp ecx
cmp ecx, 0x6e
je 0x51ac8b
cmp ecx, 0x2007
jne 0x51ab76
lea esi, [esp + 0x68]
lea edx, [esp + 0xa0]
mov ecx, esi
call sym.gimli::read::unit::Attribute_LT_R_GT_::value::h43a21af532bb1013
movzx eax, byte [esp + 0x36]
mov edx, dword [ebp + 0x18]
lea ecx, [esp + 0x20]
push esi
push dword [esp + 0x124]
push eax
call sym.gimli::read::dwarf::Dwarf_LT_R_GT_::attr_string::h2e2835e0fe0b4cd2
add esp, 0xc
cmp byte [esp + 0x20], 0x4b
jne 0x51ab76
mov eax, dword [esp + 0x28]
mov ecx, dword [esp + 0x24]
mov dword [esp + 0x98], eax
mov dword [esp + 0x1c], ecx
jmp 0x51ab76
lea eax, [esp + 0xa8]
movq xmm0, qword [eax]
movq xmm1, qword [eax + 8]
movq qword [esp + 0x60], xmm1
movq qword [esp + 0x58], xmm0
jmp 0x51b432
add eax, edx
mov edx, dword [esp + 0x144]
mov dword [esp + 0xa0], edx
mov edx, dword [esp + 0x114]
mov dword [esp + 0xa4], edx
mov edx, dword [esp + 0xf0]
mov dword [esp + 0xa8], edx
mov edx, dword [esp + 0xf4]
mov dword [esp + 0xac], edx
mov edx, dword [esp + 0xf8]
mov dword [esp + 0xb0], edx
mov edx, dword [esp + 0x90]
mov word [esp + 0xb4], dx
mov edx, dword [esp + 0x148]
mov word [esp + 0xb6], dx
mov dword [esp + 0xb8], eax
mov dword [esp + 0xbc], ecx
movzx ecx, byte [esp + 0x37]
lea edx, [esp + 0xa0]
mov byte [esp + 0xc0], cl
lea ecx, [esp + 0x68]
mov byte [esp + 0xc3], 0
mov word [esp + 0xc1], 0
call sym.gimli::read::rnglists::RngListIter_LT_R_GT_::next::hb9c1b088416d1196
mov eax, dword [esp + 0x68]
mov ecx, dword [esp + 0x6c]
mov ebx, dword [ebp + 0x20]
mov edx, eax
xor edx, 2
or edx, ecx
jne 0x51b31c
mov ecx, dword [esp + 0x70]
cmp cl, 0x4b
je 0x51b3f9
mov esi, dword [esp + 0x74]
mov eax, dword [esp + 0x78]
mov edi, dword [esp + 0x7c]
mov edx, ecx
mov bl, ch
shr edx, 0x10
mov byte [esp + 0x58], cl
mov byte [esp + 0x59], bl
mov word [esp + 0x5a], dx
mov dword [esp + 0x5c], esi
mov dword [esp + 0x60], eax
mov dword [esp + 0x64], edi
mov edi, dword [esp + 0xc]
mov ebx, dword [esp + 0x14]
jmp 0x51b432
mov eax, dword [ebx + 4]
mov edx, dword [ebp + 0x24]
lea ecx, [edi + edi*2]
inc edi
movdqu xmmword [eax + ecx*8], xmm1
mov dword [eax + ecx*8 + 0x10], edx
mov dword [eax + ecx*8 + 0x14], esi
mov dword [ebx + 8], edi
lea ecx, [esp + 0x68]
lea edx, [esp + 0xa0]
call sym.gimli::read::rnglists::RngListIter_LT_R_GT_::next::hb9c1b088416d1196
mov eax, dword [esp + 0x68]
mov ecx, dword [esp + 0x6c]
mov edx, eax
xor edx, 2
or edx, ecx
je 0x51b297
xor eax, 1
or eax, ecx
jne 0x51b3f9
movdqu xmm1, xmmword [esp + 0x70]
pshufd xmm2, xmm1, 0xee
pshufd xmm0, xmm1, 0x55
pshufd xmm3, xmm1, 0xff
movd ecx, xmm1
movd edi, xmm2
movd eax, xmm0
movd edx, xmm3
cmp ecx, edi
sbb eax, edx
jae 0x51b2f7
mov edi, dword [ebx + 8]
cmp edi, dword [ebx]
jne 0x51b2dd
mov ecx, ebx
movdqa xmmword [esp + 0xd0], xmm1
call sym.alloc::raw_vec::RawVec_LT_T_C_A_GT_::grow_one::h6ce8d1c18b6b955c
movdqa xmm1, xmmword [esp + 0xd0]
jmp 0x51b2dd
test byte [esp + 0xec], 1
je 0x51b3f9
mov edi, dword [esp + 0x134]
mov eax, dword [esp + 0x40]
mov ebx, dword [esp + 0x130]
mov ecx, dword [esp + 0x3c]
add edi, eax
adc ebx, ecx
cmp eax, edi
mov ecx, ecx
sbb ecx, ebx
jae 0x51b3f9
mov ecx, dword [ebp + 0x20]
mov eax, dword [ecx + 8]
cmp eax, dword [ecx]
mov dword [esp + 0xd0], eax
jne 0x51b3bc
call sym.alloc::raw_vec::RawVec_LT_T_C_A_GT_::grow_one::h6ce8d1c18b6b955c
mov ecx, dword [ebp + 0x20]
mov eax, dword [ecx + 4]
mov ecx, dword [esp + 0xd0]
mov edx, dword [esp + 0x3c]
lea ecx, [ecx + ecx*2]
mov dword [eax + ecx*8 + 4], edx
mov edx, dword [esp + 0x40]
mov dword [eax + ecx*8], edx
mov edx, dword [ebp + 0x24]
mov dword [eax + ecx*8 + 0xc], ebx
mov dword [eax + ecx*8 + 8], edi
mov dword [eax + ecx*8 + 0x10], edx
mov edx, dword [esp + 0xd0]
mov dword [eax + ecx*8 + 0x14], esi
mov eax, dword [ebp + 0x20]
inc edx
mov dword [eax + 8], edx
mov edx, dword [esp + 0x14]
movzx eax, byte [ebp + 0xc]
lea ecx, [esp + 0x58]
mov ebx, edx
push dword [esp + 0x164]
push dword [ebp + 0x20]
push dword [ebp + 0x1c]
push dword [ebp + 0x18]
push dword [ebp + 0x14]
mov esi, dword [ebp + 0x10]
push esi
push eax
push dword [esp + 0xb0]
call sym.addr2line::function::Function_LT_R_GT_::parse_children::h7fc55cba28ae7922
add esp, 0x20
mov edi, dword [esp + 0xc]
mov eax, dword [esp + 0x44]
mov ecx, dword [esp + 0x48]
cmp byte [esp + 0x58], 0x4b
jne 0x51b6d4
mov dword [esp + 0x48], ecx
mov dword [esp + 0x44], eax
mov esi, ebx
mov edx, dword [esi + 8]
mov edi, dword [esi]
xor eax, eax
cmp byte [edx + 0x21], 8
mov ecx, dword [edx + 0x24]
mov dword [esp + 0x10], edi
mov dword [esp + 0x100], edx
sete al
add ecx, edi
mov edi, dword [edx + 0x1c]
lea ecx, [ecx + eax*8]
add edi, dword [edx + 0x18]
sub ecx, edi
add ecx, 4
mov dword [esp + 0x54], ecx
mov ecx, dword [esi + 0x10]
cmp ecx, dword [ebp + 8]
mov dword [esp + 0x94], ecx
jg 0x51a4cf
jmp 0x51b5ee
mov eax, dword [esp + 0xc]
mov byte [eax], 0x4b
jmp 0x51b63a
mov ecx, dword [esp + 0x14]
mov edi, dword [esp + 0xc]
mov bl, 6
mov dword [ecx], eax
mov dword [ecx + 4], esi
jmp 0x51b625
mov edx, dword [esp + 0x10]
mov eax, dword [esp + 0x14]
mov edi, dword [esp + 0xc]
add edx, dword [esp + 0x18]
mov dword [eax], edx
mov dword [eax + 4], 0
xor eax, eax
mov bl, 0x13
mov ecx, dword [esp + 0x8c]
mov byte [edi], bl
mov byte [edi + 1], bh
mov dword [edi + 4], ecx
mov dword [edi + 8], edx
mov dword [edi + 0xc], eax
lea esp, [ebp - 0xc]
pop esi
pop edi
pop ebx
pop ebp
ret
mov ecx, dword [esp + 0x14]
mov edi, dword [esp + 0xc]
mov dword [ecx], eax
mov eax, dword [esp + 0x1c]
mov dword [ecx + 4], eax
mov cl, 6
jmp 0x51b676
mov ecx, dword [esp + 0x10]
mov eax, dword [esp + 0x14]
mov edi, dword [esp + 0xc]
add ecx, dword [esp + 0x18]
mov esi, ecx
mov dword [eax], ecx
mov dword [eax + 4], 0
xor eax, eax
mov cl, 0x13
mov byte [edi], cl
mov byte [edi + 1], bl
mov word [edi + 2], dx
mov edx, dword [esp + 0x54]
mov dword [edi + 4], edx
mov dword [edi + 8], esi
jmp 0x51b637
mov edi, dword [esp + 0xc]
mov bl, 0x12
jmp 0x51b62c
jmp 0x51b625
movsd xmm0, qword [esp + 0xa0]
movsd xmm1, qword [esp + 0xa8]
jmp 0x51b6e0
mov eax, dword [esp + 0xa4]
movzx ebx, byte [esp + 0xa1]
movzx edx, word [esp + 0xa2]
mov esi, dword [esp + 0xa8]
mov dword [esp + 0x54], eax
mov eax, dword [esp + 0xac]
jmp 0x51b676
movsd xmm0, qword [esp + 0x58]
movsd xmm1, qword [esp + 0x60]
movsd qword [edi + 8], xmm1
movsd qword [edi], xmm0
jmp 0x51b63a
mov esi, eax
jmp 0x51b672
mov edi, dword [esp + 0xc]
mov cl, 0x12
jmp 0x51b676
mov eax, dword [esp + 0xa4]
movzx ebx, byte [esp + 0xa1]
movzx edx, word [esp + 0xa2]
mov esi, dword [esp + 0xa8]
mov edi, dword [esp + 0xc]
mov dword [esp + 0x54], eax
mov eax, dword [esp + 0xac]
jmp 0x51b676
jmp 0x51b676
mov ecx, eax
mov edx, 5
push 0x57a1c8
call sym.core::slice::index::slice_end_index_len_fail::h31017dc9c470f2c8
nop dword [eax]
xchg edx, eax
or eax, dword [eax]
add byte [edi], cl
or byte [eax], al
add byte [edi], cl
or byte [eax], al
add byte [edi], cl
or byte [eax], al
add byte [edi], cl
or byte [eax], al
add byte [edi], cl
or byte [eax], al
add byte [edi], cl
or byte [eax], al
add byte [edi], cl
or byte [eax], al
add byte [edi], cl
or byte [eax], al
add byte [edi], cl
or byte [eax], al
add byte [edi], cl
or byte [eax], al
add byte [edi], cl
or byte [eax], al
add byte [edi], cl
or byte [eax], al
add byte [edi], cl
or byte [eax], al
add byte [ecx + 0xa], cl
add byte [eax], al
mov dword [0xf000009], eax
or byte [eax], al
add byte [edi], cl
or byte [eax], al
add byte [edi], cl
or byte [eax], al
add byte [edi], cl
or byte [eax], al
add byte [edi], cl
or byte [eax], al
add byte [edi], cl
or byte [eax], al
add byte [edi], cl
or byte [eax], al
add byte [edi], cl
or byte [eax], al
add byte [edi], cl
or byte [eax], al
add byte [edi], cl
or byte [eax], al
add byte [edi], cl
or byte [eax], al
add byte [edi], cl
or byte [eax], al
add byte [edi], cl
or byte [eax], al
add byte [edi], cl
or byte [eax], al
add byte [edi], cl
or byte [eax], al
add byte [edi], cl
or byte [eax], al
add byte [edi], cl
or byte [eax], al
add byte [edi], cl
or byte [eax], al
add byte [edi], cl
or byte [eax], al
add byte [edi], cl
or byte [eax], al
add byte [edi], cl
or byte [eax], al
add byte [edi], cl
or byte [eax], al
add byte [edi], cl
or byte [eax], al
add byte [edi], cl
or byte [eax], al
add byte [edi], cl
or byte [eax], al
add byte [edi], cl
or byte [eax], al
add byte [edi], cl
or byte [eax], al
add byte [edi], cl
or byte [eax], al
add byte [edi], cl
or byte [eax], al
add byte [edi], cl
or byte [eax], al
add byte [ebx + 0xf000008], ah
or byte [eax], al
add byte [edi], cl
or byte [eax], al
add byte [edi], cl
or byte [eax], al
add byte [edi], cl
or byte [eax], al
add byte [edi], cl
or byte [eax], al
add byte [edi], cl
or byte [eax], al
add byte [edi], cl
or byte [eax], al
add byte [edi], cl
or byte [eax], al
add byte [edi], cl
or byte [eax], al
add byte [edi], cl
or byte [eax], al
add byte [edi], cl
or byte [eax], al
add byte [edi], cl
or byte [eax], al
add byte [edi], cl
or byte [eax], al
add byte [edi], cl
or byte [eax], al
add byte [edi], cl
or byte [eax], al
add byte [edi], cl
or byte [eax], al
add byte [edi], cl
or byte [eax], al
add byte [edi], cl
or byte [eax], al
add byte [edi], cl
or byte [eax], al
add byte [edi], cl
or byte [eax], al
add byte [edi], cl
or byte [eax], al
add byte [ebx + 0xf000008], ah
or byte [eax], al
add byte [edi], cl
or byte [eax], al
add byte [edi], cl
or byte [eax], al
add byte [edi], cl
or byte [eax], al
add byte [edi], cl
or byte [eax], al
add byte [edi], cl
or byte [eax], al
add byte [edi], cl
or byte [eax], al
add byte [edi], cl
or byte [eax], al
add byte [edi], cl
or byte [eax], al
add byte [edi], cl
or byte [eax], al
add byte [edi], cl
or byte [eax], al
add byte [edi], cl
or byte [eax], al
add byte [edi], cl
or byte [eax], al
add bh, dh
or eax, dword [eax]
add byte [edi], cl
or byte [eax], al
add dh, ah
or al, byte [eax]
add byte [ecx], dl
or eax, dword [eax]
add byte [ecx + ecx], dh
add byte [esi + 0xd], al
add byte [eax], al
push eax
or eax, 0xb050000
add byte [eax], al
add eax, 0x7c00000b
or eax, 0xb050000
add byte [eax], al
and al, 0xd
add byte [eax], al
xor eax, 0x9300000d
or dword [eax], eax
add byte [ebx + 0x61000009], dl
or eax, 0x9930000
add byte [eax], al
xor byte [edx], cl
add byte [eax], al
out dx, eax
or eax, 0x11fe0000
add byte [eax], al
and ecx, dword [esi]
add byte [eax], al
invalid