Function at 0x53c660
Capabilities:
Encode data using xor
Hash data using fnv
Resolve function by parsing pe exports

Disassembly:
push ecx
cmp byte [0x568b6c], 0
push ebx
push ebp
push esi
push edi
je 0x53cb81
mov ebx, dword [0x568a60]
xor edi, edi
mov eax, dword [ebx + 0x3c]
mov ebp, dword [eax + ebx + 0x78]
mov esi, dword [ebp + ebx + 0x20]
add esi, ebx
mov ecx, dword [esi]
mov edx, 0xc8917cef
add ecx, ebx
mov al, byte [ecx]
inc ecx
test al, al
je 0x53c6b4
movsx eax, al
lea ecx, [ecx + 1]
xor eax, edx
imul edx, eax, 0x1000193
mov al, byte [ecx - 1]
test al, al
jne 0x53c697
cmp edx, 0x41465efd
je 0x53c6ba
inc edi
add esi, 4
jmp 0x53c687
mov eax, dword [ebp + ebx + 0x24]
push 0
push 0x41
push 0x100
push dword [0x568a6c]
lea eax, [eax + edi*2]
movzx ecx, word [eax + ebx]
mov eax, dword [ebp + ebx + 0x1c]
lea eax, [eax + ecx*4]
mov eax, dword [eax + ebx]
add eax, ebx
call eax
mov ebx, dword [0x568a4c]
xor edi, edi
mov eax, dword [ebx + 0x3c]
mov ebp, dword [eax + ebx + 0x78]
mov esi, dword [ebp + ebx + 0x20]
add esi, ebx
mov ecx, dword [esi]
mov edx, 0x14f92dab
add ecx, ebx
mov al, byte [ecx]
inc ecx
test al, al
je 0x53c724
movsx eax, al
lea ecx, [ecx + 1]
xor eax, edx
imul edx, eax, 0x1000193
mov al, byte [ecx - 1]
test al, al
jne 0x53c707
cmp edx, 0xda78482e
je 0x53c72a
inc edi
add esi, 4
jmp 0x53c6f7
mov eax, dword [ebp + ebx + 0x24]
push 0x19
lea eax, [eax + edi*2]
movzx ecx, word [eax + ebx]
mov eax, dword [ebp + ebx + 0x1c]
lea eax, [eax + ecx*4]
mov eax, dword [eax + ebx]
add eax, ebx
call eax
mov ebx, dword [0x568a60]
xor edi, edi
mov eax, dword [ebx + 0x3c]
mov ebp, dword [eax + ebx + 0x78]
mov esi, dword [ebp + ebx + 0x20]
add esi, ebx
nop word [eax + eax]
mov ecx, dword [esi]
mov edx, 0xc50f930f
add ecx, ebx
mov al, byte [ecx]
inc ecx
test al, al
je 0x53c78d
movsx eax, al
lea ecx, [ecx + 1]
xor eax, edx
imul edx, eax, 0x1000193
mov al, byte [ecx - 1]
test al, al
jne 0x53c770
cmp edx, 0x231bbfdd
je 0x53c793
inc edi
add esi, 4
jmp 0x53c760
mov eax, dword [ebp + ebx + 0x24]
push 0
push 0x53
push 0x100
push dword [0x568a6c]
lea eax, [eax + edi*2]
movzx ecx, word [eax + ebx]
mov eax, dword [ebp + ebx + 0x1c]
lea eax, [eax + ecx*4]
mov eax, dword [eax + ebx]
add eax, ebx
call eax
mov ebx, dword [0x568a4c]
xor edi, edi
mov eax, dword [ebx + 0x3c]
mov ebp, dword [eax + ebx + 0x78]
mov esi, dword [ebp + ebx + 0x20]
add esi, ebx
mov ecx, dword [esi]
mov edx, 0x4c9d6363
add ecx, ebx
mov al, byte [ecx]
inc ecx
test al, al
je 0x53c7fd
movsx eax, al
lea ecx, [ecx + 1]
xor eax, edx
imul edx, eax, 0x1000193
mov al, byte [ecx - 1]
test al, al
jne 0x53c7e0
cmp edx, 0xcc779cc6
je 0x53c803
inc edi
add esi, 4
jmp 0x53c7d0
mov eax, dword [ebp + ebx + 0x24]
push 0x19
lea eax, [eax + edi*2]
movzx ecx, word [eax + ebx]
mov eax, dword [ebp + ebx + 0x1c]
lea eax, [eax + ecx*4]
mov eax, dword [eax + ebx]
add eax, ebx
call eax
mov ebx, dword [0x568a60]
xor edi, edi
mov eax, dword [ebx + 0x3c]
mov ebp, dword [eax + ebx + 0x78]
mov esi, dword [ebp + ebx + 0x20]
add esi, ebx
mov ecx, dword [esi]
mov edx, 0xd259e1c5
add ecx, ebx
mov al, byte [ecx]
inc ecx
test al, al
je 0x53c860
movsx eax, al
lea ecx, [ecx + 1]
xor eax, edx
imul edx, eax, 0x1000193
mov al, byte [ecx - 1]
test al, al
jne 0x53c843
cmp edx, 0x87df7be3
je 0x53c866
inc edi
add esi, 4
jmp 0x53c833
mov eax, dword [ebp + ebx + 0x24]
push 0
push 0x44
push 0x100
push dword [0x568a6c]
lea eax, [eax + edi*2]
movzx ecx, word [eax + ebx]
mov eax, dword [ebp + ebx + 0x1c]
lea eax, [eax + ecx*4]
mov eax, dword [eax + ebx]
add eax, ebx
call eax
mov ebx, dword [0x568a4c]
xor edi, edi
mov eax, dword [ebx + 0x3c]
mov ebp, dword [eax + ebx + 0x78]
mov esi, dword [ebp + ebx + 0x20]
add esi, ebx
mov ecx, dword [esi]
mov edx, 0xb81bf898
add ecx, ebx
mov al, byte [ecx]
inc ecx
test al, al
je 0x53c8d0
movsx eax, al
lea ecx, [ecx + 1]
xor eax, edx
imul edx, eax, 0x1000193
mov al, byte [ecx - 1]
test al, al
jne 0x53c8b3
cmp edx, 0x27f4ad8b
je 0x53c8d6
inc edi
add esi, 4
jmp 0x53c8a3
mov eax, dword [ebp + ebx + 0x24]
push 0x19
lea eax, [eax + edi*2]
movzx ecx, word [eax + ebx]
mov eax, dword [ebp + ebx + 0x1c]
lea eax, [eax + ecx*4]
mov eax, dword [eax + ebx]
add eax, ebx
call eax
mov ebx, dword [0x568a60]
xor edi, edi
mov eax, dword [ebx + 0x3c]
mov ebp, dword [eax + ebx + 0x78]
mov esi, dword [ebp + ebx + 0x20]
add esi, ebx
mov ecx, dword [esi]
mov edx, 0x8c08a197
add ecx, ebx
mov al, byte [ecx]
inc ecx
test al, al
je 0x53c933
movsx eax, al
lea ecx, [ecx + 1]
xor eax, edx
imul edx, eax, 0x1000193
mov al, byte [ecx - 1]
test al, al
jne 0x53c916
cmp edx, 0xe03cb845
je 0x53c939
inc edi
add esi, 4
jmp 0x53c906
mov eax, dword [ebp + ebx + 0x24]
push 0x80000000
push 0x41
push 0x101
push dword [0x568a6c]
lea eax, [eax + edi*2]
movzx ecx, word [eax + ebx]
mov eax, dword [ebp + ebx + 0x1c]
lea eax, [eax + ecx*4]
mov eax, dword [eax + ebx]
add eax, ebx
call eax
mov ebx, dword [0x568a4c]
xor edi, edi
mov eax, dword [ebx + 0x3c]
mov ebp, dword [eax + ebx + 0x78]
mov esi, dword [ebp + ebx + 0x20]
add esi, ebx
nop dword [eax]
mov ecx, dword [esi]
mov edx, 0x65cfdd3f
add ecx, ebx
mov al, byte [ecx]
inc ecx
test al, al
je 0x53c9ad
movsx eax, al
lea ecx, [ecx + 1]
xor eax, edx
imul edx, eax, 0x1000193
mov al, byte [ecx - 1]
test al, al
jne 0x53c990
cmp edx, 0xc6d929e2
je 0x53c9b3
inc edi
add esi, 4
jmp 0x53c980
mov eax, dword [ebp + ebx + 0x24]
push 5
lea eax, [eax + edi*2]
movzx ecx, word [eax + ebx]
mov eax, dword [ebp + ebx + 0x1c]
lea eax, [eax + ecx*4]
mov eax, dword [eax + ebx]
add eax, ebx
call eax
mov ebx, dword [0x568a60]
xor edi, edi
mov eax, dword [ebx + 0x3c]
mov ebp, dword [eax + ebx + 0x78]
mov esi, dword [ebp + ebx + 0x20]
add esi, ebx
mov ecx, dword [esi]
mov edx, 0xc62af6e1
add ecx, ebx
mov al, byte [ecx]
inc ecx
test al, al
je 0x53ca10
movsx eax, al
lea ecx, [ecx + 1]
xor eax, edx
imul edx, eax, 0x1000193
mov al, byte [ecx - 1]
test al, al
jne 0x53c9f3
cmp edx, 0x3688c517
je 0x53ca16
inc edi
add esi, 4
jmp 0x53c9e3
mov eax, dword [ebp + ebx + 0x24]
push 0x80000000
push 0x53
push 0x101
push dword [0x568a6c]
lea eax, [eax + edi*2]
movzx ecx, word [eax + ebx]
mov eax, dword [ebp + ebx + 0x1c]
lea eax, [eax + ecx*4]
mov eax, dword [eax + ebx]
add eax, ebx
call eax
mov ebx, dword [0x568a4c]
xor edi, edi
mov eax, dword [ebx + 0x3c]
mov ebp, dword [eax + ebx + 0x78]
mov esi, dword [ebp + ebx + 0x20]
add esi, ebx
mov ecx, dword [esi]
mov edx, 0x2b5b5889
add ecx, ebx
mov al, byte [ecx]
inc ecx
test al, al
je 0x53ca83
movsx eax, al
lea ecx, [ecx + 1]
xor eax, edx
imul edx, eax, 0x1000193
mov al, byte [ecx - 1]
test al, al
jne 0x53ca66
cmp edx, 0xe1032c2c
je 0x53ca89
inc edi
add esi, 4
jmp 0x53ca56
mov eax, dword [ebp + ebx + 0x24]
push 5
lea eax, [eax + edi*2]
movzx ecx, word [eax + ebx]
mov eax, dword [ebp + ebx + 0x1c]
lea eax, [eax + ecx*4]
mov eax, dword [eax + ebx]
add eax, ebx
call eax
mov ebx, dword [0x568a60]
xor edi, edi
mov eax, dword [ebx + 0x3c]
mov ebp, dword [eax + ebx + 0x78]
mov esi, dword [ebp + ebx + 0x20]
add esi, ebx
nop dword [eax]
mov ecx, dword [esi]
mov edx, 0x8686b491
add ecx, ebx
mov al, byte [ecx]
inc ecx
test al, al
je 0x53caed
movsx eax, al
lea ecx, [ecx + 1]
xor eax, edx
imul edx, eax, 0x1000193
mov al, byte [ecx - 1]
test al, al
jne 0x53cad0
cmp edx, 0xbbf67a87
je 0x53caf3
inc edi
add esi, 4
jmp 0x53cac0
mov eax, dword [ebp + ebx + 0x24]
push 0x80000000
push 0x44
push 0x101
push dword [0x568a6c]
lea eax, [eax + edi*2]
movzx ecx, word [eax + ebx]
mov eax, dword [ebp + ebx + 0x1c]
lea eax, [eax + ecx*4]
mov eax, dword [eax + ebx]
add eax, ebx
call eax
mov ebx, dword [0x568a4c]
xor edi, edi
mov eax, dword [ebx + 0x3c]
mov ebp, dword [eax + ebx + 0x78]
mov esi, dword [ebp + ebx + 0x20]
add esi, ebx
mov ecx, dword [esi]
mov edx, 0x48470330
add ecx, ebx
mov al, byte [ecx]
inc ecx
test al, al
je 0x53cb60
movsx eax, al
lea ecx, [ecx + 1]
xor eax, edx
imul edx, eax, 0x1000193
mov al, byte [ecx - 1]
test al, al
jne 0x53cb43
cmp edx, 0x2ea73323
je 0x53cb66
inc edi
add esi, 4
jmp 0x53cb33
mov eax, dword [ebp + ebx + 0x24]
push 5
lea eax, [eax + edi*2]
movzx ecx, word [eax + ebx]
mov eax, dword [ebp + ebx + 0x1c]
lea eax, [eax + ecx*4]
mov eax, dword [eax + ebx]
add eax, ebx
call eax
pop edi
pop esi
pop ebp
pop ebx
pop ecx
ret