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

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x254
mov eax, dword [0x421008]
xor eax, ebp
mov dword [ebp - 4], eax
push ebx
push esi
push edi
mov edi, dword [0x42181c]
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, 0xc6c8bc49
add ecx, edi
mov al, byte [ecx]
inc ecx
test al, al
je 0x40eacd
movsx eax, al
lea ecx, [ecx + 1]
xor eax, edx
imul edx, eax, 0x1000193
mov al, byte [ecx - 1]
test al, al
jne 0x40eab0
cmp edx, 0x4e1561a
je 0x40ead3
inc ebx
add esi, 4
jmp 0x40eaa0
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 [0x42182c]
xor edi, edi
mov dword [0x4217b4], 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, 0x5db6cddd
add ecx, ebx
mov al, byte [ecx]
inc ecx
test al, al
je 0x40eb44
movsx eax, al
lea ecx, [ecx + 1]
xor eax, edx
imul edx, eax, 0x1000193
mov al, byte [ecx - 1]
test al, al
jne 0x40eb27
cmp edx, 0x43dbf852
je 0x40eb4a
inc edi
add esi, 4
jmp 0x40eb17
mov edx, dword [ebp - 0x228]
push dword [0x4217b4]
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 [0x42182c]
xor edi, edi
mov dword [0x42180c], 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, 0xdcb9d461
add ecx, ebx
mov al, byte [ecx]
inc ecx
test al, al
je 0x40ebbd
movsx eax, al
lea ecx, [ecx + 1]
xor eax, edx
imul edx, eax, 0x1000193
mov al, byte [ecx - 1]
test al, al
jne 0x40eba0
cmp edx, 0xcd79182c
je 0x40ebc3
inc edi
add esi, 4
jmp 0x40eb90
mov edx, dword [ebp - 0x228]
push 0x258
push 0x1c2
push dword [0x4217b4]
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 [0x42182c]
xor edi, edi
mov dword [0x4217b8], 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, 0x4860272d
add ecx, ebx
mov al, byte [ecx]
inc ecx
test al, al
je 0x40ec3e
movsx eax, al
lea ecx, [ecx + 1]
xor eax, edx
imul edx, eax, 0x1000193
mov al, byte [ecx - 1]
test al, al
jne 0x40ec21
cmp edx, 0x532ea75a
je 0x40ec44
inc edi
add esi, 4
jmp 0x40ec11
mov edx, dword [ebp - 0x228]
push dword [0x4217b8]
push dword [0x42180c]
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 [0x42181c]
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, 0xb75d0453
add ecx, ebx
mov al, byte [ecx]
inc ecx
test al, al
je 0x40ecbd
movsx eax, al
lea ecx, [ecx + 1]
xor eax, edx
imul edx, eax, 0x1000193
mov al, byte [ecx - 1]
test al, al
jne 0x40eca0
cmp edx, 0xe4930fd4
je 0x40ecc3
inc edi
add esi, 4
jmp 0x40ec90
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 [0x42182c]
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, 0xb6588592
add ecx, ebx
mov al, byte [ecx]
inc ecx
test al, al
je 0x40ed3d
movsx eax, al
lea ecx, [ecx + 1]
xor eax, edx
imul edx, eax, 0x1000193
mov al, byte [ecx - 1]
test al, al
jne 0x40ed20
cmp edx, 0x6cbafd47
je 0x40ed43
inc edi
add esi, 4
jmp 0x40ed10
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 [0x42182c]
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
mov ecx, dword [esi]
mov edx, 0x435591f2
add ecx, ebx
mov al, byte [ecx]
inc ecx
test al, al
je 0x40edb4
movsx eax, al
lea ecx, [ecx + 1]
xor eax, edx
imul edx, eax, 0x1000193
mov al, byte [ecx - 1]
test al, al
jne 0x40ed97
cmp edx, 0xa0f78b67
je 0x40edba
inc edi
add esi, 4
jmp 0x40ed87
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 [0x42182c]
xor edi, edi
mov dword [ebp - 0x240], 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, 0x3c534856
add ecx, ebx
mov al, byte [ecx]
inc ecx
test al, al
je 0x40ee2d
movsx eax, al
lea ecx, [ecx + 1]
xor eax, edx
imul edx, eax, 0x1000193
mov al, byte [ecx - 1]
test al, al
jne 0x40ee10
cmp edx, 0x3c41c0f5
je 0x40ee33
inc edi
add esi, 4
jmp 0x40ee00
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 [0x42182c]
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 dword [eax + eax]
mov ecx, dword [esi]
mov edx, 0x7a9c8ce1
add ecx, ebx
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, 0x323a7480
je 0x40eeb3
inc edi
add esi, 4
jmp 0x40ee80
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 [0x42182c]
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, 0x91000117
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, 0x41d9b6b2
je 0x40ef2a
inc edi
add esi, 4
jmp 0x40eef7
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 [0x42182c]
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, 0xbf263809
add ecx, ebx
mov al, byte [ecx]
inc ecx
test al, al
je 0x40ef9f
movsx eax, al
lea ecx, [ecx + 1]
xor eax, edx
imul edx, eax, 0x1000193
mov al, byte [ecx - 1]
test al, al
jne 0x40ef82
cmp edx, 0x81eaba8c
je 0x40efa5
inc edi
add esi, 4
jmp 0x40ef72
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 [0x42182c]
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, 0xb2b84635
add ecx, ebx
mov al, byte [ecx]
inc ecx
test al, al
je 0x40f01d
movsx eax, al
lea ecx, [ecx + 1]
xor eax, edx
imul edx, eax, 0x1000193
mov al, byte [ecx - 1]
test al, al
jne 0x40f000
cmp edx, 0xf9467d2c
je 0x40f023
inc edi
add esi, 4
jmp 0x40eff0
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
mov ebx, dword [0x42182c]
xor edi, edi
mov dword [ebp - 0x23c], 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, 0xd689add2
add ecx, ebx
mov al, byte [ecx]
inc ecx
test al, al
je 0x40f094
movsx eax, al
lea ecx, [ecx + 1]
xor eax, edx
imul edx, eax, 0x1000193
mov al, byte [ecx - 1]
test al, al
jne 0x40f077
cmp edx, 0xdd7bdf70
je 0x40f09a
inc edi
add esi, 4
jmp 0x40f067
mov edx, dword [ebp - 0x22c]
movaps xmm0, xmmword [0x41d180]
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]
add esi, ebx
mov word [ebp - 0x154], 0x4f7e
movups xmmword [ebp - 0x164], xmm0
mov byte [ebp - 0x152], 0
xor ecx, ecx
nop word [eax + eax]
mov al, byte [ebp - 0x164]
xor byte [ebp + ecx - 0x163], al
inc ecx
cmp ecx, 0x11
jb 0x40f0e0
sub esp, 0x18
mov byte [ebp - 0x152], 0
lea eax, [ebp - 0x163]
mov ecx, esp
push eax
call fcn.0040b620
lea ecx, [ebp - 0x210]
call fcn.00411ee0
add esp, 0x18
mov ecx, eax
call fcn.0040b160
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.0040b180
mov ebx, dword [0x42182c]
xor edi, edi
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, 0x1fda1a91
add ecx, ebx
mov al, byte [ecx]
inc ecx
test al, al
je 0x40f19d
movsx eax, al
lea ecx, [ecx + 1]
xor eax, edx
imul edx, eax, 0x1000193
mov al, byte [ecx - 1]
test al, al
jne 0x40f180
cmp edx, 0x984ccbe1
je 0x40f1a3
inc edi
add esi, 4
jmp 0x40f170
mov edx, dword [ebp - 0x22c]
movaps xmm0, xmmword [0x41e290]
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]
add esi, ebx
mov word [ebp - 0x118], 0x6f5e
movups xmmword [ebp - 0x128], xmm0
mov byte [ebp - 0x116], 0
xor ecx, ecx
nop
mov al, byte [ebp - 0x128]
xor byte [ebp + ecx - 0x127], al
inc ecx
cmp ecx, 0x11
jb 0x40f1e0
sub esp, 0x18
mov byte [ebp - 0x116], 0
lea eax, [ebp - 0x127]
mov ecx, esp
push eax
call fcn.0040b620
lea ecx, [ebp - 0x1c8]
call fcn.00411ee0
add esp, 0x18
mov ecx, eax
call fcn.0040b160
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 - 0x1c8]
mov dword [ebp - 0x22c], eax
call fcn.0040b180
mov ebx, dword [0x42182c]
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
mov ecx, dword [esi]
mov edx, 0xfc1de5a8
add ecx, ebx
mov al, byte [ecx]
inc ecx
test al, al
je 0x40f29d
movsx eax, al
lea ecx, [ecx + 1]
xor eax, edx
imul edx, eax, 0x1000193
mov al, byte [ecx - 1]
test al, al
jne 0x40f280
cmp edx, 0xffa3c22a
je 0x40f2a3
inc edi
add esi, 4
jmp 0x40f270
mov edx, dword [ebp - 0x224]
movaps xmm0, xmmword [0x41d700]
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]
add esi, ebx
mov word [ebp - 0x140], 0x7849
movups xmmword [ebp - 0x150], xmm0
mov byte [ebp - 0x13e], 0
xor ecx, ecx
nop
mov al, byte [ebp - 0x150]
xor byte [ebp + ecx - 0x14f], al
inc ecx
cmp ecx, 0x11
jb 0x40f2e0
sub esp, 0x18
mov byte [ebp - 0x13e], 0
lea eax, [ebp - 0x14f]
mov ecx, esp
push eax
call fcn.0040b620
lea ecx, [ebp - 0x1e0]
call fcn.00411ee0
add esp, 0x18
mov ecx, eax
call fcn.0040b160
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.0040b180
mov ebx, dword [0x42182c]
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
mov ecx, dword [esi]
mov edx, 0x4970974a
add ecx, ebx
mov al, byte [ecx]
inc ecx
test al, al
je 0x40f39d
movsx eax, al
lea ecx, [ecx + 1]
xor eax, edx
imul edx, eax, 0x1000193
mov al, byte [ecx - 1]
test al, al
jne 0x40f380
cmp edx, 0x768eaa38
je 0x40f3a3
inc edi
add esi, 4
jmp 0x40f370
mov edx, dword [ebp - 0x224]
movaps xmm0, xmmword [0x41d000]
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]
add esi, ebx
mov word [ebp - 0x12c], 0x4071
movups xmmword [ebp - 0x13c], xmm0
mov byte [ebp - 0x12a], 0
xor ecx, ecx
nop
mov al, byte [ebp - 0x13c]
xor byte [ebp + ecx - 0x13b], al
inc ecx
cmp ecx, 0x11
jb 0x40f3e0
sub esp, 0x18
mov byte [ebp - 0x12a], 0
lea eax, [ebp - 0x13b]
mov ecx, esp
push eax
call fcn.0040b620
lea ecx, [ebp - 0x1f8]
call fcn.00411ee0
add esp, 0x18
mov ecx, eax
call fcn.0040b160
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 - 0x1f8]
mov dword [ebp - 0x218], eax
call fcn.0040b180
mov ebx, dword [0x42181c]
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
mov ecx, dword [esi]
mov edx, 0xd63816d6
add ecx, ebx
mov al, byte [ecx]
inc ecx
test al, al
je 0x40f49d
movsx eax, al
lea ecx, [ecx + 1]
xor eax, edx
imul edx, eax, 0x1000193
mov al, byte [ecx - 1]
test al, al
jne 0x40f480
cmp edx, 0xb550768d
je 0x40f4a3
inc edi
add esi, 4
jmp 0x40f470
mov edx, dword [ebp - 0x224]
lea eax, [ebp - 0xa8]
push dword [ebp - 0x24c]
push eax
mov eax, dword [edx + 0x24]
push dword [0x42180c]
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 [0x42182c]
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, 0xcbd932b2
add ecx, ebx
mov al, byte [ecx]
inc ecx
test al, al
je 0x40f51d
movsx eax, al
lea ecx, [ecx + 1]
xor eax, edx
imul edx, eax, 0x1000193
mov al, byte [ecx - 1]
test al, al
jne 0x40f500
cmp edx, 0x4978bd61
je 0x40f523
inc edi
add esi, 4
jmp 0x40f4f0
mov edx, dword [ebp - 0x224]
push dword [ebp - 0x240]
push dword [0x42180c]
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 [0x42182c]
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, 0xc6d92ad3
add ecx, ebx
mov al, byte [ecx]
inc ecx
test al, al
je 0x40f59d
movsx eax, al
lea ecx, [ecx + 1]
xor eax, edx
imul edx, eax, 0x1000193
mov al, byte [ecx - 1]
test al, al
jne 0x40f580
cmp edx, 0x59f86f58
je 0x40f5a3
inc edi
add esi, 4
jmp 0x40f570
mov edx, dword [ebp - 0x224]
push dword [ebp - 0x250]
push dword [0x42180c]
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 [0x42182c]
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, 0xc5d92940
add ecx, ebx
mov al, byte [ecx]
inc ecx
test al, al
je 0x40f61d
movsx eax, al
lea ecx, [ecx + 1]
xor eax, edx
imul edx, eax, 0x1000193
mov al, byte [ecx - 1]
test al, al
jne 0x40f600
cmp edx, 0xb86dbf
je 0x40f623
inc edi
add esi, 4
jmp 0x40f5f0
mov edx, dword [ebp - 0x224]
push dword [ebp - 0x22c]
push dword [0x42180c]
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 [0x42182c]
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 0x40f6d1
mov ecx, dword [esi]
mov edx, 0x43eceb1f
add ecx, ebx
mov al, byte [ecx]
inc ecx
test al, al
je 0x40f69e
movsx eax, al
lea ecx, [ecx + 1]
xor eax, edx
imul edx, eax, 0x1000193
mov al, byte [ecx - 1]
test al, al
jne 0x40f681
cmp edx, 0xd2c8bbdf
je 0x40f6a4
inc edi
add esi, 4
jmp 0x40f671
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 0x40f72f
mov ecx, dword [esi]
mov edx, 0x565f6393
add ecx, ebx
mov al, byte [ecx]
inc ecx
test al, al
je 0x40f6fe
movsx eax, al
lea ecx, [ecx + 1]
xor eax, edx
imul edx, eax, 0x1000193
mov al, byte [ecx - 1]
test al, al
jne 0x40f6e1
cmp edx, 0x776f2edb
je 0x40f704
inc edi
add esi, 4
jmp 0x40f6d1
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 [0x42180c]
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 [0x42182c]
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, 0x1f260f4b
add ecx, ebx
mov al, byte [ecx]
inc ecx
test al, al
je 0x40f79d
movsx eax, al
lea ecx, [ecx + 1]
xor eax, edx
imul edx, eax, 0x1000193
mov al, byte [ecx - 1]
test al, al
jne 0x40f780
cmp edx, 0x709289a3
je 0x40f7a3
inc edi
add esi, 4
jmp 0x40f770
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 [0x42180c]
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 [0x42182c]
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, 0xb984431f
add ecx, ebx
mov al, byte [ecx]
inc ecx
test al, al
je 0x40f83d
movsx eax, al
lea ecx, [ecx + 1]
xor eax, edx
imul edx, eax, 0x1000193
mov al, byte [ecx - 1]
test al, al
jne 0x40f820
cmp edx, 0xb37143df
je 0x40f843
inc edi
add esi, 4
jmp 0x40f810
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 [0x42180c]
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 [0x42182c]
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, 0x7785d1dc
add ecx, ebx
mov al, byte [ecx]
inc ecx
test al, al
je 0x40f8dd
movsx eax, al
lea ecx, [ecx + 1]
xor eax, edx
imul edx, eax, 0x1000193
mov al, byte [ecx - 1]
test al, al
jne 0x40f8c0
cmp edx, 0x211a8aea
je 0x40f8e3
inc edi
add esi, 4
jmp 0x40f8b0
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 [0x42180c]
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 [0x42182c]
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 0x40fa14
mov dword [ebp - 0x224], eax
mov ecx, dword [esi]
mov edx, 0xd35230a7
add ecx, ebx
mov al, byte [ecx]
inc ecx
test al, al
je 0x40f982
movsx eax, al
lea ecx, [ecx + 1]
xor eax, edx
imul edx, eax, 0x1000193
mov al, byte [ecx - 1]
test al, al
jne 0x40f965
cmp edx, 0x231d51e4
je 0x40f988
inc edi
add esi, 4
jmp 0x40f955
mov edx, dword [ebp - 0x224]
push dword [ebp - 0x23c]
push dword [0x42180c]
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 [0x42182c]
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, 0xd452323a
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, 0x2fd3e5d9
je 0x40fa03
inc edi
add esi, 4
jmp 0x40f9d0
push dword [ebp - 0x214]
mov edx, dword [ebp - 0x23c]
jmp 0x40fadf
mov dword [ebp - 0x214], eax
nop word [eax + eax]
mov ecx, dword [esi]
mov edx, 0x58c9db52
add ecx, ebx
mov al, byte [ecx]
inc ecx
test al, al
je 0x40fa4d
movsx eax, al
lea ecx, [ecx + 1]
xor eax, edx
imul edx, eax, 0x1000193
mov al, byte [ecx - 1]
test al, al
jne 0x40fa30
cmp edx, 0xc9b7c601
je 0x40fa53
inc edi
add esi, 4
jmp 0x40fa20
mov edx, dword [ebp - 0x214]
push dword [ebp - 0x248]
push dword [0x42180c]
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 [0x42182c]
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, 0x53c9d373
add ecx, ebx
mov al, byte [ecx]
inc ecx
test al, al
je 0x40facd
movsx eax, al
lea ecx, [ecx + 1]
xor eax, edx
imul edx, eax, 0x1000193
mov al, byte [ecx - 1]
test al, al
jne 0x40fab0
cmp edx, 0xdddd9f8
je 0x40fad3
inc edi
add esi, 4
jmp 0x40faa0
push dword [ebp - 0x228]
mov edx, dword [ebp - 0x214]
mov eax, dword [edx + 0x24]
push dword [0x42180c]
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 [0x42182c]
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, 0xac8b51ad
add ecx, ebx
mov al, byte [ecx]
inc ecx
test al, al
je 0x40fb4d
movsx eax, al
lea ecx, [ecx + 1]
xor eax, edx
imul edx, eax, 0x1000193
mov al, byte [ecx - 1]
test al, al
jne 0x40fb30
cmp edx, 0xe8a2d9e5
je 0x40fb53
inc edi
add esi, 4
jmp 0x40fb20
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 [0x42180c]
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 [0x42182c]
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, 0x9d06b87a
add ecx, ebx
mov al, byte [ecx]
inc ecx
test al, al
je 0x40fbed
movsx eax, al
lea ecx, [ecx + 1]
xor eax, edx
imul edx, eax, 0x1000193
mov al, byte [ecx - 1]
test al, al
jne 0x40fbd0
cmp edx, 0x944ad394
je 0x40fbf3
inc edi
add esi, 4
jmp 0x40fbc0
mov edx, dword [ebp - 0x214]
push 0x555555
push dword [0x42180c]
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 [0x42182c]
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, 0x20412d12
add ecx, ebx
mov al, byte [ecx]
inc ecx
test al, al
je 0x40fc64
movsx eax, al
lea ecx, [ecx + 1]
xor eax, edx
imul edx, eax, 0x1000193
mov al, byte [ecx - 1]
test al, al
jne 0x40fc47
cmp edx, 0x3417ee6e
je 0x40fc6a
inc edi
add esi, 4
jmp 0x40fc37
mov edx, dword [ebp - 0x214]
push 1
push dword [0x42180c]
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 [0x42182c]
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, 0x89a348fd
add ecx, ebx
mov al, byte [ecx]
inc ecx
test al, al
je 0x40fce3
movsx eax, al
lea ecx, [ecx + 1]
xor eax, edx
imul edx, eax, 0x1000193
mov al, byte [ecx - 1]
test al, al
jne 0x40fcc6
cmp edx, 0xd84e884a
je 0x40fce9
inc edi
add esi, 4
jmp 0x40fcb6
mov edx, dword [ebp - 0x214]
push dword [ebp - 0x22c]
push dword [0x42180c]
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 [0x4217a8], 1
mov dword [ebp - 0x14], 0x37
mov dword [ebp - 0x10], 0x11b
jne 0x40fd7f
mov edi, dword [0x42182c]
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, 0xf6f5c95c
add ecx, edi
mov al, byte [ecx]
inc ecx
test al, al
je 0x40fd72
movsx eax, al
lea ecx, [ecx + 1]
xor eax, edx
imul edx, eax, 0x1000193
mov al, byte [ecx - 1]
test al, al
jne 0x40fd55
cmp edx, 0xa8b9d2e2
je 0x40fd78
inc ebx
add esi, 4
jmp 0x40fd45
push 0xcccccc
jmp 0x40fde8
mov eax, dword [0x421798]
cmp eax, 0x7d1
je 0x40fd90
cmp eax, 4
jne 0x40fe0b
mov edi, dword [0x42182c]
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, 0x394990da
add ecx, edi
mov al, byte [ecx]
inc ecx
test al, al
je 0x40fddd
movsx eax, al
lea ecx, [ecx + 1]
xor eax, edx
imul edx, eax, 0x1000193
mov al, byte [ecx - 1]
test al, al
jne 0x40fdc0
cmp edx, 0x508fc34
je 0x40fde3
inc ebx
add esi, 4
jmp 0x40fdb0
push 0x969696
mov edx, dword [ebp - 0x214]
push dword [0x42180c]
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.0040cf80
test al, al
jne 0x40fea3
mov edi, dword [0x42181c]
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, 0x4bf1327f
add ecx, edi
mov al, byte [ecx]
inc ecx
test al, al
je 0x40fe6d
movsx eax, al
lea ecx, [ecx + 1]
xor eax, edx
imul edx, eax, 0x1000193
mov al, byte [ecx - 1]
test al, al
jne 0x40fe50
cmp edx, 0x295a1445
je 0x40fe73
inc ebx
add esi, 4
jmp 0x40fe40
mov esi, dword [ebp - 0x214]
mov ecx, 0x421064
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]
add esi, edi
call fcn.0040b390
push 0
lea ecx, [ebp - 0x14]
push ecx
jmp 0x410064
mov ebx, dword [0x42181c]
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
cmp byte [0x421019], 0
je 0x40ffa0
nop dword [eax]
mov ecx, dword [esi]
mov edx, 0x62a87c48
add ecx, ebx
mov al, byte [ecx]
inc ecx
test al, al
je 0x40fefd
movsx eax, al
lea ecx, [ecx + 1]
xor eax, edx
imul edx, eax, 0x1000193
mov al, byte [ecx - 1]
test al, al
jne 0x40fee0
cmp edx, 0xd576a540
je 0x40ff03
inc edi
add esi, 4
jmp 0x40fed0
mov edx, dword [ebp - 0x214]
mov byte [ebp - 0x21d], 0x53
mov byte [ebp - 0x21e], 0x4e
push 0
mov eax, dword [edx + 0x24]
lea eax, [eax + edi*2]
movzx ecx, word [eax + ebx]
mov eax, dword [edx + 0x1c]
mov dl, 0x43
mov dh, 0x58
lea eax, [eax + ecx*4]
mov cl, 0x59
mov esi, dword [eax + ebx]
mov ch, 0x7f
mov byte [ebp - 0x20], 0x36
mov al, 0x6f
xor al, byte [ebp - 0x20]
add esi, ebx
xor cl, byte [ebp - 0x20]
mov ah, 0x16
mov byte [ebp - 0x1f], al
mov bl, 0x44
mov al, byte [ebp - 0x21d]
mov bh, 0x52
mov byte [ebp - 0x1e], cl
mov cl, byte [ebp - 0x20]
xor al, cl
mov byte [ebp - 0x15], 0
mov byte [ebp - 0x17], al
xor ah, cl
mov al, byte [ebp - 0x21e]
xor dl, cl
xor bl, cl
mov byte [ebp - 0x1b], ah
xor ch, cl
mov byte [ebp - 0x1d], dl
xor dh, cl
mov byte [ebp - 0x1c], bl
xor bh, cl
mov byte [ebp - 0x1a], ch
xor al, cl
mov byte [ebp - 0x19], dh
mov byte [ebp - 0x16], al
lea eax, [ebp - 0x14]
push eax
mov byte [ebp - 0x18], bh
lea eax, [ebp - 0x1f]
mov byte [ebp - 0x15], 0
jmp 0x410064
mov ecx, dword [esi]
mov edx, 0xd72c4afd
add ecx, ebx
mov al, byte [ecx]
inc ecx
test al, al
je 0x40ffcd
movsx eax, al
lea ecx, [ecx + 1]
xor eax, edx
imul edx, eax, 0x1000193
mov al, byte [ecx - 1]
test al, al
jne 0x40ffb0
cmp edx, 0x7880ac87
je 0x40ffd3
inc edi
add esi, 4
jmp 0x40ffa0
mov edx, dword [ebp - 0x214]
mov byte [ebp - 0x21e], 0x94
mov byte [ebp - 0x21d], 0x8f
push 0
mov eax, dword [edx + 0x24]
lea eax, [eax + edi*2]
movzx ecx, word [eax + ebx]
mov eax, dword [edx + 0x1c]
mov dl, 0x86
mov dh, 0x9a
lea eax, [eax + ecx*4]
mov cl, 0x9e
mov esi, dword [eax + ebx]
mov ch, 0x93
mov byte [ebp - 0x2c], 0x7e
mov al, 0xbc
xor al, byte [ebp - 0x2c]
add esi, ebx
xor cl, byte [ebp - 0x2c]
mov ah, 0xb6
mov byte [ebp - 0x2b], al
mov bl, 0x5e
mov al, byte [ebp - 0x21e]
mov bh, 0x9b
mov byte [ebp - 0x2a], cl
mov cl, byte [ebp - 0x2c]
xor al, cl
mov byte [ebp - 0x21], 0
mov byte [ebp - 0x23], al
xor ah, cl
mov al, byte [ebp - 0x21d]
xor dl, cl
xor bl, cl
mov byte [ebp - 0x27], ah
xor ch, cl
mov byte [ebp - 0x29], dl
xor dh, cl
mov byte [ebp - 0x28], bl
xor bh, cl
mov byte [ebp - 0x26], ch
xor al, cl
mov byte [ebp - 0x25], dh
mov byte [ebp - 0x22], al
lea eax, [ebp - 0x14]
push eax
mov byte [ebp - 0x24], bh
lea eax, [ebp - 0x2b]
mov byte [ebp - 0x21], 0
push 0xffffffffffffffff
push eax
push dword [0x42180c]
call esi
mov edi, dword [0x42182c]
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 + eax]
mov ecx, dword [esi]
mov edx, 0xfbfdb42d
add ecx, edi
mov al, byte [ecx]
inc ecx
test al, al
je 0x4100bd
movsx eax, al
lea ecx, [ecx + 1]
xor eax, edx
imul edx, eax, 0x1000193
mov al, byte [ecx - 1]
test al, al
jne 0x4100a0
cmp edx, 0xf5bf0eb3
je 0x4100c3
inc ebx
add esi, 4
jmp 0x410090
mov edx, dword [ebp - 0x214]
push 0x555555
push dword [0x42180c]
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 [0x4217a8], 2
mov dword [ebp - 0x14], 0x37
mov dword [ebp - 0x10], 0x15b
jne 0x41015a
mov edi, dword [0x42182c]
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, 0xaa0e7210
add ecx, edi
mov al, byte [ecx]
inc ecx
test al, al
je 0x41014d
movsx eax, al
lea ecx, [ecx + 1]
xor eax, edx
imul edx, eax, 0x1000193
mov al, byte [ecx - 1]
test al, al
jne 0x410130
cmp edx, 0x5c179ce6
je 0x410153
inc ebx
add esi, 4
jmp 0x410120
push 0xcccccc
jmp 0x4101bf
mov eax, dword [0x421798]
cmp eax, 0x7d2
je 0x41016b
cmp eax, 5
jne 0x4101e2
mov edi, dword [0x42182c]
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, 0x1a99bd81
add ecx, edi
mov al, byte [ecx]
inc ecx
test al, al
je 0x4101b4
movsx eax, al
lea ecx, [ecx + 1]
xor eax, edx
imul edx, eax, 0x1000193
mov al, byte [ecx - 1]
test al, al
jne 0x410197
cmp edx, 0xeca3d97
je 0x4101ba
inc ebx
add esi, 4
jmp 0x410187
push 0x969696
mov edx, dword [ebp - 0x214]
push dword [0x42180c]
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.0040cf80
test al, al
jne 0x410339
cmp byte [0x42179e], al
je 0x410284
mov edi, dword [0x42181c]
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, 0x4ee58c03
add ecx, edi
mov al, byte [ecx]
inc ecx
test al, al
je 0x41024e
movsx eax, al
lea ecx, [ecx + 1]
xor eax, edx
imul edx, eax, 0x1000193
mov al, byte [ecx - 1]
test al, al
jne 0x410231
cmp edx, 0x1e44a659
je 0x410254
inc ebx
add esi, 4
jmp 0x410221
mov esi, dword [ebp - 0x214]
mov ecx, 0x421094
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]
add esi, edi
call fcn.0040b390
push 0
lea ecx, [ebp - 0x14]
push ecx
jmp 0x4104f5
mov ebx, dword [0x42181c]
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, 0xe022553c
add ecx, ebx
mov al, byte [ecx]
inc ecx
test al, al
je 0x4102cd
movsx eax, al
lea ecx, [ecx + 1]
xor eax, edx
imul edx, eax, 0x1000193
mov al, byte [ecx - 1]
test al, al
jne 0x4102b0
cmp edx, 0xaf0f6214
je 0x4102d3
inc edi
add esi, 4
jmp 0x4102a0
mov edx, dword [ebp - 0x214]
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 - 0x235]
add esi, ebx
push eax
push dword [0x4210a4]
push 0
push 0x42104c
call fcn.0040c0a0
lea ecx, [ebp - 0x1b0]
call fcn.0040b390
push 0
lea ecx, [ebp - 0x14]
push ecx
push 0xffffffffffffffff
push eax
push dword [0x42180c]
call esi
lea ecx, [ebp - 0x1b0]
call fcn.0040b4e0
jmp 0x410500
cmp byte [0x421019], 0
je 0x410415
mov edi, dword [0x42181c]
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, 0x47d52eb
add ecx, edi
mov al, byte [ecx]
inc ecx
test al, al
je 0x41038f
movsx eax, al
lea ecx, [ecx + 1]
xor eax, edx
imul edx, eax, 0x1000193
mov al, byte [ecx - 1]
test al, al
jne 0x410372
cmp edx, 0xf485f1c1
je 0x410395
inc ebx
add esi, 4
jmp 0x410362
mov edx, dword [ebp - 0x214]
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 cl, 0x67
mov edx, dword [eax + edi]
add edx, edi
mov dword [ebp - 0x84], 0x12083e67
mov dword [ebp - 0x80], 0x6374715
xor eax, eax
mov dword [ebp - 0x7c], 0x8101414
mov word [ebp - 0x78], 0x315
mov byte [ebp - 0x76], 0
nop word [eax + eax]
xor byte [ebp + eax - 0x83], cl
inc eax
cmp eax, 0xd
jae 0x4103f5
mov cl, byte [ebp - 0x84]
jmp 0x4103e0
push 0
lea eax, [ebp - 0x14]
mov byte [ebp - 0x76], 0
push eax
push 0xffffffffffffffff
lea eax, [ebp - 0x83]
push eax
push dword [0x42180c]
call edx
jmp 0x410500
mov ebx, dword [0x42181c]
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, 0x21fee73a
add ecx, ebx
mov al, byte [ecx]
inc ecx
test al, al
je 0x41045e
movsx eax, al
lea ecx, [ecx + 1]
xor eax, edx
imul edx, eax, 0x1000193
mov al, byte [ecx - 1]
test al, al
jne 0x410441
cmp edx, 0xae101576
je 0x410464
inc edi
add esi, 4
jmp 0x410431
mov edx, dword [ebp - 0x214]
mov byte [ebp - 0x21e], 0xc9
mov byte [ebp - 0x21d], 0xde
push 0
mov eax, dword [edx + 0x24]
lea eax, [eax + edi*2]
movzx ecx, word [eax + ebx]
mov eax, dword [edx + 0x1c]
mov dl, 0xda
mov dh, 0xd2
lea eax, [eax + ecx*4]
mov cl, 0xc2
mov esi, dword [eax + ebx]
mov ch, cl
mov byte [ebp - 0x44], 0x22
mov al, 0xe0
xor al, byte [ebp - 0x44]
add esi, ebx
xor cl, byte [ebp - 0x44]
mov ah, 0xed
mov byte [ebp - 0x43], al
mov bl, 2
mov al, byte [ebp - 0x21e]
mov bh, 0xcc
mov byte [ebp - 0x42], cl
mov cl, byte [ebp - 0x44]
xor al, cl
mov byte [ebp - 0x39], 0
mov byte [ebp - 0x3b], al
xor ah, cl
mov al, byte [ebp - 0x21d]
xor dl, cl
xor bl, cl
mov byte [ebp - 0x3f], ah
xor ch, cl
mov byte [ebp - 0x41], dl
xor dh, cl
mov byte [ebp - 0x40], bl
xor bh, cl
mov byte [ebp - 0x3e], ch
xor al, cl
mov byte [ebp - 0x3d], dh
mov byte [ebp - 0x3a], al
lea eax, [ebp - 0x14]
push eax
mov byte [ebp - 0x3c], bh
lea eax, [ebp - 0x43]
mov byte [ebp - 0x39], 0
push 0xffffffffffffffff
push eax
push dword [0x42180c]
call esi
mov edi, dword [0x42182c]
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, 0xf5287421
add ecx, edi
mov al, byte [ecx]
inc ecx
test al, al
je 0x41054d
movsx eax, al
lea ecx, [ecx + 1]
xor eax, edx
imul edx, eax, 0x1000193
mov al, byte [ecx - 1]
test al, al
jne 0x410530
cmp edx, 0xcbef71f7
je 0x410553
inc ebx
add esi, 4
jmp 0x410520
mov edx, dword [ebp - 0x214]
push 0x555555
push dword [0x42180c]
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 [0x42182c]
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, 0x3b080182
add ecx, ebx
mov al, byte [ecx]
inc ecx
test al, al
je 0x4105c4
movsx eax, al
lea ecx, [ecx + 1]
xor eax, edx
imul edx, eax, 0x1000193
mov al, byte [ecx - 1]
test al, al
jne 0x4105a7
cmp edx, 0xd3fc6b91
je 0x4105ca
inc edi
add esi, 4
jmp 0x410597
mov edx, dword [ebp - 0x214]
push dword [ebp - 0x21c]
push dword [0x42180c]
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.0040cf80
test al, al
je 0x4108b3
cmp dword [0x421798], 0xfa1
jne 0x41069f
mov edi, dword [0x42182c]
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, 0x8d01759
add ecx, edi
mov al, byte [ecx]
inc ecx
test al, al
je 0x410671
movsx eax, al
lea ecx, [ecx + 1]
xor eax, edx
imul edx, eax, 0x1000193
mov al, byte [ecx - 1]
test al, al
jne 0x410654
inc ebx
add esi, 4
jmp 0x410644
mov edi, dword [0x42181c]
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
cmp byte [0x421019], bl
je 0x410780
mov ecx, dword [esi]
mov edx, 0x56bf532a
add ecx, edi
mov al, byte [ecx]
inc ecx
test al, al
je 0x4106f4
mov ecx, dword [esi]
mov edx, 0xef0f2efd
add ecx, edi
mov al, byte [ecx]
inc ecx
test al, al
je 0x4107ad
mov edi, dword [0x42182c]
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
mov ecx, dword [esi]
mov edx, 0x41cffb19
add ecx, edi
mov al, byte [ecx]
inc ecx
test al, al
je 0x4108fd
movsx eax, al
lea ecx, [ecx + 1]
xor eax, edx
imul edx, eax, 0x1000193
mov al, byte [ecx - 1]
test al, al
jne 0x4108e0
cmp edx, 0xc75351af
je 0x410903
inc ebx
add esi, 4
jmp 0x4108d0