Function at 0x417f66
Capabilities:
Hash data using djb2

Disassembly:
push ebp
xor eax, eax
mov ebp, esp
push edi
push esi
push ebx
sub esp, 0x7c
mov ebx, dword [ebp + 0xc]
test ebx, ebx
je 0x417e3a
mov ebx, dword [ebp + 0xc]
jmp 0x417cbe
mov eax, dword [ebp - 0x80]
cmp byte [eax], 0
je 0x417e29
sub esp, 0xc
mov ebx, eax
lea eax, [ebp - 0x10]
inc ebx
push eax
call fcn.00447cd0
add esp, 0x10
push ecx
push ecx
push 0x2c
push ebx
call fcn.00493ff0
add esp, 0x10
mov dword [ebp - 0x80], eax
test eax, eax
je 0x417eb5
mov eax, dword [ebp - 0x80]
mov edi, 0x4b70f6
sub eax, ebx
mov dword [ebp - 0x84], eax
push edx
push eax
lea eax, [ebp - 0x10]
push ebx
push eax
call fcn.00448700
mov esi, dword [ebp - 0x10]
cld
mov ecx, 6
repe cmpsb byte [esi], byte es:[edi]
seta dl
setb al
add esp, 0x10
cmp dl, al
jne 0x417d11
mov eax, dword [ebp + 8]
mov byte [eax + 0x14], 1
push eax
lea eax, [ebp - 0x18]
push eax
lea eax, [ebp - 0x14]
push eax
lea eax, [ebp - 0x10]
push eax
call fcn.00404290
add esp, 0x10
test eax, eax
jne 0x417ecb
mov eax, dword [ebp - 0x14]
mov dword [ebp - 0x48], eax
lea eax, [ebp - 0x44]
push ecx
push 7
push 4
push eax
call fcn.0044a020
mov dword [ebp - 0x44], 0x4d0008
pop eax
lea eax, [ebp - 0x48]
pop edx
push eax
mov edi, dword [ebp + 8]
push edi
call fcn.0044a130
mov ebx, eax
lea eax, [ebp - 0x44]
mov dword [ebp - 0x44], 0x4d0008
mov dword [esp], eax
call fcn.0044a480
lea eax, [ebp - 0x44]
mov dword [esp], eax
call fcn.0044a3f0
add esp, 0x10
test ebx, ebx
js 0x417e42
mov eax, dword [ebp - 0x14]
lea ebx, [ebp - 0x74]
mov dword [ebp - 0x78], eax
push eax
push 7
push 4
push ebx
call fcn.0044a020
mov dword [ebp - 0x74], 0x4d0008
lea esi, [ebp - 0x78]
pop edi
pop eax
push esi
mov esi, dword [ebp + 8]
push esi
call fcn.0044a130
mov dword [ebp - 0x74], 0x4d0008
mov dword [esp], ebx
mov esi, eax
call fcn.0044a480
mov dword [esp], ebx
call fcn.0044a3f0
add esp, 0x10
test esi, esi
js 0x417f5c
push ebx
push ebx
push esi
mov ecx, dword [ebp + 8]
push ecx
call fcn.0044a600
lea ebx, [eax + 4]
pop eax
lea eax, [ebp - 0x18]
pop edx
push eax
push ebx
call fcn.0044ae40
add esp, 0x10
cmp dword [ebp - 0x14], 3
jne 0x417ca0
mov eax, dword [ebp - 0x18]
test eax, 0xffff0000
je 0x417ca0
and eax, 0xffff
mov dword [ebp - 0x1c], eax
push eax
push eax
lea eax, [ebp - 0x1c]
push eax
push ebx
call fcn.0044ae40
mov eax, dword [ebp - 0x80]
add esp, 0x10
cmp byte [eax], 0
jne 0x417cac
sub esp, 0xc
lea eax, [ebp - 0x10]
push eax
call fcn.00447cd0
xor eax, eax
add esp, 0x10
lea esp, [ebp - 0xc]
pop ebx
pop esi
pop edi
pop ebp
ret
push esi
lea esi, [ebp - 0x30]
push 7
push 4
push esi
call fcn.0044a020
mov eax, dword [ebp - 0x14]
mov dword [ebp - 0x30], 0x4d0008
mov dword [ebp - 0x60], eax
lea edi, [ebp - 0x60]
pop ecx
pop ebx
lea ebx, [ebp - 0x5c]
push esi
push ebx
call fcn.0044a220
mov dword [ebp - 0x5c], 0x4d0008
pop eax
pop edx
push edi
mov eax, dword [ebp + 8]
push eax
call fcn.0044ae40
mov dword [ebp - 0x5c], 0x4d0008
mov dword [esp], ebx
call fcn.0044a480
mov dword [esp], ebx
call fcn.0044a3f0
mov dword [ebp - 0x30], 0x4d0008
mov dword [esp], esi
call fcn.0044a480
mov dword [esp], esi
call fcn.0044a3f0
add esp, 0x10
jmp 0x417d82
sub esp, 0xc
push ebx
call fcn.00494000
add esp, 0x10
add eax, ebx
mov dword [ebp - 0x80], eax
jmp 0x417cd6
mov edi, dword [0x4d338c]
push eax
mov eax, dword [ebp + 0xc]
add edi, 0x40
push eax
mov esi, ebx
push 0x4b70fc
push edi
call fcn.00494040
push edi
push 0x17
push 1
push 0x4b7117
call fcn.00494070
mov eax, dword [ebp + 0xc]
add esp, 0x20
sub esi, eax
test esi, esi
jle 0x417f15
xor ebx, ebx
inc ebx
push eax
push eax
push edi
push 0x20
call fcn.00494080
add esp, 0x10
cmp ebx, esi
jne 0x417f03
mov eax, dword [ebp - 0x84]
test eax, eax
jle 0x417f37
xor ebx, ebx
inc ebx
push esi
push esi
push edi
push 0x5e
call fcn.00494080
add esp, 0x10
cmp ebx, dword [ebp - 0x84]
jne 0x417f21
push ebx
push ebx
push edi
push 0xa
call fcn.00494080
lea eax, [ebp - 0x10]
mov dword [esp], eax
call fcn.00447cd0
mov eax, 1
add esp, 0x10
lea esp, [ebp - 0xc]
pop ebx
pop esi
pop edi
pop ebp
ret
push 0x4b7140
push 0x4b70e0
push 0
push 0x4b70f2
call fcn.00451090
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop