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

Disassembly:
push ebp
mov ebp, esp
push ebx
push edi
push esi
and esp, 0xfffffff8
sub esp, 0x30
mov esi, ecx
mov edi, dword [ebp + 0xc]
mov eax, dword [ebp + 8]
mov eax, dword [eax + 0x78]
and eax, 0xfffffffc
lea ebx, [esp + 0x10]
mov ecx, ebx
push eax
call fcn.0051f860
mov dword [esp + 0x1c], edi
mov ecx, esi
push ebx
push ebx
call fcn.007811a0
mov ebx, edx
test byte [esp + 0x10], 1
je 0x77f698
push dword [esp + 0x18]
call fcn.0051c570
add esp, 4
test bl, 1
jne 0x77f6e6
lea esi, [esp + 0x10]
mov ecx, esi
push 0x79
push str.external_protobuf_src_google_protobuf_descriptor_database.cc
push 2
call fcn.00630740
mov ecx, esi
push str.File_already_exists_in_database:
call fcn.0062ff70
mov ecx, dword [ebp + 8]
mov edx, dword [ecx + 0x78]
and edx, 0xfffffffc
mov ecx, eax
push edx
call fcn.0062ff90
lea ecx, [esp + 4]
push eax
call fcn.006300f0
mov ecx, esi
call fcn.00630770
xor ebx, ebx
jmp 0x77f93f
mov dword [esp + 0x14], 0
mov dword [esp + 0x10], 0
mov dword [esp + 0x18], 0
mov ebx, dword [ebp + 8]
test byte [ebx + 8], 2
jne 0x77f725
mov dword [esp + 0x14], 0
mov dword [esp + 0x10], 0
mov dword [esp + 0x18], 0
xor eax, eax
xor ecx, ecx
jmp 0x77f73e
mov eax, dword [ebx + 0x7c]
and eax, 0xfffffffc
lea ecx, [esp + 0x10]
push eax
call fcn.0051f860
movzx ecx, byte [esp + 0x10]
mov eax, dword [esp + 0x14]
mov edx, ecx
shr dl, 1
test cl, 1
movzx ecx, dl
cmovne ecx, eax
test ecx, ecx
je 0x77f75a
lea ecx, [esp + 0x10]
push 0x2e
call fcn.00520460
cmp dword [ebx + 0x24], 0
jle 0x77f7e4
xor edi, edi
nop word cs:[eax + eax]
mov eax, dword [ebx + 0x2c]
mov eax, dword [eax + edi*4 + 4]
mov eax, dword [eax + 0x90]
and eax, 0xfffffffc
push eax
lea eax, [esp + 0x14]
push eax
lea ebx, [esp + 0xc]
push ebx
call fcn.0040c4c0
add esp, 0xc
mov ecx, esi
push dword [ebp + 0xc]
push ebx
call fcn.00780ca0
mov ebx, eax
test byte [esp + 4], 1
je 0x77f7b3
push dword [esp + 0xc]
call fcn.0051c570
add esp, 4
test bl, bl
je 0x77f91f
mov ebx, dword [ebp + 8]
mov eax, dword [ebx + 0x2c]
mov edx, dword [ebx + 0x78]
and edx, 0xfffffffc
mov ecx, esi
push dword [ebp + 0xc]
push dword [eax + edi*4 + 4]
push edx
call fcn.00780f60
test al, al
je 0x77f91f
inc edi
cmp edi, dword [ebx + 0x24]
jl 0x77f770
cmp dword [ebx + 0x34], 0
jle 0x77f841
xor edi, edi
nop dword [eax]
mov eax, dword [ebx + 0x3c]
mov eax, dword [eax + edi*4 + 4]
mov eax, dword [eax + 0x40]
and eax, 0xfffffffc
push eax
lea eax, [esp + 0x14]
push eax
lea ebx, [esp + 0xc]
push ebx
call fcn.0040c4c0
add esp, 0xc
mov ecx, esi
push dword [ebp + 0xc]
push ebx
call fcn.00780ca0
mov ebx, eax
test byte [esp + 4], 1
je 0x77f830
push dword [esp + 0xc]
call fcn.0051c570
add esp, 4
test bl, bl
je 0x77f91f
inc edi
mov ebx, dword [ebp + 8]
cmp edi, dword [ebx + 0x34]
jl 0x77f7f0
cmp dword [ebx + 0x54], 0
jle 0x77f8bd
xor edi, edi
nop dword [eax]
mov eax, dword [ebx + 0x5c]
mov eax, dword [eax + edi*4 + 4]
mov eax, dword [eax + 0x10]
and eax, 0xfffffffc
push eax
lea eax, [esp + 0x14]
push eax
lea ebx, [esp + 0xc]
push ebx
call fcn.0040c4c0
add esp, 0xc
mov ecx, esi
push dword [ebp + 0xc]
push ebx
call fcn.00780ca0
mov ebx, eax
test byte [esp + 4], 1
je 0x77f890
push dword [esp + 0xc]
call fcn.0051c570
add esp, 4
test bl, bl
je 0x77f91f
mov ebx, dword [ebp + 8]
mov eax, dword [ebx + 0x5c]
mov edx, dword [ebx + 0x78]
and edx, 0xfffffffc
mov ecx, esi
push dword [ebp + 0xc]
push dword [eax + edi*4 + 4]
push edx
call fcn.00780fe0
test al, al
je 0x77f92a
inc edi
cmp edi, dword [ebx + 0x54]
jl 0x77f850
cmp dword [ebx + 0x44], 0
jle 0x77f94b
xor edi, edi
mov eax, ebx
nop dword [eax + eax]
mov eax, dword [eax + 0x4c]
mov eax, dword [eax + edi*4 + 4]
mov eax, dword [eax + 0x20]
and eax, 0xfffffffc
push eax
lea eax, [esp + 0x14]
push eax
lea ebx, [esp + 0xc]
push ebx
call fcn.0040c4c0
add esp, 0xc
mov ecx, esi
push dword [ebp + 0xc]
push ebx
call fcn.00780ca0
mov ebx, eax
test byte [esp + 4], 1
je 0x77f910
push dword [esp + 0xc]
call fcn.0051c570
add esp, 4
test bl, bl
je 0x77f92c
inc edi
mov eax, dword [ebp + 8]
cmp edi, dword [eax + 0x44]
jl 0x77f8d0
jmp 0x77f92c
xor ebx, ebx
test byte [esp + 0x10], 1
jne 0x77f933
jmp 0x77f93f
xor ebx, ebx
test byte [esp + 0x10], 1
je 0x77f93f
push dword [esp + 0x18]
call fcn.0051c570
add esp, 4
mov eax, ebx
lea esp, [ebp - 0xc]
pop esi
pop edi
pop ebx
pop ebp
ret 8
mov bl, 1
test byte [esp + 0x10], 1
jne 0x77f933
jmp 0x77f93f