Function at 0x677410
Capabilities:
Encode data using xor

Disassembly:
sub esp, 0xc
push ebx
push ebp
push esi
push edi
mov edi, dword [0x978ed4]
lea eax, [edi + 4]
mov dword [esp + 0x10], edi
mov dword [esp + 0x14], eax
mov ecx, dword [esp + 0x14]
mov edx, 1
xchg dword [ecx], edx
mov dword [esp + 0x18], edx
mov eax, dword [esp + 0x18]
xor ebx, ebx
cmp eax, ebx
je 0x677454
push 0x467
push str.._fil_fil0fil.c
push edi
call fcn.00656980
add esp, 0xc
mov esi, dword [esp + 0x20]
mov ecx, dword [edi + 0x28]
mov eax, esi
xor eax, 0x62946a4f
xor edx, edx
div dword [ecx + 4]
mov eax, dword [ecx + 8]
mov ebp, dword [eax + edx*4]
cmp ebp, ebx
lea eax, [eax + edx*4]
je 0x677480
cmp dword [ebp + 4], esi
je 0x6774c7
mov ebp, dword [ebp + 0x40]
cmp ebp, ebx
jne 0x677474
push 0x93e408
call fcn.00658930
push esi
push str.__InnoDB:_Error:_trying_to_remove_tablespace__lu_from_the_cache_but_nInnoDB:_it_is_not_there._n
push 0x93e408
call fcn.006cf108
lea eax, [edi + 4]
add esp, 0x10
mov dword [esp + 0x20], eax
mov edx, 0
mov ecx, dword [esp + 0x20]
xchg dword [ecx], edx
cmp dword [edi + 8], ebx
je 0x6774bd
push edi
call fcn.00656b20
add esp, 4
pop edi
pop esi
pop ebp
xor eax, eax
pop ebx
add esp, 0xc
ret
mov ecx, dword [eax]
cmp ecx, ebp
jne 0x6774d4
mov ecx, dword [ebp + 0x40]
mov dword [eax], ecx
jmp 0x67753a
mov esi, ecx
cmp dword [esi + 0x40], ebp
je 0x677534
jmp 0x6774e0
mov edx, dword [0x977b10]
add edx, esi
jne 0x677512
push 0x476
push str.._fil_fil0fil.c
push str.struct3333
call fcn.00651650
mov eax, dword [0x977b18]
mov ecx, dword [eax]
add esp, 0xc
cmp ecx, ebx
je 0x677512
mov dword [0x977b18], ebx
cmp dword [0x977b14], ebx
je 0x67752c
push 0x476
push str.._fil_fil0fil.c
call fcn.006516c0
add esp, 8
mov esi, dword [esi + 0x40]
cmp dword [esi + 0x40], ebp
jne 0x6774e0
mov ecx, dword [ebp + 0x40]
mov dword [esi + 0x40], ecx
mov ebx, dword [ebp]
mov edx, dword [esp + 0x10]
mov esi, dword [edx + 0x2c]
push ebx
call fcn.0064b800
xor eax, 0x62946a4f
xor edx, edx
div dword [esi + 4]
mov eax, dword [esi + 8]
add esp, 4
mov edi, dword [eax + edx*4]
test edi, edi
je 0x677599
mov esi, dword [edi]
mov eax, ebx
mov dl, byte [eax]
mov cl, dl
cmp dl, byte [esi]
jne 0x677589
test cl, cl
je 0x677585
mov dl, byte [eax + 1]
mov cl, dl
cmp dl, byte [esi + 1]
jne 0x677589
add eax, 2
add esi, 2
test cl, cl
jne 0x677565
xor eax, eax
jmp 0x67758e
sbb eax, eax
sbb eax, 0xffffffff
test eax, eax
je 0x677599
mov edi, dword [edi + 0x44]
test edi, edi
jne 0x677561
mov eax, dword [0x977b10]
add eax, edi
jne 0x6775cf
push 0x47a
push str.._fil_fil0fil.c
push str.namespace
call fcn.00651650
mov ecx, dword [0x977b18]
mov eax, dword [ecx]
xor ebx, ebx
add esp, 0xc
cmp eax, ebx
je 0x6775d1
mov dword [0x977b18], ebx
jmp 0x6775d1
xor ebx, ebx
cmp dword [0x977b14], ebx
je 0x6775eb
push 0x47a
push str.._fil_fil0fil.c
call fcn.006516c0
add esp, 8
mov eax, dword [0x977b10]
xor edx, edx
cmp ebp, edi
sete dl
add edx, eax
jne 0x677623
push 0x47b
push str.._fil_fil0fil.c
push str.space__namespace
call fcn.00651650
mov eax, dword [0x977b18]
mov ecx, dword [eax]
add esp, 0xc
cmp ecx, ebx
je 0x677623
mov dword [0x977b18], ebx
cmp dword [0x977b14], ebx
je 0x67763d
push 0x47b
push str.._fil_fil0fil.c
call fcn.006516c0
add esp, 8
mov edx, dword [ebp]
mov cl, byte [edx]
xor eax, eax
test cl, cl
je 0x67766c
movsx ecx, cl
mov esi, ecx
xor esi, eax
xor esi, 0xff946a4f
shl esi, 8
add esi, eax
xor esi, 0x573ed587
add esi, ecx
mov cl, byte [edx + 1]
inc edx
test cl, cl
mov eax, esi
jne 0x677648
mov edi, dword [esp + 0x10]
mov ecx, dword [edi + 0x2c]
xor eax, 0x62946a4f
xor edx, edx
div dword [ecx + 4]
mov ecx, dword [ecx + 8]
mov eax, dword [ecx + edx*4]
cmp eax, ebp
lea ecx, [ecx + edx*4]
jne 0x677691
mov edx, dword [ebp + 0x44]
mov dword [ecx], edx
jmp 0x6776fa
mov esi, eax
cmp dword [esi + 0x44], ebp
je 0x6776f4
jmp 0x6776a0
mov eax, dword [0x977b10]
add eax, esi
jne 0x6776d2
push 0x47e
push str.._fil_fil0fil.c
push str.struct3333
call fcn.00651650
mov ecx, dword [0x977b18]
mov eax, dword [ecx]
add esp, 0xc
cmp eax, ebx
je 0x6776d2
mov dword [0x977b18], ebx
cmp dword [0x977b14], ebx
je 0x6776ec
push 0x47e
push str.._fil_fil0fil.c
call fcn.006516c0
add esp, 8
mov esi, dword [esi + 0x44]
cmp dword [esi + 0x44], ebp
jne 0x6776a0
mov edx, dword [ebp + 0x44]
mov dword [esi + 0x44], edx
cmp dword [ebp + 0xc0], ebx
je 0x6777a8
mov dword [ebp + 0xc0], ebx
mov esi, dword [edi + 0x3c]
xor eax, eax
cmp eax, esi
mov eax, dword [0x977b10]
sbb ecx, ecx
neg ecx
add ecx, eax
jne 0x677749
push 0x484
push str.._fil_fil0fil.c
push str._system__unflushed_spaces_.count___0
call fcn.00651650
mov edx, dword [0x977b18]
mov eax, dword [edx]
add esp, 0xc
cmp eax, ebx
je 0x677749
mov dword [0x977b18], ebx
cmp dword [0x977b14], ebx
je 0x677763
push 0x484
push str.._fil_fil0fil.c
call fcn.006516c0
add esp, 8
dec dword [edi + 0x3c]
mov eax, dword [ebp + 0xbc]
cmp eax, ebx
je 0x67777e
mov ecx, dword [ebp + 0xb8]
mov dword [eax + 0xb8], ecx
jmp 0x677787
mov edx, dword [ebp + 0xb8]
mov dword [edi + 0x44], edx
mov eax, dword [ebp + 0xb8]
cmp eax, ebx
je 0x67779f
mov ecx, dword [ebp + 0xbc]
mov dword [eax + 0xbc], ecx
jmp 0x6777a8
mov edx, dword [ebp + 0xbc]
mov dword [edi + 0x40], edx
mov esi, dword [edi + 0x68]
xor eax, eax
cmp eax, esi
mov eax, dword [0x977b10]
sbb ecx, ecx
neg ecx
add ecx, eax
jne 0x6777e5
push 0x487
push str.._fil_fil0fil.c
push str._system__space_list_.count___0
call fcn.00651650
mov edx, dword [0x977b18]
mov eax, dword [edx]
add esp, 0xc
cmp eax, ebx
je 0x6777e5
mov dword [0x977b18], ebx
cmp dword [0x977b14], ebx
je 0x6777ff
push 0x487
push str.._fil_fil0fil.c
call fcn.006516c0
add esp, 8
dec dword [edi + 0x68]
mov eax, dword [ebp + 0xc8]
cmp eax, ebx
je 0x67781a
mov ecx, dword [ebp + 0xc4]
mov dword [eax + 0xc4], ecx
jmp 0x677823
mov edx, dword [ebp + 0xc4]
mov dword [edi + 0x70], edx
mov eax, dword [ebp + 0xc4]
cmp eax, ebx
je 0x67783b
mov ecx, dword [ebp + 0xc8]
mov dword [eax + 0xc8], ecx
jmp 0x677844
mov edx, dword [ebp + 0xc8]
mov dword [edi + 0x6c], edx
mov edx, dword [ebp + 0xd0]
mov ecx, dword [0x977b10]
xor eax, eax
cmp edx, 0x15d80
sete al
add eax, ecx
jne 0x677888
push 0x489
push str.._fil_fil0fil.c
push str.space__magic_n__FIL_SPACE_MAGIC_N
call fcn.00651650
mov ecx, dword [0x977b18]
mov eax, dword [ecx]
add esp, 0xc
cmp eax, ebx
je 0x677888
mov dword [0x977b18], ebx
cmp dword [0x977b14], ebx
je 0x6778a2
push 0x489
push str.._fil_fil0fil.c
call fcn.006516c0
add esp, 8
mov ecx, dword [ebp + 0x38]
mov eax, dword [0x977b10]
xor edx, edx
cmp ecx, ebx
sete dl
add edx, eax
jne 0x6778dd
push 0x48a
push str.._fil_fil0fil.c
push str.0__space__n_pending_flushes
call fcn.00651650
mov eax, dword [0x977b18]
mov ecx, dword [eax]
add esp, 0xc
cmp ecx, ebx
je 0x6778dd
mov dword [0x977b18], ebx
cmp dword [0x977b14], ebx
je 0x6778f7
push 0x48a
push str.._fil_fil0fil.c
call fcn.006516c0
add esp, 8
mov eax, dword [ebp + 0x28]
cmp eax, ebx
je 0x677914
mov edi, edi
push eax
mov eax, ebp
mov ecx, edi
call fcn.00676f40
mov eax, dword [ebp + 0x28]
add esp, 4
cmp eax, ebx
jne 0x677900
mov edx, dword [ebp + 0x24]
mov eax, dword [0x977b10]
xor ecx, ecx
cmp edx, ebx
sete cl
add ecx, eax
jne 0x677950
push 0x494
push str.._fil_fil0fil.c
push str.0__UT_LIST_GET_LEN_space__chain_
call fcn.00651650
mov edx, dword [0x977b18]
mov eax, dword [edx]
add esp, 0xc
cmp eax, ebx
je 0x677950
mov dword [0x977b18], ebx
cmp dword [0x977b14], ebx
je 0x67796a
push 0x494
push str.._fil_fil0fil.c
call fcn.006516c0
add esp, 8
lea eax, [edi + 4]
mov dword [esp + 0x20], eax
mov edx, 0
mov ecx, dword [esp + 0x20]
xchg dword [ecx], edx
cmp dword [edi + 8], ebx
je 0x67798a
push edi
call fcn.00656b20
add esp, 4
lea eax, [ebp + 0x48]
push eax
call fcn.006a1f40
mov edi, dword [ebp]
mov eax, dword [edi - 8]
mov esi, dword [edi - 0x28]
sub edi, 0x40
add esp, 4
cmp eax, ebx
je 0x6779af
push edi
call fcn.006520d0
add esp, 4
cmp esi, ebx
je 0x6779c6
mov ebx, dword [esi + 0x1c]
push esi
push edi
call fcn.00651fd0
add esp, 8
test ebx, ebx
mov esi, ebx
jne 0x6779b3
mov eax, dword [ebp - 8]
mov esi, dword [ebp - 0x28]
add ebp, 0xffffffc0
test eax, eax
je 0x6779dc
push ebp
call fcn.006520d0
add esp, 4
test esi, esi
je 0x6779f3
mov edi, dword [esi + 0x1c]
push esi
push ebp
call fcn.00651fd0
add esp, 8
test edi, edi
mov esi, edi
jne 0x6779e0
pop edi
pop esi
pop ebp
mov eax, 1
pop ebx
add esp, 0xc
ret