Function at 0x402980
Capabilities:
Contain obfuscated stackstrings
Encode data using xor
Hash data using fnv

Disassembly:
push ebx
mov ebx, esp
sub esp, 8
and esp, 0xfffffff8
add esp, 4
push ebp
mov ebp, dword [ebx + 4]
mov dword [esp + 4], ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x42339f
mov eax, dword fs:[0]
push eax
push ebx
sub esp, 0x920
mov eax, dword [0x42f080]
xor eax, ebp
mov dword [ebp - 0x14], eax
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov esi, edx
mov dword [ebp - 0x8e4], esi
mov edi, ecx
mov dword [ebp - 0x8fc], edi
mov dword [ebp - 4], 0
lea ecx, [ebp - 0x8d0]
push 0x42b1e0
mov dword [ebp - 0x904], edi
push 0x42b1dc
mov dword [ebp - 0x8ec], 0
call fcn.00408020
push 0x42b1e8
push 0x42b1e4
lea ecx, [ebp - 0x8a0]
mov dword [ebp - 4], 1
call fcn.00408020
push 0x42b1f0
push 0x42b1ec
lea ecx, [ebp - 0x870]
mov byte [ebp - 4], 2
call fcn.00408020
push 0x42b1f8
push 0x42b1f4
lea ecx, [ebp - 0x840]
mov byte [ebp - 4], 3
call fcn.00408020
push 0x42b200
push 0x42b1fc
lea ecx, [ebp - 0x810]
mov byte [ebp - 4], 4
call fcn.00408020
push 0x42b208
push 0x42b204
lea ecx, [ebp - 0x7e0]
mov byte [ebp - 4], 5
call fcn.00408020
push 0x42b210
push 0x42b20c
lea ecx, [ebp - 0x7b0]
mov byte [ebp - 4], 6
call fcn.00408020
push 0x42b218
push 0x42b214
lea ecx, [ebp - 0x780]
mov byte [ebp - 4], 7
call fcn.00408020
push 0x42b21c
push 0x42b190
lea ecx, [ebp - 0x750]
mov byte [ebp - 4], 8
call fcn.00408020
push 0x42b224
push 0x42b220
lea ecx, [ebp - 0x720]
mov byte [ebp - 4], 9
call fcn.00408020
push 0x42b22c
push 0x42b228
lea ecx, [ebp - 0x6f0]
mov byte [ebp - 4], 0xa
call fcn.00408020
push 0x42b234
push 0x42b230
lea ecx, [ebp - 0x6c0]
mov byte [ebp - 4], 0xb
call fcn.00408020
push 0x42b23c
push 0x42b238
lea ecx, [ebp - 0x690]
mov byte [ebp - 4], 0xc
call fcn.00408020
mov byte [ebp - 4], 0xd
push 0x42b244
push 0x42b240
lea ecx, [ebp - 0x660]
call fcn.00408020
xorps xmm0, xmm0
mov dword [ebp - 0x620], 1
movups xmmword [ebp - 0x630], xmm0
mov dword [ebp - 0x61c], 0xf
mov word [ebp - 0x630], 0x65
movups xmmword [ebp - 0x618], xmm0
mov eax, 0x4545
mov dword [ebp - 0x608], 2
mov dword [ebp - 0x604], 0xf
mov word [ebp - 0x618], ax
mov byte [ebp - 0x616], 0
movups xmmword [ebp - 0x600], xmm0
mov dword [ebp - 0x5f0], 1
mov dword [ebp - 0x5ec], 0xf
mov word [ebp - 0x600], 0x66
movups xmmword [ebp - 0x5e8], xmm0
mov eax, 0x4646
mov dword [ebp - 0x5d8], 2
mov dword [ebp - 0x5d4], 0xf
mov word [ebp - 0x5e8], ax
mov byte [ebp - 0x5e6], 0
movups xmmword [ebp - 0x5d0], xmm0
mov dword [ebp - 0x5c0], 1
mov dword [ebp - 0x5bc], 0xf
mov word [ebp - 0x5d0], 0x71
movups xmmword [ebp - 0x5b8], xmm0
mov eax, 0x4241
mov dword [ebp - 0x5a8], 2
mov dword [ebp - 0x5a4], 0xf
mov word [ebp - 0x5b8], ax
mov byte [ebp - 0x5b6], 0
movups xmmword [ebp - 0x5a0], xmm0
mov dword [ebp - 0x590], 1
mov dword [ebp - 0x58c], 0xf
mov word [ebp - 0x5a0], 0x77
movups xmmword [ebp - 0x588], xmm0
mov eax, 0x4341
mov dword [ebp - 0x578], 2
mov dword [ebp - 0x574], 0xf
mov word [ebp - 0x588], ax
mov byte [ebp - 0x586], 0
movups xmmword [ebp - 0x570], xmm0
mov dword [ebp - 0x560], 1
mov dword [ebp - 0x55c], 0xf
mov word [ebp - 0x570], 0x72
movups xmmword [ebp - 0x558], xmm0
mov eax, 0x4441
mov dword [ebp - 0x548], 2
mov dword [ebp - 0x544], 0xf
mov word [ebp - 0x558], ax
mov byte [ebp - 0x556], 0
movups xmmword [ebp - 0x540], xmm0
mov dword [ebp - 0x530], 1
mov dword [ebp - 0x52c], 0xf
mov word [ebp - 0x540], 0x74
movups xmmword [ebp - 0x528], xmm0
mov eax, 0x4541
mov dword [ebp - 0x518], 2
mov dword [ebp - 0x514], 0xf
mov word [ebp - 0x528], ax
mov byte [ebp - 0x526], 0
movups xmmword [ebp - 0x510], xmm0
mov dword [ebp - 0x500], 1
mov dword [ebp - 0x4fc], 0xf
mov word [ebp - 0x510], 0x79
movups xmmword [ebp - 0x4f8], xmm0
mov eax, 0x4641
mov dword [ebp - 0x4e8], 2
mov dword [ebp - 0x4e4], 0xf
mov word [ebp - 0x4f8], ax
mov byte [ebp - 0x4f6], 0
movups xmmword [ebp - 0x4e0], xmm0
mov dword [ebp - 0x4d0], 1
mov dword [ebp - 0x4cc], 0xf
mov word [ebp - 0x4e0], 0x75
movups xmmword [ebp - 0x4c8], xmm0
mov eax, 0x4142
mov dword [ebp - 0x4b8], 2
mov dword [ebp - 0x4b4], 0xf
mov word [ebp - 0x4c8], ax
mov byte [ebp - 0x4c6], 0
movups xmmword [ebp - 0x4b0], xmm0
mov dword [ebp - 0x4a0], 1
mov dword [ebp - 0x49c], 0xf
mov word [ebp - 0x4b0], 0x69
movups xmmword [ebp - 0x498], xmm0
mov eax, 0x4342
mov dword [ebp - 0x488], 2
mov dword [ebp - 0x484], 0xf
mov word [ebp - 0x498], ax
mov byte [ebp - 0x496], 0
movups xmmword [ebp - 0x480], xmm0
mov dword [ebp - 0x470], 1
mov dword [ebp - 0x46c], 0xf
mov word [ebp - 0x480], 0x6f
movups xmmword [ebp - 0x468], xmm0
mov eax, 0x4442
mov dword [ebp - 0x458], 2
mov dword [ebp - 0x454], 0xf
mov word [ebp - 0x468], ax
mov byte [ebp - 0x466], 0
movups xmmword [ebp - 0x450], xmm0
mov dword [ebp - 0x440], 1
mov dword [ebp - 0x43c], 0xf
mov word [ebp - 0x450], 0x70
movups xmmword [ebp - 0x438], xmm0
mov eax, 0x4542
mov dword [ebp - 0x428], 2
mov dword [ebp - 0x424], 0xf
mov word [ebp - 0x438], ax
mov byte [ebp - 0x436], 0
movups xmmword [ebp - 0x420], xmm0
mov dword [ebp - 0x410], 1
mov dword [ebp - 0x40c], 0xf
mov word [ebp - 0x420], 0x73
movups xmmword [ebp - 0x408], xmm0
mov eax, 0x4642
mov dword [ebp - 0x3f8], 2
mov dword [ebp - 0x3f4], 0xf
mov word [ebp - 0x408], ax
mov byte [ebp - 0x406], 0
movups xmmword [ebp - 0x3f0], xmm0
mov dword [ebp - 0x3e0], 1
mov dword [ebp - 0x3dc], 0xf
mov word [ebp - 0x3f0], 0x67
movups xmmword [ebp - 0x3d8], xmm0
mov eax, 0x4143
mov dword [ebp - 0x3c8], 2
mov dword [ebp - 0x3c4], 0xf
mov word [ebp - 0x3d8], ax
mov byte [ebp - 0x3d6], 0
movups xmmword [ebp - 0x3c0], xmm0
mov dword [ebp - 0x3b0], 1
mov dword [ebp - 0x3ac], 0xf
mov word [ebp - 0x3c0], 0x68
movups xmmword [ebp - 0x3a8], xmm0
mov eax, 0x4243
mov dword [ebp - 0x398], 2
mov dword [ebp - 0x394], 0xf
mov word [ebp - 0x3a8], ax
mov byte [ebp - 0x3a6], 0
movups xmmword [ebp - 0x390], xmm0
mov dword [ebp - 0x380], 1
mov dword [ebp - 0x37c], 0xf
mov word [ebp - 0x390], 0x6a
movups xmmword [ebp - 0x378], xmm0
mov eax, 0x4443
mov dword [ebp - 0x368], 2
mov dword [ebp - 0x364], 0xf
mov word [ebp - 0x378], ax
mov byte [ebp - 0x376], 0
movups xmmword [ebp - 0x360], xmm0
mov dword [ebp - 0x350], 1
mov dword [ebp - 0x34c], 0xf
mov word [ebp - 0x360], 0x6b
push 2
lea eax, [ebp - 0x348]
mov dword [ebp - 0x338], 2
push 0x42b248
push eax
movups xmmword [ebp - 0x348], xmm0
mov dword [ebp - 0x334], 0xf
call fcn.00407a00
add esp, 0xc
mov byte [ebp - 0x346], 0
push 0x42b250
push 0x42b24c
lea ecx, [ebp - 0x330]
mov byte [ebp - 4], 0x2e
call fcn.00408020
push 0x42b258
push 0x42b254
lea ecx, [ebp - 0x300]
mov byte [ebp - 4], 0x2f
call fcn.00408020
push 0x42b260
push 0x42b25c
lea ecx, [ebp - 0x2d0]
mov byte [ebp - 4], 0x30
call fcn.00408020
push 0x42b268
push 0x42b264
lea ecx, [ebp - 0x2a0]
mov byte [ebp - 4], 0x31
call fcn.00408020
push 0x42b270
push 0x42b26c
lea ecx, [ebp - 0x270]
mov byte [ebp - 4], 0x32
call fcn.00408020
push 0x42b278
push 0x42b274
lea ecx, [ebp - 0x240]
mov byte [ebp - 4], 0x33
call fcn.00408020
push 0x42b280
push 0x42b27c
lea ecx, [ebp - 0x210]
mov byte [ebp - 4], 0x34
call fcn.00408020
push 0x42b288
push 0x42b284
lea ecx, [ebp - 0x1e0]
mov byte [ebp - 4], 0x35
call fcn.00408020
push 0x42b290
push 0x42b28c
lea ecx, [ebp - 0x1b0]
mov byte [ebp - 4], 0x36
call fcn.00408020
push 0x42b298
push 0x42b294
lea ecx, [ebp - 0x180]
mov byte [ebp - 4], 0x37
call fcn.00408020
push 0x42b2a0
push 0x42b29c
lea ecx, [ebp - 0x150]
mov byte [ebp - 4], 0x38
call fcn.00408020
push 0x42b2a8
push 0x42b2a4
lea ecx, [ebp - 0x120]
mov byte [ebp - 4], 0x39
call fcn.00408020
push 0x42b2b0
push 0x42b2ac
lea ecx, [ebp - 0xf0]
mov byte [ebp - 4], 0x3a
call fcn.00408020
push 0x42b2b8
push 0x42b2b4
lea ecx, [ebp - 0xc0]
mov byte [ebp - 4], 0x3b
call fcn.00408020
push 0x42b2c0
push 0x42b2bc
lea ecx, [ebp - 0x90]
mov byte [ebp - 4], 0x3c
call fcn.00408020
push 0x42b2c8
push 0x42b2c4
lea ecx, [ebp - 0x60]
mov byte [ebp - 4], 0x3d
call fcn.00408020
lea eax, [ebp - 0x30]
mov dword [ebp - 4], 0x3e
lea ecx, [ebp - 0x8d0]
push eax
push ecx
lea ecx, [ebp - 0x92c]
call fcn.004065a0
push fcn.00402840
push 0x2e
push 0x30
lea eax, [ebp - 0x8d0]
mov byte [ebp - 4], 0x40
push eax
call fcn.0040ad52
mov ecx, edi
call fcn.00406b60
push dword [esi + 0x10]
mov ecx, edi
mov dword [ebp - 0x8ec], 1
call fcn.00406950
xor eax, eax
cmp dword [esi + 0x10], eax
mov dword [ebp - 0x8e0], eax
jbe 0x40345a
lea edx, [ebp - 0x8d0]
lea ecx, [ebp - 0x8d1]
sub edx, ecx
mov dword [ebp - 0x8fc], edx
cmp dword [esi + 0x14], 0xf
mov ecx, esi
jbe 0x40327f
mov ecx, dword [esi]
mov al, byte [ecx + eax]
xorps xmm0, xmm0
mov byte [ebp - 0x8d1], al
lea ecx, [ebp - 0x2c]
push edx
lea eax, [ebp - 0x8d1]
mov dword [ebp - 0x1c], 0
push eax
movups xmmword [ebp - 0x2c], xmm0
mov dword [ebp - 0x18], 0
call fcn.004086e0
mov byte [ebp - 4], 0x41
lea eax, [ebp - 0x2c]
cmp dword [ebp - 0x18], 0xf
mov edx, 0x811c9dc5
mov ecx, dword [ebp - 0x2c]
cmova eax, ecx
mov dword [ebp - 0x8dc], ecx
mov dword [ebp - 0x8d8], eax
xor eax, eax
cmp dword [ebp - 0x1c], eax
jbe 0x4032f8
mov esi, dword [ebp - 0x8d8]
nop dword [eax]
movzx ecx, byte [esi + eax]
inc eax
xor ecx, edx
imul edx, ecx, 0x1000193
cmp eax, dword [ebp - 0x1c]
jb 0x4032e0
mov esi, dword [ebp - 0x8e4]
push edx
lea eax, [ebp - 0x2c]
push eax
lea eax, [ebp - 0x90c]
push eax
lea ecx, [ebp - 0x92c]
call fcn.00409460
mov ecx, dword [eax + 4]
test ecx, ecx
je 0x40339b
cmp ecx, dword [ebp - 0x928]
je 0x40339b
cmp dword [ecx + 0x34], 0xf
lea edx, [ecx + 0x20]
jbe 0x40332e
mov edx, dword [ecx + 0x20]
mov eax, dword [edi + 0x10]
mov ecx, dword [ecx + 0x30]
mov dword [ebp - 0x8d8], eax
mov eax, dword [edi + 0x14]
sub eax, dword [ebp - 0x8d8]
mov dword [ebp - 0x8f0], ecx
cmp ecx, eax
ja 0x403382
cmp dword [edi + 0x14], 0xf
mov esi, dword [ebp - 0x8d8]
lea eax, [esi + ecx]
mov dword [edi + 0x10], eax
mov eax, edi
jbe 0x403363
mov eax, dword [edi]
push ecx
add esi, eax
push edx
push esi
call fcn.0040c560
mov eax, dword [ebp - 0x8f0]
add esp, 0xc
mov byte [eax + esi], 0
mov esi, dword [ebp - 0x8e4]
jmp 0x4033f8
push ecx
push edx
mov byte [ebp - 0x8f4], 0
push dword [ebp - 0x8f4]
push ecx
mov ecx, edi
call fcn.004087c0
jmp 0x4033f8
cmp dword [esi + 0x14], 0xf
mov ecx, esi
jbe 0x4033a5
mov ecx, dword [esi]
mov eax, dword [ebp - 0x8e0]
mov edx, dword [edi + 0x14]
mov al, byte [ecx + eax]
mov ecx, dword [edi + 0x10]
mov byte [ebp - 0x8e8], al
cmp ecx, edx
jae 0x4033dd
lea eax, [ecx + 1]
mov dword [edi + 0x10], eax
mov eax, edi
cmp edx, 0xf
jbe 0x4033cd
mov eax, dword [edi]
add eax, ecx
mov cl, byte [ebp - 0x8e8]
mov byte [eax + 1], 0
mov byte [eax], cl
jmp 0x4033f8
push dword [ebp - 0x8e8]
mov byte [ebp - 0x8f8], 0
push dword [ebp - 0x8f8]
push ecx
mov ecx, edi
call fcn.004085a0
mov byte [ebp - 4], 0x40
mov eax, dword [ebp - 0x18]
cmp eax, 0xf
jbe 0x40343d
lea ecx, [eax + 1]
mov eax, dword [ebp - 0x8dc]
mov edx, eax
cmp ecx, 0x1000
jb 0x403433
mov eax, dword [edx - 4]
add ecx, 0x23
sub edx, eax
mov dword [ebp - 0x8dc], eax
lea eax, [edx - 4]
cmp eax, 0x1f
ja 0x403485
mov eax, dword [ebp - 0x8dc]
push ecx
push eax
call fcn.0040acec
add esp, 8
mov eax, dword [ebp - 0x8e0]
inc eax
mov dword [ebp - 0x8e0], eax
cmp eax, dword [esi + 0x10]
jae 0x40345a
mov edx, dword [ebp - 0x8fc]
jmp 0x403275
lea ecx, [ebp - 0x92c]
call fcn.004028e0
mov eax, edi
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
mov ecx, dword [ebp - 0x14]
xor ecx, ebp
call fcn.0040acde
mov esp, ebp
pop ebp
mov esp, ebx
pop ebx
ret
call fcn.0040f86b
int3