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

Disassembly:
push ebp
mov ebp, esp
push ebx
push edi
push esi
and esp, 0xfffffff0
sub esp, 0x220
mov dword [esp + 4], ecx
mov eax, dword [ebp + 8]
mov ecx, dword [eax + 0x28]
mov eax, dword [ecx]
call dword [eax + 0x10]
test al, al
jne 0x7f8b6c
push str.external_openscreen_discovery_dnssd_impl_publisher_impl.cc
push 4
call fcn.0075e090
add esp, 8
test al, al
je 0x7f8b6c
mov dword [esp + 0x60], 4
mov dword [esp + 0x64], str.external_openscreen_discovery_dnssd_impl_publisher_impl.cc
mov dword [esp + 0x68], 0x92
lea ecx, [esp + 0xac]
lea edi, [esp + 0x74]
mov dword [esp + 0x74], 0x866ac4
lea esi, [esp + 0x78]
mov dword [esp + 0x6c], 0x866be8
mov dword [esp + 0xac], 0x866bfc
mov dword [esp + 0x70], 0
push esi
call fcn.004cf350
mov dword [esp + 0xf4], 0
mov dword [esp + 0xf8], 0xffffffff
mov dword [esp + 0x6c], 0x866ab0
mov dword [esp + 0xac], 0x866ad8
mov dword [esp + 0x74], 0x866ac4
mov ecx, esi
call fcn.004cf9a0
mov dword [esp + 0x78], 0x865954
xorps xmm0, xmm0
movups xmmword [esp + 0x98], xmm0
mov dword [esp + 0xa8], 0x18
push 0xa
push 0x93dc1f
push edi
call fcn.00402f60
add esp, 0xc
push 0x25
push 0x93dc64
push eax
call fcn.00402f60
add esp, 0xc
push 0xa
push 0x93dc3a
push eax
call fcn.00402f60
add esp, 0xc
lea ecx, [esp + 0x60]
call fcn.0060f450
lea ecx, [esp + 0x38]
push dword [ebp + 0xc]
call fcn.0084ca10
mov eax, dword [ebp + 8]
mov ebx, dword [eax + 0x14]
add eax, 0x18
mov dword [esp], eax
cmp ebx, eax
je 0x7f8cd7
mov eax, dword [0x93de78]
add eax, 8
mov dword [esp + 0xc], eax
mov eax, dword [0x93db78]
add eax, 8
mov dword [esp + 0x14], eax
jmp 0x7f8bbb
mov ebx, eax
cmp eax, dword [esp]
je 0x7f8cd4
lea eax, [ebx + 0x10]
lea edi, [esp + 0x60]
mov ecx, edi
push eax
call fcn.00849cc0
mov dword [esp + 8], ebx
lea eax, [ebx + 0x60]
lea ecx, [esp + 0xb0]
push eax
call fcn.008450d0
lea esi, [esp + 0x120]
mov ecx, esi
push edi
call fcn.0084ca10
push esi
lea ebx, [esp + 0x3c]
push ebx
call fcn.007fb470
add esp, 8
test al, al
je 0x7f8c10
xor ebx, ebx
jmp 0x7f8c1f
push ebx
push esi
call fcn.007fb470
add esp, 8
mov ebx, eax
xor bl, 1
mov eax, dword [esp + 0xc]
mov dword [esp + 0x120], eax
test byte [esp + 0x13c], 1
je 0x7f8c43
push dword [esp + 0x144]
call fcn.0051c570
add esp, 4
mov eax, dword [esp + 0x14]
mov dword [esp + 0x120], eax
test byte [esp + 0x130], 1
je 0x7f8c67
push dword [esp + 0x138]
call fcn.0051c570
add esp, 4
test byte [esp + 0x124], 1
je 0x7f8c80
push dword [esp + 0x12c]
call fcn.0051c570
add esp, 4
lea ecx, [esp + 0xb0]
call fcn.008452c0
lea ecx, [esp + 0x60]
call fcn.00849fc0
test bl, bl
jne 0x7f8cce
mov edx, dword [esp + 8]
mov ecx, dword [edx + 4]
test ecx, ecx
je 0x7f8cc0
nop word cs:[eax + eax]
mov eax, ecx
mov ecx, dword [ecx]
test ecx, ecx
jne 0x7f8cb0
jmp 0x7f8bb0
mov eax, dword [edx + 8]
cmp dword [eax], edx
mov edx, eax
jne 0x7f8cc0
jmp 0x7f8bb0
mov ebx, dword [esp + 8]
jmp 0x7f8cd7
mov ebx, dword [esp]
mov edi, dword [0x93de78]
add edi, 8
mov dword [esp + 0x38], edi
test byte [esp + 0x54], 1
je 0x7f8cf7
push dword [esp + 0x5c]
call fcn.0051c570
add esp, 4
mov esi, dword [0x93db78]
add esi, 8
mov dword [esp + 0x38], esi
test byte [esp + 0x48], 1
jne 0x7f8dec
test byte [esp + 0x3c], 1
jne 0x7f8e03
cmp ebx, dword [esp]
je 0x7f8e18
mov dword [esp], edi
xorps xmm0, xmm0
movaps xmmword [esp + 0x180], xmm0
movaps xmmword [esp + 0x170], xmm0
movaps xmmword [esp + 0x160], xmm0
movaps xmmword [esp + 0x150], xmm0
movaps xmmword [esp + 0x140], xmm0
movaps xmmword [esp + 0x130], xmm0
movaps xmmword [esp + 0x120], xmm0
lea eax, [ebx + 0x60]
lea edi, [esp + 0x60]
mov ecx, edi
mov dword [esp + 0x14], eax
push eax
call fcn.0084ca10
push edi
lea edi, [esp + 0x3c]
push edi
call fcn.00846980
add esp, 8
lea edi, [esp + 0x1cc]
mov ecx, edi
push dword [ebp + 0xc]
call fcn.00849cc0
lea ecx, [esp + 0x120]
lea edx, [esp + 0x38]
mov eax, dword [ebp + 8]
push dword [eax + 0x2c]
push edi
call fcn.007f9810
add esp, 8
mov ecx, edi
call fcn.00849fc0
mov edi, dword [esp + 0x3c]
test edi, edi
mov dword [esp + 8], ebx
je 0x7f8e3b
mov eax, dword [esp + 0x40]
mov ecx, edi
cmp eax, edi
jne 0x7f8dd6
jmp 0x7f8e2e
mov eax, ebx
cmp ebx, edi
je 0x7f8e2a
lea ebx, [eax - 0xc]
test byte [eax - 0xc], 1
je 0x7f8dd0
push dword [eax - 4]
call fcn.0051c570
add esp, 4
jmp 0x7f8dd0
push dword [esp + 0x50]
call fcn.0051c570
add esp, 4
test byte [esp + 0x3c], 1
je 0x7f8d1a
push dword [esp + 0x44]
call fcn.0051c570
add esp, 4
cmp ebx, dword [esp]
jne 0x7f8d23
mov esi, dword [esp + 4]
mov ecx, esi
push 0x5b
call fcn.0060d350
jmp 0x7f97f5
mov ecx, dword [esp + 0x3c]
mov dword [esp + 0x40], edi
push ecx
call fcn.0051c570
add esp, 4
mov eax, dword [esp]
mov dword [esp + 0x60], eax
test byte [esp + 0x7c], 1
je 0x7f8e58
push dword [esp + 0x84]
call fcn.0051c570
add esp, 4
mov dword [esp + 0x60], esi
test byte [esp + 0x70], 1
mov edi, dword [esp + 0x14]
lea ebx, [esp + 0x120]
je 0x7f8e7a
push dword [esp + 0x78]
call fcn.0051c570
add esp, 4
test byte [esp + 0x64], 1
mov esi, dword [esp + 4]
je 0x7f8e91
push dword [esp + 0x6c]
call fcn.0051c570
add esp, 4
push edi
push ebx
call fcn.00845450
add esp, 8
test al, al
jne 0x7f8eb1
push ebx
push edi
call fcn.00845450
add esp, 8
test al, al
je 0x7f97e0
lea eax, [esp + 0x3c]
mov dword [esp + 0x40], 0
mov dword [esp + 0x3c], 0
mov dword [esp + 0x38], eax
mov dword [esp + 0x1c], 0
mov dword [esp + 0x18], 0
mov dword [esp + 0x20], 0
lea eax, [esp + 0x18]
push edi
push eax
call fcn.008475d0
add esp, 8
mov dword [esp + 0x2c], 0
mov dword [esp + 0x28], 0
mov dword [esp + 0x30], 0
lea eax, [esp + 0x28]
push ebx
push eax
call fcn.008475d0
add esp, 8
mov eax, dword [esp + 0x18]
cmp dword [esp + 0x1c], eax
je 0x7f9220
xor edx, edx
jmp 0x7f8f60
mov ecx, dword [esp + 0x64]
mov dword [esp + 0x68], esi
push ecx
call fcn.0051c570
add esp, 4
mov edx, dword [esp]
inc edx
mov eax, dword [esp + 0x18]
mov ecx, dword [esp + 0x1c]
sub ecx, eax
sar ecx, 4
imul ecx, ecx, 0xcccccccd
cmp edx, ecx
jae 0x7f9220
mov dword [esp], edx
lea ecx, [edx + edx*4]
shl ecx, 4
mov dword [esp + 0xc], ecx
movzx ebx, word [eax + ecx + 0x10]
mov esi, dword [esp + 0x3c]
test esi, esi
je 0x7f90c0
lea eax, [esp + 0x3c]
nop word cs:[eax + eax]
mov edi, esi
mov ecx, eax
movzx edx, word [esi + 0x10]
add esi, 4
cmp dx, bx
cmovae esi, edi
mov eax, edi
cmovb eax, ecx
mov esi, dword [esi]
test esi, esi
jne 0x7f8f90
lea esi, [esp + 0x3c]
cmp eax, esi
je 0x7f90c0
cmp dx, bx
cmovb edi, ecx
cmp bx, word [edi + 0x10]
jb 0x7f90c0
push str.external_openscreen_discovery_dnssd_impl_publisher_impl.cc
push 4
call fcn.0075e090
add esp, 8
test al, al
je 0x7f90c0
mov dword [esp + 0x60], 4
mov dword [esp + 0x64], str.external_openscreen_discovery_dnssd_impl_publisher_impl.cc
mov dword [esp + 0x68], 0xb1
mov dword [esp + 0x74], 0x866ac4
mov dword [esp + 0x6c], 0x866be8
mov dword [esp + 0xac], 0x866bfc
mov dword [esp + 0x70], 0
lea esi, [esp + 0xac]
mov ecx, esi
lea edi, [esp + 0x78]
push edi
call fcn.004cf350
mov dword [esp + 0xf4], 0
mov dword [esp + 0xf8], 0xffffffff
mov dword [esp + 0x6c], 0x866ab0
mov dword [esp + 0xac], 0x866ad8
mov dword [esp + 0x74], 0x866ac4
mov ecx, edi
call fcn.004cf9a0
mov dword [esp + 0x78], 0x865954
xorps xmm0, xmm0
movups xmmword [esi - 0x14], xmm0
mov dword [esp + 0xa8], 0x18
push 0xa
push 0x93dc1f
lea eax, [esp + 0x7c]
push eax
call fcn.00402f60
add esp, 0xc
push 0x32
push str.changed_records.find_key___changed_records.end__
push eax
call fcn.00402f60
add esp, 0xc
push 0xa
push 0x93dc3a
push eax
call fcn.00402f60
add esp, 0xc
lea ecx, [esp + 0x60]
call fcn.0060f450
nop dword [eax]
xorps xmm0, xmm0
movaps xmmword [esp + 0xa0], xmm0
movaps xmmword [esp + 0x90], xmm0
movaps xmmword [esp + 0x80], xmm0
movaps xmmword [esp + 0x70], xmm0
movaps xmmword [esp + 0x60], xmm0
mov dword [esp + 0xb4], 0
mov dword [esp + 0xb0], 0
mov eax, dword [esp + 0xc]
add eax, dword [esp + 0x18]
lea ecx, [esp + 0x60]
push eax
call fcn.00836d90
mov eax, dword [esp + 0x3c]
lea edi, [esp + 0x3c]
jmp 0x7f9122
mov eax, dword [edi]
mov esi, edi
test eax, eax
je 0x7f913f
mov edi, eax
movzx eax, word [eax + 0x10]
cmp bx, ax
jb 0x7f9120
jbe 0x7f91b3
mov eax, dword [edi + 4]
test eax, eax
jne 0x7f9128
lea esi, [edi + 4]
push 0xc8
call fcn.0051c3d0
add esp, 4
mov word [eax + 0x10], bx
lea ecx, [eax + 0x18]
mov ebx, eax
lea eax, [esp + 0x60]
push eax
call fcn.00836e60
mov byte [ebx + 0x68], 1
mov byte [ebx + 0x70], 0
mov byte [ebx + 0xc0], 0
mov dword [ebx], 0
mov dword [ebx + 4], 0
mov dword [ebx + 8], edi
mov dword [esi], ebx
mov eax, dword [esp + 0x38]
mov eax, dword [eax]
test eax, eax
je 0x7f91a0
mov dword [esp + 0x38], eax
mov ecx, dword [esi]
jmp 0x7f91a2
mov ecx, ebx
push ecx
push dword [esp + 0x40]
call fcn.004586f0
add esp, 8
inc dword [esp + 0x40]
mov eax, dword [esp + 0xa8]
cmp eax, 0xffffffff
je 0x7f91d6
lea ecx, [esp + 0x80]
push ecx
lea ecx, [esp + 0x14]
push ecx
call dword [eax*4 + 0x93ddd0]
add esp, 8
mov dword [esp + 0xa8], 0xffffffff
mov esi, dword [esp + 0x64]
test esi, esi
je 0x7f8f41
mov eax, dword [esp + 0x68]
mov ecx, esi
cmp eax, esi
jne 0x7f920a
jmp 0x7f8f34
mov eax, edi
cmp edi, esi
je 0x7f8f30
lea edi, [eax - 0xc]
test byte [eax - 0xc], 1
je 0x7f9200
push dword [eax - 4]
call fcn.0051c570
add esp, 4
jmp 0x7f9200
mov ecx, dword [esp + 0x28]
cmp dword [esp + 0x2c], ecx
je 0x7f9387
xor edx, edx
jmp 0x7f92e7
xorps xmm0, xmm0
movaps xmmword [esp + 0x100], xmm0
movaps xmmword [esp + 0xf0], xmm0
movaps xmmword [esp + 0xe0], xmm0
movaps xmmword [esp + 0xd0], xmm0
movaps xmmword [esp + 0xc0], xmm0
movaps xmmword [esp + 0xb0], xmm0
movaps xmmword [esp + 0xa0], xmm0
movaps xmmword [esp + 0x90], xmm0
movaps xmmword [esp + 0x80], xmm0
movaps xmmword [esp + 0x70], xmm0
movaps xmmword [esp + 0x60], xmm0
lea ecx, [esp + 0xb8]
push dword [esp + 0xc]
call fcn.00836d90
mov byte [esp + 0x108], 1
lea ecx, [esp + 0x38]
lea esi, [esp + 0x60]
push esi
lea eax, [esp + 0x14]
push eax
push eax
call fcn.007fb6b0
mov ecx, esi
call fcn.007faa70
mov edx, dword [esp]
inc edx
mov ecx, dword [esp + 0x28]
mov eax, dword [esp + 0x2c]
sub eax, ecx
sar eax, 4
imul eax, eax, 0xcccccccd
cmp edx, eax
jae 0x7f9387
mov word [esp + 0x10], 0
mov dword [esp], edx
lea eax, [edx + edx*4]
shl eax, 4
lea edx, [ecx + eax]
mov dword [esp + 0xc], edx
movzx ecx, word [ecx + eax + 0x10]
mov word [esp + 0x10], cx
mov ebx, dword [esp + 0x3c]
test ebx, ebx
je 0x7f9240
lea edi, [esp + 0x3c]
nop dword [eax + eax]
mov edx, ebx
mov esi, edi
movzx eax, word [ebx + 0x10]
add ebx, 4
cmp ax, cx
cmovae ebx, edx
mov edi, edx
cmovb edi, esi
mov ebx, dword [ebx]
test ebx, ebx
jne 0x7f9320
lea ebx, [esp + 0x3c]
cmp edi, ebx
je 0x7f9240
cmp ax, cx
cmovb edx, esi
cmp cx, word [edx + 0x10]
jb 0x7f9240
lea ecx, [edi + 0x70]
cmp byte [edi + 0xc0], 0
je 0x7f9372
push dword [esp + 0xc]
call fcn.00836ef0
jmp 0x7f92c8
push dword [esp + 0xc]
call fcn.00836d90
mov byte [edi + 0xc0], 1
jmp 0x7f92c8
xorps xmm0, xmm0
mov esi, dword [esp + 4]
movups xmmword [esi], xmm0
call fcn.0060dd30
mov ecx, esi
push eax
call fcn.0060d2f0
mov ebx, dword [esp + 0x38]
lea eax, [esp + 0x3c]
cmp ebx, eax
jne 0x7f93da
mov eax, dword [ebp + 8]
lea ebx, [eax + 0x14]
mov edi, dword [esp + 8]
mov ecx, dword [edi + 4]
test ecx, ecx
je 0x7f960e
nop
mov eax, ecx
mov ecx, dword [ecx]
test ecx, ecx
jne 0x7f93c0
jmp 0x7f9619
mov ebx, eax
lea ecx, [esp + 0x3c]
cmp eax, ecx
je 0x7f93aa
cmp byte [ebx + 0x68], 0
jne 0x7f94fa
cmp byte [ebx + 0xc0], 0
jne 0x7f94f0
push str.external_openscreen_discovery_dnssd_impl_publisher_impl.cc
push 4
call fcn.0075e090
add esp, 8
test al, al
je 0x7f94f0
mov dword [esp + 0x60], 4
mov dword [esp + 0x64], str.external_openscreen_discovery_dnssd_impl_publisher_impl.cc
mov dword [esp + 0x68], 0xc7
mov dword [esp + 0x74], 0x866ac4
mov dword [esp + 0x6c], 0x866be8
mov dword [esp + 0xac], 0x866bfc
mov dword [esp + 0x70], 0
lea esi, [esp + 0xac]
mov ecx, esi
lea edi, [esp + 0x78]
push edi
call fcn.004cf350
mov dword [esp + 0xf4], 0
mov dword [esp + 0xf8], 0xffffffff
mov dword [esp + 0x6c], 0x866ab0
mov dword [esp + 0xac], 0x866ad8
mov dword [esp + 0x74], 0x866ac4
mov ecx, edi
call fcn.004cf9a0
mov dword [esp + 0x78], 0x865954
xorps xmm0, xmm0
movups xmmword [esi - 0x14], xmm0
mov dword [esp + 0xa8], 0x18
push 0xa
push 0x93dc1f
lea eax, [esp + 0x7c]
push eax
call fcn.00402f60
add esp, 0xc
push 0x49
push str.pair.second.first___absl::nullopt__pair.second.second___absl::nullopt
push eax
call fcn.00402f60
add esp, 0xc
push 0xa
push 0x93dc3a
push eax
call fcn.00402f60
add esp, 0xc
lea ecx, [esp + 0x60]
call fcn.0060f450
nop word cs:[eax + eax]
cmp byte [ebx + 0x68], 0
je 0x7f9584
lea esi, [ebx + 0x18]
cmp byte [ebx + 0xc0], 0
je 0x7f9560
lea edi, [ebx + 0x70]
mov ecx, esi
push edi
call fcn.00837160
test al, al
je 0x7f95e7
xorps xmm0, xmm0
movaps xmmword [esp + 0x60], xmm0
cmp byte [ebx + 0x68], 0
je 0x7f9801
cmp byte [ebx + 0xc0], 0
je 0x7f9801
mov eax, dword [ebp + 8]
mov eax, dword [eax + 0x20]
mov edx, dword [eax]
lea ecx, [esp + 0x60]
push edi
push esi
mov esi, ecx
push eax
call dword [edx + 0x1c]
lea edi, [esp + 0x19c]
jmp 0x7f95c0
xorps xmm0, xmm0
movaps xmmword [esp + 0x60], xmm0
mov eax, dword [ebp + 8]
mov eax, dword [eax + 0x20]
mov edx, dword [eax]
lea ecx, [esp + 0x60]
push esi
mov esi, ecx
push eax
call dword [edx + 0x20]
lea edi, [esp + 0x1ac]
jmp 0x7f95c0
xorps xmm0, xmm0
movaps xmmword [esp + 0x60], xmm0
cmp byte [ebx + 0xc0], 0
je 0x7f9801
lea eax, [ebx + 0x70]
mov ecx, dword [ebp + 8]
mov edx, dword [ecx + 0x20]
mov esi, dword [edx]
lea edi, [esp + 0x60]
mov ecx, edi
push eax
push edx
call dword [esi + 0x18]
mov esi, edi
lea edi, [esp + 0x1bc]
nop dword [eax + eax]
mov ecx, edi
push esi
call fcn.0060d2f0
mov ecx, edi
call fcn.0060d3d0
cmp byte [esp + 0x60], 0
je 0x7f95e0
mov ecx, dword [esp + 4]
push esi
call fcn.0060d3f0
mov ecx, esi
call fcn.0060d3d0
mov ecx, dword [ebx + 4]
test ecx, ecx
je 0x7f9600
nop
mov eax, ecx
mov ecx, dword [ecx]
test ecx, ecx
jne 0x7f95f0
jmp 0x7f93d0
mov eax, dword [ebx + 8]
cmp dword [eax], ebx
mov ebx, eax
jne 0x7f9600
jmp 0x7f93d0
mov ecx, edi
mov eax, dword [ecx + 8]
cmp dword [eax], ecx
mov ecx, eax
jne 0x7f9610
lea esi, [edi + 0x10]
cmp dword [ebx], edi
jne 0x7f9622
mov dword [ebx], eax
mov eax, dword [ebp + 8]
dec dword [eax + 0x1c]
push edi
push dword [eax + 0x18]
call fcn.004583d0
add esp, 8
mov ecx, dword [esp + 0x14]
call fcn.008452c0
mov ecx, esi
call fcn.00849fc0
push edi
call fcn.0051c570
add esp, 4
mov ecx, ebx
lea eax, [esp + 0x120]
push eax
mov eax, dword [ebp + 0xc]
push eax
push eax
call fcn.007fb7b0
mov ebx, dword [esp + 0x28]
test ebx, ebx
mov esi, dword [esp + 4]
je 0x7f9721
mov edi, dword [esp + 0x2c]
mov eax, ebx
cmp edi, ebx
je 0x7f9714
mov dword [esp], ebx
jmp 0x7f96ac
mov ecx, dword [edi - 0x4c]
mov ebx, dword [esp]
mov dword [edi - 0x48], esi
push ecx
call fcn.0051c570
add esp, 4
mov eax, dword [esp + 8]
mov edi, eax
cmp eax, ebx
je 0x7f970c
mov eax, dword [edi - 8]
cmp eax, 0xffffffff
je 0x7f96c7
lea ecx, [edi - 0x30]
push ecx
lea ecx, [esp + 0x64]
push ecx
call dword [eax*4 + 0x93ddd0]
add esp, 8
lea eax, [edi - 0x50]
mov dword [edi - 8], 0xffffffff
mov esi, dword [edi - 0x4c]
test esi, esi
je 0x7f96a6
mov dword [esp + 8], eax
mov eax, dword [edi - 0x48]
mov ecx, esi
cmp eax, esi
jne 0x7f96f6
jmp 0x7f9696
mov eax, ebx
cmp ebx, esi
je 0x7f9690
lea ebx, [eax - 0xc]
test byte [eax - 0xc], 1
je 0x7f96f0
push dword [eax - 4]
call fcn.0051c570
add esp, 4
jmp 0x7f96f0
mov eax, dword [esp + 0x28]
mov esi, dword [esp + 4]
mov dword [esp + 0x2c], ebx
push eax
call fcn.0051c570
add esp, 4
mov ebx, dword [esp + 0x18]
test ebx, ebx
je 0x7f97d1
mov edi, dword [esp + 0x1c]
mov eax, ebx
cmp edi, ebx
je 0x7f97c4
mov dword [esp], ebx
jmp 0x7f975c
mov ecx, dword [edi - 0x4c]
mov ebx, dword [esp]
mov dword [edi - 0x48], esi
push ecx
call fcn.0051c570
add esp, 4
mov eax, dword [esp + 8]
mov edi, eax
cmp eax, ebx
je 0x7f97bc
mov eax, dword [edi - 8]
cmp eax, 0xffffffff
lea edx, [esp + 0x60]
je 0x7f9777
lea ecx, [edi - 0x30]
push ecx
push edx
call dword [eax*4 + 0x93ddd0]
add esp, 8
lea eax, [edi - 0x50]
mov dword [edi - 8], 0xffffffff
mov esi, dword [edi - 0x4c]
test esi, esi
je 0x7f9756
mov dword [esp + 8], eax
mov eax, dword [edi - 0x48]
mov ecx, esi
cmp eax, esi
jne 0x7f97a6
jmp 0x7f9746
mov eax, ebx
cmp ebx, esi
je 0x7f9740
lea ebx, [eax - 0xc]
test byte [eax - 0xc], 1
je 0x7f97a0
push dword [eax - 4]
call fcn.0051c570
add esp, 4
jmp 0x7f97a0
mov eax, dword [esp + 0x18]
mov esi, dword [esp + 4]
mov dword [esp + 0x1c], ebx
push eax
call fcn.0051c570
add esp, 4
lea ecx, [esp + 0x38]
push dword [esp + 0x3c]
call fcn.007fb340
jmp 0x7f97e9
mov ecx, esi
push 0x5b
call fcn.0060d350
lea ecx, [esp + 0x120]
call fcn.008452c0
mov eax, esi
lea esp, [ebp - 0xc]
pop esi
pop edi
pop ebx
pop ebp
ret 8
call fcn.00420580
nop word cs:[eax + eax]