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

Disassembly:
push ebp
mov ebp, esp
push ebx
push edi
push esi
and esp, 0xfffffff8
sub esp, 0xf8
mov edi, dword [ecx]
mov ebx, ecx
lea esi, [edi + 0x28]
mov ecx, esi
call fcn.0048238b
cmp byte [edi + 0x78], 0
je 0x489825
mov ecx, esi
call fcn.00432786
jmp 0x48a30b
lea ecx, [edi + 0x64]
mov dword [esp + 0xc], ebx
mov byte [edi + 0x78], 1
call fcn.00481e56
and dword [edi + 0x64], 0
lea ecx, [edi + 0x90]
call fcn.00483a51
mov eax, dword [edi + 0x70]
lea ecx, [esp + 0x40]
mov dword [esp + 0x90], eax
movsd xmm0, qword [edi + 0x68]
movsd qword [esp + 0x88], xmm0
and dword [edi + 0x68], 0
call fcn.004836da
lea ebx, [esp + 0xe0]
lea edx, [esp + 0x40]
mov ecx, ebx
call fcn.00483724
movsd xmm2, qword [edi + 0x58]
movq xmm0, qword [ebx]
movsd xmm1, qword [ebx + 8]
mov ecx, esi
movsd qword [esp + 0xc8], xmm2
movsd xmm2, qword [edi + 0x50]
movsd qword [esp + 0xc0], xmm2
movsd xmm2, qword [edi + 0x40]
movsd xmm3, qword [edi + 0x48]
movsd qword [esp + 0xb8], xmm3
movsd qword [esp + 0xb0], xmm2
mov dword [edi + 0x40], 0x4c0430
and dword [edi + 0x44], 0
and dword [edi + 0x48], 0
and dword [edi + 0x4c], 0
movq qword [edi + 0x50], xmm0
movsd qword [edi + 0x58], xmm1
call fcn.00432786
xor ecx, ecx
call fcn.00482862
test eax, eax
je 0x4898f4
cmp byte [eax + 0x3a], 2
sete al
jmp 0x4898f6
mov al, 2
mov esi, dword [esp + 0xc]
cmp al, 2
je 0x48992c
and al, 1
jne 0x48992c
call fcn.004825c1
test al, al
je 0x48a39e
lea ecx, [esp + 0xb0]
call fcn.00481e6a
lea ecx, [esp + 0x88]
call fcn.00481e60
jmp 0x48a30b
call fcn.00487b2e
test eax, eax
je 0x489a7e
add esi, 4
lea ecx, [esp + 0x68]
mov dword [ecx], eax
mov dword [ecx + 4], edx
mov dword [esp + 0xc], esi
xor ecx, ecx
call fcn.00482862
test eax, eax
je 0x489962
mov bl, byte [eax + 0x38]
mov bh, byte [eax + 0x39]
mov word [eax + 0x38], 0x8001
jmp 0x489964
mov bl, 2
mov edi, dword [esi]
test edi, edi
je 0x48a363
lea ecx, [esp + 0x68]
call fcn.00486310
test al, 1
movzx ecx, bl
movzx edx, bh
jne 0x489a22
mov dword [esp + 8], ecx
mov dword [esp + 4], edx
mov ecx, eax
mov ebx, eax
mov eax, dword [edi + 0x18]
shr ecx, 0x10
movzx esi, cl
test al, 2
jne 0x489a41
test al, 4
jne 0x489a31
test al, 1
je 0x4899e6
mov ecx, dword [edi + 0x10]
mov edx, dword [edi + 0x14]
push dword [esp + 0x6c]
push dword [esp + 0x6c]
call fcn.0048635d
pop ecx
pop edx
test al, al
jne 0x489a0c
mov eax, dword [edi + 0x18]
mov ecx, eax
and ecx, 0xfffffffe
lock cmpxchg dword [edi + 0x18], ecx
jne 0x4899ca
test al, 2
jne 0x489a3c
mov eax, dword [edi + 0x10]
push dword [edi + 0x14]
call dword [eax + 0xc]
add esp, 4
mov eax, dword [esp + 0x68]
push dword [esp + 0x6c]
call dword [eax]
add esp, 4
mov dword [edi + 0x10], eax
mov dword [edi + 0x14], edx
mov eax, dword [edi + 0x18]
mov ecx, eax
or ecx, 1
lock cmpxchg dword [edi + 0x18], ecx
jne 0x4899fc
test al, 2
jne 0x489a41
movzx ecx, bh
mov edx, esi
call fcn.0048633d
mov esi, dword [esp + 0xc]
mov edx, dword [esp + 4]
mov ecx, dword [esp + 8]
call fcn.004555be
call fcn.00487c1a
jmp 0x489949
xor ecx, ecx
mov edx, esi
call fcn.0048633d
jmp 0x489a63
lock or dword [edi + 0x18], 1
mov bl, byte [edi + 0x1c]
xor ecx, ecx
mov edx, esi
mov byte [edi + 0x1c], 0
call fcn.0048633d
test bl, bl
je 0x489a63
mov esi, dword [esp + 0xc]
mov ecx, esi
call fcn.00482116
and dword [esi], 0
mov ecx, dword [esp + 8]
mov edx, dword [esp + 4]
call fcn.004555be
mov eax, dword [esp + 0x68]
push dword [esp + 0x6c]
call dword [eax + 0xc]
add esp, 4
xor esi, esi
cmp dword [esp + 0x88], 0
mov eax, 0
je 0x489aa6
lea ecx, [esp + 0x88]
call fcn.004830cf
mov dword [esp + 0x44], eax
xor eax, eax
mov dword [esp + 0x48], edx
inc eax
lea ecx, [esp + 0x40]
mov dword [ecx], eax
call fcn.00482075
mov ecx, dword [esp + 0xb0]
mov ebx, dword [esp + 0xb4]
mov edx, dword [esp + 0xbc]
movdqa xmm0, xmmword [ecx]
lea eax, [ecx + ebx + 1]
test ebx, ebx
mov dword [esp + 8], edx
mov dword [esp + 4], eax
lea eax, [ecx + 0x10]
mov dword [esp + 0xc], eax
pmovmskb edi, xmm0
not edi
je 0x489b10
lea edx, [ebx + 1]
xor esi, esi
cmp edx, 0xfffffff
ja 0x489b0a
shl edx, 4
add ebx, 0x11
add ebx, edx
jb 0x489b0a
cmp ebx, 0x7ffffff1
jb 0x48a313
mov eax, ecx
sub eax, edx
jmp 0x489b10
lea edx, [esp + 0x68]
mov dword [edx], eax
mov dword [edx + 4], esi
mov dword [edx + 8], ebx
mov dword [edx + 0xc], ecx
mov ecx, dword [esp + 0xc]
mov esi, dword [esp + 4]
mov dword [edx + 0x10], ecx
mov ecx, dword [esp + 8]
mov dword [edx + 0x14], esi
lea esi, [esp + 0x40]
mov word [edx + 0x18], di
mov dword [edx + 0x1c], ecx
mov ecx, esi
call fcn.00482707
cmp dword [esi + 4], 0
push 4
pop esi
je 0x489d16
mov eax, dword [esp + 0x84]
xor ecx, ecx
dec ecx
inc eax
cmove eax, ecx
cmp eax, 5
cmovae esi, eax
cmp esi, 0x7ffffff
ja 0x48a397
mov edi, esi
shl edi, 4
js 0x48a397
push 4
pop ecx
mov edx, edi
call fcn.004826eb
test eax, eax
je 0x48a3af
lea ebx, [esp + 0x40]
xor edi, edi
mov dword [esp + 0x10], eax
mov dword [esp + 0x30], 0
movsd xmm0, qword [ebx]
movsd xmm1, qword [ebx + 8]
inc edi
movsd qword [eax + 8], xmm1
movsd qword [eax], xmm0
movsd xmm1, qword [esp + 0x78]
movq xmm0, qword [esp + 0x80]
movsd xmm2, qword [esp + 0x68]
movsd qword [ebx + 0x10], xmm1
movsd xmm1, qword [esp + 0x70]
movq qword [ebx + 0x18], xmm0
movsd qword [ebx], xmm2
movsd qword [ebx + 8], xmm1
lea ecx, [esp + 0xd0]
mov edx, ebx
call fcn.00482707
cmp dword [esp + 0xd4], 0
mov dword [esp + 0x14], edi
je 0x489ce6
cmp edi, esi
jne 0x489cb6
mov eax, esi
mov esi, dword [esp + 0x5c]
mov ecx, 0xffffffff
inc esi
cmove esi, ecx
xor ecx, ecx
add esi, eax
jae 0x489c24
mov edi, eax
jmp 0x489ca9
mov edi, eax
add eax, eax
cmp eax, esi
cmova esi, eax
cmp esi, 5
jae 0x489c35
push 4
pop esi
mov ecx, dword [esp + 0x10]
xor edx, edx
cmp esi, 0x8000000
mov eax, edi
setb dl
shl eax, 4
shl edx, 2
mov dword [esp + 0xa4], ecx
mov dword [esp + 0xac], eax
mov eax, esi
shl eax, 4
push 4
pop ecx
mov dword [esp + 0xa8], ecx
lea ecx, [esp + 0x98]
lea ebx, [esp + 0xa4]
push ebx
push eax
call fcn.0042b60b
pop eax
pop ecx
cmp dword [esp + 0x98], 0
mov ecx, dword [esp + 0x9c]
je 0x489c9a
mov esi, dword [esp + 0xa0]
jmp 0x489ca5
mov dword [esp + 0x10], ecx
mov edi, esi
mov ecx, getpeername
lea ebx, [esp + 0x40]
mov edx, esi
call fcn.00408dd3
mov esi, edi
mov edi, dword [esp + 0x14]
movq xmm0, qword [esp + 0xd0]
movsd xmm1, qword [esp + 0xd8]
mov ecx, dword [esp + 0x10]
dec dword [esp + 0x30]
mov eax, edi
inc edi
shl eax, 4
movsd qword [ecx + eax + 8], xmm1
movq qword [ecx + eax], xmm0
jmp 0x489be0
lea ecx, [esp + 0x40]
call fcn.00482731
cmp edi, 0x15
mov dword [esp + 0x38], esi
jae 0x489d2e
cmp edi, 1
jbe 0x48a282
mov esi, dword [esp + 0x10]
mov edx, edi
mov ecx, esi
push 1
call fcn.00485fbf
pop eax
jmp 0x48a286
lea ecx, [esp + 0x68]
call fcn.00482731
mov dword [esp + 0x38], 0
xor edi, edi
jmp 0x48a286
mov al, byte [0x4eb238]
lea ecx, [edi*8]
and ecx, 0x7ffffff0
push 4
pop edx
call fcn.004071f0
test eax, eax
mov dword [esp + 0xc], eax
je 0x48a3bb
push 0x10
pop ecx
call fcn.004279af
test eax, eax
je 0x48a3ca
mov esi, dword [esp + 0x10]
mov ebx, eax
xor edx, edx
mov dword [esp + 0x2c], 0
lea ecx, [esi + 0x20]
mov dword [esp + 0x3c], ecx
push 0x10
pop eax
mov ecx, ebx
mov ebx, esi
mov esi, edi
sub esi, edx
jbe 0x48a269
cmp esi, 2
mov dword [esp + 4], edx
mov dword [esp + 8], eax
jae 0x489da0
mov edx, edi
jmp 0x489f0f
mov dword [esp + 0x18], ecx
mov ecx, edx
shl edx, 4
mov eax, ebx
lea eax, [ebx + edx]
mov edi, dword [eax]
mov ebx, dword [eax + 0x10]
cmp ebx, edi
mov dword [esp + 0x20], edi
mov dword [esp + 0x1c], ebx
jae 0x489de5
mov eax, dword [esp + 0x30]
add edx, dword [esp + 0x3c]
lea edi, [eax + ecx]
mov ecx, ebx
push 2
pop ebx
lea eax, [edi + ebx]
cmp eax, 1
je 0x489e0d
mov eax, dword [edx]
cmp eax, ecx
jae 0x489e0b
inc ebx
add edx, 0x10
mov ecx, eax
jmp 0x489dcf
mov eax, dword [esp + 0x30]
add edx, dword [esp + 0x3c]
lea edi, [eax + ecx]
mov eax, ebx
push 2
pop ebx
lea ecx, [edi + ebx]
cmp ecx, 1
je 0x489e0d
mov ecx, dword [edx]
cmp ecx, eax
jb 0x489e0b
inc ebx
add edx, 0x10
mov eax, ecx
jmp 0x489df5
mov esi, ebx
mov eax, dword [esp + 0x1c]
mov ecx, dword [esp + 4]
mov edi, dword [esp + 0x14]
cmp eax, dword [esp + 0x20]
lea edx, [esi + ecx]
jae 0x489ef1
mov dword [esp + 0x34], esi
mov dword [esp + 0x24], edx
push 0x4c068c
push edi
push dword [esp + 0x18]
call fcn.00485f88
add esp, 0xc
mov esi, edx
shl edx, 4
shr esi, 1
add edx, eax
mov ecx, esi
shl ecx, 4
sub edx, ecx
mov dword [esp + 0x20], ecx
xor ecx, ecx
mov dword [esp + 0x1c], edx
mov edx, esi
push 0x4c05fc
push esi
push eax
call fcn.00485f88
add esp, 0xc
mov ebx, edx
mov edi, eax
xor ecx, ecx
mov edx, esi
push 0x4c060c
push esi
push dword [esp + 0x24]
call fcn.00485f88
add esp, 0xc
mov ecx, dword [esp + 0x20]
dec esi
mov dword [esp + 0x20], ebx
lea eax, [eax + ecx - 0x10]
mov ecx, ebx
cmp esi, 0xffffffff
je 0x489efb
sub ecx, 1
jb 0x48a31b
mov ebx, esi
cmp ebx, edx
jae 0x48a328
movsd xmm0, qword [edi]
movsd xmm1, qword [edi + 8]
dec esi
movsd qword [esp + 0x48], xmm1
movsd qword [esp + 0x40], xmm0
movsd xmm0, qword [eax]
movsd xmm1, qword [eax + 8]
movsd qword [edi + 8], xmm1
movsd qword [edi], xmm0
add edi, 0x10
movq xmm0, qword [esp + 0x40]
movsd xmm1, qword [esp + 0x48]
movsd qword [eax + 8], xmm1
movq qword [eax], xmm0
add eax, 0xfffffff0
jmp 0x489e94
mov ecx, dword [esp + 0x18]
mov eax, dword [esp + 8]
jmp 0x489f0f
mov edi, dword [esp + 0x14]
mov edx, dword [esp + 0x24]
mov eax, dword [esp + 8]
mov ecx, dword [esp + 0x18]
mov esi, dword [esp + 0x34]
cmp edx, dword [esp + 4]
jb 0x48a374
cmp edx, edi
ja 0x48a374
jae 0x489f6e
cmp esi, 9
ja 0x489f6e
mov ebx, ecx
mov ecx, dword [esp + 4]
lea edi, [ecx + 0xa]
cmp edi, dword [esp + 0x14]
cmovae edi, dword [esp + 0x14]
cmp esi, 1
adc esi, 0
mov edx, edi
push 0x4c0758
push dword [esp + 0x18]
push dword [esp + 0x18]
call fcn.00485f88
add esp, 0xc
mov ecx, eax
push esi
call fcn.00485fbf
mov edx, edi
mov eax, dword [esp + 0xc]
mov edi, dword [esp + 0x18]
mov ecx, ebx
add esp, 4
mov esi, dword [esp + 0x2c]
mov dword [esp + 0x24], edx
cmp esi, eax
jne 0x489fbe
mov ebx, ecx
lea ecx, [eax + eax]
mov edi, eax
mov dword [esp + 0x28], ecx
call fcn.004279af
test eax, eax
je 0x48a383
mov esi, eax
shl edi, 3
push edi
mov edi, ebx
push ebx
push eax
call sub.VCRUNTIME140.dll_memcpy
add esp, 0xc
mov ecx, ebx
push 4
pop edx
call fcn.00407250
mov ebx, esi
mov esi, dword [esp + 0x2c]
mov edx, dword [esp + 0x24]
mov edi, dword [esp + 0x14]
jmp 0x489fc4
mov dword [esp + 0x28], eax
mov ebx, ecx
mov ecx, dword [esp + 4]
mov eax, edx
mov dword [esp + 0x18], ebx
sub eax, ecx
mov dword [ebx + esi*8], eax
mov dword [ebx + esi*8 + 4], ecx
inc esi
cmp esi, 2
mov dword [esp + 0x2c], esi
jb 0x48a22a
mov edx, dword [esp + 0x18]
mov eax, dword [edx + esi*8 - 8]
mov ecx, dword [edx + esi*8 - 4]
add ecx, eax
cmp ecx, edi
mov ecx, edx
je 0x48a044
mov edx, dword [ecx + esi*8 - 0x10]
cmp edx, eax
jbe 0x48a044
cmp esi, 2
jbe 0x48a23f
mov edi, ecx
lea ecx, [esi - 3]
mov dword [esp + 0x1c], ecx
mov ecx, dword [edi + esi*8 - 0x18]
mov edi, esi
lea esi, [edx + eax]
cmp ecx, esi
jbe 0x48a052
cmp edi, 3
jbe 0x48a250
mov esi, edi
mov edi, dword [esp + 0x18]
add edx, ecx
cmp dword [edi + esi*8 - 0x20], edx
mov edi, dword [esp + 0x14]
mov edx, dword [esp + 0x1c]
jbe 0x48a058
jmp 0x48a22a
cmp esi, 3
jb 0x48a060
mov ecx, dword [ecx + esi*8 - 0x18]
lea edx, [esi - 3]
jmp 0x48a058
mov edx, dword [esp + 0x1c]
mov esi, edi
cmp ecx, eax
mov ecx, dword [esp + 0x18]
jb 0x48a063
lea edx, [esi - 2]
mov edi, edx
mov edx, esi
push 0x4c069c
push edi
call fcn.00485926
pop ecx
pop edx
mov ebx, dword [eax]
mov eax, dword [eax + 4]
mov ecx, dword [esp + 0x18]
mov edx, esi
mov dword [esp + 0x1c], edi
mov dword [esp + 0x20], eax
lea eax, [edi + 1]
push 0x4c06ac
mov dword [esp + 0x38], eax
push eax
call fcn.00485926
pop ecx
pop edx
mov ecx, dword [eax]
mov edx, dword [eax + 4]
mov dword [esp + 0x60], ecx
add edx, ecx
mov ecx, dword [esp + 0x20]
push 0x4c06bc
push dword [esp + 0x18]
push dword [esp + 0x18]
call fcn.00485f88
add esp, 0xc
mov ecx, ebx
mov esi, edx
sub edx, ebx
mov dword [esp + 0x64], ebx
mov dword [esp + 4], eax
shl ecx, 4
shl esi, 4
cmp edx, ebx
lea edi, [eax + ecx]
jae 0x48a167
shl edx, 4
push edx
push edi
mov dword [esp + 0x10], esi
mov esi, dword [esp + 0x14]
mov ebx, edx
push esi
call sub.VCRUNTIME140.dll_memcpy
mov ecx, dword [esp + 0x10]
add esp, 0xc
mov eax, dword [esp + 8]
add ebx, esi
lea eax, [ecx + eax - 0x10]
cmp edi, ecx
jbe 0x48a1cc
cmp ebx, dword [esp + 0xc]
jbe 0x48a1cc
mov ecx, dword [ebx - 0x10]
mov edx, dword [edi - 0x10]
mov dword [esp + 8], eax
mov eax, ebx
mov ebx, 0
mov esi, 0
cmp ecx, edx
sbb ebx, ebx
cmp ecx, edx
adc esi, 0xffffffff
shl ebx, 4
shl esi, 4
add edi, ebx
add eax, esi
cmp ecx, edx
mov ebx, eax
mov eax, dword [esp + 8]
mov ecx, ebx
cmovb ecx, edi
movq xmm0, qword [ecx]
movsd xmm1, qword [ecx + 8]
mov ecx, dword [esp + 4]
movsd qword [eax + 8], xmm1
movq qword [eax], xmm0
add eax, 0xfffffff0
jmp 0x48a104
add esi, eax
mov dword [esp + 8], esi
push ecx
push eax
mov esi, dword [esp + 0x14]
push esi
mov ebx, ecx
call sub.VCRUNTIME140.dll_memcpy
mov ecx, dword [esp + 0x10]
add esp, 0xc
add ebx, esi
mov eax, esi
cmp eax, ebx
jae 0x48a1d2
cmp edi, dword [esp + 8]
jae 0x48a1d2
mov esi, dword [edi]
mov dword [esp + 4], ecx
xor ecx, ecx
xor edx, edx
cmp esi, dword [eax]
mov esi, eax
setae cl
cmovb esi, edi
setb dl
shl ecx, 4
movq xmm0, qword [esi]
movsd xmm1, qword [esi + 8]
shl edx, 4
add eax, ecx
mov ecx, dword [esp + 4]
add edi, edx
movsd qword [ecx + 8], xmm1
movq qword [ecx], xmm0
add ecx, 0x10
jmp 0x48a186
mov eax, dword [esp + 0xc]
mov ecx, edi
sub ebx, eax
push ebx
push eax
push ecx
call sub.VCRUNTIME140.dll_memcpy
add esp, 0xc
mov esi, dword [esp + 0x2c]
mov edi, dword [esp + 0x14]
cmp esi, dword [esp + 0x34]
jbe 0x48a337
mov ecx, dword [esp + 0x60]
mov edx, dword [esp + 0x1c]
mov ebx, dword [esp + 0x18]
add ecx, dword [esp + 0x64]
lea eax, [ebx + edx*8]
mov dword [eax + 8], ecx
mov ecx, dword [esp + 0x20]
mov dword [eax + 0xc], ecx
lea ecx, [ebx + edx*8 + 8]
not edx
add edx, esi
shl edx, 3
push edx
push ecx
push eax
call sub.VCRUNTIME140.dll_memmove
add esp, 0xc
dec esi
jmp 0x489fd8
mov eax, dword [esp + 0x28]
mov edx, dword [esp + 0x24]
mov ebx, dword [esp + 0x10]
mov ecx, dword [esp + 0x18]
jmp 0x489d82
mov eax, dword [esp + 0x28]
mov edx, dword [esp + 0x24]
mov ebx, dword [esp + 0x10]
jmp 0x489d82
mov eax, dword [esp + 0x28]
mov edx, dword [esp + 0x24]
mov ebx, dword [esp + 0x10]
mov edi, dword [esp + 0x14]
mov ecx, dword [esp + 0x18]
jmp 0x489d82
push 4
pop esi
mov edx, esi
call fcn.00407250
mov ecx, dword [esp + 0xc]
mov edx, esi
call fcn.00407250
mov esi, ebx
jmp 0x48a286
mov esi, dword [esp + 0x10]
shl edi, 4
mov ecx, esi
add esi, edi
mov eax, edi
mov edi, ecx
mov dword [esp + 8], ecx
test eax, eax
je 0x48a2d9
mov ebx, eax
mov eax, dword [edi + 4]
test eax, eax
je 0x48a2d6
lea ecx, [edi + 0x10]
mov edx, dword [edi + 0xc]
mov dword [esp + 4], ecx
mov ecx, dword [edi + 8]
mov dword [esp + 0x40], eax
mov dword [esp + 0x48], edx
mov dword [esp + 0x44], ecx
lea ecx, [esp + 0x40]
call fcn.004830cf
mov ecx, eax
call fcn.00481bcd
mov edi, dword [esp + 4]
mov eax, ebx
add eax, 0xfffffff0
jmp 0x48a295
add edi, 0x10
sub esi, edi
add edi, 4
shr esi, 4
sub esi, 1
jb 0x48a2f2
mov ecx, edi
call fcn.0046b5c3
add edi, 0x10
jmp 0x48a2e1
mov eax, dword [esp + 0x38]
test eax, eax
je 0x48a30b
shl eax, 4
push 4
pop edx
mov ecx, dword [esp + 8]
push eax
call fcn.00481bd8
pop eax
lea esp, [ebp - 0xc]
pop esi
pop edi
pop ebx
pop ebp
ret
push 0x10
pop esi
jmp 0x489b0a
mov ecx, dword [esp + 0x20]
mov edx, ecx
push 0x4c061c
jmp 0x48a32f
mov ecx, esi
push 0x4c062c
call fcn.00493b00
pop eax
ud2
lea ecx, [esp + 0x40]
mov edx, 0x4c06cc
mov dword [ecx], 0x4c037c
mov dword [ecx + 4], 1
and dword [ecx + 0x10], 0
mov dword [ecx + 8], 0x4e7238
and dword [ecx + 0xc], 0
call fcn.00493a60
ud2
lea ecx, [esp + 0x40]
mov edx, 0x4c305c
mov dword [ecx], 0x4c3054
jmp 0x48a346
push 0x2c
pop edx
mov ecx, str.assertion_failed:_end___start__end___len_
push 0x4c0748
jmp 0x48a390
push 0x2b
pop edx
mov ecx, str.called__Option::unwrap____on_a__None__value
push 0x4c06fc
call fcn.00493be0
jmp 0x48a334
call fcn.00407310
ud2
lea ecx, [esp + 0x40]
mov edx, 0x4c2ca4
mov dword [ecx], 0x4c2c9c
jmp 0x48a346
push 4
pop ecx
mov edx, edi
call fcn.00493860
ud2
push 0x2b
pop edx
mov ecx, str.called__Option::unwrap____on_a__None__value
push 0x4c06dc
jmp 0x48a390
push 0x2b
pop edx
mov ecx, str.called__Option::unwrap____on_a__None__value
push 0x4c06ec
jmp 0x48a390