Function at 0x40dc20
Capabilities:
Contain obfuscated stackstrings
Hash data using fnv

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x4244bb
mov eax, dword fs:[0]
push eax
sub esp, 0xbc
mov eax, dword [0x431078]
xor eax, ebp
mov dword [ebp - 0x10], eax
push ebx
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov ebx, dword [ebp + 8]
lea ecx, [ebp - 0x30]
mov eax, 0x3000
mov dword [ebp - 0x6c], ebx
mov word [ebp - 0x14], ax
lea eax, [ebp - 0x12]
push eax
push ecx
lea ecx, [ebp - 0xc8]
mov dword [ebp - 0x30], 0x200000a0
mov dword [ebp - 0x2c], 0x20022001
mov dword [ebp - 0x28], 0x20042003
mov dword [ebp - 0x24], 0x20062005
mov dword [ebp - 0x20], 0x20082007
mov dword [ebp - 0x1c], 0x200a2009
mov dword [ebp - 0x18], 0x205f202f
call fcn.0040b510
lea eax, [ebp - 0x30]
mov dword [ebp - 4], 0
lea ecx, [ebp - 0x68]
mov dword [ebp - 0x68], 0x200b00ad
push eax
push ecx
lea ecx, [ebp - 0xa8]
mov dword [ebp - 0x64], 0x200d200c
mov dword [ebp - 0x60], 0x200f200e
mov dword [ebp - 0x5c], 0x202b202a
mov dword [ebp - 0x58], 0x202d202c
mov dword [ebp - 0x54], 0x2060202e
mov dword [ebp - 0x50], 0x20622061
mov dword [ebp - 0x4c], 0x20642063
mov dword [ebp - 0x48], 0x20672066
mov dword [ebp - 0x44], 0x20692068
mov dword [ebp - 0x40], 0x206b206a
mov dword [ebp - 0x3c], 0x206f206e
mov dword [ebp - 0x38], 0xfff9feff
mov dword [ebp - 0x34], 0xfffbfffa
call fcn.0040b510
mov ebx, dword [ebx]
xor edi, edi
mov byte [ebp - 4], 1
cmp dword [ebx - 0xc], edi
jle 0x40deda
mov edi, edi
test edi, edi
js 0x40df0c
mov esi, dword [ebx - 0xc]
cmp edi, esi
jg 0x40df0c
lea eax, [edi + edi]
movzx edx, word [eax + ebx]
mov eax, edx
mov dword [ebp - 0x70], eax
movzx eax, dl
xor eax, 0x811c9dc5
imul ecx, eax, 0x1000193
mov eax, edx
shr eax, 8
xor ecx, eax
imul eax, ecx, 0x1000193
lea ecx, [ebp - 0xa8]
push eax
mov dword [ebp - 0x78], eax
lea eax, [ebp - 0x70]
push eax
lea eax, [ebp - 0x80]
push eax
call fcn.0040b120
mov eax, dword [eax + 4]
test eax, eax
je 0x40de5a
cmp eax, dword [ebp - 0xa4]
je 0x40de5a
cmp edi, 0x7ffffffe
jg 0x40df16
lea eax, [edi + 1]
mov ecx, 1
mov dword [ebp - 0x70], ecx
cmp eax, esi
jle 0x40ddc2
mov ecx, esi
sub ecx, edi
mov dword [ebp - 0x70], ecx
test ecx, ecx
jle 0x40decc
mov eax, esi
sub eax, ecx
mov dword [ebp - 0x78], eax
sub eax, edi
cmp dword [ebx - 4], 1
mov dword [ebp - 0x74], eax
jle 0x40dde9
push esi
mov esi, dword [ebp - 0x6c]
mov ecx, esi
call fcn.00403c20
mov ebx, dword [esi]
mov ecx, dword [ebp - 0x70]
mov eax, dword [ebp - 0x74]
jmp 0x40ddec
mov esi, dword [ebp - 0x6c]
lea edx, [eax*2 + 2]
lea eax, [ecx + edi]
lea ecx, [ebx + eax*2]
lea eax, [edi + edi]
add eax, ebx
test edx, edx
je 0x40de2c
test eax, eax
jne 0x40de1d
call fcn.004167b7
mov dword [eax], 0x16
call fcn.004166de
mov eax, 0x16
jmp 0x40de2e
test ecx, ecx
je 0x40de06
push edx
push ecx
push eax
call fcn.00413f40
add esp, 0xc
xor eax, eax
push eax
call fcn.00402d10
mov ecx, dword [ebp - 0x78]
add esp, 4
test ecx, ecx
js 0x40df0c
mov eax, dword [esi]
cmp ecx, dword [eax - 8]
jg 0x40df0c
mov dword [eax - 0xc], ecx
xor edx, edx
mov eax, dword [esi]
mov word [eax + ecx*2], dx
jmp 0x40decf
push dword [ebp - 0x78]
lea ecx, [edi + edi]
movzx eax, word [ecx + ebx]
lea ecx, [ebp - 0xc8]
mov dword [ebp - 0x74], eax
lea eax, [ebp - 0x74]
push eax
lea eax, [ebp - 0x88]
push eax
call fcn.0040b120
mov eax, dword [eax + 4]
test eax, eax
je 0x40decb
cmp eax, dword [ebp - 0xc4]
je 0x40decb
cmp edi, esi
jge 0x40df0c
cmp dword [ebx - 4], 1
jle 0x40dea6
mov ecx, dword [ebp - 0x6c]
push esi
call fcn.00403c20
mov eax, dword [ebp - 0x6c]
mov ebx, dword [eax]
jmp 0x40dea9
mov eax, dword [ebp - 0x6c]
lea ecx, [edi + edi]
mov edx, 0x20
mov word [ecx + ebx], dx
test esi, esi
js 0x40df0c
mov ecx, dword [eax]
cmp esi, dword [ecx - 8]
jg 0x40df0c
mov dword [ecx - 0xc], esi
xor ecx, ecx
mov eax, dword [eax]
mov word [eax + esi*2], cx
inc edi
mov esi, dword [ebp - 0x6c]
mov ebx, dword [esi]
cmp edi, dword [ebx - 0xc]
jl 0x40dd30
lea ecx, [ebp - 0xa8]
call fcn.0040b640
lea ecx, [ebp - 0xc8]
call fcn.0040b640
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 0x10]
xor ecx, ebp
call fcn.0041345d
mov esp, ebp
pop ebp
ret
push 0x80070057
call fcn.00402f20
push 0x80070216
call fcn.00402f20
int3