Function at 0x100566e2
Capabilities:
Encode data using xor
Resolve function by parsing pe exports

Disassembly:
mov eax, 0x160
call fcn.1008bee0
mov eax, dword [esp + 0x16c]
mov ecx, eax
dec eax
test ecx, ecx
je 0x1005a0e8
mov ecx, dword [esp + 0x168]
push ebx
push ebp
push esi
mov esi, dword [esp + 0x170]
push edi
lea edi, [ecx + 2]
inc eax
mov dword [esp + 0x78], edi
mov dword [esp + 0xac], eax
mov eax, dword [esi]
mov ecx, dword [esi + 4]
mov dword [esp + 0x138], eax
mov dword [esp + 0x58], eax
mov eax, dword [esi + 8]
mov dword [esp + 0x13c], ecx
mov dword [esp + 0x168], eax
mov dword [esp + 0x40], eax
mov eax, dword [esi + 0x10]
mov dword [esp + 0x5c], ecx
mov ecx, dword [esi + 0xc]
mov dword [esp + 0x160], eax
mov dword [esp + 0x20], eax
mov eax, dword [esi + 0x24]
mov dword [esp + 0x144], eax
mov dword [esp + 0x34], eax
mov eax, dword [esi + 0x28]
mov dword [esp + 0x16c], ecx
mov dword [esp + 0x44], ecx
mov ecx, dword [esi + 0x14]
mov ebp, dword [esi + 0x20]
mov dword [esp + 0x148], eax
mov dword [esp + 0x28], eax
mov eax, dword [esi + 0x30]
mov dword [esp + 0x164], ecx
mov dword [esp + 0x24], ecx
mov ecx, dword [esi + 0x2c]
mov dword [esp + 0x158], eax
mov dword [esp + 0x18], eax
mov dword [esp + 0x14c], ecx
movzx eax, byte [edi - 2]
mov dword [esp + 0x2c], ecx
mov ecx, dword [esi + 0x34]
push 8
mov dword [esp + 0x160], ecx
mov dword [esp + 0x20], ecx
pop ecx
cdq
mov dword [esp + 0x140], ebp
mov dword [esp + 0x30], ebp
call fcn.1008bfc0
mov ebx, eax
push 8
movzx eax, byte [edi - 1]
mov dword [esp + 0x14], ebx
mov ebx, edx
cdq
mov dword [esp + 0x18], ebx
mov ebx, dword [esp + 0x14]
or eax, ebx
mov ebx, dword [esp + 0x18]
or ebx, edx
pop ecx
mov edx, ebx
call fcn.1008bfc0
mov ebx, eax
push 8
movzx eax, byte [edi]
mov dword [esp + 0x14], ebx
mov ebx, edx
cdq
mov dword [esp + 0x18], ebx
mov ebx, dword [esp + 0x14]
or eax, ebx
mov ebx, dword [esp + 0x18]
or ebx, edx
pop ecx
mov edx, ebx
call fcn.1008bfc0
mov ebx, eax
push 8
movzx eax, byte [edi + 1]
mov dword [esp + 0x14], ebx
mov ebx, edx
cdq
mov dword [esp + 0x18], ebx
mov ebx, dword [esp + 0x14]
or eax, ebx
mov ebx, dword [esp + 0x18]
or ebx, edx
pop ecx
mov edx, ebx
call fcn.1008bfc0
mov ebx, eax
push 8
movzx eax, byte [edi + 2]
mov dword [esp + 0x14], ebx
mov ebx, edx
cdq
mov dword [esp + 0x18], ebx
mov ebx, dword [esp + 0x14]
or eax, ebx
mov ebx, dword [esp + 0x18]
or ebx, edx
pop ecx
mov edx, ebx
call fcn.1008bfc0
mov ebx, eax
push 8
movzx eax, byte [edi + 3]
mov dword [esp + 0x14], ebx
mov ebx, edx
cdq
mov dword [esp + 0x18], ebx
mov ebx, dword [esp + 0x14]
or eax, ebx
mov ebx, dword [esp + 0x18]
or ebx, edx
pop ecx
mov edx, ebx
call fcn.1008bfc0
mov ebx, eax
push 8
movzx eax, byte [edi + 4]
mov dword [esp + 0x14], ebx
mov ebx, edx
cdq
mov dword [esp + 0x18], ebx
mov ebx, dword [esp + 0x14]
or eax, ebx
mov ebx, dword [esp + 0x18]
or ebx, edx
pop ecx
mov edx, ebx
call fcn.1008bfc0
mov ecx, eax
mov ebx, edx
movzx eax, byte [edi + 5]
cdq
or ecx, eax
mov eax, dword [esi + 0x38]
or ebx, edx
mov dword [esp + 0xb0], eax
mov eax, dword [esi + 0x3c]
mov dword [esp + 0xbc], ebx
mov ebx, dword [esp + 0x34]
push 0x17
mov dword [esp + 0xbc], ecx
mov dword [esp + 0xb8], eax
mov esi, ebx
pop ecx
mov eax, ebp
mov edx, ebx
shr esi, 9
xor edi, edi
call fcn.1008bfc0
or edi, edx
mov edx, ebp
or esi, eax
xor eax, eax
shl edx, 0xe
push 0x12
mov dword [esp + 0x14], eax
mov dword [esp + 0x18], edx
pop ecx
mov eax, ebp
mov edx, ebx
call fcn.1008bfa0
mov ecx, dword [esp + 0x10]
or ecx, eax
mov eax, dword [esp + 0x14]
or eax, edx
mov edx, dword [esp + 0x34]
xor edi, eax
mov eax, ebp
push 0xe
xor esi, ecx
mov ebx, eax
pop ecx
xor ebp, ebp
shl ebx, 0x12
call fcn.1008bfa0
mov ecx, dword [esp + 0x34]
or ebp, eax
mov eax, dword [esp + 0x30]
or ebx, edx
mov edx, dword [esp + 0x28]
xor edi, ebx
mov ebx, dword [esp + 0x2c]
and edx, dword [esp + 0x30]
and ebx, dword [esp + 0x34]
xor esi, ebp
not eax
and eax, dword [esp + 0x18]
mov ebp, dword [esp + 0x5c]
not ecx
and ecx, dword [esp + 0x1c]
xor eax, edx
push 0x1c
mov edx, ebp
xor ecx, ebx
add esi, eax
adc edi, ecx
add esi, dword [esp + 0xb4]
mov ecx, dword [esp + 0x178]
mov ebx, dword [esp + 0x5c]
adc edi, dword [esp + 0xb8]
add esi, dword [0x10096a48]
mov eax, dword [ecx + 0x18]
mov ecx, dword [ecx + 0x1c]
adc edi, dword [0x10096a4c]
add esi, dword [esp + 0xbc]
mov dword [esp + 0x154], eax
mov dword [esp + 0x158], ecx
adc edi, dword [esp + 0xc0]
add eax, esi
mov dword [esp + 0x3c], eax
mov eax, ecx
adc eax, edi
mov dword [esp + 0x4c], esi
mov dword [esp + 0x40], eax
mov eax, dword [esp + 0x44]
xor eax, ebx
mov esi, ebx
mov dword [esp + 0x9c], eax
mov eax, dword [esp + 0x48]
xor eax, ebp
mov dword [esp + 0x50], edi
mov dword [esp + 0xa0], eax
mov eax, dword [esp + 0x44]
and eax, ebx
pop ecx
mov dword [esp + 0x90], eax
mov eax, dword [esp + 0x44]
and eax, ebp
xor edi, edi
mov dword [esp + 0x94], eax
mov eax, ebx
shl esi, 4
call fcn.1008bfa0
or esi, edx
mov edx, ebp
or edi, eax
xor eax, eax
shr edx, 2
push 0x1e
mov dword [esp + 0x18], eax
mov dword [esp + 0x14], edx
pop ecx
mov eax, ebx
mov edx, ebp
call fcn.1008bfc0
mov ecx, dword [esp + 0x10]
or ecx, eax
mov eax, dword [esp + 0x14]
or eax, edx
mov edx, ebp
push 0x19
xor edi, ecx
xor esi, eax
mov eax, dword [esp + 0x5c]
mov ebx, edx
pop ecx
shr ebx, 7
xor ebp, ebp
call fcn.1008bfc0
mov ecx, dword [esp + 0x9c]
or ebx, eax
mov eax, dword [esp + 0x98]
and ecx, dword [esp + 0x24]
and eax, dword [esp + 0x20]
or ebp, edx
xor ecx, dword [esp + 0x94]
xor edi, ebx
xor eax, dword [esp + 0x90]
xor esi, ebp
push 8
add edi, eax
adc esi, ecx
add edi, dword [esp + 0x4c]
adc esi, dword [esp + 0x50]
mov dword [esp + 0x54], edi
pop edi
mov dword [esp + 0x54], esi
mov esi, dword [esp + 0x78]
mov ecx, edi
movzx eax, byte [esi + 6]
cdq
call fcn.1008bfc0
mov ebx, eax
mov ebp, edx
movzx eax, byte [esi + 7]
cdq
or ebx, eax
or ebp, edx
mov ecx, edi
mov eax, ebx
mov edx, ebp
call fcn.1008bfc0
mov ebx, eax
mov ebp, edx
movzx eax, byte [esi + 8]
cdq
or ebx, eax
or ebp, edx
mov ecx, edi
mov eax, ebx
mov edx, ebp
call fcn.1008bfc0
mov ebx, eax
mov ebp, edx
movzx eax, byte [esi + 9]
cdq
or ebx, eax
or ebp, edx
mov ecx, edi
mov eax, ebx
mov edx, ebp
call fcn.1008bfc0
mov ebx, eax
mov ebp, edx
movzx eax, byte [esi + 0xa]
cdq
or ebx, eax
or ebp, edx
mov ecx, edi
mov eax, ebx
mov edx, ebp
call fcn.1008bfc0
mov ebx, eax
mov ebp, edx
movzx eax, byte [esi + 0xb]
cdq
or ebx, eax
or ebp, edx
mov ecx, edi
mov eax, ebx
mov edx, ebp
call fcn.1008bfc0
mov ebx, eax
mov ebp, edx
movzx eax, byte [esi + 0xc]
cdq
or ebx, eax
or ebp, edx
mov ecx, edi
mov eax, ebx
mov edx, ebp
call fcn.1008bfc0
mov ecx, eax
mov ebp, dword [esp + 0x3c]
movzx eax, byte [esi + 0xd]
mov ebx, dword [esp + 0x38]
mov edi, edx
cdq
or ecx, eax
or edi, edx
push 0x17
mov dword [esp + 0xc4], ecx
mov esi, ebp
mov dword [esp + 0xc8], edi
pop ecx
mov eax, ebx
mov edx, ebp
xor edi, edi
shr esi, 9
call fcn.1008bfc0
or edi, edx
mov edx, ebx
or esi, eax
xor eax, eax
shl edx, 0xe
push 0x12
mov dword [esp + 0x14], eax
mov dword [esp + 0x18], edx
pop ecx
mov eax, ebx
mov edx, ebp
call fcn.1008bfa0
mov ecx, dword [esp + 0x10]
push 0xe
or ecx, eax
mov eax, dword [esp + 0x18]
or eax, edx
mov edx, dword [esp + 0x40]
xor esi, ecx
xor edi, eax
mov eax, ebx
pop ecx
xor ebp, ebp
shl ebx, 0x12
call fcn.1008bfa0
mov ecx, dword [esp + 0x3c]
or ebp, eax
mov eax, dword [esp + 0x38]
or ebx, edx
mov edx, dword [esp + 0x30]
xor edi, ebx
mov ebx, dword [esp + 0x34]
and edx, dword [esp + 0x38]
and ebx, dword [esp + 0x3c]
xor esi, ebp
not eax
and eax, dword [esp + 0x28]
not ecx
and ecx, dword [esp + 0x2c]
xor eax, edx
xor ecx, ebx
add esi, eax
adc edi, ecx
add esi, dword [0x10096a50]
adc edi, dword [0x10096a54]
add esi, dword [esp + 0xc0]
adc edi, dword [esp + 0xc4]
add esi, dword [esp + 0x18]
adc edi, dword [esp + 0x1c]
add dword [esp + 0x20], esi
mov ebx, dword [esp + 0x50]
mov ebp, dword [esp + 0x54]
mov dword [esp + 0x48], esi
push 0x1c
adc dword [esp + 0x28], edi
mov esi, ebx
mov dword [esp + 0x50], edi
pop ecx
mov eax, ebx
mov edx, ebp
xor edi, edi
shl esi, 4
call fcn.1008bfa0
or esi, edx
mov edx, ebp
or edi, eax
xor eax, eax
shr edx, 2
push 0x1e
mov dword [esp + 0x18], eax
mov dword [esp + 0x14], edx
pop ecx
mov eax, ebx
mov edx, ebp
call fcn.1008bfc0
mov ecx, dword [esp + 0x10]
push 0x19
or ecx, eax
mov eax, dword [esp + 0x18]
or eax, edx
mov edx, ebp
xor edi, ecx
xor esi, eax
mov eax, dword [esp + 0x54]
mov ebx, edx
pop ecx
xor ebp, ebp
shr ebx, 7
call fcn.1008bfc0
mov ecx, dword [esp + 0x9c]
or ebx, eax
mov eax, dword [esp + 0x98]
and ecx, dword [esp + 0x54]
and eax, dword [esp + 0x50]
or ebp, edx
xor ecx, dword [esp + 0x94]
xor edi, ebx
xor eax, dword [esp + 0x90]
xor esi, ebp
push 8
add edi, eax
adc esi, ecx
add edi, dword [esp + 0x4c]
adc esi, dword [esp + 0x50]
mov dword [esp + 0x1c], edi
pop edi
mov dword [esp + 0x1c], esi
mov esi, dword [esp + 0x78]
mov ecx, edi
movzx eax, byte [esi + 0xe]
cdq
call fcn.1008bfc0
mov ebx, eax
mov ebp, edx
movzx eax, byte [esi + 0xf]
cdq
or ebx, eax
or ebp, edx
mov ecx, edi
mov eax, ebx
mov edx, ebp
call fcn.1008bfc0
mov ebx, eax
mov ebp, edx
movzx eax, byte [esi + 0x10]
cdq
or ebx, eax
or ebp, edx
mov ecx, edi
mov eax, ebx
mov edx, ebp
call fcn.1008bfc0
mov ebx, eax
mov ebp, edx
movzx eax, byte [esi + 0x11]
cdq
or ebx, eax
or ebp, edx
mov ecx, edi
mov eax, ebx
mov edx, ebp
call fcn.1008bfc0
mov ebx, eax
mov ebp, edx
movzx eax, byte [esi + 0x12]
cdq
or ebx, eax
or ebp, edx
mov ecx, edi
mov eax, ebx
mov edx, ebp
call fcn.1008bfc0
mov ebx, eax
mov ebp, edx
movzx eax, byte [esi + 0x13]
cdq
or ebx, eax
or ebp, edx
mov ecx, edi
mov eax, ebx
mov edx, ebp
call fcn.1008bfc0
mov ebx, eax
mov ebp, edx
movzx eax, byte [esi + 0x14]
cdq
or ebx, eax
or ebp, edx
mov ecx, edi
mov eax, ebx
mov edx, ebp
call fcn.1008bfc0
mov ecx, eax
mov ebp, dword [esp + 0x24]
movzx eax, byte [esi + 0x15]
mov ebx, dword [esp + 0x20]
mov edi, edx
cdq
or ecx, eax
or edi, edx
push 0x17
mov dword [esp + 0xcc], ecx
mov esi, ebp
mov dword [esp + 0xd0], edi
pop ecx
mov eax, ebx
mov edx, ebp
xor edi, edi
shr esi, 9
call fcn.1008bfc0
or edi, edx
mov edx, ebx
or esi, eax
xor eax, eax
shl edx, 0xe
push 0x12
mov dword [esp + 0x14], eax
mov dword [esp + 0x18], edx
pop ecx
mov eax, ebx
mov edx, ebp
call fcn.1008bfa0
mov ecx, dword [esp + 0x10]
or ecx, eax
mov eax, dword [esp + 0x14]
or eax, edx
xor esi, ecx
xor edi, eax
mov eax, ebx
xor ebp, ebp
mov edx, dword [esp + 0x24]
push 0xe
pop ecx
shl ebx, 0x12
call fcn.1008bfa0
mov ecx, dword [esp + 0x24]
or ebp, eax
mov eax, dword [esp + 0x20]
or ebx, edx
mov edx, dword [esp + 0x38]
xor edi, ebx
mov ebx, dword [esp + 0x3c]
and edx, dword [esp + 0x20]
and ebx, dword [esp + 0x24]
xor esi, ebp
not eax
and eax, dword [esp + 0x30]
mov ebp, dword [esp + 0x1c]
not ecx
and ecx, dword [esp + 0x34]
xor eax, edx
push 0x1c
mov edx, ebp
xor ecx, ebx
add esi, eax
adc edi, ecx
add esi, dword [0x10096a58]
mov ebx, dword [esp + 0x1c]
pop ecx
adc edi, dword [0x10096a5c]
add esi, dword [esp + 0xc8]
mov eax, ebx
adc edi, dword [esp + 0xcc]
add esi, dword [esp + 0x28]
adc edi, dword [esp + 0x2c]
add dword [esp + 0x40], esi
mov dword [esp + 0x48], esi
mov esi, ebx
mov dword [esp + 0x4c], edi
adc dword [esp + 0x44], edi
xor edi, edi
shl esi, 4
call fcn.1008bfa0
or esi, edx
mov edx, ebp
or edi, eax
xor eax, eax
shr edx, 2
push 0x1e
mov dword [esp + 0x18], eax
mov dword [esp + 0x14], edx
pop ecx
mov eax, ebx
mov edx, ebp
call fcn.1008bfc0
mov ecx, dword [esp + 0x10]
push 0x19
or ecx, eax
mov eax, dword [esp + 0x18]
or eax, edx
mov edx, ebp
xor edi, ecx
xor esi, eax
mov eax, dword [esp + 0x1c]
mov ebx, edx
pop ecx
xor ebp, ebp
shr ebx, 7
call fcn.1008bfc0
mov ecx, dword [esp + 0x1c]
or ebx, eax
mov eax, dword [esp + 0x18]
xor ecx, dword [esp + 0x5c]
xor eax, dword [esp + 0x58]
or ebp, edx
mov edx, dword [esp + 0x18]
and ecx, dword [esp + 0x54]
and eax, dword [esp + 0x50]
xor edi, ebx
xor esi, ebp
and edx, dword [esp + 0x58]
mov ebx, dword [esp + 0x1c]
xor eax, edx
and ebx, dword [esp + 0x5c]
push 8
xor ecx, ebx
add edi, eax
adc esi, ecx
add edi, dword [esp + 0x4c]
adc esi, dword [esp + 0x50]
mov dword [esp + 0x2c], edi
pop edi
mov dword [esp + 0x2c], esi
mov esi, dword [esp + 0x78]
mov ecx, edi
movzx eax, byte [esi + 0x16]
cdq
call fcn.1008bfc0
mov ebx, eax
mov ebp, edx
movzx eax, byte [esi + 0x17]
cdq
or ebx, eax
or ebp, edx
mov ecx, edi
mov eax, ebx
mov edx, ebp
call fcn.1008bfc0
mov ebx, eax
mov ebp, edx
movzx eax, byte [esi + 0x18]
cdq
or ebx, eax
or ebp, edx
mov ecx, edi
mov eax, ebx
mov edx, ebp
call fcn.1008bfc0
mov ebx, eax
mov ebp, edx
movzx eax, byte [esi + 0x19]
cdq
or ebx, eax
or ebp, edx
mov ecx, edi
mov eax, ebx
mov edx, ebp
call fcn.1008bfc0
mov ebx, eax
mov ebp, edx
movzx eax, byte [esi + 0x1a]
cdq
or ebx, eax
or ebp, edx
mov ecx, edi
mov eax, ebx
mov edx, ebp
call fcn.1008bfc0
mov ebx, eax
mov ebp, edx
movzx eax, byte [esi + 0x1b]
cdq
or ebx, eax
or ebp, edx
mov ecx, edi
mov eax, ebx
mov edx, ebp
call fcn.1008bfc0
mov ebx, eax
mov ebp, edx
movzx eax, byte [esi + 0x1c]
cdq
or ebx, eax
or ebp, edx
mov ecx, edi
mov eax, ebx
mov edx, ebp
call fcn.1008bfc0
mov ecx, eax
mov edi, edx
movzx eax, byte [esi + 0x1d]
cdq
mov ebp, dword [esp + 0x44]
mov ebx, dword [esp + 0x40]
or ecx, eax
or edi, edx
push 0x17
mov dword [esp + 0xd4], ecx
mov esi, ebp
mov dword [esp + 0xd8], edi
pop ecx
mov eax, ebx
mov edx, ebp
xor edi, edi
shr esi, 9
call fcn.1008bfc0
or edi, edx
mov edx, ebx
or esi, eax
xor eax, eax
shl edx, 0xe
push 0x12
mov dword [esp + 0x14], eax
mov dword [esp + 0x18], edx
pop ecx
mov eax, ebx
mov edx, ebp
call fcn.1008bfa0
mov ecx, dword [esp + 0x10]
push 0xe
or ecx, eax
mov eax, dword [esp + 0x18]
or eax, edx
mov edx, dword [esp + 0x48]
xor esi, ecx
xor edi, eax
mov eax, ebx
pop ecx
xor ebp, ebp
shl ebx, 0x12
call fcn.1008bfa0
mov ecx, dword [esp + 0x44]
or ebp, eax
mov eax, dword [esp + 0x40]
or ebx, edx
mov edx, dword [esp + 0x20]
xor edi, ebx
mov ebx, dword [esp + 0x24]
and edx, dword [esp + 0x40]
and ebx, dword [esp + 0x44]
xor esi, ebp
not eax
and eax, dword [esp + 0x38]
mov ebp, dword [esp + 0x2c]
not ecx
and ecx, dword [esp + 0x3c]
xor eax, edx
push 0x1c
mov edx, ebp
xor ecx, ebx
add esi, eax
adc edi, ecx
add esi, dword [0x10096a60]
mov ebx, dword [esp + 0x2c]
pop ecx
adc edi, dword [0x10096a64]
add esi, dword [esp + 0xd0]
mov eax, ebx
adc edi, dword [esp + 0xd4]
add esi, dword [esp + 0x30]
adc edi, dword [esp + 0x34]
add dword [esp + 0x58], esi
mov dword [esp + 0x48], esi
mov esi, ebx
mov dword [esp + 0x4c], edi
adc dword [esp + 0x5c], edi
xor edi, edi
shl esi, 4
call fcn.1008bfa0
or esi, edx
mov edx, ebp
or edi, eax
shr edx, 2
xor eax, eax
push 0x1e
mov dword [esp + 0x18], eax
mov dword [esp + 0x14], edx
pop ecx
mov eax, ebx
mov edx, ebp
call fcn.1008bfc0
mov ecx, dword [esp + 0x10]
push 0x19
or ecx, eax
mov eax, dword [esp + 0x18]
or eax, edx
mov edx, ebp
xor edi, ecx
xor esi, eax
mov eax, dword [esp + 0x2c]
mov ebx, edx
pop ecx
xor ebp, ebp
shr ebx, 7
call fcn.1008bfc0
mov ecx, dword [esp + 0x1c]
or ebx, eax
mov eax, dword [esp + 0x18]
xor ecx, dword [esp + 0x2c]
xor eax, dword [esp + 0x28]
or ebp, edx
mov edx, dword [esp + 0x18]
and ecx, dword [esp + 0x54]
and eax, dword [esp + 0x50]
and edx, dword [esp + 0x28]
xor edi, ebx
mov ebx, dword [esp + 0x1c]
and ebx, dword [esp + 0x2c]
xor eax, edx
xor esi, ebp
push 8
xor ecx, ebx
add edi, eax
adc esi, ecx
add edi, dword [esp + 0x4c]
adc esi, dword [esp + 0x50]
mov dword [esp + 0x34], edi
pop edi
mov dword [esp + 0x34], esi
mov esi, dword [esp + 0x78]
mov ecx, edi
movzx eax, byte [esi + 0x1e]
cdq
call fcn.1008bfc0
mov ebx, eax
mov ebp, edx
movzx eax, byte [esi + 0x1f]
cdq
or ebx, eax
or ebp, edx
mov ecx, edi
mov eax, ebx
mov edx, ebp
call fcn.1008bfc0
mov ebx, eax
mov ebp, edx
movzx eax, byte [esi + 0x20]
cdq
or ebx, eax
or ebp, edx
mov ecx, edi
mov eax, ebx
mov edx, ebp
call fcn.1008bfc0
mov ebx, eax
mov ebp, edx
movzx eax, byte [esi + 0x21]
cdq
or ebx, eax
or ebp, edx
mov ecx, edi
mov eax, ebx
mov edx, ebp
call fcn.1008bfc0
mov ebx, eax
mov ebp, edx
movzx eax, byte [esi + 0x22]
cdq
or ebx, eax
or ebp, edx
mov ecx, edi
mov eax, ebx
mov edx, ebp
call fcn.1008bfc0
mov ebx, eax
mov ebp, edx
movzx eax, byte [esi + 0x23]
cdq
or ebx, eax
or ebp, edx
mov ecx, edi
mov eax, ebx
mov edx, ebp
call fcn.1008bfc0
mov ebx, eax
mov ebp, edx
movzx eax, byte [esi + 0x24]
cdq
or ebx, eax
or ebp, edx
mov ecx, edi
mov eax, ebx
mov edx, ebp
call fcn.1008bfc0
mov ecx, eax
mov ebp, dword [esp + 0x5c]
movzx eax, byte [esi + 0x25]
mov ebx, dword [esp + 0x58]
mov edi, edx
cdq
or ecx, eax
or edi, edx
push 0x17
mov dword [esp + 0xdc], ecx
mov esi, ebp
mov dword [esp + 0xe0], edi
pop ecx
mov eax, ebx
mov edx, ebp
xor edi, edi
shr esi, 9
call fcn.1008bfc0
or edi, edx
mov edx, ebx
or esi, eax
xor eax, eax
shl edx, 0xe
push 0x12
mov dword [esp + 0x14], eax
mov dword [esp + 0x18], edx
pop ecx
mov eax, ebx
mov edx, ebp
call fcn.1008bfa0
mov ecx, dword [esp + 0x10]
push 0xe
or ecx, eax
mov eax, dword [esp + 0x18]
or eax, edx
mov edx, dword [esp + 0x60]
xor esi, ecx
xor edi, eax
mov eax, ebx
pop ecx
xor ebp, ebp
shl ebx, 0x12
call fcn.1008bfa0
mov ecx, dword [esp + 0x5c]
or ebp, eax
mov eax, dword [esp + 0x58]
or ebx, edx
xor esi, ebp
xor edi, ebx
not eax
not ecx
mov edx, dword [esp + 0x40]
mov ebx, dword [esp + 0x44]
and eax, dword [esp + 0x20]
and edx, dword [esp + 0x58]
and ecx, dword [esp + 0x24]
and ebx, dword [esp + 0x5c]
xor eax, edx
mov ebp, dword [esp + 0x34]
xor ecx, ebx
add esi, eax
adc edi, ecx
add esi, dword [0x10096a68]
mov ebx, dword [esp + 0x30]
push 0x1c
adc edi, dword [0x10096a6c]
add esi, dword [esp + 0xdc]
pop ecx
mov eax, ebx
adc edi, dword [esp + 0xdc]
add esi, dword [esp + 0x38]
mov edx, ebp
adc edi, dword [esp + 0x3c]
add dword [esp + 0x50], esi
mov dword [esp + 0x48], esi
mov esi, ebx
mov dword [esp + 0x4c], edi
adc dword [esp + 0x54], edi
xor edi, edi
shl esi, 4
call fcn.1008bfa0
or esi, edx
mov edx, ebp
or edi, eax
xor eax, eax
shr edx, 2
push 0x1e
mov dword [esp + 0x18], eax
mov dword [esp + 0x14], edx
pop ecx
mov eax, ebx
mov edx, ebp
call fcn.1008bfc0
mov ecx, dword [esp + 0x10]
push 0x19
or ecx, eax
mov eax, dword [esp + 0x18]
or eax, edx
mov edx, ebp
xor edi, ecx
xor esi, eax
mov eax, dword [esp + 0x34]
mov ebx, edx
pop ecx
xor ebp, ebp
shr ebx, 7
call fcn.1008bfc0
mov ecx, dword [esp + 0x2c]
or ebx, eax
mov eax, dword [esp + 0x28]
xor ecx, dword [esp + 0x34]
xor eax, dword [esp + 0x30]
or ebp, edx
mov edx, dword [esp + 0x28]
and ecx, dword [esp + 0x1c]
and eax, dword [esp + 0x18]
and edx, dword [esp + 0x30]
xor edi, ebx
mov ebx, dword [esp + 0x2c]
and ebx, dword [esp + 0x34]
xor eax, edx
xor esi, ebp
xor ecx, ebx
add edi, eax
adc esi, ecx
add edi, dword [esp + 0x48]
adc esi, dword [esp + 0x4c]
mov dword [esp + 0x38], edi
mov dword [esp + 0x3c], esi
mov esi, dword [esp + 0x78]
movzx eax, byte [esi + 0x26]
cdq
push 8
pop edi
mov ecx, edi
call fcn.1008bfc0
mov ebx, eax
mov ebp, edx
movzx eax, byte [esi + 0x27]
cdq
or ebx, eax
or ebp, edx
mov ecx, edi
mov eax, ebx
mov edx, ebp
call fcn.1008bfc0
mov ebx, eax
mov ebp, edx
movzx eax, byte [esi + 0x28]
cdq
or ebx, eax
or ebp, edx
mov ecx, edi
mov eax, ebx
mov edx, ebp
call fcn.1008bfc0
mov ebx, eax
mov ebp, edx
movzx eax, byte [esi + 0x29]
cdq
or ebx, eax
or ebp, edx
mov ecx, edi
mov eax, ebx
mov edx, ebp
call fcn.1008bfc0
mov ebx, eax
mov ebp, edx
movzx eax, byte [esi + 0x2a]
cdq
or ebx, eax
or ebp, edx
mov ecx, edi
mov eax, ebx
mov edx, ebp
call fcn.1008bfc0
mov ebx, eax
mov ebp, edx
movzx eax, byte [esi + 0x2b]
cdq
or ebx, eax
or ebp, edx
mov ecx, edi
mov eax, ebx
mov edx, ebp
call fcn.1008bfc0
mov ebx, eax
mov ebp, edx
movzx eax, byte [esi + 0x2c]
cdq
or ebx, eax
or ebp, edx
mov ecx, edi
mov eax, ebx
mov edx, ebp
call fcn.1008bfc0
mov ebp, dword [esp + 0x54]
mov ecx, eax
movzx eax, byte [esi + 0x2d]
mov ebx, dword [esp + 0x50]
mov edi, edx
cdq
or ecx, eax
or edi, edx
mov esi, ebp
push 0x17
mov dword [esp + 0xe4], ecx
mov dword [esp + 0xe8], edi
shr esi, 9
xor edi, edi
pop ecx
mov eax, ebx
mov edx, ebp
call fcn.1008bfc0
or edi, edx
mov edx, ebx
or esi, eax
xor eax, eax
shl edx, 0xe
push 0x12
mov dword [esp + 0x14], eax
mov dword [esp + 0x18], edx
pop ecx
mov eax, ebx
mov edx, ebp
call fcn.1008bfa0
mov ecx, dword [esp + 0x10]
push 0xe
or ecx, eax
mov eax, dword [esp + 0x18]
or eax, edx
mov edx, dword [esp + 0x58]
xor esi, ecx
xor edi, eax
mov eax, ebx
pop ecx
xor ebp, ebp
shl ebx, 0x12
call fcn.1008bfa0
mov ecx, dword [esp + 0x54]
or ebp, eax
mov eax, dword [esp + 0x50]
or ebx, edx
mov edx, dword [esp + 0x50]
xor edi, ebx
mov ebx, dword [esp + 0x54]
and edx, dword [esp + 0x58]
and ebx, dword [esp + 0x5c]
xor esi, ebp
not eax
and eax, dword [esp + 0x40]
mov ebp, dword [esp + 0x3c]
not ecx
and ecx, dword [esp + 0x44]
xor eax, edx
push 0x1c
mov edx, ebp
xor ecx, ebx
add esi, eax
adc edi, ecx
add esi, dword [0x10096a70]
mov ebx, dword [esp + 0x3c]
pop ecx
adc edi, dword [0x10096a74]
add esi, dword [esp + 0xe0]
mov eax, ebx
adc edi, dword [esp + 0xe4]
add esi, dword [esp + 0x20]
adc edi, dword [esp + 0x24]
add dword [esp + 0x18], esi
mov dword [esp + 0x48], esi
mov esi, ebx
mov dword [esp + 0x4c], edi
adc dword [esp + 0x1c], edi
xor edi, edi
shl esi, 4
call fcn.1008bfa0
or esi, edx
mov edx, ebp
or edi, eax
xor eax, eax
shr edx, 2
push 0x1e
mov dword [esp + 0x18], eax
mov dword [esp + 0x14], edx
pop ecx
mov eax, ebx
mov edx, ebp
call fcn.1008bfc0
mov ecx, dword [esp + 0x10]
or ecx, eax
mov eax, dword [esp + 0x14]
or eax, edx
xor edi, ecx
mov edx, ebp
push 0x19
xor esi, eax
mov eax, dword [esp + 0x3c]
mov ebx, edx
pop ecx
shr ebx, 7
xor ebp, ebp
call fcn.1008bfc0
mov ecx, dword [esp + 0x34]
or ebx, eax
mov eax, dword [esp + 0x30]
xor ecx, dword [esp + 0x3c]
xor eax, dword [esp + 0x38]
or ebp, edx
mov edx, dword [esp + 0x30]
and ecx, dword [esp + 0x2c]
and eax, dword [esp + 0x28]
and edx, dword [esp + 0x38]
xor edi, ebx
mov ebx, dword [esp + 0x34]
and ebx, dword [esp + 0x3c]
xor eax, edx
xor esi, ebp
push 8
xor ecx, ebx
add edi, eax
adc esi, ecx
add edi, dword [esp + 0x4c]
adc esi, dword [esp + 0x50]
mov dword [esp + 0x24], edi
pop edi
mov dword [esp + 0x24], esi
mov esi, dword [esp + 0x78]
mov ecx, edi
movzx eax, byte [esi + 0x2e]
cdq
call fcn.1008bfc0
mov ebx, eax
mov ebp, edx
movzx eax, byte [esi + 0x2f]
cdq
or ebx, eax
or ebp, edx
mov ecx, edi
mov eax, ebx
mov edx, ebp
call fcn.1008bfc0
mov ebx, eax
mov ebp, edx
movzx eax, byte [esi + 0x30]
cdq
or ebx, eax
or ebp, edx
mov ecx, edi
mov eax, ebx
mov edx, ebp
call fcn.1008bfc0
mov ebx, eax
mov ebp, edx
movzx eax, byte [esi + 0x31]
cdq
or ebx, eax
or ebp, edx
mov ecx, edi
mov eax, ebx
mov edx, ebp
call fcn.1008bfc0
mov ebx, eax
mov ebp, edx
movzx eax, byte [esi + 0x32]
cdq
or ebx, eax
or ebp, edx
mov ecx, edi
mov eax, ebx
mov edx, ebp
call fcn.1008bfc0
mov ebx, eax
mov ebp, edx
movzx eax, byte [esi + 0x33]
cdq
or ebx, eax
or ebp, edx
mov ecx, edi
mov eax, ebx
mov edx, ebp
call fcn.1008bfc0
mov ebx, eax
mov ebp, edx
movzx eax, byte [esi + 0x34]
cdq
or ebx, eax
or ebp, edx
mov ecx, edi
mov eax, ebx
mov edx, ebp
call fcn.1008bfc0
mov ecx, eax
mov ebp, dword [esp + 0x1c]
movzx eax, byte [esi + 0x35]
mov ebx, dword [esp + 0x18]
mov edi, edx
cdq
or ecx, eax
or edi, edx
push 0x17
mov dword [esp + 0xec], ecx
mov esi, ebp
mov dword [esp + 0xf0], edi
pop ecx
mov eax, ebx
mov edx, ebp
xor edi, edi
shr esi, 9
call fcn.1008bfc0
or edi, edx
mov edx, ebx
or esi, eax
xor eax, eax
shl edx, 0xe
push 0x12
mov dword [esp + 0x14], eax
mov dword [esp + 0x18], edx
pop ecx
mov eax, ebx
mov edx, ebp
call fcn.1008bfa0
mov ecx, dword [esp + 0x10]
push 0xe
or ecx, eax
mov eax, dword [esp + 0x18]
or eax, edx
mov edx, dword [esp + 0x20]
xor esi, ecx
xor edi, eax
mov eax, ebx
pop ecx
xor ebp, ebp
shl ebx, 0x12
call fcn.1008bfa0
mov ecx, dword [esp + 0x1c]
or ebp, eax
mov eax, dword [esp + 0x18]
or ebx, edx
mov edx, dword [esp + 0x50]
xor edi, ebx
mov ebx, dword [esp + 0x54]
and edx, dword [esp + 0x18]
and ebx, dword [esp + 0x1c]
xor esi, ebp
not eax
and eax, dword [esp + 0x58]
not ecx
and ecx, dword [esp + 0x5c]
xor eax, edx
xor ecx, ebx
add esi, eax
adc edi, ecx
add esi, dword [0x10096a78]
adc edi, dword [0x10096a7c]
add esi, dword [esp + 0xe8]
adc edi, dword [esp + 0xec]
add esi, dword [esp + 0x40]
mov ebx, dword [esp + 0x20]
mov ebp, dword [esp + 0x24]
adc edi, dword [esp + 0x44]
add dword [esp + 0x28], esi
mov dword [esp + 0x48], esi
push 0x1c
mov esi, ebx
mov dword [esp + 0x50], edi
adc dword [esp + 0x30], edi
pop ecx
mov eax, ebx
mov edx, ebp
xor edi, edi
shl esi, 4
call fcn.1008bfa0
or esi, edx
mov edx, ebp
or edi, eax
xor eax, eax
shr edx, 2
push 0x1e
mov dword [esp + 0x18], eax
mov dword [esp + 0x14], edx
pop ecx
mov eax, ebx
mov edx, ebp
call fcn.1008bfc0
mov ecx, dword [esp + 0x10]
push 0x19
or ecx, eax
mov eax, dword [esp + 0x18]
or eax, edx
mov edx, ebp
xor edi, ecx
xor esi, eax
mov eax, dword [esp + 0x24]
mov ebx, edx
pop ecx
xor ebp, ebp
shr ebx, 7
call fcn.1008bfc0
mov ecx, dword [esp + 0x3c]
or ebx, eax
mov eax, dword [esp + 0x38]
xor ecx, dword [esp + 0x24]
xor eax, dword [esp + 0x20]
or ebp, edx
mov edx, dword [esp + 0x38]
and ecx, dword [esp + 0x34]
and eax, dword [esp + 0x30]
and edx, dword [esp + 0x20]
xor edi, ebx
mov ebx, dword [esp + 0x3c]
and ebx, dword [esp + 0x24]
xor eax, edx
xor esi, ebp
push 8
xor ecx, ebx
add edi, eax
adc esi, ecx
add edi, dword [esp + 0x4c]
adc esi, dword [esp + 0x50]
mov dword [esp + 0x44], edi
pop edi
mov dword [esp + 0x44], esi
mov esi, dword [esp + 0x78]
mov ecx, edi
movzx eax, byte [esi + 0x36]
cdq
call fcn.1008bfc0
mov ebx, eax
mov ebp, edx
movzx eax, byte [esi + 0x37]
cdq
or ebx, eax
or ebp, edx
mov ecx, edi
mov eax, ebx
mov edx, ebp
call fcn.1008bfc0
mov ebx, eax
mov ebp, edx
movzx eax, byte [esi + 0x38]
cdq
or ebx, eax
or ebp, edx
mov ecx, edi
mov eax, ebx
mov edx, ebp
call fcn.1008bfc0
mov ebx, eax
mov ebp, edx
movzx eax, byte [esi + 0x39]
cdq
or ebx, eax
or ebp, edx
mov ecx, edi
mov eax, ebx
mov edx, ebp
call fcn.1008bfc0
mov ebx, eax
mov ebp, edx
movzx eax, byte [esi + 0x3a]
cdq
or ebx, eax
or ebp, edx
mov ecx, edi
mov eax, ebx
mov edx, ebp
call fcn.1008bfc0
mov ebx, eax
mov ebp, edx
movzx eax, byte [esi + 0x3b]
cdq
or ebx, eax
or ebp, edx
mov ecx, edi
mov eax, ebx
mov edx, ebp
call fcn.1008bfc0
mov ebx, eax
mov ebp, edx
movzx eax, byte [esi + 0x3c]
cdq
or ebx, eax
or ebp, edx
mov ecx, edi
mov eax, ebx
mov edx, ebp
call fcn.1008bfc0
mov ecx, eax
mov ebp, dword [esp + 0x2c]
movzx eax, byte [esi + 0x3d]
mov ebx, dword [esp + 0x28]
mov edi, edx
cdq
or ecx, eax
or edi, edx
push 0x17
mov dword [esp + 0xf4], ecx
mov esi, ebp
mov dword [esp + 0xf8], edi
pop ecx
mov eax, ebx
mov edx, ebp
xor edi, edi
shr esi, 9
call fcn.1008bfc0
or edi, edx
mov edx, ebx
or esi, eax
xor eax, eax
shl edx, 0xe
push 0x12
mov dword [esp + 0x14], eax
mov dword [esp + 0x18], edx
pop ecx
mov eax, ebx
mov edx, ebp
call fcn.1008bfa0
mov ecx, dword [esp + 0x10]
push 0xe
or ecx, eax
mov eax, dword [esp + 0x18]
or eax, edx
mov edx, dword [esp + 0x30]
xor esi, ecx
xor edi, eax
mov eax, ebx
pop ecx
xor ebp, ebp
shl ebx, 0x12
call fcn.1008bfa0
mov ecx, dword [esp + 0x2c]
or ebp, eax
mov eax, dword [esp + 0x28]
or ebx, edx
mov edx, dword [esp + 0x18]
xor edi, ebx
mov ebx, dword [esp + 0x1c]
and edx, dword [esp + 0x28]
and ebx, dword [esp + 0x2c]
xor esi, ebp
not eax
and eax, dword [esp + 0x50]
mov ebp, dword [esp + 0x44]
not ecx
and ecx, dword [esp + 0x54]
xor eax, edx
push 0x1c
mov edx, ebp
xor ecx, ebx
add esi, eax
adc edi, ecx
add esi, dword [0x10096a80]
mov ebx, dword [esp + 0x44]
pop ecx
adc edi, dword [0x10096a84]
add esi, dword [esp + 0xf0]
mov eax, ebx
adc edi, dword [esp + 0xf4]
add esi, dword [esp + 0x58]
adc edi, dword [esp + 0x5c]
add dword [esp + 0x30], esi
mov dword [esp + 0x48], esi
mov esi, ebx
mov dword [esp + 0x4c], edi
adc dword [esp + 0x34], edi
xor edi, edi
shl esi, 4
call fcn.1008bfa0
or esi, edx
mov edx, ebp
or edi, eax
xor eax, eax
shr edx, 2
push 0x1e
mov dword [esp + 0x18], eax
mov dword [esp + 0x14], edx
pop ecx
mov eax, ebx
mov edx, ebp
call fcn.1008bfc0
mov ecx, dword [esp + 0x10]
push 0x19
or ecx, eax
mov eax, dword [esp + 0x18]
or eax, edx
mov edx, ebp
xor edi, ecx
xor esi, eax
mov eax, dword [esp + 0x44]
mov ebx, edx
pop ecx
xor ebp, ebp
shr ebx, 7
call fcn.1008bfc0
or ebx, eax
or ebp, edx
xor edi, ebx
xor esi, ebp
mov eax, dword [esp + 0x20]
mov ecx, dword [esp + 0x24]
xor eax, dword [esp + 0x40]
xor ecx, dword [esp + 0x44]
mov edx, dword [esp + 0x20]
mov ebx, dword [esp + 0x24]
and eax, dword [esp + 0x38]
and edx, dword [esp + 0x40]
and ecx, dword [esp + 0x3c]
and ebx, dword [esp + 0x44]
xor eax, edx
push 8
xor ecx, ebx
add edi, eax
adc esi, ecx
add edi, dword [esp + 0x4c]
adc esi, dword [esp + 0x50]
mov dword [esp + 0x5c], edi
pop edi
mov dword [esp + 0x5c], esi
mov esi, dword [esp + 0x78]
mov ecx, edi
movzx eax, byte [esi + 0x3e]
cdq
call fcn.1008bfc0
mov ebx, eax
mov ebp, edx
movzx eax, byte [esi + 0x3f]
cdq
or ebx, eax
or ebp, edx
mov ecx, edi
mov eax, ebx
mov edx, ebp
call fcn.1008bfc0
mov ebx, eax
mov ebp, edx
movzx eax, byte [esi + 0x40]
cdq
or ebx, eax
or ebp, edx
mov ecx, edi
mov eax, ebx
mov edx, ebp
call fcn.1008bfc0
mov ebx, eax
mov ebp, edx
movzx eax, byte [esi + 0x41]
cdq
or ebx, eax
or ebp, edx
mov ecx, edi
mov eax, ebx
mov edx, ebp
call fcn.1008bfc0
mov ebx, eax
mov ebp, edx
movzx eax, byte [esi + 0x42]
cdq
or ebx, eax
or ebp, edx
mov ecx, edi
mov eax, ebx
mov edx, ebp
call fcn.1008bfc0
mov ebx, eax
mov ebp, edx
movzx eax, byte [esi + 0x43]
cdq
or ebx, eax
or ebp, edx
mov ecx, edi
mov eax, ebx
mov edx, ebp
call fcn.1008bfc0
mov ebx, eax
mov ebp, edx
movzx eax, byte [esi + 0x44]
cdq
or ebx, eax
or ebp, edx
mov ecx, edi
mov eax, ebx
mov edx, ebp
call fcn.1008bfc0
mov ecx, eax
mov ebp, dword [esp + 0x34]
movzx eax, byte [esi + 0x45]
mov ebx, dword [esp + 0x30]
mov edi, edx
cdq
or ecx, eax
or edi, edx
push 0x17
mov dword [esp + 0xfc], ecx
mov esi, ebp
mov dword [esp + 0x100], edi
pop ecx
mov eax, ebx
mov edx, ebp
xor edi, edi
shr esi, 9
call fcn.1008bfc0
or edi, edx
mov edx, ebx
or esi, eax
xor eax, eax
shl edx, 0xe
push 0x12
mov dword [esp + 0x14], eax
mov dword [esp + 0x18], edx
pop ecx
mov eax, ebx
mov edx, ebp
call fcn.1008bfa0
mov ecx, dword [esp + 0x10]
push 0xe
or ecx, eax
mov eax, dword [esp + 0x18]
or eax, edx
mov edx, dword [esp + 0x38]
xor esi, ecx
xor edi, eax
mov eax, ebx
pop ecx
xor ebp, ebp
shl ebx, 0x12
call fcn.1008bfa0
mov ecx, dword [esp + 0x34]
or ebp, eax
mov eax, dword [esp + 0x30]
or ebx, edx
mov edx, dword [esp + 0x28]
xor edi, ebx
mov ebx, dword [esp + 0x2c]
and edx, dword [esp + 0x30]
and ebx, dword [esp + 0x34]
xor esi, ebp
not eax
and eax, dword [esp + 0x18]
mov ebp, dword [esp + 0x5c]
not ecx
and ecx, dword [esp + 0x1c]
xor eax, edx
xor ecx, ebx
add esi, eax
adc edi, ecx
add esi, dword [0x10096a88]
mov eax, dword [esp + 0x40]
mov ebx, dword [esp + 0x58]
adc edi, dword [0x10096a8c]
add esi, dword [esp + 0xf8]
adc edi, dword [esp + 0xfc]
add esi, dword [esp + 0x50]
adc edi, dword [esp + 0x54]
add dword [esp + 0x38], esi
mov dword [esp + 0x48], esi
mov dword [esp + 0x4c], edi
adc dword [esp + 0x3c], edi
xor eax, ebx
mov dword [esp + 0x98], eax
mov eax, dword [esp + 0x44]
xor eax, ebp
push 0x1c
mov dword [esp + 0xa0], eax
mov eax, dword [esp + 0x44]
and eax, ebx
mov esi, ebx
mov dword [esp + 0x94], eax
mov eax, dword [esp + 0x48]
and eax, ebp
pop ecx
mov dword [esp + 0x94], eax
mov eax, ebx
mov edx, ebp
xor edi, edi
shl esi, 4
call fcn.1008bfa0
or esi, edx
mov edx, ebp
or edi, eax
xor eax, eax
shr edx, 2
push 0x1e
mov dword [esp + 0x18], eax
mov dword [esp + 0x14], edx
pop ecx
mov eax, ebx
mov edx, ebp
call fcn.1008bfc0
mov ecx, dword [esp + 0x10]
push 0x19
or ecx, eax
mov eax, dword [esp + 0x18]
or eax, edx
mov edx, ebp
xor edi, ecx
xor esi, eax
mov eax, dword [esp + 0x5c]
mov ebx, edx
pop ecx
xor ebp, ebp
shr ebx, 7
call fcn.1008bfc0
mov ecx, dword [esp + 0x9c]
or ebx, eax
mov eax, dword [esp + 0x98]
and ecx, dword [esp + 0x24]
and eax, dword [esp + 0x20]
or ebp, edx
xor ecx, dword [esp + 0x94]
xor edi, ebx
xor eax, dword [esp + 0x90]
xor esi, ebp
push 8
add edi, eax
adc esi, ecx
add edi, dword [esp + 0x4c]
adc esi, dword [esp + 0x50]
mov dword [esp + 0x54], edi
pop edi
mov dword [esp + 0x54], esi
mov esi, dword [esp + 0x78]
mov ecx, edi
movzx eax, byte [esi + 0x46]
cdq
call fcn.1008bfc0
mov ebx, eax
mov ebp, edx
movzx eax, byte [esi + 0x47]
cdq
or ebx, eax
or ebp, edx
mov ecx, edi
mov eax, ebx
mov edx, ebp
call fcn.1008bfc0
mov ebx, eax
mov ebp, edx
movzx eax, byte [esi + 0x48]
cdq
or ebx, eax
or ebp, edx
mov ecx, edi
mov eax, ebx
mov edx, ebp
call fcn.1008bfc0
mov ebx, eax
mov ebp, edx
movzx eax, byte [esi + 0x49]
cdq
or ebx, eax
or ebp, edx
mov ecx, edi
mov eax, ebx
mov edx, ebp
call fcn.1008bfc0
mov ebx, eax
mov ebp, edx
movzx eax, byte [esi + 0x4a]
cdq
or ebx, eax
or ebp, edx
mov ecx, edi
mov eax, ebx
mov edx, ebp
call fcn.1008bfc0
mov ebx, eax
mov ebp, edx
movzx eax, byte [esi + 0x4b]
cdq
or ebx, eax
or ebp, edx
mov ecx, edi
mov eax, ebx
mov edx, ebp
call fcn.1008bfc0
mov ebx, eax
mov ebp, edx
movzx eax, byte [esi + 0x4c]
cdq
or ebx, eax
or ebp, edx
mov ecx, edi
mov eax, ebx
mov edx, ebp
call fcn.1008bfc0
mov ecx, eax
mov ebp, dword [esp + 0x3c]
movzx eax, byte [esi + 0x4d]
mov ebx, dword [esp + 0x38]
mov edi, edx
cdq
or ecx, eax
or edi, edx
push 0x17
mov dword [esp + 0x104], ecx
mov esi, ebp
mov dword [esp + 0x108], edi
pop ecx
mov eax, ebx
mov edx, ebp
xor edi, edi
shr esi, 9
call fcn.1008bfc0
or edi, edx
mov edx, ebx
or esi, eax
xor eax, eax
shl edx, 0xe
push 0x12
mov dword [esp + 0x14], eax
mov dword [esp + 0x18], edx
pop ecx
mov eax, ebx
mov edx, ebp
call fcn.1008bfa0
mov ecx, dword [esp + 0x10]
or ecx, eax
mov eax, dword [esp + 0x14]
or eax, edx
xor esi, ecx
xor edi, eax
mov eax, ebx
mov edx, dword [esp + 0x3c]
push 0xe
pop ecx
xor ebp, ebp
shl ebx, 0x12
call fcn.1008bfa0
mov ecx, dword [esp + 0x3c]
or ebp, eax
mov eax, dword [esp + 0x38]
or ebx, edx
mov edx, dword [esp + 0x30]
xor edi, ebx
mov ebx, dword [esp + 0x34]
and edx, dword [esp + 0x38]
and ebx, dword [esp + 0x3c]
xor esi, ebp
not eax
and eax, dword [esp + 0x28]
mov ebp, dword [esp + 0x54]
not ecx
and ecx, dword [esp + 0x2c]
xor eax, edx
push 0x1c
mov edx, ebp
xor ecx, ebx
add esi, eax
adc edi, ecx
add esi, dword [0x10096a90]
mov ebx, dword [esp + 0x54]
pop ecx
adc edi, dword [0x10096a94]
add esi, dword [esp + 0x100]
mov eax, ebx
adc edi, dword [esp + 0x104]
add esi, dword [esp + 0x18]
adc edi, dword [esp + 0x1c]
add dword [esp + 0x20], esi
mov dword [esp + 0x48], esi
mov esi, ebx
mov dword [esp + 0x4c], edi
adc dword [esp + 0x24], edi
xor edi, edi
shl esi, 4
call fcn.1008bfa0
or esi, edx
mov edx, ebp
or edi, eax
xor eax, eax
shr edx, 2
push 0x1e
mov dword [esp + 0x18], eax
mov dword [esp + 0x14], edx
pop ecx
mov eax, ebx
mov edx, ebp
call fcn.1008bfc0
mov ecx, dword [esp + 0x10]
push 0x19
or ecx, eax
mov eax, dword [esp + 0x18]
or eax, edx
mov edx, ebp
xor edi, ecx
xor esi, eax
mov eax, dword [esp + 0x54]
mov ebx, edx
pop ecx
xor ebp, ebp
shr ebx, 7
call fcn.1008bfc0
mov ecx, dword [esp + 0x9c]
or ebx, eax
mov eax, dword [esp + 0x98]
and ecx, dword [esp + 0x54]
and eax, dword [esp + 0x50]
or ebp, edx
xor ecx, dword [esp + 0x94]
xor edi, ebx
xor eax, dword [esp + 0x90]
xor esi, ebp
add edi, eax
adc esi, ecx
add edi, dword [esp + 0x48]
push 8
adc esi, dword [esp + 0x50]
mov dword [esp + 0x1c], edi
pop edi
mov dword [esp + 0x1c], esi
mov esi, dword [esp + 0x78]
mov ecx, edi
movzx eax, byte [esi + 0x4e]
cdq
call fcn.1008bfc0
mov ebx, eax
mov ebp, edx
movzx eax, byte [esi + 0x4f]
cdq
or ebx, eax
or ebp, edx
mov ecx, edi
mov eax, ebx
mov edx, ebp
call fcn.1008bfc0
mov ebx, eax
mov ebp, edx
movzx eax, byte [esi + 0x50]
cdq
or ebx, eax
or ebp, edx
mov ecx, edi
mov eax, ebx
mov edx, ebp
call fcn.1008bfc0
mov ebx, eax
mov ebp, edx
movzx eax, byte [esi + 0x51]
cdq
or ebx, eax
or ebp, edx
mov ecx, edi
mov eax, ebx
mov edx, ebp
call fcn.1008bfc0
mov ebx, eax
mov ebp, edx
movzx eax, byte [esi + 0x52]
cdq
or ebx, eax
or ebp, edx
mov ecx, edi
mov eax, ebx
mov edx, ebp
call fcn.1008bfc0
mov ebx, eax
mov ebp, edx
movzx eax, byte [esi + 0x53]
cdq
or ebx, eax
or ebp, edx
mov ecx, edi
mov eax, ebx
mov edx, ebp
call fcn.1008bfc0
mov ebx, eax
mov ebp, edx
movzx eax, byte [esi + 0x54]
cdq
or ebx, eax
or ebp, edx
mov ecx, edi
mov eax, ebx
mov edx, ebp
call fcn.1008bfc0
mov ecx, eax
mov ebp, dword [esp + 0x24]
movzx eax, byte [esi + 0x55]
mov edi, edx
cdq
or ecx, eax
or edi, edx
mov dword [esp + 0x108], ecx
mov dword [esp + 0x10c], edi
mov ebx, dword [esp + 0x20]
push 0x17
mov esi, ebp
pop ecx
mov eax, ebx
mov edx, ebp
shr esi, 9
xor edi, edi
call fcn.1008bfc0
or edi, edx
mov edx, ebx
or esi, eax
xor eax, eax
shl edx, 0xe
push 0x12
mov dword [esp + 0x14], eax
mov dword [esp + 0x18], edx
pop ecx
mov eax, ebx
mov edx, ebp
call fcn.1008bfa0
mov ecx, dword [esp + 0x10]
push 0xe
or ecx, eax
mov eax, dword [esp + 0x18]
or eax, edx
mov edx, dword [esp + 0x28]
xor esi, ecx
xor edi, eax
mov eax, ebx
pop ecx
xor ebp, ebp
shl ebx, 0x12
call fcn.1008bfa0
mov ecx, dword [esp + 0x24]
or ebp, eax
mov eax, dword [esp + 0x20]
or ebx, edx
mov edx, dword [esp + 0x38]
xor edi, ebx
mov ebx, dword [esp + 0x3c]
and edx, dword [esp + 0x20]
and ebx, dword [esp + 0x24]
xor esi, ebp
not eax
and eax, dword [esp + 0x30]
mov ebp, dword [esp + 0x1c]
not ecx
and ecx, dword [esp + 0x34]
xor eax, edx
push 0x1c
mov edx, ebp
xor ecx, ebx
add esi, eax
adc edi, ecx
add esi, dword [0x10096a98]
mov ebx, dword [esp + 0x1c]
pop ecx
adc edi, dword [0x10096a9c]
add esi, dword [esp + 0x108]
mov eax, ebx
adc edi, dword [esp + 0x10c]
add esi, dword [esp + 0x28]
adc edi, dword [esp + 0x2c]
add dword [esp + 0x40], esi
mov dword [esp + 0x48], esi
mov esi, ebx
mov dword [esp + 0x4c], edi
adc dword [esp + 0x44], edi
xor edi, edi
shl esi, 4
call fcn.1008bfa0
or esi, edx
mov edx, ebp
or edi, eax
push 0x1e
shr edx, 2
xor eax, eax
pop ecx
mov dword [esp + 0x14], eax
mov eax, ebx
mov dword [esp + 0x10], edx
mov edx, ebp
call fcn.1008bfc0
mov ecx, dword [esp + 0x10]
push 0x19
or ecx, eax
mov eax, dword [esp + 0x18]
or eax, edx
mov edx, ebp
xor edi, ecx
xor esi, eax
mov eax, dword [esp + 0x1c]
mov ebx, edx
pop ecx
xor ebp, ebp
shr ebx, 7
call fcn.1008bfc0
mov ecx, dword [esp + 0x1c]
or ebx, eax
mov eax, dword [esp + 0x18]
xor ecx, dword [esp + 0x5c]
xor eax, dword [esp + 0x58]
or ebp, edx
mov edx, dword [esp + 0x18]
and ecx, dword [esp + 0x54]
and eax, dword [esp + 0x50]
and edx, dword [esp + 0x58]
xor edi, ebx
mov ebx, dword [esp + 0x1c]
and ebx, dword [esp + 0x5c]
xor eax, edx
xor esi, ebp
push 8
xor ecx, ebx
add edi, eax
adc esi, ecx
add edi, dword [esp + 0x4c]
adc esi, dword [esp + 0x50]
mov dword [esp + 0x2c], edi
pop edi
mov dword [esp + 0x2c], esi
mov esi, dword [esp + 0x78]
mov ecx, edi
movzx eax, byte [esi + 0x56]
cdq
call fcn.1008bfc0
mov ebx, eax
mov ebp, edx
movzx eax, byte [esi + 0x57]
cdq
or ebx, eax
or ebp, edx
mov ecx, edi
mov eax, ebx
mov edx, ebp
call fcn.1008bfc0
mov ebx, eax
mov ebp, edx
movzx eax, byte [esi + 0x58]
cdq
or ebx, eax
or ebp, edx
mov ecx, edi
mov eax, ebx
mov edx, ebp
call fcn.1008bfc0
mov ebx, eax
mov ebp, edx
movzx eax, byte [esi + 0x59]
cdq
or ebx, eax
or ebp, edx
mov ecx, edi
mov eax, ebx
mov edx, ebp
call fcn.1008bfc0
mov ebx, eax
mov ebp, edx
movzx eax, byte [esi + 0x5a]
cdq
or ebx, eax
or ebp, edx
mov ecx, edi
mov eax, ebx
mov edx, ebp
call fcn.1008bfc0
mov ebx, eax
mov ebp, edx
movzx eax, byte [esi + 0x5b]
cdq
or ebx, eax
or ebp, edx
mov ecx, edi
mov eax, ebx
mov edx, ebp
call fcn.1008bfc0
mov ebx, eax
mov ebp, edx
movzx eax, byte [esi + 0x5c]
cdq
or ebx, eax
or ebp, edx
mov ecx, edi
mov eax, ebx
mov edx, ebp
call fcn.1008bfc0
mov ecx, eax
mov ebp, dword [esp + 0x44]
movzx eax, byte [esi + 0x5d]
mov ebx, dword [esp + 0x40]
mov edi, edx
cdq
or ecx, eax
or edi, edx
push 0x17
mov dword [esp + 0x114], ecx
mov esi, ebp
mov dword [esp + 0x118], edi
pop ecx
mov eax, ebx
mov edx, ebp
xor edi, edi
shr esi, 9
call fcn.1008bfc0
or edi, edx
mov edx, ebx
or esi, eax
xor eax, eax
shl edx, 0xe
push 0x12
mov dword [esp + 0x14], eax
mov dword [esp + 0x18], edx
pop ecx
mov eax, ebx
mov edx, ebp
call fcn.1008bfa0
mov ecx, dword [esp + 0x10]
push 0xe
or ecx, eax
mov eax, dword [esp + 0x18]
or eax, edx
mov edx, dword [esp + 0x48]
xor esi, ecx
xor edi, eax
mov eax, ebx
pop ecx
xor ebp, ebp
shl ebx, 0x12
call fcn.1008bfa0
mov ecx, dword [esp + 0x44]
or ebp, eax
mov eax, dword [esp + 0x40]
or ebx, edx
mov edx, dword [esp + 0x20]
xor esi, ebp
not eax
and eax, dword [esp + 0x38]
xor edi, ebx
mov ebx, dword [esp + 0x24]
not ecx
and ecx, dword [esp + 0x3c]
and edx, dword [esp + 0x40]
and ebx, dword [esp + 0x44]
xor eax, edx
mov ebp, dword [esp + 0x2c]
push 0x1c
xor ecx, ebx
add esi, eax
adc edi, ecx
add esi, dword [0x10096aa0]
mov ebx, dword [esp + 0x2c]
pop ecx
adc edi, dword [0x10096aa4]
add esi, dword [esp + 0x110]
mov eax, ebx
mov edx, ebp
adc edi, dword [esp + 0x114]
add esi, dword [esp + 0x30]
adc edi, dword [esp + 0x34]
add dword [esp + 0x58], esi
mov dword [esp + 0x48], esi
mov esi, ebx
mov dword [esp + 0x4c], edi
adc dword [esp + 0x5c], edi
xor edi, edi
shl esi, 4
call fcn.1008bfa0
or esi, edx
mov edx, ebp
or edi, eax
xor eax, eax
shr edx, 2
push 0x1e
mov dword [esp + 0x18], eax
mov dword [esp + 0x14], edx
pop ecx
mov eax, ebx
mov edx, ebp
call fcn.1008bfc0
mov ecx, dword [esp + 0x10]
push 0x19
or ecx, eax
mov eax, dword [esp + 0x18]
or eax, edx
mov edx, ebp
xor edi, ecx
xor esi, eax
mov eax, dword [esp + 0x2c]
mov ebx, edx
pop ecx
xor ebp, ebp
shr ebx, 7
call fcn.1008bfc0
mov ecx, dword [esp + 0x1c]
or ebx, eax
mov eax, dword [esp + 0x18]
xor ecx, dword [esp + 0x2c]
xor eax, dword [esp + 0x28]
or ebp, edx
mov edx, dword [esp + 0x18]
and ecx, dword [esp + 0x54]
and eax, dword [esp + 0x50]
and edx, dword [esp + 0x28]
xor edi, ebx
mov ebx, dword [esp + 0x1c]
and ebx, dword [esp + 0x2c]
xor eax, edx
xor esi, ebp
push 8
xor ecx, ebx
add edi, eax
adc esi, ecx
add edi, dword [esp + 0x4c]
adc esi, dword [esp + 0x50]
mov dword [esp + 0x34], edi
pop edi
mov dword [esp + 0x34], esi
mov esi, dword [esp + 0x78]
mov ecx, edi
movzx eax, byte [esi + 0x5e]
cdq
call fcn.1008bfc0
mov ebx, eax
movzx eax, byte [esi + 0x5f]
mov ebp, edx
mov ecx, edi
cdq
or ebx, eax
or ebp, edx
mov eax, ebx
mov edx, ebp
call fcn.1008bfc0
mov ebx, eax
mov ebp, edx
movzx eax, byte [esi + 0x60]
cdq
or ebx, eax
or ebp, edx
mov ecx, edi
mov eax, ebx
mov edx, ebp
call fcn.1008bfc0
mov ebx, eax
mov ebp, edx
movzx eax, byte [esi + 0x61]
cdq
or ebx, eax
or ebp, edx
mov ecx, edi
mov eax, ebx
mov edx, ebp
call fcn.1008bfc0
mov ebx, eax
mov ebp, edx
movzx eax, byte [esi + 0x62]
cdq
or ebx, eax
or ebp, edx
mov ecx, edi
mov eax, ebx
mov edx, ebp
call fcn.1008bfc0
mov ebx, eax
mov ebp, edx
movzx eax, byte [esi + 0x63]
cdq
or ebx, eax
or ebp, edx
mov ecx, edi
mov eax, ebx
mov edx, ebp
call fcn.1008bfc0
mov ebx, eax
mov ebp, edx
movzx eax, byte [esi + 0x64]
cdq
or ebx, eax
or ebp, edx
mov ecx, edi
mov eax, ebx
mov edx, ebp
call fcn.1008bfc0
mov ecx, eax
mov ebp, dword [esp + 0x5c]
movzx eax, byte [esi + 0x65]
mov ebx, dword [esp + 0x58]
mov edi, edx
cdq
or ecx, eax
or edi, edx
push 0x17
mov dword [esp + 0x11c], ecx
mov esi, ebp
mov dword [esp + 0x120], edi
pop ecx
mov eax, ebx
mov edx, ebp
xor edi, edi
shr esi, 9
call fcn.1008bfc0
or esi, eax
or edi, edx
mov edx, ebx
xor eax, eax
shl edx, 0xe
push 0x12
mov dword [esp + 0x14], eax
mov dword [esp + 0x18], edx
pop ecx
mov eax, ebx
mov edx, ebp
call fcn.1008bfa0
mov ecx, dword [esp + 0x10]
push 0xe
or ecx, eax
mov eax, dword [esp + 0x18]
or eax, edx
mov edx, dword [esp + 0x60]
xor esi, ecx
xor edi, eax
mov eax, ebx
pop ecx
xor ebp, ebp
shl ebx, 0x12
call fcn.1008bfa0
mov ecx, dword [esp + 0x5c]
or ebp, eax
mov eax, dword [esp + 0x58]
or ebx, edx
mov edx, dword [esp + 0x40]
xor edi, ebx
mov ebx, dword [esp + 0x44]
and edx, dword [esp + 0x58]
and ebx, dword [esp + 0x5c]
xor esi, ebp
not eax
and eax, dword [esp + 0x20]
mov ebp, dword [esp + 0x34]
not ecx
and ecx, dword [esp + 0x24]
xor eax, edx
push 0x1c
mov edx, ebp
xor ecx, ebx
add esi, eax
adc edi, ecx
add esi, dword [0x10096aa8]
mov ebx, dword [esp + 0x34]
pop ecx
adc edi, dword [0x10096aac]
add esi, dword [esp + 0x118]
mov eax, ebx
adc edi, dword [esp + 0x11c]
add esi, dword [esp + 0x38]
adc edi, dword [esp + 0x3c]
add dword [esp + 0x50], esi
mov dword [esp + 0x48], esi
mov esi, ebx
mov dword [esp + 0x4c], edi
adc dword [esp + 0x54], edi
xor edi, edi
shl esi, 4
call fcn.1008bfa0
or esi, edx
mov edx, ebp
or edi, eax
xor eax, eax
shr edx, 2
push 0x1e
mov dword [esp + 0x18], eax
mov dword [esp + 0x14], edx
pop ecx
mov eax, ebx
mov edx, ebp
call fcn.1008bfc0
mov ecx, dword [esp + 0x10]
or ecx, eax
mov eax, dword [esp + 0x14]
or eax, edx
mov edx, ebp
mov ebx, edx
xor edi, ecx
xor esi, eax
shr ebx, 7
xor ebp, ebp
mov eax, dword [esp + 0x30]
push 0x19
pop ecx
call fcn.1008bfc0
mov ecx, dword [esp + 0x2c]
or ebx, eax
mov eax, dword [esp + 0x28]
xor ecx, dword [esp + 0x34]
xor eax, dword [esp + 0x30]
or ebp, edx
mov edx, dword [esp + 0x28]
and ecx, dword [esp + 0x1c]
and eax, dword [esp + 0x18]
and edx, dword [esp + 0x30]
xor edi, ebx
mov ebx, dword [esp + 0x2c]
and ebx, dword [esp + 0x34]
xor eax, edx
xor esi, ebp
push 8
xor ecx, ebx
add edi, eax
adc esi, ecx
add edi, dword [esp + 0x4c]
adc esi, dword [esp + 0x50]
mov dword [esp + 0x3c], edi
pop edi
mov dword [esp + 0x3c], esi
mov esi, dword [esp + 0x78]
mov ecx, edi
movzx eax, byte [esi + 0x66]
cdq
call fcn.1008bfc0
mov ebx, eax
mov ebp, edx
movzx eax, byte [esi + 0x67]
cdq
or ebx, eax
or ebp, edx
mov ecx, edi
mov eax, ebx
mov edx, ebp
call fcn.1008bfc0
mov ebx, eax
mov ebp, edx
movzx eax, byte [esi + 0x68]
cdq
or ebx, eax
or ebp, edx
mov ecx, edi
mov eax, ebx
mov edx, ebp
call fcn.1008bfc0
mov ebx, eax
mov ebp, edx
movzx eax, byte [esi + 0x69]
cdq
or ebx, eax
or ebp, edx
mov ecx, edi
mov eax, ebx
mov edx, ebp
call fcn.1008bfc0
mov ebx, eax
mov ebp, edx
movzx eax, byte [esi + 0x6a]
cdq
or ebx, eax
or ebp, edx
mov ecx, edi
mov eax, ebx
mov edx, ebp
call fcn.1008bfc0
mov ebx, eax
mov ebp, edx
movzx eax, byte [esi + 0x6b]
cdq
or ebx, eax
or ebp, edx
mov ecx, edi
mov eax, ebx
mov edx, ebp
call fcn.1008bfc0
mov ebx, eax
mov ebp, edx
movzx eax, byte [esi + 0x6c]
cdq
or ebx, eax
or ebp, edx
mov ecx, edi
mov eax, ebx
mov edx, ebp
call fcn.1008bfc0
mov ecx, eax
mov ebp, dword [esp + 0x54]
movzx eax, byte [esi + 0x6d]
mov ebx, dword [esp + 0x50]
mov edi, edx
cdq
or ecx, eax
or edi, edx
push 0x17
mov dword [esp + 0x124], ecx
mov esi, ebp
mov dword [esp + 0x128], edi
pop ecx
mov eax, ebx
mov edx, ebp
xor edi, edi
shr esi, 9
call fcn.1008bfc0
or edi, edx
mov edx, ebx
or esi, eax
xor eax, eax
shl edx, 0xe
push 0x12
mov dword [esp + 0x14], eax
mov dword [esp + 0x18], edx
pop ecx
mov eax, ebx
mov edx, ebp
call fcn.1008bfa0
mov ecx, dword [esp + 0x10]
push 0xe
or ecx, eax
mov eax, dword [esp + 0x18]
or eax, edx
mov edx, dword [esp + 0x58]
xor esi, ecx
xor edi, eax
mov eax, ebx
pop ecx
xor ebp, ebp
shl ebx, 0x12
call fcn.1008bfa0
mov ecx, dword [esp + 0x54]
or ebp, eax
mov eax, dword [esp + 0x50]
or ebx, edx
mov edx, dword [esp + 0x50]
xor edi, ebx
mov ebx, dword [esp + 0x54]
and edx, dword [esp + 0x58]
and ebx, dword [esp + 0x5c]
xor esi, ebp
not eax
and eax, dword [esp + 0x40]
not ecx
and ecx, dword [esp + 0x44]
xor eax, edx
xor ecx, ebx
add esi, eax
adc edi, ecx
add esi, dword [0x10096ab0]
adc edi, dword [0x10096ab4]
add esi, dword [esp + 0x120]
adc edi, dword [esp + 0x124]
add esi, dword [esp + 0x20]
adc edi, dword [esp + 0x24]
mov dword [esp + 0x48], esi
mov dword [esp + 0x4c], edi
add dword [esp + 0x18], esi
mov ebx, dword [esp + 0x38]
mov ebp, dword [esp + 0x3c]
push 0x1c
mov esi, ebx
pop ecx
adc dword [esp + 0x1c], edi
mov eax, ebx
mov edx, ebp
xor edi, edi
shl esi, 4
call fcn.1008bfa0
or esi, edx
mov edx, ebp
or edi, eax
xor eax, eax
shr edx, 2
push 0x1e
mov dword [esp + 0x18], eax
mov dword [esp + 0x14], edx
pop ecx
mov eax, ebx
mov edx, ebp
call fcn.1008bfc0
mov ecx, dword [esp + 0x10]
push 0x19
or ecx, eax
mov eax, dword [esp + 0x18]
or eax, edx
mov edx, ebp
xor edi, ecx
xor esi, eax
mov eax, dword [esp + 0x3c]
mov ebx, edx
pop ecx
xor ebp, ebp
shr ebx, 7
call fcn.1008bfc0
mov ecx, dword [esp + 0x34]
or ebx, eax
mov eax, dword [esp + 0x30]
xor ecx, dword [esp + 0x3c]
xor eax, dword [esp + 0x38]
or ebp, edx
mov edx, dword [esp + 0x30]
and ecx, dword [esp + 0x2c]
and eax, dword [esp + 0x28]
and edx, dword [esp + 0x38]
xor edi, ebx
mov ebx, dword [esp + 0x34]
and ebx, dword [esp + 0x3c]
xor eax, edx
xor esi, ebp
push 8
xor ecx, ebx
add edi, eax
adc esi, ecx
add edi, dword [esp + 0x4c]
adc esi, dword [esp + 0x50]
mov dword [esp + 0x24], edi
pop edi
mov dword [esp + 0x24], esi
mov esi, dword [esp + 0x78]
mov ecx, edi
movzx eax, byte [esi + 0x6e]
cdq
call fcn.1008bfc0
mov ebx, eax
mov ebp, edx
movzx eax, byte [esi + 0x6f]
cdq
or ebx, eax
or ebp, edx
mov ecx, edi
mov eax, ebx
mov edx, ebp
call fcn.1008bfc0
mov ebx, eax
mov ebp, edx
movzx eax, byte [esi + 0x70]
cdq
or ebx, eax
or ebp, edx
mov ecx, edi
mov eax, ebx
mov edx, ebp
call fcn.1008bfc0
mov ebx, eax
mov ebp, edx
movzx eax, byte [esi + 0x71]
cdq
or ebx, eax
or ebp, edx
mov ecx, edi
mov eax, ebx
mov edx, ebp
call fcn.1008bfc0
mov ebx, eax
mov ebp, edx
movzx eax, byte [esi + 0x72]
cdq
or ebx, eax
or ebp, edx
mov ecx, edi
mov eax, ebx
mov edx, ebp
call fcn.1008bfc0
mov ebx, eax
mov ebp, edx
movzx eax, byte [esi + 0x73]
cdq
or ebx, eax
or ebp, edx
mov ecx, edi
mov eax, ebx
mov edx, ebp
call fcn.1008bfc0
mov ebx, eax
mov ebp, edx
movzx eax, byte [esi + 0x74]
cdq
or ebx, eax
or ebp, edx
mov ecx, edi
mov eax, ebx
mov edx, ebp
call fcn.1008bfc0
mov ecx, eax
mov ebp, dword [esp + 0x1c]
movzx eax, byte [esi + 0x75]
mov ebx, dword [esp + 0x18]
mov edi, edx
cdq
or ecx, eax
or edi, edx
push 0x17
mov dword [esp + 0x12c], ecx
mov esi, ebp
mov dword [esp + 0x130], edi
pop ecx
mov eax, ebx
mov edx, ebp
xor edi, edi
shr esi, 9
call fcn.1008bfc0
or edi, edx
mov edx, ebx
or esi, eax
xor eax, eax
shl edx, 0xe
push 0x12
mov dword [esp + 0x14], eax
mov dword [esp + 0x18], edx
pop ecx
mov eax, ebx
mov edx, ebp
call fcn.1008bfa0
mov ecx, dword [esp + 0x10]
or ecx, eax
mov eax, dword [esp + 0x14]
or eax, edx
xor esi, ecx
mov edx, dword [esp + 0x1c]
push 0xe
xor edi, eax
mov eax, ebx
pop ecx
xor ebp, ebp
shl ebx, 0x12
call fcn.1008bfa0
mov ecx, dword [esp + 0x1c]
or ebp, eax
mov eax, dword [esp + 0x18]
or ebx, edx
mov edx, dword [esp + 0x50]
xor edi, ebx
mov ebx, dword [esp + 0x54]
and edx, dword [esp + 0x18]
and ebx, dword [esp + 0x1c]
xor esi, ebp
not eax
and eax, dword [esp + 0x58]
mov ebp, dword [esp + 0x24]
not ecx
and ecx, dword [esp + 0x5c]
xor eax, edx
push 0x1c
mov edx, ebp
xor ecx, ebx
add esi, eax
adc edi, ecx
add esi, dword [0x10096ab8]
mov ebx, dword [esp + 0x24]
pop ecx
adc edi, dword [0x10096abc]
add esi, dword [esp + 0x128]
mov eax, ebx
adc edi, dword [esp + 0x12c]
add esi, dword [esp + 0x40]
adc edi, dword [esp + 0x44]
add dword [esp + 0x28], esi
mov dword [esp + 0x48], esi
mov esi, ebx
mov dword [esp + 0x4c], edi
adc dword [esp + 0x2c], edi
xor edi, edi
shl esi, 4
call fcn.1008bfa0
or esi, edx
mov edx, ebp
or edi, eax
xor eax, eax
shr edx, 2
push 0x1e
mov dword [esp + 0x18], eax
mov dword [esp + 0x14], edx
pop ecx
mov eax, ebx
mov edx, ebp
call fcn.1008bfc0
mov ecx, dword [esp + 0x10]
push 0x19
or ecx, eax
mov eax, dword [esp + 0x18]
or eax, edx
mov edx, ebp
xor edi, ecx
xor esi, eax
mov eax, dword [esp + 0x24]
mov ebx, edx
pop ecx
xor ebp, ebp
shr ebx, 7
call fcn.1008bfc0
mov ecx, dword [esp + 0x3c]
or ebx, eax
mov eax, dword [esp + 0x38]
xor ecx, dword [esp + 0x24]
xor eax, dword [esp + 0x20]
or ebp, edx
xor edi, ebx
xor esi, ebp
and eax, dword [esp + 0x30]
mov edx, dword [esp + 0x38]
mov ebx, dword [esp + 0x3c]
and edx, dword [esp + 0x20]
and ecx, dword [esp + 0x34]
and ebx, dword [esp + 0x24]
push 8
xor eax, edx
xor ecx, ebx
add edi, eax
adc esi, ecx
add edi, dword [esp + 0x4c]
adc esi, dword [esp + 0x50]
mov dword [esp + 0x44], edi
pop edi
mov dword [esp + 0x44], esi
mov esi, dword [esp + 0x78]
mov ecx, edi
movzx eax, byte [esi + 0x76]
cdq
call fcn.1008bfc0
mov ebx, eax
mov ebp, edx
movzx eax, byte [esi + 0x77]
cdq
or ebx, eax
or ebp, edx
mov ecx, edi
mov eax, ebx
mov edx, ebp
call fcn.1008bfc0
mov ebx, eax
mov ebp, edx
movzx eax, byte [esi + 0x78]
cdq
or ebx, eax
or ebp, edx
mov ecx, edi
mov eax, ebx
mov edx, ebp
call fcn.1008bfc0
mov ebx, eax
mov ebp, edx
movzx eax, byte [esi + 0x79]
cdq
or ebx, eax
or ebp, edx
mov ecx, edi
mov eax, ebx
mov edx, ebp
call fcn.1008bfc0
mov ebx, eax
mov ebp, edx
movzx eax, byte [esi + 0x7a]
cdq
or ebx, eax
or ebp, edx
mov ecx, edi
mov eax, ebx
mov edx, ebp
call fcn.1008bfc0
mov ebx, eax
mov ebp, edx
movzx eax, byte [esi + 0x7b]
cdq
or ebx, eax
or ebp, edx
mov ecx, edi
mov eax, ebx
mov edx, ebp
call fcn.1008bfc0
mov ebx, eax
mov ebp, edx
movzx eax, byte [esi + 0x7c]
cdq
or ebx, eax
or ebp, edx
mov ecx, edi
mov eax, ebx
mov edx, ebp
call fcn.1008bfc0
mov ecx, eax
movzx eax, byte [esi + 0x7d]
mov ebp, dword [esp + 0x2c]
mov ebx, dword [esp + 0x28]
mov edi, edx
push 0x17
cdq
or ecx, eax
or edi, edx
mov dword [esp + 0x134], ecx
mov esi, ebp
mov dword [esp + 0x138], edi
pop ecx
mov eax, ebx
mov edx, ebp
shr esi, 9
xor edi, edi
call fcn.1008bfc0
or edi, edx
mov edx, ebx
or esi, eax
xor eax, eax
shl edx, 0xe
push 0x12
mov dword [esp + 0x14], eax
mov dword [esp + 0x18], edx
pop ecx
mov eax, ebx
mov edx, ebp
call fcn.1008bfa0
mov ecx, dword [esp + 0x10]
push 0xe
or ecx, eax
mov eax, dword [esp + 0x18]
or eax, edx
mov edx, dword [esp + 0x30]
xor esi, ecx
xor edi, eax
mov eax, ebx
pop ecx
xor ebp, ebp
shl ebx, 0x12
call fcn.1008bfa0
mov ecx, dword [esp + 0x2c]
or ebp, eax
mov eax, dword [esp + 0x28]
or ebx, edx
mov edx, dword [esp + 0x18]
xor edi, ebx
mov ebx, dword [esp + 0x1c]
and edx, dword [esp + 0x28]
and ebx, dword [esp + 0x2c]
xor esi, ebp
not eax
and eax, dword [esp + 0x50]
mov ebp, dword [esp + 0x44]
not ecx
and ecx, dword [esp + 0x54]
xor eax, edx
push 0x1c
mov edx, ebp
xor ecx, ebx
add esi, eax
adc edi, ecx
add esi, dword [0x10096ac0]
mov ebx, dword [esp + 0x44]
pop ecx
adc edi, dword [0x10096ac4]
add esi, dword [esp + 0x130]
mov eax, ebx
adc edi, dword [esp + 0x134]
add esi, dword [esp + 0x58]
adc edi, dword [esp + 0x5c]
add dword [esp + 0x30], esi
mov dword [esp + 0x48], esi
mov esi, ebx
mov dword [esp + 0x4c], edi
adc dword [esp + 0x34], edi
xor edi, edi
shl esi, 4
call fcn.1008bfa0
or edi, eax
or esi, edx
mov edx, ebp
shr edx, 2
xor eax, eax
push 0x1e
mov dword [esp + 0x18], eax
mov dword [esp + 0x14], edx
pop ecx
mov eax, ebx
mov edx, ebp
call fcn.1008bfc0
mov ecx, dword [esp + 0x10]
push 0x19
or ecx, eax
mov eax, dword [esp + 0x18]
or eax, edx
mov edx, ebp
xor edi, ecx
xor esi, eax
mov eax, dword [esp + 0x44]
mov ebx, edx
pop ecx
xor ebp, ebp
shr ebx, 7
call fcn.1008bfc0
mov ecx, dword [esp + 0x24]
or ebx, eax
mov eax, dword [esp + 0x20]
xor ecx, dword [esp + 0x44]
xor eax, dword [esp + 0x40]
or ebp, edx
mov edx, dword [esp + 0x20]
and ecx, dword [esp + 0x3c]
and eax, dword [esp + 0x38]
and edx, dword [esp + 0x40]
xor edi, ebx
mov ebx, dword [esp + 0x24]
and ebx, dword [esp + 0x44]
xor eax, edx
xor esi, ebp
push 0x11
xor ecx, ebx
add edi, eax
adc esi, ecx
add edi, dword [esp + 0x4c]
pop eax
mov dword [esp + 0x8c], 0x10096ad0
adc esi, dword [esp + 0x4c]
mov dword [esp + 0x58], edi
mov dword [esp + 0x88], eax
mov dword [esp + 0x5c], esi
mov ecx, eax
push 0x13
and ecx, 0xf
xor ebp, ebp
mov edx, dword [esp + ecx*8 + 0xbc]
lea ecx, [esp + ecx*8 + 0xbc]
mov dword [esp + 0xa8], ecx
mov dword [esp + 0x6c], edx
mov ecx, dword [ecx + 4]
mov dword [esp + 0x70], ecx
lea ecx, [eax - 3]
and ecx, 0xf
mov esi, dword [esp + ecx*8 + 0xbc]
mov edi, dword [esp + ecx*8 + 0xc0]
lea ecx, [esp + ecx*8 + 0xbc]
mov ebx, esi
mov dword [esp + 0x78], ecx
lea ecx, [eax - 7]
dec eax
mov dword [esp + 0xa4], ecx
and eax, 0xf
pop ecx
mov edx, edi
mov dword [esp + 0x7c], esi
lea eax, [esp + eax*8 + 0xb8]
mov dword [esp + 0x80], edi
mov dword [esp + 0xa8], eax
mov eax, esi
shl ebx, 0xd
call fcn.1008bfa0
or ebx, edx
push 3
mov dword [esp + 0x18], ebx
mov ebx, edi
shr ebx, 0x1d
or ebp, eax
mov dword [esp + 0x14], ebx
pop ecx
mov eax, esi
mov edx, edi
xor ebx, ebx
call fcn.1008bfc0
mov ecx, dword [esp + 0x10]
mov esi, dword [esp + 0x14]
or ecx, eax
mov eax, dword [esp + 0x7c]
push 6
or ebx, edx
xor ebp, ecx
pop ecx
mov edx, edi
xor esi, ebx
call fcn.1008bfa0
xor esi, edx
mov edx, dword [esp + 0x6c]
mov dword [esp + 0x70], esi
mov esi, dword [esp + 0x68]
push 8
xor ebp, eax
mov edi, esi
pop ecx
mov eax, esi
mov dword [esp + 0x14], ebp
xor ebx, ebx
shl edi, 0x18
call fcn.1008bfa0
or edi, edx
mov edx, dword [esp + 0x6c]
push 1
or ebx, eax
mov ebp, esi
mov dword [esp + 0x14], edi
pop ecx
mov eax, esi
xor edi, edi
shl ebp, 0x1f
call fcn.1008bfa0
mov esi, dword [esp + 0x10]
or edi, eax
or ebp, edx
xor ebx, edi
mov eax, dword [esp + 0x68]
mov edx, dword [esp + 0x6c]
push 7
xor esi, ebp
pop ecx
call fcn.1008bfa0
mov ecx, dword [esp + 0x14]
xor ebx, eax
mov eax, dword [esp + 0xa0]
xor esi, edx
mov edx, dword [esp + 0x70]
add ecx, ebx
adc edx, esi
dec eax
and eax, 0xf
mov ebp, dword [esp + 0x34]
mov ebx, dword [esp + 0x30]
push 0x17
add ecx, dword [esp + eax*8 + 0xbc]
mov esi, ebp
adc edx, dword [esp + eax*8 + 0xc0]
mov eax, dword [esp + 0xac]
add dword [eax], ecx
pop ecx
adc dword [eax + 4], edx
mov eax, ebx
mov edx, ebp
xor edi, edi
shr esi, 9
call fcn.1008bfc0
or edi, edx
mov edx, ebx
or esi, eax
xor eax, eax
shl edx, 0xe
push 0x12
mov dword [esp + 0x74], eax
mov dword [esp + 0x14], edx
pop ecx
mov eax, ebx
mov edx, ebp
call fcn.1008bfa0
mov ecx, dword [esp + 0x70]
push 0xe
or ecx, eax
mov eax, dword [esp + 0x14]
or eax, edx
mov edx, dword [esp + 0x38]
xor esi, ecx
xor edi, eax
mov eax, ebx
pop ecx
xor ebp, ebp
shl ebx, 0x12
call fcn.1008bfa0
mov ecx, dword [esp + 0x34]
or ebp, eax
mov eax, dword [esp + 0x30]
or ebx, edx
mov edx, dword [esp + 0x28]
xor edi, ebx
mov ebx, dword [esp + 0x2c]
and edx, dword [esp + 0x30]
and ebx, dword [esp + 0x34]
xor esi, ebp
not eax
and eax, dword [esp + 0x18]
not ecx
and ecx, dword [esp + 0x1c]
xor eax, edx
xor ecx, ebx
add esi, eax
mov eax, dword [esp + 0x8c]
adc edi, ecx
add esi, dword [eax - 8]
adc edi, dword [eax - 4]
mov eax, dword [esp + 0xa8]
add esi, dword [eax]
adc edi, dword [eax + 4]
add esi, dword [esp + 0x50]
mov dword [esp + 0x48], esi
adc edi, dword [esp + 0x54]
add dword [esp + 0x38], esi
mov eax, dword [esp + 0x40]
mov esi, dword [esp + 0x58]
mov dword [esp + 0x4c], edi
push 0x1c
adc dword [esp + 0x40], edi
mov edi, dword [esp + 0x60]
xor eax, esi
mov ebx, esi
mov dword [esp + 0x9c], eax
mov eax, dword [esp + 0x48]
xor eax, edi
pop ecx
mov dword [esp + 0x9c], eax
mov eax, dword [esp + 0x40]
and eax, esi
mov edx, edi
mov dword [esp + 0x90], eax
mov eax, dword [esp + 0x44]
and eax, edi
xor ebp, ebp
mov dword [esp + 0x94], eax
mov eax, esi
shl ebx, 4
call fcn.1008bfa0
or ebx, edx
push 0x1e
mov dword [esp + 0x14], ebx
mov ebx, edi
shr ebx, 2
or ebp, eax
mov dword [esp + 0x74], ebx
pop ecx
mov eax, esi
mov edx, edi
xor ebx, ebx
call fcn.1008bfc0
mov ecx, dword [esp + 0x70]
mov esi, dword [esp + 0x10]
or ecx, eax
mov eax, dword [esp + 0x58]
or ebx, edx
push 0x19
xor ebp, ecx
xor esi, ebx
mov edx, edi
pop ecx
shr edi, 7
xor ebx, ebx
call fcn.1008bfc0
mov ecx, dword [esp + 0x9c]
or edi, eax
mov eax, dword [esp + 0x98]
and ecx, dword [esp + 0x24]
and eax, dword [esp + 0x20]
or ebx, edx
xor ecx, dword [esp + 0x94]
xor ebp, edi
xor eax, dword [esp + 0x90]
xor esi, ebx
add ebp, eax
adc esi, ecx
mov ecx, dword [esp + 0x88]
add ebp, dword [esp + 0x48]
lea eax, [ecx + 1]
adc esi, dword [esp + 0x4c]
and eax, 0xf
add ecx, 0xfffffffe
mov dword [esp + 0x50], ebp
mov edx, dword [esp + eax*8 + 0xb8]
lea eax, [esp + eax*8 + 0xb8]
mov dword [esp + 0x14], eax
and ecx, 0xf
mov eax, dword [eax + 4]
mov dword [esp + 0x54], esi
mov esi, dword [esp + ecx*8 + 0xb8]
mov dword [esp + 0x6c], eax
lea eax, [esp + ecx*8 + 0xb8]
mov dword [esp + 0x68], edx
mov dword [esp + 0x84], eax
mov edi, dword [eax + 4]
push 0x13
mov ebx, esi
pop ecx
mov eax, esi
mov edx, edi
mov dword [esp + 0x7c], esi
mov dword [esp + 0x80], edi
xor ebp, ebp
shl ebx, 0xd
call fcn.1008bfa0
or ebx, edx
push 3
mov dword [esp + 0x14], ebx
mov ebx, edi
shr ebx, 0x1d
or ebp, eax
mov dword [esp + 0x74], ebx
pop ecx
mov eax, esi
mov edx, edi
xor ebx, ebx
call fcn.1008bfc0
mov ecx, dword [esp + 0x70]
mov esi, dword [esp + 0x10]
or ecx, eax
mov eax, dword [esp + 0x7c]
push 6
or ebx, edx
xor ebp, ecx
pop ecx
mov edx, edi
xor esi, ebx
call fcn.1008bfa0
xor esi, edx
mov edx, dword [esp + 0x6c]
mov dword [esp + 0x64], esi
mov esi, dword [esp + 0x68]
push 8
xor ebp, eax
mov edi, esi
pop ecx
mov eax, esi
mov dword [esp + 0x10], ebp
xor ebx, ebx
shl edi, 0x18
call fcn.1008bfa0
or edi, edx
mov edx, dword [esp + 0x6c]
push 1
or ebx, eax
mov ebp, esi
mov dword [esp + 0x74], edi
pop ecx
mov eax, esi
xor edi, edi
shl ebp, 0x1f
call fcn.1008bfa0
mov esi, dword [esp + 0x70]
push 7
or edi, eax
mov eax, dword [esp + 0x6c]
or ebp, edx
mov edx, dword [esp + 0x70]
pop ecx
xor ebx, edi
xor esi, ebp
call fcn.1008bfa0
mov ecx, dword [esp + 0x10]
xor ebx, eax
mov eax, dword [esp + 0xa0]
xor esi, edx
mov edx, dword [esp + 0x64]
add ecx, ebx
adc edx, esi
and eax, 0xf
add ecx, dword [esp + eax*8 + 0xb8]
adc edx, dword [esp + eax*8 + 0xbc]
mov eax, dword [esp + 0xa4]
add dword [eax], ecx
adc dword [eax + 4], edx
mov ebp, dword [esp + 0x3c]
mov ebx, dword [esp + 0x38]
push 0x17
mov esi, ebp
pop ecx
mov eax, ebx
mov edx, ebp
xor edi, edi
shr esi, 9
call fcn.1008bfc0
or edi, edx
mov edx, ebx
or esi, eax
xor eax, eax
shl edx, 0xe
push 0x12
mov dword [esp + 0x68], eax
mov dword [esp + 0x74], edx
pop ecx
mov eax, ebx
mov edx, ebp
call fcn.1008bfa0
mov ecx, dword [esp + 0x64]
push 0xe
or ecx, eax
mov eax, dword [esp + 0x74]
or eax, edx
mov edx, dword [esp + 0x40]
xor esi, ecx
xor edi, eax
mov eax, ebx
pop ecx
xor ebp, ebp
shl ebx, 0x12
call fcn.1008bfa0
mov ecx, dword [esp + 0x3c]
or ebp, eax
mov eax, dword [esp + 0x38]
or ebx, edx
mov edx, dword [esp + 0x30]
xor edi, ebx
mov ebx, dword [esp + 0x34]
and edx, dword [esp + 0x38]
and ebx, dword [esp + 0x3c]
xor esi, ebp
not eax
and eax, dword [esp + 0x28]
push 0x1c
not ecx
and ecx, dword [esp + 0x30]
xor eax, edx
xor ecx, ebx
add esi, eax
mov eax, dword [esp + 0xa8]
adc edi, ecx
pop ecx
add esi, dword [eax]
adc edi, dword [eax + 4]
mov eax, dword [esp + 0x8c]
add esi, dword [eax]
adc edi, dword [eax + 4]
add esi, dword [esp + 0x18]
adc edi, dword [esp + 0x1c]
add dword [esp + 0x20], esi
mov dword [esp + 0x48], esi
mov esi, dword [esp + 0x50]
mov dword [esp + 0x4c], edi
mov ebx, esi
adc dword [esp + 0x24], edi
mov edi, dword [esp + 0x54]
mov eax, esi
mov edx, edi
xor ebp, ebp
shl ebx, 4
call fcn.1008bfa0
or ebx, edx
or ebp, eax
mov dword [esp + 0x70], ebx
mov ebx, edi
shr ebx, 2
mov dword [esp + 0x64], ebx
push 0x1e
mov eax, esi
pop ecx
mov edx, edi
xor ebx, ebx
call fcn.1008bfc0
mov ecx, dword [esp + 0x64]
mov esi, dword [esp + 0x70]
or ecx, eax
mov eax, dword [esp + 0x50]
or ebx, edx
push 0x19
xor ebp, ecx
xor esi, ebx
mov edx, edi
pop ecx
shr edi, 7
xor ebx, ebx
call fcn.1008bfc0
mov ecx, dword [esp + 0x9c]
or edi, eax
mov eax, dword [esp + 0x98]
and ecx, dword [esp + 0x54]
and eax, dword [esp + 0x50]
or ebx, edx
xor ecx, dword [esp + 0x94]
xor ebp, edi
xor eax, dword [esp + 0x90]
xor esi, ebx
push 0x13
add ebp, eax
mov eax, dword [esp + 0x8c]
adc esi, ecx
add ebp, dword [esp + 0x4c]
adc esi, dword [esp + 0x50]
add eax, 2
and eax, 0xf
mov dword [esp + 0x1c], ebp
mov dword [esp + 0x20], esi
xor ebp, ebp
mov ecx, dword [esp + eax*8 + 0xbc]
lea eax, [esp + eax*8 + 0xbc]
mov dword [esp + 0x14], eax
mov dword [esp + 0x6c], ecx
mov eax, dword [eax + 4]
pop ecx
mov dword [esp + 0x6c], eax
mov eax, dword [esp + 0xa8]
mov esi, dword [eax]
mov edi, dword [eax + 4]
mov ebx, esi
mov eax, esi
mov edx, edi
mov dword [esp + 0x7c], esi
mov dword [esp + 0x80], edi
shl ebx, 0xd
call fcn.1008bfa0
or ebx, edx
push 3
mov dword [esp + 0x74], ebx
mov ebx, edi
shr ebx, 0x1d
or ebp, eax
mov dword [esp + 0x68], ebx
pop ecx
mov eax, esi
mov edx, edi
xor ebx, ebx
call fcn.1008bfc0
mov ecx, dword [esp + 0x64]
mov esi, dword [esp + 0x70]
or ecx, eax
mov eax, dword [esp + 0x7c]
push 6
or ebx, edx
xor ebp, ecx
pop ecx
mov edx, edi
xor esi, ebx
call fcn.1008bfa0
xor ebp, eax
xor esi, edx
mov edx, dword [esp + 0x6c]
mov dword [esp + 0x60], esi
mov esi, dword [esp + 0x68]
push 8
mov edi, esi
pop ecx
mov eax, esi
mov dword [esp + 0x70], ebp
xor ebx, ebx
shl edi, 0x18
call fcn.1008bfa0
or edi, edx
mov edx, dword [esp + 0x6c]
push 1
or ebx, eax
mov ebp, esi
mov dword [esp + 0x68], edi
pop ecx
mov eax, esi
xor edi, edi
shl ebp, 0x1f
call fcn.1008bfa0
mov esi, dword [esp + 0x64]
push 7
or edi, eax
mov eax, dword [esp + 0x6c]
or ebp, edx
mov edx, dword [esp + 0x70]
pop ecx
xor ebx, edi
xor esi, ebp
call fcn.1008bfa0
mov ecx, dword [esp + 0x70]
xor ebx, eax
mov eax, dword [esp + 0xa0]
xor esi, edx
mov edx, dword [esp + 0x60]
add ecx, ebx
adc edx, esi
inc eax
and eax, 0xf
mov ebp, dword [esp + 0x24]
mov ebx, dword [esp + 0x20]
push 0x17
add ecx, dword [esp + eax*8 + 0xbc]
mov esi, ebp
adc edx, dword [esp + eax*8 + 0xc0]
mov eax, dword [esp + 0x18]
add dword [eax], ecx
pop ecx
adc dword [eax + 4], edx
mov eax, ebx
mov edx, ebp
xor edi, edi
shr esi, 9
call fcn.1008bfc0
or edi, edx
mov edx, ebx
or esi, eax
xor eax, eax
shl edx, 0xe
push 0x12
mov dword [esp + 0x64], eax
mov dword [esp + 0x68], edx
pop ecx
mov eax, ebx
mov edx, ebp
call fcn.1008bfa0
mov ecx, dword [esp + 0x60]
push 0xe
or ecx, eax
mov eax, dword [esp + 0x68]
or eax, edx
mov edx, dword [esp + 0x28]
xor edi, eax
xor esi, ecx
mov eax, ebx
xor ebp, ebp
shl ebx, 0x12
pop ecx
call fcn.1008bfa0
mov ecx, dword [esp + 0x24]
or ebp, eax
mov eax, dword [esp + 0x20]
or ebx, edx
mov edx, dword [esp + 0x38]
xor edi, ebx
mov ebx, dword [esp + 0x3c]
and edx, dword [esp + 0x20]
and ebx, dword [esp + 0x24]
xor esi, ebp
not eax
and eax, dword [esp + 0x30]
push 0x1c
not ecx
and ecx, dword [esp + 0x38]
xor eax, edx
xor ecx, ebx
add esi, eax
mov eax, dword [esp + 0x90]
adc edi, ecx
pop ecx
add esi, dword [eax + 8]
adc edi, dword [eax + 0xc]
mov eax, dword [esp + 0x14]
add esi, dword [eax]
adc edi, dword [eax + 4]
add esi, dword [esp + 0x28]
adc edi, dword [esp + 0x2c]
add dword [esp + 0x40], esi
mov dword [esp + 0x48], esi
mov esi, dword [esp + 0x18]
mov dword [esp + 0x4c], edi
mov ebx, esi
adc dword [esp + 0x44], edi
mov edi, dword [esp + 0x1c]
mov eax, esi
mov edx, edi
xor ebp, ebp
shl ebx, 4
call fcn.1008bfa0
or ebx, edx
push 0x1e
mov dword [esp + 0x68], ebx
mov ebx, edi
shr ebx, 2
or ebp, eax
mov dword [esp + 0x64], ebx
pop ecx
mov eax, esi
mov edx, edi
xor ebx, ebx
call fcn.1008bfc0
mov ecx, dword [esp + 0x60]
mov esi, dword [esp + 0x64]
or ecx, eax
mov eax, dword [esp + 0x18]
or ebx, edx
push 0x19
xor ebp, ecx
xor esi, ebx
mov edx, edi
pop ecx
shr edi, 7
xor ebx, ebx
call fcn.1008bfc0
mov ecx, dword [esp + 0x1c]
or edi, eax
mov eax, dword [esp + 0x18]
xor ecx, dword [esp + 0x5c]
xor eax, dword [esp + 0x58]
or ebx, edx
mov edx, dword [esp + 0x18]
and ecx, dword [esp + 0x54]
and eax, dword [esp + 0x50]
and edx, dword [esp + 0x58]
xor ebp, edi
mov edi, dword [esp + 0x1c]
and edi, dword [esp + 0x5c]
xor esi, ebx
xor eax, edx
xor ecx, edi
add ebp, eax
mov eax, dword [esp + 0x88]
push 0x13
adc esi, ecx
add ebp, dword [esp + 0x4c]
adc esi, dword [esp + 0x50]
add eax, 3
and eax, 0xf
mov dword [esp + 0x2c], ebp
mov dword [esp + 0x30], esi
xor ebp, ebp
mov ecx, dword [esp + eax*8 + 0xbc]
lea eax, [esp + eax*8 + 0xbc]
mov dword [esp + 0xa4], eax
mov dword [esp + 0x6c], ecx
mov eax, dword [eax + 4]
pop ecx
mov dword [esp + 0x6c], eax
mov eax, dword [esp + 0xa4]
mov esi, dword [eax]
mov edi, dword [eax + 4]
mov ebx, esi
mov eax, esi
mov edx, edi
mov dword [esp + 0x7c], esi
mov dword [esp + 0x80], edi
shl ebx, 0xd
call fcn.1008bfa0
or ebx, edx
push 3
mov dword [esp + 0x68], ebx
mov ebx, edi
shr ebx, 0x1d
or ebp, eax
mov dword [esp + 0x64], ebx
pop ecx
mov eax, esi
mov edx, edi
xor ebx, ebx
call fcn.1008bfc0
mov ecx, dword [esp + 0x60]
mov esi, dword [esp + 0x64]
or ecx, eax
mov eax, dword [esp + 0x7c]
push 6
or ebx, edx
xor ebp, ecx
pop ecx
mov edx, edi
xor esi, ebx
call fcn.1008bfa0
xor esi, edx
mov edx, dword [esp + 0x6c]
mov dword [esp + 0x70], esi
mov esi, dword [esp + 0x68]
push 8
xor ebp, eax
mov edi, esi
pop ecx
mov eax, esi
mov dword [esp + 0x64], ebp
xor ebx, ebx
shl edi, 0x18
call fcn.1008bfa0
or edi, edx
mov edx, dword [esp + 0x6c]
push 1
or ebx, eax
mov ebp, esi
mov dword [esp + 0x64], edi
pop ecx
mov eax, esi
xor edi, edi
shl ebp, 0x1f
call fcn.1008bfa0
mov esi, dword [esp + 0x60]
or edi, eax
or ebp, edx
xor ebx, edi
xor esi, ebp
mov eax, dword [esp + 0x68]
mov edx, dword [esp + 0x6c]
push 7
pop ecx
call fcn.1008bfa0
mov ecx, dword [esp + 0x64]
xor ebx, eax
mov eax, dword [esp + 0x88]
xor esi, edx
mov edx, dword [esp + 0x70]
add ecx, ebx
adc edx, esi
add eax, 0xfffffffb
and eax, 0xf
mov ebp, dword [esp + 0x44]
mov ebx, dword [esp + 0x40]
push 0x17
add ecx, dword [esp + eax*8 + 0xbc]
mov esi, ebp
adc edx, dword [esp + eax*8 + 0xc0]
mov eax, dword [esp + 0x14]
add dword [eax], ecx
pop ecx
adc dword [eax + 4], edx
mov eax, ebx
mov edx, ebp
xor edi, edi
shr esi, 9
call fcn.1008bfc0
or edi, edx
mov edx, ebx
or esi, eax
xor eax, eax
shl edx, 0xe
push 0x12
mov dword [esp + 0x64], eax
mov dword [esp + 0x68], edx
pop ecx
mov eax, ebx
mov edx, ebp
call fcn.1008bfa0
mov ecx, dword [esp + 0x60]
push 0xe
or ecx, eax
mov eax, dword [esp + 0x68]
or eax, edx
mov edx, dword [esp + 0x48]
xor esi, ecx
xor edi, eax
mov eax, ebx
pop ecx
xor ebp, ebp
shl ebx, 0x12
call fcn.1008bfa0
mov ecx, dword [esp + 0x44]
or ebp, eax
mov eax, dword [esp + 0x40]
or ebx, edx
mov edx, dword [esp + 0x20]
xor edi, ebx
mov ebx, dword [esp + 0x24]
and edx, dword [esp + 0x40]
and ebx, dword [esp + 0x44]
xor esi, ebp
not eax
and eax, dword [esp + 0x38]
not ecx
and ecx, dword [esp + 0x3c]
xor eax, edx
xor ecx, ebx
add esi, eax
mov eax, dword [esp + 0x8c]
adc edi, ecx
add esi, dword [eax + 0x10]
adc edi, dword [eax + 0x14]
mov eax, dword [esp + 0x10]
add esi, dword [eax]
adc edi, dword [eax + 4]
add esi, dword [esp + 0x30]
adc edi, dword [esp + 0x34]
mov dword [esp + 0x48], esi
add dword [esp + 0x58], esi
mov esi, dword [esp + 0x28]
mov dword [esp + 0x4c], edi
push 0x1c
mov ebx, esi
pop ecx
adc dword [esp + 0x5c], edi
mov edi, dword [esp + 0x2c]
mov eax, esi
mov edx, edi
xor ebp, ebp
shl ebx, 4
call fcn.1008bfa0
or ebx, edx
push 0x1e
mov dword [esp + 0x68], ebx
mov ebx, edi
shr ebx, 2
or ebp, eax
mov dword [esp + 0x64], ebx
pop ecx
mov eax, esi
mov edx, edi
xor ebx, ebx
call fcn.1008bfc0
mov ecx, dword [esp + 0x60]
mov esi, dword [esp + 0x64]
or ecx, eax
mov eax, dword [esp + 0x28]
or ebx, edx
push 0x19
xor ebp, ecx
xor esi, ebx
mov edx, edi
pop ecx
shr edi, 7
xor ebx, ebx
call fcn.1008bfc0
mov ecx, dword [esp + 0x1c]
or edi, eax
mov eax, dword [esp + 0x18]
xor ecx, dword [esp + 0x2c]
xor eax, dword [esp + 0x28]
or ebx, edx
mov edx, dword [esp + 0x18]
and ecx, dword [esp + 0x54]
and eax, dword [esp + 0x50]
and edx, dword [esp + 0x28]
xor ebp, edi
mov edi, dword [esp + 0x1c]
and edi, dword [esp + 0x2c]
xor eax, edx
xor esi, ebx
push 0x13
xor ecx, edi
add ebp, eax
mov eax, dword [esp + 0x8c]
adc esi, ecx
add ebp, dword [esp + 0x4c]
adc esi, dword [esp + 0x50]
add eax, 4
and eax, 0xf
mov dword [esp + 0x34], ebp
mov dword [esp + 0x38], esi
xor ebp, ebp
mov ecx, dword [esp + eax*8 + 0xbc]
lea eax, [esp + eax*8 + 0xbc]
mov dword [esp + 0xa8], eax
mov dword [esp + 0x6c], ecx
mov eax, dword [eax + 4]
pop ecx
mov dword [esp + 0x6c], eax
mov eax, dword [esp + 0x14]
mov esi, dword [eax]
mov edi, dword [eax + 4]
mov ebx, esi
mov dword [esp + 0x7c], esi
mov dword [esp + 0x80], edi
mov eax, esi
shl ebx, 0xd
mov edx, edi
call fcn.1008bfa0
or ebx, edx
push 3
mov dword [esp + 0x68], ebx
mov ebx, edi
shr ebx, 0x1d
or ebp, eax
mov dword [esp + 0x64], ebx
pop ecx
mov eax, esi
mov edx, edi
xor ebx, ebx
call fcn.1008bfc0
mov ecx, dword [esp + 0x60]
mov esi, dword [esp + 0x64]
or ecx, eax
mov eax, dword [esp + 0x7c]
push 6
or ebx, edx
xor ebp, ecx
pop ecx
mov edx, edi
xor esi, ebx
call fcn.1008bfa0
xor esi, edx
mov edx, dword [esp + 0x6c]
mov dword [esp + 0x70], esi
mov esi, dword [esp + 0x68]
push 8
xor ebp, eax
mov edi, esi
pop ecx
mov eax, esi
mov dword [esp + 0x64], ebp
xor ebx, ebx
shl edi, 0x18
call fcn.1008bfa0
or edi, edx
mov edx, dword [esp + 0x6c]
push 1
or ebx, eax
mov ebp, esi
mov dword [esp + 0x64], edi
pop ecx
mov eax, esi
xor edi, edi
shl ebp, 0x1f
call fcn.1008bfa0
mov esi, dword [esp + 0x60]
push 7
or edi, eax
mov eax, dword [esp + 0x6c]
or ebp, edx
mov edx, dword [esp + 0x70]
pop ecx
xor ebx, edi
xor esi, ebp
call fcn.1008bfa0
mov ecx, dword [esp + 0x64]
xor ebx, eax
mov eax, dword [esp + 0x88]
xor esi, edx
mov edx, dword [esp + 0x70]
add ecx, ebx
adc edx, esi
add eax, 0xfffffffc
and eax, 0xf
mov ebp, dword [esp + 0x5c]
mov ebx, dword [esp + 0x58]
mov esi, ebp
add ecx, dword [esp + eax*8 + 0xb8]
push 0x17
adc edx, dword [esp + eax*8 + 0xc0]
mov eax, dword [esp + 0xa4]
add dword [eax], ecx
pop ecx
adc dword [eax + 4], edx
mov eax, ebx
shr esi, 9
xor edi, edi
mov edx, ebp
call fcn.1008bfc0
or edi, edx
mov edx, ebx
or esi, eax
xor eax, eax
shl edx, 0xe
push 0x12
mov dword [esp + 0x64], eax
mov dword [esp + 0x68], edx
pop ecx
mov eax, ebx
mov edx, ebp
call fcn.1008bfa0
mov ecx, dword [esp + 0x60]
push 0xe
or ecx, eax
mov eax, dword [esp + 0x68]
or eax, edx
mov edx, dword [esp + 0x60]
xor esi, ecx
xor edi, eax
mov eax, ebx
pop ecx
xor ebp, ebp
shl ebx, 0x12
call fcn.1008bfa0
mov ecx, dword [esp + 0x5c]
or ebp, eax
mov eax, dword [esp + 0x58]
or ebx, edx
mov edx, dword [esp + 0x40]
xor edi, ebx
mov ebx, dword [esp + 0x44]
and edx, dword [esp + 0x58]
and ebx, dword [esp + 0x5c]
xor esi, ebp
not eax
and eax, dword [esp + 0x20]
push 0x1c
not ecx
and ecx, dword [esp + 0x28]
xor eax, edx
xor ecx, ebx
add esi, eax
mov eax, dword [esp + 0x90]
adc edi, ecx
pop ecx
add esi, dword [eax + 0x18]
adc edi, dword [eax + 0x1c]
mov eax, dword [esp + 0xa0]
add esi, dword [eax]
adc edi, dword [eax + 4]
add esi, dword [esp + 0x38]
adc edi, dword [esp + 0x3c]
add dword [esp + 0x50], esi
mov dword [esp + 0x48], esi
mov esi, dword [esp + 0x30]
mov dword [esp + 0x4c], edi
mov ebx, esi
adc dword [esp + 0x54], edi
mov edi, dword [esp + 0x34]
mov eax, esi
mov edx, edi
xor ebp, ebp
shl ebx, 4
call fcn.1008bfa0
or ebx, edx
push 0x1e
mov dword [esp + 0x68], ebx
mov ebx, edi
shr ebx, 2
or ebp, eax
mov dword [esp + 0x64], ebx
pop ecx
mov eax, esi
mov edx, edi
xor ebx, ebx
call fcn.1008bfc0
mov ecx, dword [esp + 0x60]
or ecx, eax
or ebx, edx
mov esi, dword [esp + 0x64]
mov eax, dword [esp + 0x30]
push 0x19
xor ebp, ecx
xor esi, ebx
mov edx, edi
pop ecx
xor ebx, ebx
shr edi, 7
call fcn.1008bfc0
mov ecx, dword [esp + 0x2c]
or edi, eax
mov eax, dword [esp + 0x28]
xor ecx, dword [esp + 0x34]
xor eax, dword [esp + 0x30]
or ebx, edx
mov edx, dword [esp + 0x28]
and ecx, dword [esp + 0x1c]
and eax, dword [esp + 0x18]
and edx, dword [esp + 0x30]
xor ebp, edi
mov edi, dword [esp + 0x2c]
and edi, dword [esp + 0x34]
xor eax, edx
xor esi, ebx
push 0x13
xor ecx, edi
add ebp, eax
mov eax, dword [esp + 0x8c]
adc esi, ecx
add ebp, dword [esp + 0x4c]
adc esi, dword [esp + 0x50]
add eax, 5
and eax, 0xf
mov dword [esp + 0x3c], ebp
mov dword [esp + 0x40], esi
xor ebp, ebp
mov ecx, dword [esp + eax*8 + 0xbc]
lea eax, [esp + eax*8 + 0xbc]
mov dword [esp + 0x18], eax
mov dword [esp + 0x6c], ecx
mov eax, dword [eax + 4]
pop ecx
mov dword [esp + 0x6c], eax
mov eax, dword [esp + 0x10]
mov esi, dword [eax]
mov edi, dword [eax + 4]
mov ebx, esi
mov eax, esi
mov edx, edi
mov dword [esp + 0x7c], esi
mov dword [esp + 0x80], edi
shl ebx, 0xd
call fcn.1008bfa0
or ebx, edx
push 3
mov dword [esp + 0x68], ebx
mov ebx, edi
shr ebx, 0x1d
or ebp, eax
mov dword [esp + 0x64], ebx
pop ecx
mov eax, esi
mov edx, edi
xor ebx, ebx
call fcn.1008bfc0
mov ecx, dword [esp + 0x60]
mov esi, dword [esp + 0x64]
or ecx, eax
mov eax, dword [esp + 0x7c]
push 6
or ebx, edx
xor ebp, ecx
pop ecx
mov edx, edi
xor esi, ebx
call fcn.1008bfa0
xor ebp, eax
xor esi, edx
mov dword [esp + 0x64], ebp
mov dword [esp + 0x70], esi
mov esi, dword [esp + 0x68]
mov edx, dword [esp + 0x6c]
push 8
mov edi, esi
pop ecx
mov eax, esi
xor ebx, ebx
shl edi, 0x18
call fcn.1008bfa0
or edi, edx
mov edx, dword [esp + 0x6c]
push 1
or ebx, eax
mov ebp, esi
mov dword [esp + 0x64], edi
pop ecx
mov eax, esi
xor edi, edi
shl ebp, 0x1f
call fcn.1008bfa0
mov esi, dword [esp + 0x60]
push 7
or edi, eax
mov eax, dword [esp + 0x6c]
or ebp, edx
mov edx, dword [esp + 0x70]
pop ecx
xor ebx, edi
xor esi, ebp
call fcn.1008bfa0
mov ecx, dword [esp + 0x64]
xor ebx, eax
mov eax, dword [esp + 0x74]
xor esi, edx
mov edx, dword [esp + 0x70]
add ecx, ebx
adc edx, esi
add ecx, dword [eax]
mov ebp, dword [esp + 0x54]
mov ebx, dword [esp + 0x50]
adc edx, dword [eax + 4]
mov eax, dword [esp + 0xa4]
push 0x17
mov esi, ebp
add dword [eax], ecx
pop ecx
adc dword [eax + 4], edx
mov eax, ebx
mov edx, ebp
xor edi, edi
shr esi, 9
call fcn.1008bfc0
or edi, edx
mov edx, ebx
or esi, eax
xor eax, eax
shl edx, 0xe
push 0x12
mov dword [esp + 0x78], eax
mov dword [esp + 0x64], edx
pop ecx
mov eax, ebx
mov edx, ebp
call fcn.1008bfa0
mov ecx, dword [esp + 0x74]
push 0xe
or ecx, eax
mov eax, dword [esp + 0x64]
or eax, edx
mov edx, dword [esp + 0x58]
xor esi, ecx
xor edi, eax
mov eax, ebx
pop ecx
xor ebp, ebp
shl ebx, 0x12
call fcn.1008bfa0
or ebp, eax
or ebx, edx
xor esi, ebp
xor edi, ebx
mov eax, dword [esp + 0x50]
mov ecx, dword [esp + 0x54]
mov edx, dword [esp + 0x50]
mov ebx, dword [esp + 0x54]
and edx, dword [esp + 0x58]
and ebx, dword [esp + 0x5c]
not eax
and eax, dword [esp + 0x40]
push 0x1c
not ecx
and ecx, dword [esp + 0x48]
xor eax, edx
xor ecx, ebx
add esi, eax
mov eax, dword [esp + 0x90]
adc edi, ecx
pop ecx
add esi, dword [eax + 0x20]
adc edi, dword [eax + 0x24]
mov eax, dword [esp + 0xa4]
add esi, dword [eax]
adc edi, dword [eax + 4]
add esi, dword [esp + 0x20]
adc edi, dword [esp + 0x24]
add dword [esp + 0x18], esi
mov dword [esp + 0x48], esi
mov esi, dword [esp + 0x38]
mov dword [esp + 0x4c], edi
mov ebx, esi
adc dword [esp + 0x1c], edi
mov edi, dword [esp + 0x3c]
mov eax, esi
mov edx, edi
xor ebp, ebp
shl ebx, 4
call fcn.1008bfa0
or ebx, edx
push 0x1e
mov dword [esp + 0x64], ebx
mov ebx, edi
shr ebx, 2
or ebp, eax
mov dword [esp + 0x78], ebx
pop ecx
mov eax, esi
mov edx, edi
xor ebx, ebx
call fcn.1008bfc0
mov ecx, dword [esp + 0x74]
mov esi, dword [esp + 0x60]
or ecx, eax
mov eax, dword [esp + 0x38]
or ebx, edx
push 0x19
xor ebp, ecx
xor esi, ebx
mov edx, edi
pop ecx
shr edi, 7
xor ebx, ebx
call fcn.1008bfc0
mov ecx, dword [esp + 0x34]
or edi, eax
mov eax, dword [esp + 0x30]
xor ecx, dword [esp + 0x3c]
xor eax, dword [esp + 0x38]
or ebx, edx
mov edx, dword [esp + 0x30]
and ecx, dword [esp + 0x2c]
and eax, dword [esp + 0x28]
and edx, dword [esp + 0x38]
xor ebp, edi
mov edi, dword [esp + 0x34]
and edi, dword [esp + 0x3c]
xor eax, edx
xor esi, ebx
xor ecx, edi
add ebp, eax
adc esi, ecx
add ebp, dword [esp + 0x48]
adc esi, dword [esp + 0x4c]
mov eax, dword [esp + 0x88]
mov dword [esp + 0x24], esi
add eax, 6
push 0x13
and eax, 0xf
mov dword [esp + 0x24], ebp
xor ebp, ebp
mov ecx, dword [esp + eax*8 + 0xbc]
lea eax, [esp + eax*8 + 0xbc]
mov dword [esp + 0x14], eax
mov dword [esp + 0x6c], ecx
mov eax, dword [eax + 4]
pop ecx
mov dword [esp + 0x6c], eax
mov eax, dword [esp + 0xa0]
mov esi, dword [eax]
mov edi, dword [eax + 4]
mov ebx, esi
mov eax, esi
mov edx, edi
mov dword [esp + 0x7c], esi
mov dword [esp + 0x80], edi
shl ebx, 0xd
call fcn.1008bfa0
or ebx, edx
push 3
mov dword [esp + 0x64], ebx
mov ebx, edi
shr ebx, 0x1d
or ebp, eax
mov dword [esp + 0x78], ebx
pop ecx
mov eax, esi
mov edx, edi
xor ebx, ebx
call fcn.1008bfc0
mov ecx, dword [esp + 0x74]
mov esi, dword [esp + 0x60]
or ecx, eax
mov eax, dword [esp + 0x7c]
push 6
or ebx, edx
xor ebp, ecx
pop ecx
mov edx, edi
xor esi, ebx
call fcn.1008bfa0
xor esi, edx
mov edx, dword [esp + 0x6c]
mov dword [esp + 0x64], esi
mov esi, dword [esp + 0x68]
push 8
xor ebp, eax
mov edi, esi
pop ecx
mov eax, esi
mov dword [esp + 0x60], ebp
xor ebx, ebx
shl edi, 0x18
call fcn.1008bfa0
or edi, edx
mov edx, dword [esp + 0x6c]
push 1
or ebx, eax
mov ebp, esi
mov dword [esp + 0x78], edi
pop ecx
mov eax, esi
xor edi, edi
shl ebp, 0x1f
call fcn.1008bfa0
mov esi, dword [esp + 0x74]
push 7
or edi, eax
mov eax, dword [esp + 0x6c]
or ebp, edx
mov edx, dword [esp + 0x70]
pop ecx
xor ebx, edi
xor esi, ebp
call fcn.1008bfa0
mov ecx, dword [esp + 0x60]
xor ebx, eax
mov eax, dword [esp + 0x84]
xor esi, edx
mov edx, dword [esp + 0x64]
add ecx, ebx
adc edx, esi
add ecx, dword [eax]
mov ebp, dword [esp + 0x1c]
mov ebx, dword [esp + 0x18]
adc edx, dword [eax + 4]
mov eax, dword [esp + 0x14]
push 0x17
mov esi, ebp
add dword [eax], ecx
pop ecx
adc dword [eax + 4], edx
mov eax, ebx
mov edx, ebp
xor edi, edi
shr esi, 9
call fcn.1008bfc0
or edi, edx
mov edx, ebx
or esi, eax
xor eax, eax
shl edx, 0xe
push 0x12
mov dword [esp + 0x88], eax
mov dword [esp + 0x78], edx
pop ecx
mov eax, ebx
mov edx, ebp
call fcn.1008bfa0
mov ecx, dword [esp + 0x84]
push 0xe
or ecx, eax
mov eax, dword [esp + 0x78]
or eax, edx
mov edx, dword [esp + 0x20]
xor esi, ecx
xor edi, eax
mov eax, ebx
pop ecx
xor ebp, ebp
shl ebx, 0x12
call fcn.1008bfa0
mov ecx, dword [esp + 0x1c]
or ebp, eax
mov eax, dword [esp + 0x18]
or ebx, edx
mov edx, dword [esp + 0x50]
xor edi, ebx
mov ebx, dword [esp + 0x54]
and edx, dword [esp + 0x18]
and ebx, dword [esp + 0x1c]
xor esi, ebp
not eax
and eax, dword [esp + 0x58]
not ecx
and ecx, dword [esp + 0x5c]
xor eax, edx
xor ecx, ebx
add esi, eax
mov eax, dword [esp + 0x8c]
adc edi, ecx
add esi, dword [eax + 0x28]
adc edi, dword [eax + 0x2c]
mov eax, dword [esp + 0x14]
add esi, dword [eax]
adc edi, dword [eax + 4]
add esi, dword [esp + 0x40]
adc edi, dword [esp + 0x44]
add dword [esp + 0x28], esi
mov dword [esp + 0x48], esi
mov esi, dword [esp + 0x20]
mov ebx, esi
mov dword [esp + 0x4c], edi
adc dword [esp + 0x2c], edi
xor ebp, ebp
shl ebx, 4
mov edi, dword [esp + 0x24]
push 0x1c
pop ecx
mov eax, esi
mov edx, edi
call fcn.1008bfa0
or ebx, edx
push 0x1e
mov dword [esp + 0x78], ebx
mov ebx, edi
shr ebx, 2
or ebp, eax
mov dword [esp + 0x88], ebx
pop ecx
mov eax, esi
mov edx, edi
xor ebx, ebx
call fcn.1008bfc0
mov ecx, dword [esp + 0x84]
mov esi, dword [esp + 0x74]
or ecx, eax
mov eax, dword [esp + 0x20]
or ebx, edx
push 0x19
xor ebp, ecx
xor esi, ebx
mov edx, edi
pop ecx
shr edi, 7
xor ebx, ebx
call fcn.1008bfc0
mov ecx, dword [esp + 0x3c]
or edi, eax
mov eax, dword [esp + 0x38]
xor ecx, dword [esp + 0x24]
xor eax, dword [esp + 0x20]
or ebx, edx
mov edx, dword [esp + 0x38]
and ecx, dword [esp + 0x34]
and eax, dword [esp + 0x30]
and edx, dword [esp + 0x20]
xor ebp, edi
mov edi, dword [esp + 0x3c]
and edi, dword [esp + 0x24]
xor eax, edx
xor esi, ebx
push 0x13
xor ecx, edi
add ebp, eax
mov eax, dword [esp + 0x8c]
adc esi, ecx
add ebp, dword [esp + 0x4c]
adc esi, dword [esp + 0x50]
add eax, 7
and eax, 0xf
mov dword [esp + 0x44], ebp
mov dword [esp + 0x48], esi
xor ebp, ebp
mov ecx, dword [esp + eax*8 + 0xbc]
mov dword [esp + 0x6c], ecx
pop ecx
mov eax, dword [esp + eax*8 + 0xbc]
mov dword [esp + 0x6c], eax
mov eax, dword [esp + 0xa4]
mov esi, dword [eax]
mov edi, dword [eax + 4]
mov ebx, esi
mov eax, esi
mov edx, edi
mov dword [esp + 0x7c], esi
mov dword [esp + 0x80], edi
shl ebx, 0xd
call fcn.1008bfa0
or ebx, edx
or ebp, eax
mov dword [esp + 0x74], ebx
mov ebx, edi
shr ebx, 0x1d
mov dword [esp + 0x84], ebx
xor ebx, ebx
push 3
pop ecx
mov eax, esi
mov edx, edi
call fcn.1008bfc0
mov ecx, dword [esp + 0x84]
mov esi, dword [esp + 0x74]
or ecx, eax
mov eax, dword [esp + 0x7c]
push 6
or ebx, edx
xor ebp, ecx
pop ecx
mov edx, edi
xor esi, ebx
call fcn.1008bfa0
xor esi, edx
mov edx, dword [esp + 0x6c]
mov dword [esp + 0x60], esi
mov esi, dword [esp + 0x68]
push 8
xor ebp, eax
mov edi, esi
pop ecx
mov eax, esi
mov dword [esp + 0x74], ebp
xor ebx, ebx
shl edi, 0x18
call fcn.1008bfa0
or edi, edx
mov edx, dword [esp + 0x6c]
push 1
or ebx, eax
mov ebp, esi
mov dword [esp + 0x88], edi
pop ecx
mov eax, esi
xor edi, edi
shl ebp, 0x1f
call fcn.1008bfa0
mov esi, dword [esp + 0x84]
push 7
or edi, eax
mov eax, dword [esp + 0x6c]
or ebp, edx
mov edx, dword [esp + 0x70]
pop ecx
xor ebx, edi
xor esi, ebp
call fcn.1008bfa0
mov ecx, dword [esp + 0x74]
xor ebx, eax
mov eax, dword [esp + 0xa8]
xor esi, edx
mov edx, dword [esp + 0x60]
add ecx, ebx
adc edx, esi
add ecx, dword [eax]
mov ebp, dword [esp + 0x2c]
mov ebx, dword [esp + 0x28]
adc edx, dword [eax + 4]
mov eax, dword [esp + 0x10]
push 0x17
mov esi, ebp
add dword [eax], ecx
pop ecx
adc dword [eax + 4], edx
mov eax, ebx
mov edx, ebp
xor edi, edi
shr esi, 9
call fcn.1008bfc0
or edi, edx
or esi, eax
mov edx, ebx
xor eax, eax
shl edx, 0xe
push 0x12
mov dword [esp + 0x88], eax
pop ecx
mov eax, ebx
mov dword [esp + 0x74], edx
mov edx, ebp
call fcn.1008bfa0
mov ecx, dword [esp + 0x84]
push 0xe
or ecx, eax
mov eax, dword [esp + 0x78]
or eax, edx
mov edx, dword [esp + 0x30]
xor esi, ecx
xor edi, eax
mov eax, ebx
pop ecx
xor ebp, ebp
shl ebx, 0x12
call fcn.1008bfa0
mov ecx, dword [esp + 0x2c]
or ebp, eax
mov eax, dword [esp + 0x28]
or ebx, edx
mov edx, dword [esp + 0x18]
xor edi, ebx
mov ebx, dword [esp + 0x1c]
and edx, dword [esp + 0x28]
and ebx, dword [esp + 0x2c]
xor esi, ebp
not eax
and eax, dword [esp + 0x50]
push 0x1c
not ecx
and ecx, dword [esp + 0x58]
xor eax, edx
xor ecx, ebx
add esi, eax
mov eax, dword [esp + 0x90]
adc edi, ecx
pop ecx
add esi, dword [eax + 0x30]
adc edi, dword [eax + 0x34]
mov eax, dword [esp + 0x10]
add esi, dword [eax]
adc edi, dword [eax + 4]
add esi, dword [esp + 0x58]
adc edi, dword [esp + 0x5c]
add dword [esp + 0x30], esi
mov dword [esp + 0x48], esi
mov esi, dword [esp + 0x40]
mov dword [esp + 0x4c], edi
mov ebx, esi
adc dword [esp + 0x34], edi
mov edi, dword [esp + 0x44]
mov eax, esi
mov edx, edi
xor ebp, ebp
shl ebx, 4
call fcn.1008bfa0
or ebx, edx
push 0x1e
mov dword [esp + 0x78], ebx
mov ebx, edi
shr ebx, 2
or ebp, eax
mov dword [esp + 0x88], ebx
pop ecx
mov eax, esi
mov edx, edi
xor ebx, ebx
call fcn.1008bfc0
mov ecx, dword [esp + 0x84]
mov esi, dword [esp + 0x74]
or ecx, eax
mov eax, dword [esp + 0x40]
or ebx, edx
push 0x19
xor ebp, ecx
xor esi, ebx
mov edx, edi
pop ecx
shr edi, 7
xor ebx, ebx
call fcn.1008bfc0
or edi, eax
mov eax, dword [esp + 0x20]
mov ecx, dword [esp + 0x44]
xor eax, dword [esp + 0x40]
or ebx, edx
mov edx, dword [esp + 0x24]
xor ebp, edi
mov edi, dword [esp + 0x20]
and eax, dword [esp + 0x38]
and edi, dword [esp + 0x40]
xor esi, ebx
mov ebx, dword [esp + 0x24]
xor edx, ecx
and edx, dword [esp + 0x3c]
and ebx, ecx
xor eax, edi
xor edx, ebx
add ebp, eax
mov eax, dword [esp + 0x88]
adc esi, edx
add ebp, dword [esp + 0x48]
adc esi, dword [esp + 0x4c]
add dword [esp + 0x8c], 0x40
add eax, 8
mov dword [esp + 0x58], ebp
mov dword [esp + 0x5c], esi
mov dword [esp + 0x88], eax
lea edx, [eax - 1]
cmp edx, 0x50
jl 0x10058b2f
mov eax, dword [esp + 0x138]
mov edx, dword [esp + 0x13c]
add eax, ebp
mov edi, dword [esp + 0x78]
adc edx, esi
mov esi, dword [esp + 0x174]
mov dword [esi], eax
mov eax, dword [esp + 0x168]
add eax, dword [esp + 0x40]
mov dword [esi + 4], edx
mov edx, dword [esp + 0x16c]
mov dword [esi + 8], eax
mov eax, dword [esp + 0x160]
adc edx, ecx
add eax, dword [esp + 0x20]
mov ecx, dword [esp + 0x164]
mov dword [esi + 0xc], edx
adc ecx, dword [esp + 0x24]
mov dword [esi + 0x10], eax
mov eax, dword [esp + 0x150]
add eax, dword [esp + 0x38]
mov dword [esi + 0x14], ecx
mov ecx, dword [esp + 0x154]
adc ecx, dword [esp + 0x3c]
mov dword [esi + 0x18], eax
mov eax, dword [esp + 0x140]
add eax, dword [esp + 0x30]
mov dword [esi + 0x1c], ecx
mov ecx, dword [esp + 0x144]
adc ecx, dword [esp + 0x34]
mov dword [esi + 0x20], eax
mov eax, dword [esp + 0x148]
add eax, dword [esp + 0x28]
mov dword [esi + 0x24], ecx
mov ecx, dword [esp + 0x14c]
adc ecx, dword [esp + 0x2c]
mov dword [esi + 0x28], eax
mov eax, dword [esp + 0x158]
add eax, dword [esp + 0x18]
mov dword [esi + 0x2c], ecx
mov ecx, dword [esp + 0x15c]
adc ecx, dword [esp + 0x1c]
mov dword [esi + 0x30], eax
mov eax, dword [esp + 0xb0]
add eax, dword [esp + 0x50]
mov dword [esi + 0x34], ecx
mov ecx, dword [esp + 0xb4]
adc ecx, dword [esp + 0x54]
add edi, 0x80
dec dword [esp + 0xac]
mov dword [esi + 0x38], eax
mov dword [esi + 0x3c], ecx
mov dword [esp + 0x78], edi
jne 0x1005671f
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x160
ret