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

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x2dc
mov eax, dword [0x421008]
xor eax, ebp
mov dword [ebp - 4], eax
push ebx
push esi
push edi
mov edi, dword [0x421820]
xor ebx, ebx
mov dword [ebp - 0x234], ecx
mov eax, dword [edi + 0x3c]
mov eax, dword [eax + edi + 0x78]
add eax, edi
mov dword [ebp - 0x228], eax
mov esi, dword [eax + 0x20]
add esi, edi
nop dword [eax + eax]
mov ecx, dword [esi]
mov edx, 0xfe60fae3
add ecx, edi
mov al, byte [ecx]
inc ecx
test al, al
je 0x40eead
movsx eax, al
lea ecx, [ecx + 1]
xor eax, edx
imul edx, eax, 0x1000193
mov al, byte [ecx - 1]
test al, al
jne 0x40ee90
cmp edx, 0x8f3c2db8
je 0x40eeb3
inc ebx
add esi, 4
jmp 0x40ee80
mov edx, dword [ebp - 0x228]
push dword [ebp - 0x234]
mov eax, dword [edx + 0x24]
lea eax, [eax + ebx*2]
movzx ecx, word [eax + edi]
mov eax, dword [edx + 0x1c]
lea eax, [eax + ecx*4]
mov eax, dword [eax + edi]
add eax, edi
call eax
mov ebx, dword [0x421810]
xor edi, edi
mov dword [0x4217ec], eax
mov ecx, dword [ebx + 0x3c]
mov eax, dword [ecx + ebx + 0x78]
add eax, ebx
mov dword [ebp - 0x228], eax
mov esi, dword [eax + 0x20]
add esi, ebx
mov ecx, dword [esi]
mov edx, 0x8d809cab
add ecx, ebx
mov al, byte [ecx]
inc ecx
test al, al
je 0x40ef24
movsx eax, al
lea ecx, [ecx + 1]
xor eax, edx
imul edx, eax, 0x1000193
mov al, byte [ecx - 1]
test al, al
jne 0x40ef07
cmp edx, 0xc593230
je 0x40ef2a
inc edi
add esi, 4
jmp 0x40eef7
mov edx, dword [ebp - 0x228]
push dword [0x4217ec]
mov eax, dword [edx + 0x24]
lea eax, [eax + edi*2]
movzx ecx, word [eax + ebx]
mov eax, dword [edx + 0x1c]
lea eax, [eax + ecx*4]
mov eax, dword [eax + ebx]
add eax, ebx
call eax
mov ebx, dword [0x421810]
xor edi, edi
mov dword [0x4217dc], eax
mov eax, dword [ebx + 0x3c]
mov eax, dword [eax + ebx + 0x78]
add eax, ebx
mov dword [ebp - 0x228], eax
mov esi, dword [eax + 0x20]
add esi, ebx
nop
mov ecx, dword [esi]
mov edx, 0x1083a97b
add ecx, ebx
mov al, byte [ecx]
inc ecx
test al, al
je 0x40ef9d
movsx eax, al
lea ecx, [ecx + 1]
xor eax, edx
imul edx, eax, 0x1000193
mov al, byte [ecx - 1]
test al, al
jne 0x40ef80
cmp edx, 0x1fb9fc16
je 0x40efa3
inc edi
add esi, 4
jmp 0x40ef70
mov edx, dword [ebp - 0x228]
push 0x258
push 0x1c2
push dword [0x4217ec]
mov eax, dword [edx + 0x24]
lea eax, [eax + edi*2]
movzx ecx, word [eax + ebx]
mov eax, dword [edx + 0x1c]
lea eax, [eax + ecx*4]
mov eax, dword [eax + ebx]
add eax, ebx
call eax
mov ebx, dword [0x421810]
xor edi, edi
mov dword [0x4217f0], eax
mov ecx, dword [ebx + 0x3c]
mov eax, dword [ecx + ebx + 0x78]
add eax, ebx
mov dword [ebp - 0x228], eax
mov esi, dword [eax + 0x20]
add esi, ebx
mov ecx, dword [esi]
mov edx, 0xfc022357
add ecx, ebx
mov al, byte [ecx]
inc ecx
test al, al
je 0x40f01e
movsx eax, al
lea ecx, [ecx + 1]
xor eax, edx
imul edx, eax, 0x1000193
mov al, byte [ecx - 1]
test al, al
jne 0x40f001
cmp edx, 0x1e821f34
je 0x40f024
inc edi
add esi, 4
jmp 0x40eff1
mov edx, dword [ebp - 0x228]
push dword [0x4217f0]
push dword [0x4217dc]
mov eax, dword [edx + 0x24]
lea eax, [eax + edi*2]
movzx ecx, word [eax + ebx]
mov eax, dword [edx + 0x1c]
lea eax, [eax + ecx*4]
mov eax, dword [eax + ebx]
add eax, ebx
call eax
mov ebx, dword [0x421820]
xor edi, edi
mov eax, dword [ebx + 0x3c]
mov eax, dword [eax + ebx + 0x78]
add eax, ebx
mov dword [ebp - 0x228], eax
mov esi, dword [eax + 0x20]
add esi, ebx
nop dword [eax]
mov ecx, dword [esi]
mov edx, 0x6f099425
add ecx, ebx
mov al, byte [ecx]
inc ecx
test al, al
je 0x40f09d
movsx eax, al
lea ecx, [ecx + 1]
xor eax, edx
imul edx, eax, 0x1000193
mov al, byte [ecx - 1]
test al, al
jne 0x40f080
cmp edx, 0x52291796
je 0x40f0a3
inc edi
add esi, 4
jmp 0x40f070
mov edx, dword [ebp - 0x228]
lea eax, [ebp - 0xa8]
push eax
push dword [ebp - 0x234]
mov eax, dword [edx + 0x24]
lea eax, [eax + edi*2]
movzx ecx, word [eax + ebx]
mov eax, dword [edx + 0x1c]
lea eax, [eax + ecx*4]
mov eax, dword [eax + ebx]
add eax, ebx
call eax
mov ebx, dword [0x421810]
xor edi, edi
mov eax, dword [ebx + 0x3c]
mov eax, dword [eax + ebx + 0x78]
add eax, ebx
mov dword [ebp - 0x228], eax
mov esi, dword [eax + 0x20]
add esi, ebx
nop dword [eax]
mov ecx, dword [esi]
mov edx, 0x6e0e0fc0
add ecx, ebx
mov al, byte [ecx]
inc ecx
test al, al
je 0x40f11d
movsx eax, al
lea ecx, [ecx + 1]
xor eax, edx
imul edx, eax, 0x1000193
mov al, byte [ecx - 1]
test al, al
jne 0x40f100
cmp edx, 0xb9a97db9
je 0x40f123
inc edi
add esi, 4
jmp 0x40f0f0
mov edx, dword [ebp - 0x228]
push 0x1c1817
mov eax, dword [edx + 0x24]
lea eax, [eax + edi*2]
movzx ecx, word [eax + ebx]
mov eax, dword [edx + 0x1c]
lea eax, [eax + ecx*4]
mov eax, dword [eax + ebx]
add eax, ebx
call eax
mov ebx, dword [0x421810]
xor edi, edi
mov dword [ebp - 0x248], eax
mov ecx, dword [ebx + 0x3c]
mov eax, dword [ecx + ebx + 0x78]
add eax, ebx
mov dword [ebp - 0x228], eax
mov esi, dword [eax + 0x20]
add esi, ebx
mov ecx, dword [esi]
mov edx, 0x770bdf54
add ecx, ebx
mov al, byte [ecx]
inc ecx
test al, al
je 0x40f194
movsx eax, al
lea ecx, [ecx + 1]
xor eax, edx
imul edx, eax, 0x1000193
mov al, byte [ecx - 1]
test al, al
jne 0x40f177
cmp edx, 0x4fd09575
je 0x40f19a
inc edi
add esi, 4
jmp 0x40f167
mov edx, dword [ebp - 0x228]
push 0x25201d
mov eax, dword [edx + 0x24]
lea eax, [eax + edi*2]
movzx ecx, word [eax + ebx]
mov eax, dword [edx + 0x1c]
lea eax, [eax + ecx*4]
mov eax, dword [eax + ebx]
add eax, ebx
call eax
mov ebx, dword [0x421810]
xor edi, edi
mov dword [ebp - 0x250], eax
mov ecx, dword [ebx + 0x3c]
mov eax, dword [ecx + ebx + 0x78]
add eax, ebx
mov dword [ebp - 0x228], eax
mov esi, dword [eax + 0x20]
add esi, ebx
nop
mov ecx, dword [esi]
mov edx, 0xf813662c
add ecx, ebx
mov al, byte [ecx]
inc ecx
test al, al
je 0x40f20d
movsx eax, al
lea ecx, [ecx + 1]
xor eax, edx
imul edx, eax, 0x1000193
mov al, byte [ecx - 1]
test al, al
jne 0x40f1f0
cmp edx, 0x1404f1eb
je 0x40f213
inc edi
add esi, 4
jmp 0x40f1e0
mov edx, dword [ebp - 0x228]
push 0x25201d
push 0
push 0
mov eax, dword [edx + 0x24]
lea eax, [eax + edi*2]
movzx ecx, word [eax + ebx]
mov eax, dword [edx + 0x1c]
lea eax, [eax + ecx*4]
mov eax, dword [eax + ebx]
add eax, ebx
call eax
mov ebx, dword [0x421810]
xor edi, edi
mov dword [ebp - 0x24c], eax
mov ecx, dword [ebx + 0x3c]
mov eax, dword [ecx + ebx + 0x78]
add eax, ebx
mov dword [ebp - 0x228], eax
mov esi, dword [eax + 0x20]
add esi, ebx
nop dword [eax + eax]
mov ecx, dword [esi]
mov edx, 0xa00b2003
add ecx, ebx
mov al, byte [ecx]
inc ecx
test al, al
je 0x40f28d
movsx eax, al
lea ecx, [ecx + 1]
xor eax, edx
imul edx, eax, 0x1000193
mov al, byte [ecx - 1]
test al, al
jne 0x40f270
cmp edx, 0xa8548b8e
je 0x40f293
inc edi
add esi, 4
jmp 0x40f260
mov edx, dword [ebp - 0x228]
push 0x5dc9ff
mov eax, dword [edx + 0x24]
lea eax, [eax + edi*2]
movzx ecx, word [eax + ebx]
mov eax, dword [edx + 0x1c]
lea eax, [eax + ecx*4]
mov eax, dword [eax + ebx]
add eax, ebx
call eax
mov ebx, dword [0x421810]
xor edi, edi
mov dword [ebp - 0x244], eax
mov ecx, dword [ebx + 0x3c]
mov eax, dword [ecx + ebx + 0x78]
add eax, ebx
mov dword [ebp - 0x228], eax
mov esi, dword [eax + 0x20]
add esi, ebx
mov ecx, dword [esi]
mov edx, 0xa3002995
add ecx, ebx
mov al, byte [ecx]
inc ecx
test al, al
je 0x40f304
movsx eax, al
lea ecx, [ecx + 1]
xor eax, edx
imul edx, eax, 0x1000193
mov al, byte [ecx - 1]
test al, al
jne 0x40f2e7
cmp edx, 0xbaa2f7d8
je 0x40f30a
inc edi
add esi, 4
jmp 0x40f2d7
mov edx, dword [ebp - 0x228]
push 0x5dc9ff
push 0
push 0
mov eax, dword [edx + 0x24]
lea eax, [eax + edi*2]
movzx ecx, word [eax + ebx]
mov eax, dword [edx + 0x1c]
lea eax, [eax + ecx*4]
mov eax, dword [eax + ebx]
add eax, ebx
call eax
mov ebx, dword [0x421810]
xor edi, edi
mov dword [ebp - 0x228], eax
mov ecx, dword [ebx + 0x3c]
mov eax, dword [ecx + ebx + 0x78]
add eax, ebx
mov dword [ebp - 0x22c], eax
mov esi, dword [eax + 0x20]
add esi, ebx
mov ecx, dword [esi]
mov edx, 0xb100239f
add ecx, ebx
mov al, byte [ecx]
inc ecx
test al, al
je 0x40f37f
movsx eax, al
lea ecx, [ecx + 1]
xor eax, edx
imul edx, eax, 0x1000193
mov al, byte [ecx - 1]
test al, al
jne 0x40f362
cmp edx, 0x1cfc5d1a
je 0x40f385
inc edi
add esi, 4
jmp 0x40f352
mov edx, dword [ebp - 0x22c]
push 0x72deff
push 0
push 0
mov eax, dword [edx + 0x24]
lea eax, [eax + edi*2]
movzx ecx, word [eax + ebx]
mov eax, dword [edx + 0x1c]
lea eax, [eax + ecx*4]
mov eax, dword [eax + ebx]
add eax, ebx
call eax
mov ebx, dword [0x421810]
xor edi, edi
mov dword [ebp - 0x214], eax
mov ecx, dword [ebx + 0x3c]
mov eax, dword [ecx + ebx + 0x78]
add eax, ebx
mov dword [ebp - 0x22c], eax
mov esi, dword [eax + 0x20]
add esi, ebx
nop dword [eax]
mov ecx, dword [esi]
mov edx, 0x25d02fcb
add ecx, ebx
mov al, byte [ecx]
inc ecx
test al, al
je 0x40f3fd
movsx eax, al
lea ecx, [ecx + 1]
xor eax, edx
imul edx, eax, 0x1000193
mov al, byte [ecx - 1]
test al, al
jne 0x40f3e0
cmp edx, 0x4414fb96
je 0x40f403
inc edi
add esi, 4
jmp 0x40f3d0
mov edx, dword [ebp - 0x22c]
push 0x72deff
mov eax, dword [edx + 0x24]
lea eax, [eax + edi*2]
movzx ecx, word [eax + ebx]
mov eax, dword [edx + 0x1c]
lea eax, [eax + ecx*4]
mov eax, dword [eax + ebx]
add eax, ebx
call eax
movaps xmm0, xmmword [0x41cff0]
xor ecx, ecx
mov dword [ebp - 0x23c], eax
movups xmmword [ebp - 0x164], xmm0
mov word [ebp - 0x154], 0x3c0d
mov byte [ebp - 0x152], 0
nop dword [eax + eax]
mov al, byte [ebp - 0x164]
xor byte [ebp + ecx - 0x163], al
inc ecx
cmp ecx, 0x11
jb 0x40f450
lea eax, [ebp - 0x163]
mov byte [ebp - 0x152], 0
push eax
lea ecx, [ebp - 0x290]
call fcn.0040b900
lea eax, [ebp - 0x258]
push eax
lea ecx, [ebp - 0x290]
call fcn.0040b730
mov esi, eax
lea ecx, [ebp - 0x290]
lea eax, [ebp - 0x260]
push eax
call fcn.0040b750
lea ecx, [ebp - 0x235]
push ecx
push dword [esi]
lea ecx, [ebp - 0x210]
push dword [eax]
call fcn.0040c8f0
lea ecx, [ebp - 0x290]
call fcn.0040b850
mov ebx, dword [0x421810]
xor edi, edi
mov eax, dword [ebx + 0x3c]
mov eax, dword [eax + ebx + 0x78]
add eax, ebx
mov dword [ebp - 0x22c], eax
mov esi, dword [eax + 0x20]
add esi, ebx
nop
mov ecx, dword [esi]
mov edx, 0x7fafdca8
add ecx, ebx
mov al, byte [ecx]
inc ecx
test al, al
je 0x40f50d
movsx eax, al
lea ecx, [ecx + 1]
xor eax, edx
imul edx, eax, 0x1000193
mov al, byte [ecx - 1]
test al, al
jne 0x40f4f0
cmp edx, 0x1baabf2a
je 0x40f513
inc edi
add esi, 4
jmp 0x40f4e0
mov edx, dword [ebp - 0x22c]
mov eax, dword [edx + 0x24]
lea eax, [eax + edi*2]
movzx ecx, word [eax + ebx]
mov eax, dword [edx + 0x1c]
lea eax, [eax + ecx*4]
mov esi, dword [eax + ebx]
lea ecx, [ebp - 0x210]
add esi, ebx
call fcn.0040b4e0
push eax
push 0
push 2
push 0
push 0
push 0xcc
push 0
push 0
push 0
push 0x384
push 0
push 0
push 0
push 0x12
call esi
lea ecx, [ebp - 0x210]
mov dword [ebp - 0x21c], eax
call fcn.0040b500
movaps xmm0, xmmword [0x41df20]
xor ecx, ecx
movups xmmword [ebp - 0x128], xmm0
mov word [ebp - 0x118], 0x4574
mov byte [ebp - 0x116], 0
nop dword [eax]
mov al, byte [ebp - 0x128]
xor byte [ebp + ecx - 0x127], al
inc ecx
cmp ecx, 0x11
jb 0x40f590
lea eax, [ebp - 0x127]
mov byte [ebp - 0x116], 0
push eax
lea ecx, [ebp - 0x2a8]
call fcn.0040b900
lea eax, [ebp - 0x25c]
push eax
lea ecx, [ebp - 0x2a8]
call fcn.0040b730
mov esi, eax
lea ecx, [ebp - 0x2a8]
lea eax, [ebp - 0x26c]
push eax
call fcn.0040b750
lea ecx, [ebp - 0x236]
push ecx
push dword [esi]
lea ecx, [ebp - 0x1f8]
push dword [eax]
call fcn.0040c8f0
lea ecx, [ebp - 0x2a8]
call fcn.0040b850
mov ebx, dword [0x421810]
xor edi, edi
mov eax, dword [ebx + 0x3c]
mov eax, dword [eax + ebx + 0x78]
add eax, ebx
mov dword [ebp - 0x22c], eax
mov esi, dword [eax + 0x20]
add esi, ebx
nop
mov ecx, dword [esi]
mov edx, 0xf965c17f
add ecx, ebx
mov al, byte [ecx]
inc ecx
test al, al
je 0x40f64d
movsx eax, al
lea ecx, [ecx + 1]
xor eax, edx
imul edx, eax, 0x1000193
mov al, byte [ecx - 1]
test al, al
jne 0x40f630
cmp edx, 0x6cabe4bb
je 0x40f653
inc edi
add esi, 4
jmp 0x40f620
mov edx, dword [ebp - 0x22c]
mov eax, dword [edx + 0x24]
lea eax, [eax + edi*2]
movzx ecx, word [eax + ebx]
mov eax, dword [edx + 0x1c]
lea eax, [eax + ecx*4]
mov esi, dword [eax + ebx]
lea ecx, [ebp - 0x1f8]
add esi, ebx
call fcn.0040b4e0
push eax
push 0
push 2
push 0
push 0
push 0xcc
push 0
push 0
push 0
push 0x384
push 0
push 0
push 0
push 0x14
call esi
lea ecx, [ebp - 0x1f8]
mov dword [ebp - 0x22c], eax
call fcn.0040b500
movaps xmm0, xmmword [0x41e1d0]
xor ecx, ecx
movups xmmword [ebp - 0x150], xmm0
mov word [ebp - 0x140], 0x6253
mov byte [ebp - 0x13e], 0
nop dword [eax]
mov al, byte [ebp - 0x150]
xor byte [ebp + ecx - 0x14f], al
inc ecx
cmp ecx, 0x11
jb 0x40f6d0
lea eax, [ebp - 0x14f]
mov byte [ebp - 0x13e], 0
push eax
lea ecx, [ebp - 0x2c0]
call fcn.0040b900
lea eax, [ebp - 0x274]
push eax
lea ecx, [ebp - 0x2c0]
call fcn.0040b730
mov esi, eax
lea ecx, [ebp - 0x2c0]
lea eax, [ebp - 0x270]
push eax
call fcn.0040b750
lea ecx, [ebp - 0x237]
push ecx
push dword [esi]
lea ecx, [ebp - 0x1e0]
push dword [eax]
call fcn.0040c8f0
lea ecx, [ebp - 0x2c0]
call fcn.0040b850
mov ebx, dword [0x421810]
xor edi, edi
mov eax, dword [ebx + 0x3c]
mov eax, dword [eax + ebx + 0x78]
add eax, ebx
mov dword [ebp - 0x224], eax
mov esi, dword [eax + 0x20]
add esi, ebx
nop
mov ecx, dword [esi]
mov edx, 0xf3350c0a
add ecx, ebx
mov al, byte [ecx]
inc ecx
test al, al
je 0x40f78d
movsx eax, al
lea ecx, [ecx + 1]
xor eax, edx
imul edx, eax, 0x1000193
mov al, byte [ecx - 1]
test al, al
jne 0x40f770
cmp edx, 0x11a609f8
je 0x40f793
inc edi
add esi, 4
jmp 0x40f760
mov edx, dword [ebp - 0x224]
mov eax, dword [edx + 0x24]
lea eax, [eax + edi*2]
movzx ecx, word [eax + ebx]
mov eax, dword [edx + 0x1c]
lea eax, [eax + ecx*4]
mov esi, dword [eax + ebx]
lea ecx, [ebp - 0x1e0]
add esi, ebx
call fcn.0040b4e0
push eax
push 0
push 2
push 0
push 0
push 0xcc
push 0
push 0
push 0
push 0x384
push 0
push 0
push 0
push 0x16
call esi
lea ecx, [ebp - 0x1e0]
mov dword [ebp - 0x230], eax
call fcn.0040b500
movaps xmm0, xmmword [0x41e0d0]
xor ecx, ecx
movups xmmword [ebp - 0x13c], xmm0
mov word [ebp - 0x12c], 0x7948
mov byte [ebp - 0x12a], 0
nop dword [eax]
mov al, byte [ebp - 0x13c]
xor byte [ebp + ecx - 0x13b], al
inc ecx
cmp ecx, 0x11
jb 0x40f810
lea eax, [ebp - 0x13b]
mov byte [ebp - 0x12a], 0
push eax
lea ecx, [ebp - 0x2d8]
call fcn.0040b900
lea eax, [ebp - 0x268]
push eax
lea ecx, [ebp - 0x2d8]
call fcn.0040b730
mov esi, eax
lea ecx, [ebp - 0x2d8]
lea eax, [ebp - 0x264]
push eax
call fcn.0040b750
lea ecx, [ebp - 0x238]
push ecx
push dword [esi]
lea ecx, [ebp - 0x1c8]
push dword [eax]
call fcn.0040c8f0
lea ecx, [ebp - 0x2d8]
call fcn.0040b850
mov ebx, dword [0x421810]
xor edi, edi
mov eax, dword [ebx + 0x3c]
mov eax, dword [eax + ebx + 0x78]
add eax, ebx
mov dword [ebp - 0x224], eax
mov esi, dword [eax + 0x20]
add esi, ebx
nop
mov ecx, dword [esi]
mov edx, 0x63ca1d94
add ecx, ebx
mov al, byte [ecx]
inc ecx
test al, al
je 0x40f8cd
movsx eax, al
lea ecx, [ecx + 1]
xor eax, edx
imul edx, eax, 0x1000193
mov al, byte [ecx - 1]
test al, al
jne 0x40f8b0
cmp edx, 0x9960382e
je 0x40f8d3
inc edi
add esi, 4
jmp 0x40f8a0
mov edx, dword [ebp - 0x224]
mov eax, dword [edx + 0x24]
lea eax, [eax + edi*2]
movzx ecx, word [eax + ebx]
mov eax, dword [edx + 0x1c]
lea eax, [eax + ecx*4]
mov esi, dword [eax + ebx]
lea ecx, [ebp - 0x1c8]
add esi, ebx
call fcn.0040b4e0
push eax
push 0
push 2
push 0
push 0
push 0xcc
push 0
push 0
push 0
push 0x384
push 0
push 0
push 0
push 0x1e
call esi
lea ecx, [ebp - 0x1c8]
mov dword [ebp - 0x218], eax
call fcn.0040b500
mov ebx, dword [0x421820]
xor edi, edi
mov ecx, dword [ebx + 0x3c]
mov eax, dword [ecx + ebx + 0x78]
add eax, ebx
mov dword [ebp - 0x224], eax
mov esi, dword [eax + 0x20]
add esi, ebx
nop dword [eax]
mov ecx, dword [esi]
mov edx, 0x8ed73760
add ecx, ebx
mov al, byte [ecx]
inc ecx
test al, al
je 0x40f97d
movsx eax, al
lea ecx, [ecx + 1]
xor eax, edx
imul edx, eax, 0x1000193
mov al, byte [ecx - 1]
test al, al
jne 0x40f960
cmp edx, 0x7caa0723
je 0x40f983
inc edi
add esi, 4
jmp 0x40f950
mov edx, dword [ebp - 0x224]
lea eax, [ebp - 0xa8]
push dword [ebp - 0x248]
push eax
mov eax, dword [edx + 0x24]
push dword [0x4217dc]
lea eax, [eax + edi*2]
movzx ecx, word [eax + ebx]
mov eax, dword [edx + 0x1c]
lea eax, [eax + ecx*4]
mov eax, dword [eax + ebx]
add eax, ebx
call eax
mov ebx, dword [0x421810]
xor edi, edi
mov eax, dword [ebx + 0x3c]
mov eax, dword [eax + ebx + 0x78]
add eax, ebx
mov dword [ebp - 0x224], eax
mov esi, dword [eax + 0x20]
add esi, ebx
nop
mov ecx, dword [esi]
mov edx, 0x9464e4b4
add ecx, ebx
mov al, byte [ecx]
inc ecx
test al, al
je 0x40f9fd
movsx eax, al
lea ecx, [ecx + 1]
xor eax, edx
imul edx, eax, 0x1000193
mov al, byte [ecx - 1]
test al, al
jne 0x40f9e0
cmp edx, 0xb090e33b
je 0x40fa03
inc edi
add esi, 4
jmp 0x40f9d0
mov edx, dword [ebp - 0x224]
push dword [ebp - 0x250]
push dword [0x4217dc]
mov eax, dword [edx + 0x24]
lea eax, [eax + edi*2]
movzx ecx, word [eax + ebx]
mov eax, dword [edx + 0x1c]
lea eax, [eax + ecx*4]
mov eax, dword [eax + ebx]
add eax, ebx
call eax
mov ebx, dword [0x421810]
xor edi, edi
mov eax, dword [ebx + 0x3c]
mov eax, dword [eax + ebx + 0x78]
add eax, ebx
mov dword [ebp - 0x224], eax
mov esi, dword [eax + 0x20]
add esi, ebx
nop dword [eax + eax]
mov ecx, dword [esi]
mov edx, 0x9364e321
add ecx, ebx
mov al, byte [ecx]
inc ecx
test al, al
je 0x40fa7d
movsx eax, al
lea ecx, [ecx + 1]
xor eax, edx
imul edx, eax, 0x1000193
mov al, byte [ecx - 1]
test al, al
jne 0x40fa60
cmp edx, 0x2a9c8c96
je 0x40fa83
inc edi
add esi, 4
jmp 0x40fa50
mov edx, dword [ebp - 0x224]
push dword [ebp - 0x24c]
push dword [0x4217dc]
mov eax, dword [edx + 0x24]
lea eax, [eax + edi*2]
movzx ecx, word [eax + ebx]
mov eax, dword [edx + 0x1c]
lea eax, [eax + ecx*4]
mov eax, dword [eax + ebx]
add eax, ebx
call eax
mov ebx, dword [0x421810]
xor edi, edi
mov eax, dword [ebx + 0x3c]
mov eax, dword [eax + ebx + 0x78]
add eax, ebx
mov dword [ebp - 0x224], eax
mov esi, dword [eax + 0x20]
add esi, ebx
nop dword [eax + eax]
mov ecx, dword [esi]
mov edx, 0x9264e18e
add ecx, ebx
mov al, byte [ecx]
inc ecx
test al, al
je 0x40fafd
movsx eax, al
lea ecx, [ecx + 1]
xor eax, edx
imul edx, eax, 0x1000193
mov al, byte [ecx - 1]
test al, al
jne 0x40fae0
cmp edx, 0x2e66a955
je 0x40fb03
inc edi
add esi, 4
jmp 0x40fad0
mov edx, dword [ebp - 0x224]
push dword [ebp - 0x22c]
push dword [0x4217dc]
mov eax, dword [edx + 0x24]
lea eax, [eax + edi*2]
movzx ecx, word [eax + ebx]
mov eax, dword [edx + 0x1c]
lea eax, [eax + ecx*4]
mov eax, dword [eax + ebx]
add eax, ebx
call eax
mov ebx, dword [0x421810]
xor edi, edi
mov eax, dword [ebx + 0x3c]
mov eax, dword [eax + ebx + 0x78]
add eax, ebx
mov dword [ebp - 0x224], eax
mov esi, dword [eax + 0x20]
add esi, ebx
cmp byte [0x421019], 0
je 0x40fbb1
mov ecx, dword [esi]
mov edx, 0xcb46bfd9
add ecx, ebx
mov al, byte [ecx]
inc ecx
test al, al
je 0x40fb7e
movsx eax, al
lea ecx, [ecx + 1]
xor eax, edx
imul edx, eax, 0x1000193
mov al, byte [ecx - 1]
test al, al
jne 0x40fb61
cmp edx, 0x9aecc7b9
je 0x40fb84
inc edi
add esi, 4
jmp 0x40fb51
mov edx, dword [ebp - 0xa4]
mov ecx, dword [ebp - 0xa8]
push 0xa
push 0xa
lea eax, [edx + 0x101]
push eax
lea eax, [ecx + 0x168]
push eax
lea eax, [edx + 0xe1]
push eax
lea eax, [ecx + 0x148]
jmp 0x40fc0f
mov ecx, dword [esi]
mov edx, 0xdc687c15
add ecx, ebx
mov al, byte [ecx]
inc ecx
test al, al
je 0x40fbde
movsx eax, al
lea ecx, [ecx + 1]
xor eax, edx
imul edx, eax, 0x1000193
mov al, byte [ecx - 1]
test al, al
jne 0x40fbc1
cmp edx, 0xbf14865d
je 0x40fbe4
inc edi
add esi, 4
jmp 0x40fbb1
mov edx, dword [ebp - 0xa4]
mov ecx, dword [ebp - 0xa8]
push 0xa
push 0xa
lea eax, [edx + 0x101]
push eax
lea eax, [ecx + 0x140]
push eax
lea eax, [edx + 0xe1]
push eax
lea eax, [ecx + 0x120]
mov edx, dword [ebp - 0x224]
push eax
push dword [0x4217dc]
mov eax, dword [edx + 0x24]
lea eax, [eax + edi*2]
movzx ecx, word [eax + ebx]
mov eax, dword [edx + 0x1c]
lea eax, [eax + ecx*4]
mov eax, dword [eax + ebx]
add eax, ebx
call eax
mov ebx, dword [0x421810]
xor edi, edi
mov eax, dword [ebx + 0x3c]
mov eax, dword [eax + ebx + 0x78]
add eax, ebx
mov dword [ebp - 0x224], eax
mov esi, dword [eax + 0x20]
add esi, ebx
nop
mov ecx, dword [esi]
mov edx, 0xff20323d
add ecx, ebx
mov al, byte [ecx]
inc ecx
test al, al
je 0x40fc7d
movsx eax, al
lea ecx, [ecx + 1]
xor eax, edx
imul edx, eax, 0x1000193
mov al, byte [ecx - 1]
test al, al
jne 0x40fc60
cmp edx, 0x162b7ad5
je 0x40fc83
inc edi
add esi, 4
jmp 0x40fc50
mov edx, dword [ebp - 0xa4]
mov ecx, dword [ebp - 0xa8]
push 0xa
push 0xa
lea eax, [edx + 0x13f]
push eax
lea eax, [ecx + 0x168]
push eax
lea eax, [edx + 0x109]
mov edx, dword [ebp - 0x224]
push eax
lea eax, [ecx + 0x28]
push eax
mov eax, dword [edx + 0x24]
push dword [0x4217dc]
lea eax, [eax + edi*2]
movzx ecx, word [eax + ebx]
mov eax, dword [edx + 0x1c]
lea eax, [eax + ecx*4]
mov eax, dword [eax + ebx]
add eax, ebx
call eax
mov ebx, dword [0x421810]
xor edi, edi
mov eax, dword [ebx + 0x3c]
mov eax, dword [eax + ebx + 0x78]
add eax, ebx
mov dword [ebp - 0x224], eax
mov esi, dword [eax + 0x20]
add esi, ebx
nop dword [eax + eax]
mov ecx, dword [esi]
mov edx, 0x9929e19
add ecx, ebx
mov al, byte [ecx]
inc ecx
test al, al
je 0x40fd1d
movsx eax, al
lea ecx, [ecx + 1]
xor eax, edx
imul edx, eax, 0x1000193
mov al, byte [ecx - 1]
test al, al
jne 0x40fd00
cmp edx, 0xefda87f9
je 0x40fd23
inc edi
add esi, 4
jmp 0x40fcf0
mov edx, dword [ebp - 0xa4]
mov ecx, dword [ebp - 0xa8]
push 0xa
push 0xa
lea eax, [edx + 0x17f]
push eax
lea eax, [ecx + 0x168]
push eax
lea eax, [edx + 0x149]
mov edx, dword [ebp - 0x224]
push eax
lea eax, [ecx + 0x28]
push eax
mov eax, dword [edx + 0x24]
push dword [0x4217dc]
lea eax, [eax + edi*2]
movzx ecx, word [eax + ebx]
mov eax, dword [edx + 0x1c]
lea eax, [eax + ecx*4]
mov eax, dword [eax + ebx]
add eax, ebx
call eax
mov ebx, dword [0x421810]
xor edi, edi
mov eax, dword [ebx + 0x3c]
mov eax, dword [eax + ebx + 0x78]
add eax, ebx
mov dword [ebp - 0x224], eax
mov esi, dword [eax + 0x20]
add esi, ebx
nop dword [eax + eax]
mov ecx, dword [esi]
mov edx, 0x2abb2f4a
add ecx, ebx
mov al, byte [ecx]
inc ecx
test al, al
je 0x40fdbd
movsx eax, al
lea ecx, [ecx + 1]
xor eax, edx
imul edx, eax, 0x1000193
mov al, byte [ecx - 1]
test al, al
jne 0x40fda0
cmp edx, 0x8b851ea8
je 0x40fdc3
inc edi
add esi, 4
jmp 0x40fd90
mov edx, dword [ebp - 0xa4]
mov ecx, dword [ebp - 0xa8]
push 0xa
push 0xa
lea eax, [edx + 0x1ab]
push eax
lea eax, [ecx + 0x42]
push eax
lea eax, [edx + 0x191]
mov edx, dword [ebp - 0x224]
push eax
lea eax, [ecx + 0x28]
push eax
mov eax, dword [edx + 0x24]
push dword [0x4217dc]
lea eax, [eax + edi*2]
movzx ecx, word [eax + ebx]
mov eax, dword [edx + 0x1c]
lea eax, [eax + ecx*4]
mov eax, dword [eax + ebx]
add eax, ebx
call eax
mov ebx, dword [0x421810]
xor edi, edi
mov eax, dword [ebx + 0x3c]
mov eax, dword [eax + ebx + 0x78]
add eax, ebx
mov esi, dword [eax + 0x20]
add esi, ebx
cmp dword [0x421798], 1
jne 0x40fef4
mov dword [ebp - 0x224], eax
mov ecx, dword [esi]
mov edx, 0xc1be939
add ecx, ebx
mov al, byte [ecx]
inc ecx
test al, al
je 0x40fe62
movsx eax, al
lea ecx, [ecx + 1]
xor eax, edx
imul edx, eax, 0x1000193
mov al, byte [ecx - 1]
test al, al
jne 0x40fe45
cmp edx, 0x479aa75e
je 0x40fe68
inc edi
add esi, 4
jmp 0x40fe35
mov edx, dword [ebp - 0x224]
push dword [ebp - 0x23c]
push dword [0x4217dc]
mov eax, dword [edx + 0x24]
lea eax, [eax + edi*2]
movzx ecx, word [eax + ebx]
mov eax, dword [edx + 0x1c]
lea eax, [eax + ecx*4]
mov eax, dword [eax + ebx]
add eax, ebx
call eax
mov ebx, dword [0x421810]
xor edi, edi
mov eax, dword [ebx + 0x3c]
mov eax, dword [eax + ebx + 0x78]
add eax, ebx
mov dword [ebp - 0x23c], eax
mov esi, dword [eax + 0x20]
add esi, ebx
nop dword [eax]
mov ecx, dword [esi]
mov edx, 0x91be480
add ecx, ebx
mov al, byte [ecx]
inc ecx
test al, al
je 0x40fedd
movsx eax, al
lea ecx, [ecx + 1]
xor eax, edx
imul edx, eax, 0x1000193
mov al, byte [ecx - 1]
test al, al
jne 0x40fec0
cmp edx, 0xca46d6ff
je 0x40fee3
inc edi
add esi, 4
jmp 0x40feb0
push dword [ebp - 0x214]
mov edx, dword [ebp - 0x23c]
jmp 0x40ffbf
mov dword [ebp - 0x214], eax
nop word [eax + eax]
mov ecx, dword [esi]
mov edx, 0x9d801f10
add ecx, ebx
mov al, byte [ecx]
inc ecx
test al, al
je 0x40ff2d
movsx eax, al
lea ecx, [ecx + 1]
xor eax, edx
imul edx, eax, 0x1000193
mov al, byte [ecx - 1]
test al, al
jne 0x40ff10
cmp edx, 0x74b9d6ef
je 0x40ff33
inc edi
add esi, 4
jmp 0x40ff00
mov edx, dword [ebp - 0x214]
push dword [ebp - 0x244]
push dword [0x4217dc]
mov eax, dword [edx + 0x24]
lea eax, [eax + edi*2]
movzx ecx, word [eax + ebx]
mov eax, dword [edx + 0x1c]
lea eax, [eax + ecx*4]
mov eax, dword [eax + ebx]
add eax, ebx
call eax
mov ebx, dword [0x421810]
xor edi, edi
mov eax, dword [ebx + 0x3c]
mov eax, dword [eax + ebx + 0x78]
add eax, ebx
mov dword [ebp - 0x214], eax
mov esi, dword [eax + 0x20]
add esi, ebx
nop dword [eax + eax]
mov ecx, dword [esi]
mov edx, 0xa4802a15
add ecx, ebx
mov al, byte [ecx]
inc ecx
test al, al
je 0x40ffad
movsx eax, al
lea ecx, [ecx + 1]
xor eax, edx
imul edx, eax, 0x1000193
mov al, byte [ecx - 1]
test al, al
jne 0x40ff90
cmp edx, 0xe9803ff2
je 0x40ffb3
inc edi
add esi, 4
jmp 0x40ff80
push dword [ebp - 0x228]
mov edx, dword [ebp - 0x214]
mov eax, dword [edx + 0x24]
push dword [0x4217dc]
lea eax, [eax + edi*2]
movzx ecx, word [eax + ebx]
mov eax, dword [edx + 0x1c]
lea eax, [eax + ecx*4]
mov eax, dword [eax + ebx]
add eax, ebx
call eax
mov ebx, dword [0x421810]
xor edi, edi
mov eax, dword [ebx + 0x3c]
mov eax, dword [eax + ebx + 0x78]
add eax, ebx
mov dword [ebp - 0x214], eax
mov esi, dword [eax + 0x20]
add esi, ebx
nop dword [eax + eax]
mov ecx, dword [esi]
mov edx, 0x33327a13
add ecx, ebx
mov al, byte [ecx]
inc ecx
test al, al
je 0x41002d
movsx eax, al
lea ecx, [ecx + 1]
xor eax, edx
imul edx, eax, 0x1000193
mov al, byte [ecx - 1]
test al, al
jne 0x410010
cmp edx, 0x38ad8a5b
je 0x410033
inc edi
add esi, 4
jmp 0x410000
mov edx, dword [ebp - 0xa4]
mov ecx, dword [ebp - 0xa8]
push 0xa
push 0xa
lea eax, [edx + 0x1f5]
push eax
lea eax, [ecx + 0x168]
push eax
lea eax, [edx + 0x1c1]
mov edx, dword [ebp - 0x214]
push eax
lea eax, [ecx + 0x28]
push eax
mov eax, dword [edx + 0x24]
push dword [0x4217dc]
lea eax, [eax + edi*2]
movzx ecx, word [eax + ebx]
mov eax, dword [edx + 0x1c]
lea eax, [eax + ecx*4]
mov eax, dword [eax + ebx]
add eax, ebx
call eax
mov ebx, dword [0x421810]
xor edi, edi
mov eax, dword [ebx + 0x3c]
mov eax, dword [eax + ebx + 0x78]
add eax, ebx
mov dword [ebp - 0x214], eax
mov esi, dword [eax + 0x20]
add esi, ebx
nop dword [eax + eax]
mov ecx, dword [esi]
mov edx, 0xe9d09088
add ecx, ebx
mov al, byte [ecx]
inc ecx
test al, al
je 0x4100cd
movsx eax, al
lea ecx, [ecx + 1]
xor eax, edx
imul edx, eax, 0x1000193
mov al, byte [ecx - 1]
test al, al
jne 0x4100b0
cmp edx, 0x492ee2de
je 0x4100d3
inc edi
add esi, 4
jmp 0x4100a0
mov edx, dword [ebp - 0x214]
push 0x555555
push dword [0x4217dc]
mov eax, dword [edx + 0x24]
lea eax, [eax + edi*2]
movzx ecx, word [eax + ebx]
mov eax, dword [edx + 0x1c]
lea eax, [eax + ecx*4]
mov eax, dword [eax + ebx]
add eax, ebx
call eax
mov ebx, dword [0x421810]
xor edi, edi
mov eax, dword [ebx + 0x3c]
mov eax, dword [eax + ebx + 0x78]
add eax, ebx
mov dword [ebp - 0x214], eax
mov esi, dword [eax + 0x20]
add esi, ebx
mov ecx, dword [esi]
mov edx, 0xfe340198
add ecx, ebx
mov al, byte [ecx]
inc ecx
test al, al
je 0x410144
movsx eax, al
lea ecx, [ecx + 1]
xor eax, edx
imul edx, eax, 0x1000193
mov al, byte [ecx - 1]
test al, al
jne 0x410127
cmp edx, 0xa0036698
je 0x41014a
inc edi
add esi, 4
jmp 0x410117
mov edx, dword [ebp - 0x214]
push 1
push dword [0x4217dc]
mov eax, dword [edx + 0x24]
lea eax, [eax + edi*2]
movzx ecx, word [eax + ebx]
mov eax, dword [edx + 0x1c]
lea eax, [eax + ecx*4]
mov eax, dword [eax + ebx]
add eax, ebx
call eax
mov ebx, dword [0x421810]
xor edi, edi
movups xmm0, xmmword [ebp - 0xa8]
movups xmmword [ebp - 0x14], xmm0
mov eax, dword [ebx + 0x3c]
mov eax, dword [eax + ebx + 0x78]
add eax, ebx
mov dword [ebp - 0x214], eax
mov esi, dword [eax + 0x20]
add esi, ebx
mov ecx, dword [esi]
mov edx, 0x96d1e8d3
add ecx, ebx
mov al, byte [ecx]
inc ecx
test al, al
je 0x4101c3
movsx eax, al
lea ecx, [ecx + 1]
xor eax, edx
imul edx, eax, 0x1000193
mov al, byte [ecx - 1]
test al, al
jne 0x4101a6
cmp edx, 0xe3b4cd58
je 0x4101c9
inc edi
add esi, 4
jmp 0x410196
mov edx, dword [ebp - 0x214]
push dword [ebp - 0x22c]
push dword [0x4217dc]
mov eax, dword [edx + 0x24]
lea eax, [eax + edi*2]
movzx ecx, word [eax + ebx]
mov eax, dword [edx + 0x1c]
lea eax, [eax + ecx*4]
mov eax, dword [eax + ebx]
add eax, ebx
call eax
cmp dword [0x4217e0], 1
mov dword [ebp - 0x14], 0x37
mov dword [ebp - 0x10], 0x11b
jne 0x41025f
mov edi, dword [0x421810]
xor ebx, ebx
mov eax, dword [edi + 0x3c]
mov eax, dword [eax + edi + 0x78]
add eax, edi
mov dword [ebp - 0x214], eax
mov esi, dword [eax + 0x20]
add esi, edi
mov ecx, dword [esi]
mov edx, 0x8e65fe16
add ecx, edi
mov al, byte [ecx]
inc ecx
test al, al
je 0x410252
movsx eax, al
lea ecx, [ecx + 1]
xor eax, edx
imul edx, eax, 0x1000193
mov al, byte [ecx - 1]
test al, al
jne 0x410235
cmp edx, 0xec593120
je 0x410258
inc ebx
add esi, 4
jmp 0x410225
push 0xcccccc
jmp 0x4102c8
mov eax, dword [0x421798]
cmp eax, 0x7d1
je 0x410270
cmp eax, 4
jne 0x4102eb
mov edi, dword [0x421810]
xor ebx, ebx
mov eax, dword [edi + 0x3c]
mov eax, dword [eax + edi + 0x78]
add eax, edi
mov dword [ebp - 0x214], eax
mov esi, dword [eax + 0x20]
add esi, edi
nop dword [eax]
mov ecx, dword [esi]
mov edx, 0xfa099228
add ecx, edi
mov al, byte [ecx]
inc ecx
test al, al
je 0x4102bd
movsx eax, al
lea ecx, [ecx + 1]
xor eax, edx
imul edx, eax, 0x1000193
mov al, byte [ecx - 1]
test al, al
jne 0x4102a0
cmp edx, 0x97eaa53e
je 0x4102c3
inc ebx
add esi, 4
jmp 0x410290
push 0x969696
mov edx, dword [ebp - 0x214]
push dword [0x4217dc]
mov eax, dword [edx + 0x24]
lea eax, [eax + ebx*2]
movzx ecx, word [eax + edi]
mov eax, dword [edx + 0x1c]
lea eax, [eax + ecx*4]
mov eax, dword [eax + edi]
add eax, edi
call eax
push 0x41b390
mov ecx, 0x421064
call fcn.0040d300
test al, al
jne 0x41038e
mov edi, dword [0x421820]
xor ebx, ebx
mov eax, dword [edi + 0x3c]
mov eax, dword [eax + edi + 0x78]
add eax, edi
mov dword [ebp - 0x214], eax
mov esi, dword [eax + 0x20]
add esi, edi
nop
mov ecx, dword [esi]
mov edx, 0x4939e859
add ecx, edi
mov al, byte [ecx]
inc ecx
test al, al
je 0x41034d
movsx eax, al
lea ecx, [ecx + 1]
xor eax, edx
imul edx, eax, 0x1000193
mov al, byte [ecx - 1]
test al, al
jne 0x410330
cmp edx, 0x17deaf93
je 0x410353
inc ebx
add esi, 4
jmp 0x410320
mov esi, dword [ebp - 0x214]
mov ecx, 0x421064
push 0
mov eax, dword [esi + 0x24]
lea eax, [eax + ebx*2]
movzx edx, word [eax + edi]
mov eax, dword [esi + 0x1c]
lea eax, [eax + edx*4]
mov esi, dword [eax + edi]
lea eax, [ebp - 0x14]
push eax
push 0xffffffffffffffff
add esi, edi
call fcn.0040b710
push eax
push dword [0x4217dc]
call esi
jmp 0x410552
cmp byte [0x421019], 0
je 0x410465
mov byte [ebp - 0x44], 0x71
mov al, 0x28
xor al, byte [ebp - 0x44]
mov cl, 0x1e
xor cl, byte [ebp - 0x44]
mov bl, 3
mov byte [ebp - 0x43], al
mov bh, 0x15
mov byte [ebp - 0x42], cl
mov ah, 0x51
mov cl, byte [ebp - 0x44]
mov dl, 4
mov byte [ebp - 0x21d], 0x14
xor bl, cl
mov al, byte [ebp - 0x21d]
xor bh, cl
xor al, cl
mov byte [ebp - 0x40], bl
mov byte [ebp - 0x3b], al
xor ah, cl
mov byte [ebp - 0x3c], bh
mov ch, 0x38
mov ebx, dword [0x421820]
mov dh, 0x1f
mov byte [ebp - 0x21e], 9
xor dl, cl
mov al, byte [ebp - 0x21e]
xor ch, cl
xor al, cl
mov byte [ebp - 0x39], 0
mov byte [ebp - 0x3f], ah
xor dh, cl
mov byte [ebp - 0x3a], al
xor edi, edi
mov byte [ebp - 0x41], dl
mov byte [ebp - 0x3e], ch
mov byte [ebp - 0x3d], dh
mov byte [ebp - 0x39], 0
mov eax, dword [ebx + 0x3c]
mov eax, dword [eax + ebx + 0x78]
add eax, ebx
mov dword [ebp - 0x214], eax
mov esi, dword [eax + 0x20]
add esi, ebx
mov ecx, dword [esi]
mov edx, 0xd082044a
add ecx, ebx
mov al, byte [ecx]
inc ecx
test al, al
je 0x410451
movsx eax, al
lea ecx, [ecx + 1]
xor eax, edx
imul edx, eax, 0x1000193
mov al, byte [ecx - 1]
test al, al
jne 0x410434
cmp edx, 0x1f7ab786
je 0x410457
inc edi
add esi, 4
jmp 0x410424
lea eax, [ebp - 0x14]
push 0
push eax
lea eax, [ebp - 0x43]
jmp 0x41052c
mov byte [ebp - 0x38], 0x64
mov al, 0xa6
xor al, byte [ebp - 0x38]
mov cl, 0x84
xor cl, byte [ebp - 0x38]
mov bl, 0x44
mov byte [ebp - 0x37], al
mov bh, 0x81
mov byte [ebp - 0x36], cl
mov ah, 0xac
mov cl, byte [ebp - 0x38]
mov dl, 0x9c
mov byte [ebp - 0x21e], 0x8e
xor bl, cl
mov al, byte [ebp - 0x21e]
xor bh, cl
xor al, cl
mov byte [ebp - 0x34], bl
mov byte [ebp - 0x2f], al
xor ah, cl
mov byte [ebp - 0x30], bh
mov ch, 0x89
mov ebx, dword [0x421820]
mov dh, 0x80
mov byte [ebp - 0x21d], 0x95
xor dl, cl
mov al, byte [ebp - 0x21d]
xor ch, cl
xor al, cl
mov byte [ebp - 0x2d], 0
mov byte [ebp - 0x33], ah
xor dh, cl
mov byte [ebp - 0x2e], al
xor edi, edi
mov byte [ebp - 0x35], dl
mov byte [ebp - 0x32], ch
mov byte [ebp - 0x31], dh
mov byte [ebp - 0x2d], 0
mov eax, dword [ebx + 0x3c]
mov eax, dword [eax + ebx + 0x78]
add eax, ebx
mov dword [ebp - 0x214], eax
mov esi, dword [eax + 0x20]
add esi, ebx
nop
mov ecx, dword [esi]
mov edx, 0xa919f823
add ecx, ebx
mov al, byte [ecx]
inc ecx
test al, al
je 0x41051d
movsx eax, al
lea ecx, [ecx + 1]
xor eax, edx
imul edx, eax, 0x1000193
mov al, byte [ecx - 1]
test al, al
jne 0x410500
cmp edx, 0xad15c839
je 0x410523
inc edi
add esi, 4
jmp 0x4104f0
lea eax, [ebp - 0x14]
push 0
push eax
lea eax, [ebp - 0x37]
mov edx, dword [ebp - 0x214]
push 0xffffffffffffffff
push eax
push dword [0x4217dc]
mov eax, dword [edx + 0x24]
lea eax, [eax + edi*2]
movzx ecx, word [eax + ebx]
mov eax, dword [edx + 0x1c]
lea eax, [eax + ecx*4]
mov eax, dword [eax + ebx]
add eax, ebx
call eax
mov edi, dword [0x421810]
xor ebx, ebx
mov eax, dword [edi + 0x3c]
mov eax, dword [eax + edi + 0x78]
add eax, edi
mov dword [ebp - 0x214], eax
mov esi, dword [eax + 0x20]
add esi, edi
nop
mov ecx, dword [esi]
mov edx, 0x8585c373
add ecx, edi
mov al, byte [ecx]
inc ecx
test al, al
je 0x41059d
movsx eax, al
lea ecx, [ecx + 1]
xor eax, edx
imul edx, eax, 0x1000193
mov al, byte [ecx - 1]
test al, al
jne 0x410580
cmp edx, 0xca2682d5
je 0x4105a3
inc ebx
add esi, 4
jmp 0x410570
mov edx, dword [ebp - 0x214]
push 0x555555
push dword [0x4217dc]
mov eax, dword [edx + 0x24]
lea eax, [eax + ebx*2]
movzx ecx, word [eax + edi]
mov eax, dword [edx + 0x1c]
lea eax, [eax + ecx*4]
mov eax, dword [eax + edi]
add eax, edi
call eax
cmp dword [0x4217e0], 2
mov dword [ebp - 0x14], 0x37
mov dword [ebp - 0x10], 0x15b
jne 0x41063a
mov edi, dword [0x421810]
xor ebx, ebx
mov eax, dword [edi + 0x3c]
mov eax, dword [eax + edi + 0x78]
add eax, edi
mov dword [ebp - 0x214], eax
mov esi, dword [eax + 0x20]
add esi, edi
nop
mov ecx, dword [esi]
mov edx, 0xd575026a
add ecx, edi
mov al, byte [ecx]
inc ecx
test al, al
je 0x41062d
movsx eax, al
lea ecx, [ecx + 1]
xor eax, edx
imul edx, eax, 0x1000193
mov al, byte [ecx - 1]
test al, al
jne 0x410610
cmp edx, 0x72e2ec84
je 0x410633
inc ebx
add esi, 4
jmp 0x410600
push 0xcccccc
jmp 0x41069f
mov eax, dword [0x421798]
cmp eax, 0x7d2
je 0x41064b
cmp eax, 5
jne 0x4106c2
mov edi, dword [0x421810]
xor ebx, ebx
mov eax, dword [edi + 0x3c]
mov eax, dword [eax + edi + 0x78]
add eax, edi
mov dword [ebp - 0x214], eax
mov esi, dword [eax + 0x20]
add esi, edi
mov ecx, dword [esi]
mov edx, 0x40034663
add ecx, edi
mov al, byte [ecx]
inc ecx
test al, al
je 0x410694
movsx eax, al
lea ecx, [ecx + 1]
xor eax, edx
imul edx, eax, 0x1000193
mov al, byte [ecx - 1]
test al, al
jne 0x410677
cmp edx, 0x29c373c5
je 0x41069a
inc ebx
add esi, 4
jmp 0x410667
push 0x969696
mov edx, dword [ebp - 0x214]
push dword [0x4217dc]
mov eax, dword [edx + 0x24]
lea eax, [eax + ebx*2]
movzx ecx, word [eax + edi]
mov eax, dword [edx + 0x1c]
lea eax, [eax + ecx*4]
mov eax, dword [eax + edi]
add eax, edi
call eax
push 0x41b390
mov ecx, 0x421094
call fcn.0040d300
test al, al
jne 0x41082a
cmp byte [0x42179e], al
je 0x41076f
mov edi, dword [0x421820]
xor ebx, ebx
mov eax, dword [edi + 0x3c]
mov eax, dword [eax + edi + 0x78]
add eax, edi
mov dword [ebp - 0x214], eax
mov esi, dword [eax + 0x20]
add esi, edi
mov ecx, dword [esi]
mov edx, 0xafae1ca9
add ecx, edi
mov al, byte [ecx]
inc ecx
test al, al
je 0x41072e
movsx eax, al
lea ecx, [ecx + 1]
xor eax, edx
imul edx, eax, 0x1000193
mov al, byte [ecx - 1]
test al, al
jne 0x410711
cmp edx, 0xab87f363
je 0x410734
inc ebx
add esi, 4
jmp 0x410701
mov esi, dword [ebp - 0x214]
mov ecx, 0x421094
push 0
mov eax, dword [esi + 0x24]
lea eax, [eax + ebx*2]
movzx edx, word [eax + edi]
mov eax, dword [esi + 0x1c]
lea eax, [eax + edx*4]
mov esi, dword [eax + edi]
lea eax, [ebp - 0x14]
push eax
push 0xffffffffffffffff
add esi, edi
call fcn.0040b710
push eax
push dword [0x4217dc]
call esi
jmp 0x4109e2
lea eax, [ebp - 0x23d]
push eax
push dword [0x4210a4]
lea ecx, [ebp - 0x1b0]
push 0
push 0x42104c
call fcn.0040c3f0
mov ebx, dword [0x421820]
xor edi, edi
mov eax, dword [ebx + 0x3c]
mov eax, dword [eax + ebx + 0x78]
add eax, ebx
mov dword [ebp - 0x214], eax
mov esi, dword [eax + 0x20]
add esi, ebx
nop word [eax + eax]
mov ecx, dword [esi]
mov edx, 0x158bf74e
add ecx, ebx
mov al, byte [ecx]
inc ecx
test al, al
je 0x4107dd
movsx eax, al
lea ecx, [ecx + 1]
xor eax, edx
imul edx, eax, 0x1000193
mov al, byte [ecx - 1]
test al, al
jne 0x4107c0
cmp edx, 0x9848f49a
je 0x4107e3
inc edi
add esi, 4
jmp 0x4107b0
mov edx, dword [ebp - 0x214]
push 0
mov eax, dword [edx + 0x24]
lea eax, [eax + edi*2]
movzx ecx, word [eax + ebx]
mov eax, dword [edx + 0x1c]
lea eax, [eax + ecx*4]
mov esi, dword [eax + ebx]
lea ecx, [ebp - 0x1b0]
lea eax, [ebp - 0x14]
add esi, ebx
push eax
push 0xffffffffffffffff
call fcn.0040b710
push eax
push dword [0x4217dc]
call esi
lea ecx, [ebp - 0x1b0]
call fcn.0040b850
jmp 0x4109e2
cmp byte [0x421019], 0
je 0x4108f7
mov cl, 0x68
mov dword [ebp - 0x84], 0x1d073168
mov dword [ebp - 0x80], 0x938481a
xor eax, eax
mov dword [ebp - 0x7c], 0x71f1b1b
mov word [ebp - 0x78], 0xc1a
mov byte [ebp - 0x76], 0
nop dword [eax]
xor byte [ebp + eax - 0x83], cl
inc eax
cmp eax, 0xd
jae 0x410875
mov cl, byte [ebp - 0x84]
jmp 0x410860
mov edi, dword [0x421820]
xor ebx, ebx
mov byte [ebp - 0x76], 0
mov eax, dword [edi + 0x3c]
mov eax, dword [eax + edi + 0x78]
add eax, edi
mov dword [ebp - 0x214], eax
mov esi, dword [eax + 0x20]
add esi, edi
mov ecx, dword [esi]
mov edx, 0x6b2c40cd
add ecx, edi
mov al, byte [ecx]
inc ecx
test al, al
je 0x4108c2
movsx eax, al
lea ecx, [ecx + 1]
xor eax, edx
imul edx, eax, 0x1000193
mov al, byte [ecx - 1]
test al, al
jne 0x4108a5
cmp edx, 0x1f1c08d7
je 0x4108c8
inc ebx
add esi, 4
jmp 0x410895
mov edx, dword [ebp - 0x214]
lea eax, [ebp - 0x14]
push 0
push eax
lea eax, [ebp - 0x83]
push 0xffffffffffffffff
push eax
mov eax, dword [edx + 0x24]
lea eax, [eax + ebx*2]
movzx ecx, word [eax + edi]
mov eax, dword [edx + 0x1c]
lea eax, [eax + ecx*4]
mov eax, dword [eax + edi]
add eax, edi
jmp 0x4109da
mov byte [ebp - 0x2c], 0x78
mov cl, 0x98
mov al, 0xba
mov byte [ebp - 0x21e], 0x93
xor al, byte [ebp - 0x2c]
mov ch, cl
xor cl, byte [ebp - 0x2c]
mov bl, 0x58
mov byte [ebp - 0x2b], al
mov bh, 0x96
mov al, byte [ebp - 0x21e]
mov ah, 0xb7
mov byte [ebp - 0x2a], cl
mov dl, 0x80
mov cl, byte [ebp - 0x2c]
mov dh, 0x88
xor al, cl
mov byte [ebp - 0x21d], 0x84
mov byte [ebp - 0x23], al
xor bl, cl
mov al, byte [ebp - 0x21d]
xor bh, cl
mov byte [ebp - 0x28], bl
xor ah, cl
mov byte [ebp - 0x24], bh
xor al, cl
mov ebx, dword [0x421820]
xor dl, cl
mov byte [ebp - 0x21], 0
xor ch, cl
mov byte [ebp - 0x27], ah
xor dh, cl
mov byte [ebp - 0x22], al
xor edi, edi
mov byte [ebp - 0x29], dl
mov byte [ebp - 0x26], ch
mov byte [ebp - 0x25], dh
mov byte [ebp - 0x21], 0
mov eax, dword [ebx + 0x3c]
mov eax, dword [eax + ebx + 0x78]
add eax, ebx
mov dword [ebp - 0x214], eax
mov esi, dword [eax + 0x20]
add esi, ebx
mov ecx, dword [esi]
mov edx, 0x749a2de8
add ecx, ebx
mov al, byte [ecx]
inc ecx
test al, al
je 0x4109ad
movsx eax, al
lea ecx, [ecx + 1]
xor eax, edx
imul edx, eax, 0x1000193
mov al, byte [ecx - 1]
test al, al
jne 0x410990
cmp edx, 0xd101aca0
je 0x4109b3
inc edi
add esi, 4
jmp 0x410980
mov edx, dword [ebp - 0x214]
lea eax, [ebp - 0x14]
push 0
push eax
lea eax, [ebp - 0x2b]
push 0xffffffffffffffff
push eax
mov eax, dword [edx + 0x24]
lea eax, [eax + edi*2]
movzx ecx, word [eax + ebx]
mov eax, dword [edx + 0x1c]
lea eax, [eax + ecx*4]
mov eax, dword [eax + ebx]
add eax, ebx
push dword [0x4217dc]
call eax
mov edi, dword [0x421810]
xor ebx, ebx
mov eax, dword [edi + 0x3c]
mov eax, dword [eax + edi + 0x78]
add eax, edi
mov dword [ebp - 0x214], eax
mov esi, dword [eax + 0x20]
add esi, edi
nop
mov ecx, dword [esi]
mov edx, 0xa6fc2d5b
add ecx, edi
mov al, byte [ecx]
inc ecx
test al, al
je 0x410a2d
movsx eax, al
lea ecx, [ecx + 1]
xor eax, edx
imul edx, eax, 0x1000193
mov al, byte [ecx - 1]
test al, al
jne 0x410a10
cmp edx, 0xf05a17d
je 0x410a33
inc ebx
add esi, 4
jmp 0x410a00
mov edx, dword [ebp - 0x214]
push 0x555555
push dword [0x4217dc]
mov eax, dword [edx + 0x24]
lea eax, [eax + ebx*2]
movzx ecx, word [eax + edi]
mov eax, dword [edx + 0x1c]
lea eax, [eax + ecx*4]
mov eax, dword [eax + edi]
add eax, edi
call eax
mov ebx, dword [0x421810]
xor edi, edi
mov eax, dword [ebx + 0x3c]
mov eax, dword [eax + ebx + 0x78]
add eax, ebx
mov dword [ebp - 0x214], eax
mov esi, dword [eax + 0x20]
add esi, ebx
mov ecx, dword [esi]
mov edx, 0x4ddf4f24
add ecx, ebx
mov al, byte [ecx]
inc ecx
test al, al
je 0x410aa4
movsx eax, al
lea ecx, [ecx + 1]
xor eax, edx
imul edx, eax, 0x1000193
mov al, byte [ecx - 1]
test al, al
jne 0x410a87
cmp edx, 0x9d31ec4b
je 0x410aaa
inc edi
add esi, 4
jmp 0x410a77
mov edx, dword [ebp - 0x214]
push dword [ebp - 0x21c]
push dword [0x4217dc]
mov eax, dword [edx + 0x24]
lea eax, [eax + edi*2]
movzx ecx, word [eax + ebx]
mov eax, dword [edx + 0x1c]
lea eax, [eax + ecx*4]
mov eax, dword [eax + ebx]
add eax, ebx
call eax
movups xmm0, xmmword [ebp - 0xa8]
push 0x41b390
mov ecx, 0x42107c
movups xmmword [ebp - 0x14], xmm0
mov dword [ebp - 0x10], 0x1fb
call fcn.0040d300
test al, al
je 0x410d8a
cmp dword [0x421798], 0xfa1
jne 0x410b8b
mov edi, dword [0x421810]
xor ebx, ebx
mov eax, dword [edi + 0x3c]
mov eax, dword [eax + edi + 0x78]
add eax, edi
mov dword [ebp - 0x21c], eax
mov esi, dword [eax + 0x20]
add esi, edi
nop dword [eax + eax]
mov ecx, dword [esi]
mov edx, 0x72172343
add ecx, edi
mov al, byte [ecx]
inc ecx
test al, al
je 0x410b5d
movsx eax, al
lea ecx, [ecx + 1]
xor eax, edx
imul edx, eax, 0x1000193
mov al, byte [ecx - 1]
test al, al
jne 0x410b40
inc ebx
add esi, 4
jmp 0x410b30
xor ecx, ecx
cmp byte [0x421019], cl
je 0x410c4a
movaps xmm0, xmmword [0x41df00]
movups xmmword [ebp - 0xe4], xmm0
mov dword [ebp - 0xd4], 0x1b121c06
mov dword [ebp - 0xd0], 0x55121b1c
mov dword [ebp - 0xcc], 0x4a1b1c
nop word [eax + eax]
mov al, byte [ebp - 0xe4]
xor byte [ebp + ecx - 0xe3], al
inc ecx
cmp ecx, 0x1a
jb 0x410bd0
movaps xmm0, xmmword [0x41e450]
movups xmmword [ebp - 0xc8], xmm0
mov dword [ebp - 0xb8], 0xd203d8cf
mov dword [ebp - 0xb4], 0xcdd6c103
mov dword [ebp - 0xb0], 0x1ccfcdc7
mov byte [ebp - 0xac], 0
nop dword [eax]
mov al, byte [ebp - 0xc8]
xor byte [ebp + ecx - 0xc7], al
inc ecx
cmp ecx, 0x1b
jb 0x410c80
mov edi, dword [0x421810]
xor ebx, ebx
mov eax, dword [edi + 0x3c]
mov eax, dword [eax + edi + 0x78]
add eax, edi
mov dword [ebp - 0x21c], eax
mov esi, dword [eax + 0x20]
add esi, edi
mov ecx, dword [esi]
mov edx, 0x79a347b
add ecx, edi
mov al, byte [ecx]
inc ecx
test al, al
je 0x410dd3
movsx eax, al
lea ecx, [ecx + 1]
xor eax, edx
imul edx, eax, 0x1000193
mov al, byte [ecx - 1]
test al, al
jne 0x410db6
cmp edx, 0x28561add
je 0x410dd9
inc ebx
add esi, 4
jmp 0x410da6