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

Disassembly:
push ebp
mov ebp, esp
push ebx
push edi
push esi
and esp, 0xfffffff0
sub esp, 0x160
mov esi, dword [ebp + 0x10]
xor eax, eax
xor ebx, ebx
mov edi, dword [esi + 0xc8]
mov esi, dword [esi + 0x100]
cmp edi, 0x50000
mov dword [esp + 0x90], edi
mov edi, 0
mov dword [esp + 0xec], esi
cmovb edi, esi
mov esi, dword [ebp + 0x18]
setae byte [esp + 0x47]
test byte [esi + 0x78], 1
cmove edi, eax
mov eax, dword [edx + 0x10]
mov dword [esp + 0x158], edi
mov edi, ecx
cmp eax, dword [ebp + 8]
mov dword [esp + 0x8c], eax
call 0x1003f868
pop eax
jle 0x10040b20
mov ecx, dword [edx + 4]
mov esi, dword [edx]
mov dword [esp + 0x18], edi
test ecx, ecx
mov dword [esp + 0xc], ecx
mov dword [esp + 0xc0], esi
je 0x10040b25
mov edi, dword [ebp + 0x18]
mov dword [esp + 0x94], eax
mov ecx, dword [esp + 0x90]
mov dword [esp + 0x38], edx
mov eax, dword [edi + 0x64]
mov dword [esp + 0x148], eax
sub eax, dword [esp + 0xec]
mov dword [esp + 0x140], eax
mov eax, ecx
and eax, 0xff00
mov dword [esp + 0x13c], eax
mov eax, ecx
shr eax, 0x10
mov dword [esp + 0x138], eax
mov eax, dword [ebp + 0x10]
mov edi, dword [eax + 0xf8]
mov eax, dword [ebp + 0x18]
mov eax, dword [eax + 0xc]
mov dword [esp + 0xfc], edi
mov dword [esp + 0xf8], eax
sub eax, edi
mov dword [esp + 0xe8], eax
movzx eax, byte [esp + 0x47]
mov bl, al
lea eax, [ebx*8 + 4]
shl ebx, 3
mov dword [esp + 0x14c], eax
mov eax, dword [esp + 0x38]
mov dword [esp + 0x150], ebx
mov ebx, ecx
mov edx, dword [eax + 8]
xor eax, eax
cmp byte [edx + 0x21], 8
mov ecx, dword [edx + 0x24]
mov dword [esp + 0x14], edx
sete al
add ecx, esi
mov esi, dword [esp + 0xec]
lea ecx, [ecx + eax*8]
mov eax, dword [edx + 0x1c]
add eax, dword [edx + 0x18]
mov edx, dword [ebp + 0x10]
sub ecx, eax
movzx eax, byte [edx + 0xc9]
add ecx, 4
mov dword [esp + 0x54], ecx
movzx ecx, word [edx + 0xca]
mov byte [esp + 0x46], al
mov eax, edx
mov word [esp + 0x102], cx
mov ecx, dword [edx + 0xf4]
mov edx, dword [ebp + 0x18]
mov dword [esp + 0x110], ecx
mov ecx, dword [edx + 0x60]
mov dword [esp + 0x130], ecx
lea ecx, [ecx + esi]
mov esi, dword [eax + 0xec]
mov dword [esp + 0x104], ecx
movzx ecx, bh
mov dword [esp + 0x144], ecx
mov ecx, dword [edx + 8]
movzx edx, bl
mov dword [esp + 0x10c], edx
mov edx, dword [eax + 0xe8]
mov eax, dword [ebp + 0x24]
mov dword [esp + 0x108], esi
mov dword [esp + 0xf4], ecx
lea ecx, [ecx + edi]
lea eax, [eax + 1]
mov dword [esp + 0xe4], ecx
mov dword [esp + 0x134], edx
mov dword [esp + 0x154], eax
mov esi, dword [esp + 0xc]
mov eax, dword [esp + 0xc0]
xor edi, edi
xor ebx, ebx
xor ecx, ecx
neg esi
lea edx, [eax + 1]
nop word cs:[eax + eax]
nop dword [eax]
mov ah, byte [edx - 1]
cmp ecx, 0x3f
jne 0x1003fa11
cmp ah, 2
jae 0x10040b27
mov al, ah
mov dword [esp + 0x10], esi
mov byte [esp + 0x24], ah
xor esi, esi
mov dword [esp + 0xd0], ebx
mov ebx, edi
mov edi, 0
and al, 0x7f
movzx eax, al
shld esi, eax, cl
shl eax, cl
test cl, 0x20
cmovne esi, eax
cmovne eax, edi
mov edi, ebx
mov ebx, dword [esp + 0xd0]
or edi, eax
or ebx, esi
cmp byte [esp + 0x24], 0
jns 0x1003fa62
mov esi, dword [esp + 0x10]
add ecx, 7
inc edx
inc esi
jne 0x1003fa00
jmp 0x10040b3a
mov ecx, dword [esp + 0x10]
mov esi, dword [esp + 0x38]
mov eax, edi
or eax, ebx
not ecx
mov dword [esi], edx
mov dword [esi + 4], ecx
je 0x1003fb9d
mov ecx, dword [esi + 0xc]
test ebx, ebx
jne 0x1003fa95
lea eax, [edi - 1]
cmp eax, dword [ecx + 8]
jae 0x1003fa95
imul edx, eax, 0x68
add edx, dword [ecx + 4]
jmp 0x1003fb66
mov eax, dword [ecx + 0xc]
test eax, eax
je 0x10040b99
mov ecx, dword [ecx + 0x10]
mov dword [esp + 0xd0], ebx
mov dword [esp + 0x40], ecx
mov dword [esp + 0xc0], eax
movzx eax, word [eax + 0x4d6]
mov ebx, 0xffffffff
xor edx, edx
mov dword [esp + 0x3c], eax
imul eax, eax, 0x68
mov dword [esp + 0xc], eax
nop
mov ecx, dword [esp + 0xc]
add ecx, edx
je 0x1003fb2c
mov eax, dword [esp + 0xc0]
mov ecx, dword [eax + ebx*8 + 8]
mov eax, dword [eax + ebx*8 + 0xc]
mov dword [esp + 0x24], ecx
mov dword [esp + 0x10], eax
xor eax, dword [esp + 0xd0]
xor ecx, ecx
mov esi, dword [esp + 0x24]
xor esi, edi
or esi, eax
mov eax, dword [esp + 0xd0]
setne cl
cmp edi, dword [esp + 0x24]
sbb eax, dword [esp + 0x10]
mov eax, 0xff
cmovb ecx, eax
inc ebx
add edx, 0xffffff98
cmp cl, 1
je 0x1003fad0
movzx eax, cl
test eax, eax
jne 0x1003fb30
jmp 0x1003fb54
mov ebx, dword [esp + 0x3c]
mov ecx, dword [esp + 0x40]
mov eax, dword [esp + 0xc0]
sub ecx, 1
jb 0x10040b99
mov eax, dword [eax + ebx*4 + 0x4d8]
mov dword [esp + 0x40], ecx
jmp 0x1003faae
mov eax, dword [esp + 0xc0]
mov esi, dword [esp + 0x38]
sub eax, edx
add eax, 0xfffffff0
mov edx, eax
cmp byte [edx + 0x62], 1
mov edi, dword [ebp + 8]
jne 0x1003fb7a
mov eax, dword [esp + 0x8c]
inc eax
mov dword [esi + 0x10], eax
movzx eax, word [edx + 0x60]
mov dword [esp + 8], edx
cmp eax, 0x1d
je 0x1003fbba
cmp eax, 0x2e
jne 0x1003fbce
test byte [edx], 1
mov ecx, edx
je 0x1003fbe6
mov ebx, edi
mov edi, dword [ecx + 8]
mov eax, dword [ecx + 0xc]
jmp 0x1003fbf7
mov eax, dword [esp + 0x8c]
mov edi, dword [ebp + 8]
mov ecx, dword [esp + 0x20]
xor ebx, ebx
dec eax
mov dword [esi + 0x10], eax
mov eax, dword [esp + 0x1c]
jmp 0x10040972
test byte [edx], 1
je 0x1003fe7b
mov eax, dword [edx + 8]
mov ecx, dword [edx + 0xc]
jmp 0x1003fe8a
test byte [edx], 1
mov ecx, edx
je 0x1003feda
mov ebx, edi
mov edi, dword [ecx + 8]
mov eax, dword [ecx + 0xc]
jmp 0x1003feeb
mov eax, dword [ecx + 4]
cmp eax, 6
jae 0x10040c51
mov ebx, edi
lea edi, [ecx + 8]
lea ecx, [esp + 0x98]
mov edx, esi
push eax
push edi
mov eax, dword [esp + 0x1c]
push dword [eax + 0x20]
call sym.gimli::read::unit::skip_attributes::h1bfae63549a103ef
add esp, 0xc
movzx ecx, byte [esp + 0x98]
cmp cl, 0x4b
jne 0x10040be0
mov eax, dword [esi + 0x10]
cmp eax, dword [esp + 0x8c]
jle 0x1003ff13
mov dword [esp + 0x14], eax
mov eax, dword [esi + 4]
mov edi, dword [esi]
test eax, eax
je 0x10040c3c
mov esi, eax
mov dword [esp + 0xc], eax
mov dword [esp + 0xc0], edi
lea ebx, [edi + 1]
xor edi, edi
xor edx, edx
xor ecx, ecx
neg esi
nop dword [eax + eax]
movzx eax, byte [ebx - 1]
cmp ecx, 0x3f
jne 0x1003fc71
cmp al, 2
jae 0x10040b86
mov byte [esp + 0xd0], al
mov dword [esp + 0x10], esi
mov esi, edx
xor edx, edx
mov dword [esp + 0x24], edi
mov edi, 0
movzx eax, byte [esp + 0xd0]
and al, 0x7f
movzx eax, al
shld edx, eax, cl
shl eax, cl
test cl, 0x20
cmovne edx, eax
cmovne eax, edi
mov edi, dword [esp + 0x24]
or esi, edx
mov edx, esi
or edi, eax
cmp byte [esp + 0xd0], 0
jns 0x1003fcc8
mov esi, dword [esp + 0x10]
add ecx, 7
inc ebx
inc esi
jne 0x1003fc60
jmp 0x10040ba1
mov ecx, dword [esp + 0x10]
mov eax, dword [esp + 0x38]
mov dword [eax], ebx
mov ebx, edi
not ecx
mov dword [eax + 4], ecx
mov ecx, eax
or ebx, edx
je 0x1003fe44
mov ecx, dword [ecx + 0xc]
mov ebx, dword [esp + 8]
test edx, edx
jne 0x1003fd05
lea eax, [edi - 1]
cmp eax, dword [ecx + 8]
jae 0x1003fd05
imul eax, eax, 0x68
mov esi, dword [esp + 0x38]
add eax, dword [ecx + 4]
jmp 0x1003fde0
mov eax, dword [ecx + 0xc]
test eax, eax
je 0x10040c46
mov ecx, dword [ecx + 0x10]
mov dword [esp + 0x40], ecx
mov dword [esp + 0xc0], eax
movzx eax, word [eax + 0x4d6]
mov ebx, 0xffffffff
mov dword [esp + 0x3c], eax
imul eax, eax, 0x68
mov dword [esp + 0xc], eax
xor eax, eax
mov ecx, dword [esp + 0xc]
add ecx, eax
je 0x1003fda0
mov dword [esp + 0x24], eax
mov eax, dword [esp + 0xc0]
mov ecx, dword [eax + ebx*8 + 8]
mov eax, dword [eax + ebx*8 + 0xc]
mov dword [esp + 0xd0], ecx
mov dword [esp + 0x10], eax
xor eax, edx
xor ecx, ecx
mov edx, dword [esp + 0xd0]
xor edx, edi
or edx, eax
mov eax, esi
mov edx, esi
setne cl
cmp edi, dword [esp + 0xd0]
sbb eax, dword [esp + 0x10]
mov eax, 0xff
cmovb ecx, eax
mov eax, dword [esp + 0x24]
inc ebx
add eax, 0xffffff98
cmp cl, 1
je 0x1003fd37
mov dword [esp + 0x24], eax
movzx eax, cl
test eax, eax
jne 0x1003fda4
jmp 0x1003fdca
mov ebx, dword [esp + 0x3c]
mov eax, dword [esp + 0x40]
mov cl, 0x12
sub eax, 1
jb 0x10040c41
mov dword [esp + 0x40], eax
mov eax, dword [esp + 0xc0]
mov eax, dword [eax + ebx*4 + 0x4d8]
jmp 0x1003fd17
mov eax, dword [esp + 0xc0]
mov esi, dword [esp + 0x38]
mov ebx, dword [esp + 8]
sub eax, dword [esp + 0x24]
add eax, 0xfffffff0
cmp byte [eax + 0x62], 1
jne 0x1003fdee
mov ecx, dword [esp + 0x14]
inc ecx
mov dword [esi + 0x10], ecx
mov dword [esp + 0x54], eax
push eax
call sym.__LT_gimli..read..abbrev..Attributes_u20_as_u20_core..ops..deref..Deref_GT_::deref::hae5686a143e62adf
add esp, 4
mov edi, dword [esi + 8]
mov dword [esp + 0xd0], eax
mov eax, edx
lea ecx, [esp + 0x98]
mov edx, esi
push eax
push dword [esp + 0xd4]
push dword [edi + 0x20]
call sym.gimli::read::unit::skip_attributes::h1bfae63549a103ef
add esp, 0xc
movzx ecx, byte [esp + 0x98]
cmp cl, 0x4b
jne 0x10040be0
mov edx, dword [esi + 0x10]
mov eax, dword [esp + 0x1c]
mov ecx, dword [esp + 0x20]
mov edi, dword [ebp + 8]
jmp 0x1003fe65
mov edx, dword [esp + 0x14]
mov edi, dword [ebp + 8]
mov ebx, dword [esp + 8]
mov eax, dword [esp + 0x1c]
mov esi, ecx
mov dword [esp + 0x54], 0
dec edx
mov dword [ecx + 0x10], edx
mov ecx, dword [esp + 0x20]
cmp edx, dword [esp + 0x8c]
mov dword [esp + 0x14], edx
jg 0x1003fc36
jmp 0x10040972
mov ecx, dword [edx + 4]
cmp ecx, 6
jae 0x10040c5e
lea eax, [edx + 8]
test ecx, ecx
je 0x1003ff26
xorps xmm0, xmm0
shl ecx, 4
xor edx, edx
mov dword [esp + 0x10], 0
mov dword [esp + 0xc], 0
mov dword [esp + 0x14], 0
mov dword [esp + 0xf0], 0
mov dword [esp + 0x50], 0
mov dword [esp + 0x3c], 0
movaps xmmword [esp + 0xc0], xmm0
jmp 0x100400a7
mov eax, dword [ecx + 4]
cmp eax, 6
jae 0x10040c51
mov ebx, edi
lea edi, [ecx + 8]
lea ecx, [esp + 0x98]
mov edx, esi
push eax
push edi
mov eax, dword [esp + 0x1c]
push dword [eax + 0x20]
call sym.gimli::read::unit::skip_attributes::h1bfae63549a103ef
add esp, 0xc
cmp byte [esp + 0x98], 0x4b
jne 0x10040c0a
mov edi, ebx
mov eax, dword [esp + 0x1c]
mov ecx, dword [esp + 0x20]
mov ebx, dword [esp + 8]
jmp 0x10040972
pxor xmm0, xmm0
xor edx, edx
mov dword [esp + 0x3c], 0
mov dword [esp + 0x10], 0
mov dword [esp + 0x50], 0
mov dword [esp + 0xf0], 0
mov dword [esp + 0xc], 0
mov dword [esp + 0x14], 0
movdqa xmmword [esp + 0xc0], xmm0
mov esi, dword [ebp + 0x1c]
mov edi, edx
mov ebx, dword [esi + 8]
cmp ebx, dword [esi]
jne 0x1003ff7b
mov ecx, esi
call sym.alloc::raw_vec::RawVec_LT_T_C_A_GT_::grow_one::ha401fd3271f3d24d
mov eax, dword [esi + 4]
movdqa xmm0, xmmword [esp + 0xc0]
mov edx, dword [esp + 0x10]
lea ecx, [ebx + ebx*4]
movdqu xmmword [eax + ecx*8], xmm0
mov dword [eax + ecx*8 + 0x10], edx
mov edx, dword [esp + 0x40]
mov dword [eax + ecx*8 + 0x14], edx
mov edx, dword [esp + 0x54]
mov dword [eax + ecx*8 + 0x18], edx
mov edx, dword [esp + 0xc]
mov dword [eax + ecx*8 + 0x1c], edx
mov edx, dword [esp + 0x14]
mov dword [eax + ecx*8 + 0x20], edx
lea eax, [ebx + 1]
mov dword [esi + 8], eax
mov eax, edi
test al, 1
je 0x1003ffff
mov edx, dword [ebp + 0x18]
mov eax, dword [esp + 0x14c]
mov ecx, dword [edx + eax + 0x58]
mov eax, dword [esp + 0x150]
mov eax, dword [edx + eax + 0x58]
mov edx, dword [esp + 0x12c]
sub ecx, edx
jae 0x10040714
mov esi, dword [esp + 0x108]
mov cl, 0x13
xor edx, edx
xor ebx, ebx
xor edi, edi
jmp 0x100407ea
test byte [esp + 0x3c], 1
je 0x10040924
test byte [esp + 0x50], 1
je 0x100408a2
mov eax, dword [esp + 0x88]
mov ecx, dword [esp + 0x48]
cmp dword [esp + 0x4c], eax
sbb ecx, dword [esp + 0x84]
jae 0x10040924
mov edi, dword [ebp + 0x20]
mov esi, dword [edi + 8]
cmp esi, dword [edi]
jne 0x10040042
mov ecx, edi
call sym.alloc::raw_vec::RawVec_LT_T_C_A_GT_::grow_one::h6ce8d1c18b6b955c
mov eax, dword [edi + 4]
mov edx, dword [esp + 0x48]
lea ecx, [esi + esi*2]
inc esi
mov dword [eax + ecx*8 + 4], edx
mov edx, dword [esp + 0x4c]
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], ebx
mov dword [edi + 8], esi
jmp 0x10040924
mov esi, edi
mov edx, ebx
mov eax, dword [esp + 0x24]
mov ecx, dword [esp + 0xd0]
add eax, 0x10
add ecx, 0xfffffff0
je 0x1003ff68
movq xmm0, qword [eax]
movq xmm1, qword [eax + 8]
mov dword [esp + 0x24], eax
mov eax, dword [esi + 8]
mov ebx, edx
mov edi, esi
mov edx, esi
lea esi, [esp + 0x68]
mov dword [esp + 0xd0], ecx
lea ecx, [esp + 0x98]
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 + 0x98]
mov ecx, eax
xor ecx, 0x2e
or ecx, dword [esp + 0x9c]
je 0x100406e2
movzx ecx, word [esp + 0xa8]
lea edx, [ecx - 3]
cmp edx, 0x56
ja 0x10040195
mov ecx, dword [edx*4 + 0x10040c6c]
mov esi, edi
mov edx, ebx
add ecx, dword [esp + 0x94]
jmp ecx
cmp ecx, 0x6e
je 0x100401a6
cmp ecx, 0x2007
jne 0x1004008c
lea esi, [esp + 0x68]
lea edx, [esp + 0x98]
mov ecx, esi
call sym.gimli::read::unit::Attribute_LT_R_GT_::value::h43a21af532bb1013
movzx eax, byte [esp + 0x46]
mov edx, dword [ebp + 0x18]
lea ecx, [esp + 0x28]
push esi
push dword [esp + 0x114]
push eax
call sym.gimli::read::dwarf::Dwarf_LT_R_GT_::attr_string::h2e2835e0fe0b4cd2
add esp, 0xc
cmp byte [esp + 0x28], 0x4b
jne 0x1004008c
mov eax, dword [esp + 0x30]
mov ecx, dword [esp + 0x2c]
mov dword [esp + 0x40], eax
mov dword [esp + 0x10], ecx
jmp 0x1004008c
lea eax, [esp + 0xa0]
movq xmm0, qword [eax]
movq xmm1, qword [eax + 8]
movq qword [esp + 0x60], xmm1
movq qword [esp + 0x58], xmm0
mov eax, dword [esp + 0x1c]
mov ecx, dword [esp + 0x20]
mov ebx, dword [esp + 8]
mov esi, edi
mov edi, dword [ebp + 8]
jmp 0x10040967
add eax, edx
mov edx, dword [esp + 0x134]
mov dword [esp + 0x98], edx
mov edx, dword [esp + 0x108]
mov dword [esp + 0x9c], edx
mov edx, dword [esp + 0xf4]
mov dword [esp + 0xa0], edx
mov edx, dword [esp + 0xf8]
mov dword [esp + 0xa4], edx
mov edx, dword [esp + 0xfc]
mov dword [esp + 0xa8], edx
mov edx, dword [esp + 0x90]
mov word [esp + 0xac], dx
mov edx, dword [esp + 0x138]
mov word [esp + 0xae], dx
mov dword [esp + 0xb0], eax
mov dword [esp + 0xb4], ecx
movzx ecx, byte [esp + 0x47]
lea edx, [esp + 0x98]
mov byte [esp + 0xb8], cl
lea ecx, [esp + 0x68]
mov byte [esp + 0xbb], 0
mov word [esp + 0xb9], 0
call sym.gimli::read::rnglists::RngListIter_LT_R_GT_::next::hb9c1b088416d1196
mov eax, dword [esp + 0x68]
mov ecx, dword [esp + 0x6c]
mov edi, dword [ebp + 0x20]
mov edx, eax
xor edx, 2
or edx, ecx
jne 0x10040847
mov ecx, dword [esp + 0x70]
cmp cl, 0x4b
je 0x10040924
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 esi, dword [esp + 0x38]
mov dword [esp + 0x60], eax
mov dword [esp + 0x64], edi
jmp 0x10040958
mov eax, dword [edi + 4]
mov edx, dword [ebp + 0x24]
lea ecx, [esi + esi*2]
inc esi
movdqu xmmword [eax + ecx*8], xmm1
mov dword [eax + ecx*8 + 0x10], edx
mov dword [eax + ecx*8 + 0x14], ebx
mov dword [edi + 8], esi
lea ecx, [esp + 0x68]
lea edx, [esp + 0x98]
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 0x100407ca
xor eax, 1
or eax, ecx
jne 0x10040924
movdqu xmm1, xmmword [esp + 0x70]
pshufd xmm2, xmm1, 0xee
pshufd xmm0, xmm1, 0x55
pshufd xmm3, xmm1, 0xff
movd ecx, xmm1
movd esi, xmm2
movd eax, xmm0
movd edx, xmm3
cmp ecx, esi
sbb eax, edx
jae 0x10040826
mov esi, dword [edi + 8]
cmp esi, dword [edi]
jne 0x1004080c
mov ecx, edi
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 0x1004080c
test byte [esp + 0xf0], 1
je 0x10040924
mov esi, dword [esp + 0x124]
mov eax, dword [esp + 0x4c]
mov edi, dword [esp + 0x120]
mov ecx, dword [esp + 0x48]
add esi, eax
adc edi, ecx
cmp eax, esi
mov ecx, ecx
sbb ecx, edi
jae 0x10040924
mov ecx, dword [ebp + 0x20]
mov eax, dword [ecx + 8]
cmp eax, dword [ecx]
mov dword [esp + 0xd0], eax
jne 0x100408e7
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 + 0x48]
lea ecx, [ecx + ecx*2]
mov dword [eax + ecx*8 + 4], edx
mov edx, dword [esp + 0x4c]
mov dword [eax + ecx*8], edx
mov edx, dword [ebp + 0x24]
mov dword [eax + ecx*8 + 0xc], edi
mov dword [eax + ecx*8 + 8], esi
mov dword [eax + ecx*8 + 0x10], edx
mov edx, dword [esp + 0xd0]
mov dword [eax + ecx*8 + 0x14], ebx
mov eax, dword [ebp + 0x20]
inc edx
mov dword [eax + 8], edx
mov esi, dword [esp + 0x38]
movzx eax, byte [ebp + 0xc]
lea ecx, [esp + 0x58]
mov edx, esi
push dword [esp + 0x154]
push dword [ebp + 0x20]
push dword [ebp + 0x1c]
push dword [ebp + 0x18]
push dword [ebp + 0x14]
push dword [ebp + 0x10]
push eax
push dword [esp + 0xa8]
call sym.addr2line::function::Function_LT_R_GT_::parse_children::h7fc55cba28ae7922
add esp, 0x20
mov edi, dword [ebp + 8]
mov ebx, dword [esp + 8]
mov eax, dword [esp + 0x1c]
mov ecx, dword [esp + 0x20]
cmp byte [esp + 0x58], 0x4b
jne 0x10040c1e
mov edx, dword [esi + 0x10]
cmp edx, edi
mov edi, dword [esp + 0x18]
mov dword [esp + 0x8c], edx
jle 0x10040b20
mov edx, dword [esi + 8]
mov dword [esp + 0x20], ecx
mov dword [esp + 0x1c], eax
mov ecx, dword [esi]
mov dword [esp + 8], ebx
mov eax, dword [edx + 0x24]
mov dword [esp + 0xc0], ecx
mov dword [esp + 0x14], edx
add eax, ecx
xor ecx, ecx
cmp byte [edx + 0x21], 8
sete cl
lea ecx, [eax + ecx*8]
mov eax, dword [edx + 0x1c]
add eax, dword [edx + 0x18]
mov edx, edi
sub ecx, eax
mov eax, dword [esi + 4]
add ecx, 4
mov dword [esp + 0x54], ecx
test eax, eax
mov dword [esp + 0xc], eax
jne 0x1003f9dd
jmp 0x10040b61
mov byte [edi], 0x4b
jmp 0x10040b7e
jmp 0x10040b5d
mov eax, dword [esp + 0x38]
not esi
mov dword [eax], edx
mov edx, dword [esp + 0x18]
mov dword [eax + 4], esi
mov al, 6
jmp 0x10040b6c
mov ecx, dword [esp + 0xc0]
mov eax, dword [esp + 0x38]
add ecx, dword [esp + 0xc]
mov dword [eax], ecx
mov dword [eax + 4], 0
mov ah, byte [esp + 0x24]
mov dword [esp + 0xc0], ecx
mov edx, dword [esp + 0x18]
mov esi, dword [esp + 0xc0]
xor ecx, ecx
mov al, 0x13
mov edi, dword [esp + 8]
mov byte [edx], al
mov byte [edx + 1], ah
mov dword [edx + 4], edi
mov dword [edx + 8], esi
mov dword [edx + 0xc], ecx
lea esp, [ebp - 0xc]
pop esi
pop edi
pop ebx
pop ebp
ret
mov eax, dword [esp + 0x38]
not esi
mov cl, 6
mov dword [eax], ebx
mov dword [eax + 4], esi
mov eax, dword [esp + 0x18]
jmp 0x10040bc8
mov edx, dword [esp + 0x18]
mov al, 0x12
jmp 0x10040b6c
mov edi, dword [esp + 0xc0]
mov eax, dword [esp + 0x38]
add edi, dword [esp + 0xc]
mov dword [eax], edi
mov dword [eax + 4], 0
mov eax, dword [esp + 0x18]
mov ch, byte [esp + 0xd0]
xor edx, edx
mov cl, 0x13
mov byte [eax], cl
mov byte [eax + 1], ch
mov word [eax + 2], si
mov esi, dword [esp + 0x54]
mov dword [eax + 4], esi
mov dword [eax + 8], edi
mov dword [eax + 0xc], edx
jmp 0x10040b7e
mov eax, dword [esp + 0x9c]
mov ch, byte [esp + 0x99]
movzx esi, word [esp + 0x9a]
mov edx, dword [esp + 0xa4]
mov edi, dword [esp + 0xa0]
mov dword [esp + 0x54], eax
jmp 0x10040b93
movsd xmm0, qword [esp + 0x98]
movsd xmm1, qword [esp + 0xa0]
jmp 0x10040c2a
movsd xmm0, qword [esp + 0x58]
movsd xmm1, qword [esp + 0x60]
mov eax, dword [esp + 0x18]
movsd qword [eax + 8], xmm1
movsd qword [eax], xmm0
jmp 0x10040b7e
jmp 0x10040bb9
jmp 0x10040b93
mov eax, dword [esp + 0x18]
mov cl, 0x12
jmp 0x10040bc8
push 0x100ed52c
push 5
push eax
call sym.core::slice::index::slice_end_index_len_fail::h31017dc9c470f2c8
push 0x100ed52c
push 5
push ecx
call sym.core::slice::index::slice_end_index_len_fail::h31017dc9c470f2c8
nop
invalid