Function at 0x1002fa20
Capabilities:
Hash data using djb2

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
sub esp, 0x34
mov eax, dword [0x100b6004]
xor eax, esp
mov dword [esp + 0x30], eax
push ebx
push esi
push edi
mov esi, 0x11a092fc
nop dword [eax]
mov eax, dword [esi]
test eax, eax
je 0x1002fa62
lea ecx, [eax + eax*4]
shl ecx, 6
add ecx, 0x100ea8b0
call fcn.10017ce0
add esi, 4
cmp esi, 0x11a096fc
jl 0x1002fa40
mov esi, 0x11a0971c
mov eax, dword [esi]
test eax, eax
je 0x1002fa89
lea ecx, [eax + eax*4]
shl ecx, 6
add ecx, 0x100ea8b0
call fcn.10017ce0
add esi, 4
cmp esi, 0x11a0979c
jl 0x1002fa67
push 0x400
push 0
push 0x11a092fc
call fcn.1004a480
add esp, 0xc
push 0x80
push 0
push 0x11a0971c
call fcn.1004a480
add esp, 0xc
push 0x1320
push 0
push 0x11a07fa0
call fcn.1004a480
mov eax, dword [0x11a5f1dc]
add esp, 0xc
test byte [eax + 0x10], 0x10
jne 0x1002faed
mov eax, dword [0x11a22c10]
cmp dword [eax + 0xa4c], 0x32505342
je 0x1002faed
mov eax, 0x80
mov ecx, 0x10000
jmp 0x1002faf7
mov eax, 0x400
mov ecx, 0x400000
cmp dword [0x11a096fc], 0
mov dword [0x11a22bf4], eax
mov dword [0x1036ccec], 0
mov dword [0x11a217d8], 1
mov dword [0x11a217e4], 1
mov dword [0x10f7e350], 0
mov dword [0x11a217d4], 0
mov dword [0x11a217e0], 1
mov dword [0x10f75338], 0
mov dword [0x11a0979c], 0
jne 0x1002fc5d
xorps xmm0, xmm0
mov dword [esp + 0x1c], 0
movlpd qword [esp + 0x28], xmm0
mov edi, str.dlight
movlpd qword [esp + 0x30], xmm0
mov esi, 0x1505
mov word [esp + 0x18], ax
mov bl, 0x2a
mov word [esp + 0x1a], ax
mov dword [esp + 0x24], 4
mov dword [esp + 0x20], 3
mov dword [esp + 0x38], ecx
nop word [eax + eax]
lea eax, [ebx + 0x20]
lea edx, [ebx - 0x41]
movzx ecx, al
movzx eax, bl
lea edi, [edi + 1]
mov bl, byte [edi]
cmp dl, 0x19
cmova ecx, eax
mov eax, esi
shl eax, 5
and ecx, 0xdf
add esi, eax
add esi, ecx
test bl, bl
jne 0x1002fba0
and esi, 0x7ff
mov esi, dword [esi*4 + 0x1036a8b0]
test esi, esi
je 0x1002fbfc
nop dword [eax + eax]
push str.dlight
push esi
call fcn.100746f7
add esp, 8
test eax, eax
je 0x1002fc41
mov esi, dword [esi + 0x13c]
test esi, esi
jne 0x1002fbe0
mov edx, 0x201800
mov ecx, str.dlight
call fcn.10017b80
mov esi, eax
lea edx, [esp + 0x18]
mov ecx, esi
call fcn.10017970
lea edx, [esp + 0x18]
mov ecx, esi
call fcn.100171a0
test eax, eax
jne 0x1002fc3a
push 0x140
push eax
push esi
call fcn.1004a480
add esp, 0xc
xor eax, eax
jmp 0x1002fc58
mov ecx, esi
call fcn.10014d00
sub esi, 0x100ea8b0
mov eax, 0x66666667
imul esi
sar edx, 7
mov eax, edx
shr eax, 0x1f
add eax, edx
mov dword [0x11a096fc], eax
call fcn.1001f0f0
push 0x1000
push 0
push 0x10f7d350
call fcn.1004a480
mov eax, dword [0x11a5f1d0]
add esp, 0xc
mov eax, dword [eax + 0x1c]
test eax, eax
jle 0x1002fda5
mov esi, dword [0x11a5f1d0]
mov edi, 1
mov ecx, 0x24
mov dword [esp + 0x14], edi
mov dword [esp + 0xc], ecx
nop
mov edx, edi
mov dword [esp + 0x10], edx
test edi, edi
js 0x1002fd8e
cmp edi, eax
jge 0x1002fd8e
mov esi, dword [ecx + esi]
test esi, esi
je 0x1002fd88
cmp byte [esi], 0x2a
je 0x1002fd88
cmp dword [esi + 0x44], 0
jne 0x1002fd88
xor ebx, ebx
cmp dword [esi + 0xb0], ebx
jle 0x1002fd2f
xor edi, edi
mov eax, dword [esi + 0xb4]
mov edx, esi
mov dword [edi + eax + 0x58], 0
mov eax, dword [esi + 0xb4]
mov dword [edi + eax], 0
mov ecx, dword [esi + 0xb4]
add ecx, edi
call fcn.1002f810
mov edx, dword [esi + 0xb4]
add edx, edi
test byte [edx + 8], 0x10
jne 0x1002fd1f
mov ecx, esi
call fcn.10027bb0
inc ebx
add edi, 0x5c
cmp ebx, dword [esi + 0xb0]
jl 0x1002fce0
mov edi, dword [esp + 0x14]
xor ecx, ecx
cmp dword [esi + 0x88], ecx
jle 0x1002fd5a
xor edx, edx
nop dword [eax + eax]
mov eax, dword [esi + 0x8c]
lea edx, [edx + 0x3c]
inc ecx
mov dword [edx + eax + 4], 0
cmp ecx, dword [esi + 0x88]
jl 0x1002fd40
xor ecx, ecx
cmp dword [esi + 0xa0], ecx
jle 0x1002fd80
xor edx, edx
mov eax, dword [esi + 0xa4]
lea edx, [edx + 0x34]
inc ecx
mov dword [edx + eax - 0x30], 0
cmp ecx, dword [esi + 0xa0]
jl 0x1002fd66
mov edx, dword [esp + 0x10]
mov ecx, dword [esp + 0xc]
mov esi, dword [0x11a5f1d0]
mov eax, dword [esi + 0x1c]
inc edi
add ecx, 4
mov dword [esp + 0x14], edi
mov dword [esp + 0xc], ecx
cmp edx, eax
jl 0x1002fca0
xor ecx, ecx
call fcn.10028970
mov eax, dword [0x11a5f4cc]
mov eax, dword [eax + 8]
test eax, eax
je 0x1002fdba
call eax
mov ecx, dword [esp + 0x3c]
pop edi
pop esi
pop ebx
xor ecx, esp
call fcn.10048715
mov esp, ebp
pop ebp
ret