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

Disassembly:
mov eax, 0x164
call fcn.1004a0b0
mov eax, dword [esp + 0x170]
mov ecx, eax
dec eax
test ecx, ecx
je 0x10043c1b
mov edx, dword [esp + 0x16c]
push ebx
push ebp
push esi
mov esi, dword [esp + 0x174]
push edi
lea edi, [edx + 2]
inc eax
mov dword [esp + 0x78], edi
mov dword [esp + 0xb0], eax
mov eax, dword [esi]
mov ecx, dword [esi + 4]
mov dword [esp + 0x13c], eax
mov dword [esp + 0x58], eax
mov eax, dword [esi + 8]
mov dword [esp + 0x140], ecx
mov dword [esp + 0x16c], eax
mov dword [esp + 0x40], eax
mov eax, dword [esi + 0x10]
mov dword [esp + 0x5c], ecx
mov ecx, dword [esi + 0xc]
mov dword [esp + 0x164], eax
mov dword [esp + 0x30], eax
mov eax, dword [esi + 0x24]
mov dword [esp + 0x148], eax
mov dword [esp + 0x24], eax
mov eax, dword [esi + 0x28]
mov dword [esp + 0x170], ecx
mov dword [esp + 0x44], ecx
mov ecx, dword [esi + 0x14]
mov ebx, dword [esi + 0x20]
mov dword [esp + 0x14c], eax
mov dword [esp + 0x28], eax
mov eax, dword [esi + 0x30]
mov dword [esp + 0x168], ecx
mov dword [esp + 0x34], ecx
mov ecx, dword [esi + 0x2c]
mov dword [esp + 0x15c], eax
mov dword [esp + 0x38], eax
xor eax, eax
mov al, byte [edi - 2]
mov dword [esp + 0x150], ecx
mov dword [esp + 0x2c], ecx
mov ecx, dword [esi + 0x34]
mov dword [esp + 0x160], ecx
mov dword [esp + 0x3c], ecx
cdq
mov ecx, 8
mov dword [esp + 0x144], ebx
mov dword [esp + 0x20], ebx
call fcn.1004a550
mov ebp, eax
xor eax, eax
mov al, byte [edi - 1]
mov dword [esp + 0x10], ebp
mov ebp, edx
mov ecx, 8
cdq
mov dword [esp + 0x14], ebp
mov ebp, dword [esp + 0x10]
or eax, ebp
mov ebp, dword [esp + 0x14]
or ebp, edx
mov edx, ebp
call fcn.1004a550
mov ebp, eax
xor eax, eax
mov al, byte [edi]
mov dword [esp + 0x10], ebp
mov ebp, edx
mov ecx, 8
cdq
mov dword [esp + 0x14], ebp
mov ebp, dword [esp + 0x10]
or eax, ebp
mov ebp, dword [esp + 0x14]
or ebp, edx
mov edx, ebp
call fcn.1004a550
mov ebp, eax
xor eax, eax
mov al, byte [edi + 1]
mov dword [esp + 0x10], ebp
mov ebp, edx
mov ecx, 8
cdq
mov dword [esp + 0x14], ebp
mov ebp, dword [esp + 0x10]
or eax, ebp
mov ebp, dword [esp + 0x14]
or ebp, edx
mov edx, ebp
call fcn.1004a550
mov ebp, eax
xor eax, eax
mov al, byte [edi + 2]
mov dword [esp + 0x10], ebp
mov ebp, edx
mov ecx, 8
cdq
mov dword [esp + 0x14], ebp
mov ebp, dword [esp + 0x10]
or eax, ebp
mov ebp, dword [esp + 0x14]
or ebp, edx
mov edx, ebp
call fcn.1004a550
mov ebp, eax
xor eax, eax
mov al, byte [edi + 3]
mov dword [esp + 0x10], ebp
mov ebp, edx
mov ecx, 8
cdq
mov dword [esp + 0x14], ebp
mov ebp, dword [esp + 0x10]
or eax, ebp
mov ebp, dword [esp + 0x14]
or ebp, edx
mov edx, ebp
call fcn.1004a550
mov ebp, eax
xor eax, eax
mov al, byte [edi + 4]
mov dword [esp + 0x10], ebp
mov ebp, edx
mov ecx, 8
cdq
mov dword [esp + 0x14], ebp
mov ebp, dword [esp + 0x10]
or eax, ebp
mov ebp, dword [esp + 0x14]
or ebp, edx
mov edx, ebp
call fcn.1004a550
mov ecx, eax
xor eax, eax
mov al, byte [edi + 5]
mov ebp, edx
cdq
or ecx, eax
mov eax, dword [esi + 0x38]
or ebp, edx
mov dword [esp + 0xbc], ecx
mov ecx, dword [esi + 0x3c]
mov dword [esp + 0xc0], ebp
mov ebp, dword [esp + 0x24]
mov dword [esp + 0xb4], eax
mov dword [esp + 0xb8], ecx
mov esi, ebp
mov ecx, 0x17
mov eax, ebx
mov edx, ebp
xor edi, edi
shr esi, 9
call fcn.1004a550
or edi, edx
mov edx, ebx
or esi, eax
xor eax, eax
shl edx, 0xe
mov dword [esp + 0x10], eax
mov dword [esp + 0x14], edx
mov ecx, 0x12
mov eax, ebx
mov edx, ebp
call fcn.1004a530
mov ecx, dword [esp + 0x10]
or ecx, eax
mov eax, dword [esp + 0x14]
or eax, edx
xor esi, ecx
mov edx, dword [esp + 0x24]
xor edi, eax
mov eax, ebx
mov ecx, 0xe
xor ebp, ebp
shl ebx, 0x12
call fcn.1004a530
mov ecx, dword [esp + 0x24]
or ebp, eax
mov eax, dword [esp + 0x20]
or ebx, edx
mov edx, eax
xor esi, ebp
mov ebp, dword [esp + 0x38]
xor edi, ebx
not edx
mov ebx, ecx
and edx, ebp
mov ebp, dword [esp + 0x3c]
not ebx
and ebx, ebp
mov ebp, dword [esp + 0x28]
and ebp, eax
mov eax, dword [esp + 0x2c]
and eax, ecx
xor edx, ebp
mov ebp, dword [esp + 0xb8]
xor ebx, eax
mov eax, dword [esp + 0xb4]
mov ecx, dword [esp + 0xbc]
add esi, edx
mov edx, dword [0x10059774]
adc edi, ebx
mov ebx, dword [0x10059770]
add esi, eax
mov eax, dword [esp + 0xc0]
adc edi, ebp
add esi, ebx
adc edi, edx
add esi, ecx
mov ecx, dword [esp + 0x178]
mov ebx, dword [esp + 0x58]
adc edi, eax
mov edx, dword [esp + 0x44]
mov eax, dword [ecx + 0x18]
mov ecx, dword [ecx + 0x1c]
mov dword [esp + 0x154], eax
add eax, esi
mov dword [esp + 0x48], eax
mov eax, ecx
mov dword [esp + 0x158], ecx
mov ecx, dword [esp + 0x40]
adc eax, edi
mov ebp, dword [esp + 0x5c]
mov dword [esp + 0x4c], eax
mov eax, ecx
xor eax, ebx
mov dword [esp + 0x18], esi
mov dword [esp + 0x9c], eax
mov eax, edx
xor eax, ebp
mov esi, ebx
mov dword [esp + 0xa0], eax
mov eax, ecx
and eax, ebx
mov dword [esp + 0x1c], edi
mov dword [esp + 0x94], eax
mov eax, edx
and eax, ebp
mov ecx, 0x1c
mov dword [esp + 0x98], eax
mov eax, ebx
mov edx, ebp
xor edi, edi
shl esi, 4
call fcn.1004a530
or esi, edx
mov edx, ebp
or edi, eax
shr edx, 2
xor eax, eax
mov dword [esp + 0x14], eax
mov dword [esp + 0x10], edx
mov ecx, 0x1e
mov eax, ebx
mov edx, ebp
call fcn.1004a550
mov ecx, dword [esp + 0x10]
or ecx, eax
mov eax, dword [esp + 0x14]
or eax, edx
mov edx, ebp
xor edi, ecx
xor esi, eax
mov eax, dword [esp + 0x58]
mov ebx, edx
mov ecx, 0x19
xor ebp, ebp
shr ebx, 7
call fcn.1004a550
mov ecx, dword [esp + 0x9c]
or ebp, edx
mov edx, dword [esp + 0x30]
or ebx, eax
mov eax, dword [esp + 0x34]
and ecx, edx
mov edx, dword [esp + 0xa0]
xor esi, ebp
mov ebp, dword [esp + 0x94]
xor edi, ebx
mov ebx, dword [esp + 0x98]
and edx, eax
xor ecx, ebp
xor edx, ebx
mov ebx, dword [esp + 0x18]
add edi, ecx
adc esi, edx
mov edx, dword [esp + 0x1c]
add edi, ebx
mov ecx, 8
adc esi, edx
xor eax, eax
mov dword [esp + 0x54], esi
mov esi, dword [esp + 0x78]
mov dword [esp + 0x50], edi
mov al, byte [esi + 6]
cdq
call fcn.1004a550
mov edi, eax
xor eax, eax
mov al, byte [esi + 7]
mov ebx, edx
cdq
or edi, eax
or ebx, edx
mov ecx, 8
mov eax, edi
mov edx, ebx
call fcn.1004a550
mov edi, eax
xor eax, eax
mov al, byte [esi + 8]
mov ebx, edx
cdq
or edi, eax
or ebx, edx
mov ecx, 8
mov eax, edi
mov edx, ebx
call fcn.1004a550
mov edi, eax
xor eax, eax
mov al, byte [esi + 9]
mov ebx, edx
cdq
or edi, eax
or ebx, edx
mov ecx, 8
mov eax, edi
mov edx, ebx
call fcn.1004a550
mov edi, eax
xor eax, eax
mov ebx, edx
mov al, byte [esi + 0xa]
mov ecx, 8
cdq
or edi, eax
or ebx, edx
mov eax, edi
mov edx, ebx
call fcn.1004a550
mov edi, eax
xor eax, eax
mov al, byte [esi + 0xb]
mov ebx, edx
cdq
or edi, eax
or ebx, edx
mov ecx, 8
mov eax, edi
mov edx, ebx
call fcn.1004a550
mov edi, eax
xor eax, eax
mov al, byte [esi + 0xc]
mov ebx, edx
cdq
or edi, eax
or ebx, edx
mov ecx, 8
mov eax, edi
mov edx, ebx
call fcn.1004a550
mov ecx, eax
mov ebp, dword [esp + 0x4c]
xor eax, eax
mov ebx, dword [esp + 0x48]
mov al, byte [esi + 0xd]
mov edi, edx
cdq
or ecx, eax
or edi, edx
mov dword [esp + 0xc4], ecx
mov esi, ebp
mov dword [esp + 0xc8], edi
mov ecx, 0x17
mov eax, ebx
mov edx, ebp
shr esi, 9
xor edi, edi
call fcn.1004a550
or edi, edx
mov edx, ebx
or esi, eax
xor eax, eax
shl edx, 0xe
mov dword [esp + 0x10], eax
mov dword [esp + 0x14], edx
mov ecx, 0x12
mov eax, ebx
mov edx, ebp
call fcn.1004a530
mov ecx, dword [esp + 0x10]
xor ebp, ebp
or ecx, eax
mov eax, dword [esp + 0x14]
or eax, edx
mov edx, dword [esp + 0x4c]
xor esi, ecx
xor edi, eax
mov eax, ebx
mov ecx, 0xe
shl ebx, 0x12
call fcn.1004a530
mov ecx, dword [esp + 0x4c]
or ebp, eax
mov eax, dword [esp + 0x48]
or ebx, edx
mov edx, eax
xor esi, ebp
xor edi, ebx
not edx
mov ebp, dword [esp + 0x28]
mov ebx, ecx
and edx, ebp
mov ebp, dword [esp + 0x2c]
not ebx
and ebx, ebp
mov ebp, dword [esp + 0x20]
and ebp, eax
mov eax, dword [esp + 0x24]
and eax, ecx
xor edx, ebp
mov ebp, dword [0x10059778]
mov ecx, dword [esp + 0xc8]
xor ebx, eax
mov eax, dword [esp + 0x38]
add esi, edx
mov edx, dword [esp + 0xc4]
adc edi, ebx
mov ebx, dword [0x1005977c]
add esi, ebp
mov ebp, dword [esp + 0x3c]
adc edi, ebx
mov ebx, dword [esp + 0x30]
add esi, edx
adc edi, ecx
add esi, eax
adc edi, ebp
mov ebp, dword [esp + 0x54]
mov dword [esp + 0x18], esi
add ebx, esi
mov esi, dword [esp + 0x34]
mov dword [esp + 0x30], ebx
mov ebx, dword [esp + 0x50]
mov dword [esp + 0x1c], edi
adc esi, edi
mov ecx, 0x1c
mov dword [esp + 0x34], esi
mov esi, ebx
mov eax, ebx
mov edx, ebp
xor edi, edi
shl esi, 4
call fcn.1004a530
or esi, edx
mov edx, ebp
or edi, eax
xor eax, eax
shr edx, 2
mov dword [esp + 0x14], eax
mov dword [esp + 0x10], edx
mov ecx, 0x1e
mov eax, ebx
mov edx, ebp
call fcn.1004a550
mov ecx, dword [esp + 0x10]
or ecx, eax
mov eax, dword [esp + 0x14]
or eax, edx
mov edx, ebp
xor edi, ecx
xor esi, eax
mov eax, dword [esp + 0x50]
mov ebx, edx
mov ecx, 0x19
xor ebp, ebp
shr ebx, 7
call fcn.1004a550
mov ecx, dword [esp + 0xa0]
or ebx, eax
mov eax, dword [esp + 0x9c]
or ebp, edx
mov edx, dword [esp + 0x54]
xor edi, ebx
mov ebx, dword [esp + 0x50]
xor esi, ebp
mov ebp, dword [esp + 0x94]
and eax, ebx
mov ebx, dword [esp + 0x98]
and ecx, edx
xor eax, ebp
xor ecx, ebx
mov ebx, dword [esp + 0x18]
mov edx, dword [esp + 0x1c]
add edi, eax
adc esi, ecx
add edi, ebx
adc esi, edx
xor eax, eax
mov dword [esp + 0x3c], esi
mov esi, dword [esp + 0x78]
mov ecx, 8
mov dword [esp + 0x38], edi
mov al, byte [esi + 0xe]
cdq
call fcn.1004a550
mov edi, eax
xor eax, eax
mov al, byte [esi + 0xf]
mov ebx, edx
cdq
or edi, eax
or ebx, edx
mov ecx, 8
mov eax, edi
mov edx, ebx
call fcn.1004a550
mov edi, eax
xor eax, eax
mov al, byte [esi + 0x10]
mov ebx, edx
cdq
or edi, eax
or ebx, edx
mov ecx, 8
mov eax, edi
mov edx, ebx
call fcn.1004a550
mov edi, eax
xor eax, eax
mov al, byte [esi + 0x11]
mov ebx, edx
cdq
or edi, eax
or ebx, edx
mov ecx, 8
mov eax, edi
mov edx, ebx
call fcn.1004a550
mov edi, eax
xor eax, eax
mov al, byte [esi + 0x12]
mov ebx, edx
cdq
or edi, eax
or ebx, edx
mov ecx, 8
mov eax, edi
mov edx, ebx
call fcn.1004a550
mov edi, eax
xor eax, eax
mov al, byte [esi + 0x13]
mov ebx, edx
cdq
or edi, eax
or ebx, edx
mov ecx, 8
mov eax, edi
mov edx, ebx
call fcn.1004a550
mov edi, eax
xor eax, eax
mov al, byte [esi + 0x14]
mov ebx, edx
cdq
or edi, eax
or ebx, edx
mov ecx, 8
mov eax, edi
mov edx, ebx
call fcn.1004a550
mov ecx, eax
mov ebp, dword [esp + 0x34]
xor eax, eax
mov al, byte [esi + 0x15]
mov ebx, dword [esp + 0x30]
mov edi, edx
mov esi, ebp
cdq
or ecx, eax
or edi, edx
mov dword [esp + 0xcc], ecx
mov dword [esp + 0xd0], edi
mov ecx, 0x17
mov eax, ebx
mov edx, ebp
xor edi, edi
shr esi, 9
call fcn.1004a550
or edi, edx
mov edx, ebx
or esi, eax
xor eax, eax
shl edx, 0xe
mov dword [esp + 0x10], eax
mov dword [esp + 0x14], edx
mov ecx, 0x12
mov eax, ebx
mov edx, ebp
call fcn.1004a530
mov ecx, dword [esp + 0x10]
xor ebp, ebp
or ecx, eax
mov eax, dword [esp + 0x14]
or eax, edx
mov edx, dword [esp + 0x34]
xor esi, ecx
xor edi, eax
mov eax, ebx
mov ecx, 0xe
shl ebx, 0x12
call fcn.1004a530
mov ecx, dword [esp + 0x34]
or ebp, eax
mov eax, dword [esp + 0x30]
or ebx, edx
mov edx, eax
xor esi, ebp
mov ebp, dword [esp + 0x20]
xor edi, ebx
not edx
mov ebx, ecx
and edx, ebp
mov ebp, dword [esp + 0x24]
not ebx
and ebx, ebp
mov ebp, dword [esp + 0x48]
and ebp, eax
mov eax, dword [esp + 0x4c]
and eax, ecx
xor edx, ebp
mov ebp, dword [0x10059780]
mov ecx, dword [esp + 0xd0]
xor ebx, eax
mov eax, dword [esp + 0x28]
add esi, edx
mov edx, dword [esp + 0xcc]
adc edi, ebx
mov ebx, dword [0x10059784]
add esi, ebp
mov ebp, dword [esp + 0x2c]
adc edi, ebx
mov ebx, dword [esp + 0x40]
add esi, edx
adc edi, ecx
add esi, eax
adc edi, ebp
mov dword [esp + 0x18], esi
add ebx, esi
mov esi, dword [esp + 0x44]
mov dword [esp + 0x1c], edi
mov dword [esp + 0x40], ebx
adc esi, edi
mov ebx, dword [esp + 0x38]
mov ebp, dword [esp + 0x3c]
mov dword [esp + 0x44], esi
mov esi, ebx
mov ecx, 0x1c
mov eax, ebx
mov edx, ebp
xor edi, edi
shl esi, 4
call fcn.1004a530
or esi, edx
mov edx, ebp
or edi, eax
xor eax, eax
shr edx, 2
mov dword [esp + 0x14], eax
mov dword [esp + 0x10], edx
mov ecx, 0x1e
mov eax, ebx
mov edx, ebp
call fcn.1004a550
mov ecx, dword [esp + 0x10]
or ecx, eax
mov eax, dword [esp + 0x14]
or eax, edx
mov edx, ebp
xor edi, ecx
xor esi, eax
mov eax, dword [esp + 0x38]
mov ebx, edx
mov ecx, 0x19
xor ebp, ebp
shr ebx, 7
call fcn.1004a550
mov ecx, dword [esp + 0x5c]
or ebx, eax
mov eax, dword [esp + 0x58]
or ebp, edx
mov edx, dword [esp + 0x38]
xor edi, ebx
xor esi, ebp
mov ebp, dword [esp + 0x3c]
mov ebx, edx
xor ebp, ecx
and ebp, dword [esp + 0x54]
xor ebx, eax
and ebx, dword [esp + 0x50]
and edx, eax
mov eax, dword [esp + 0x3c]
and eax, ecx
xor ebx, edx
mov edx, dword [esp + 0x1c]
xor ebp, eax
add edi, ebx
mov ebx, dword [esp + 0x18]
adc esi, ebp
add edi, ebx
adc esi, edx
xor eax, eax
mov dword [esp + 0x2c], esi
mov esi, dword [esp + 0x78]
mov ecx, 8
mov dword [esp + 0x28], edi
mov al, byte [esi + 0x16]
cdq
call fcn.1004a550
mov edi, eax
xor eax, eax
mov al, byte [esi + 0x17]
mov ebx, edx
cdq
or edi, eax
or ebx, edx
mov ecx, 8
mov eax, edi
mov edx, ebx
call fcn.1004a550
mov edi, eax
xor eax, eax
mov al, byte [esi + 0x18]
mov ebx, edx
cdq
or edi, eax
or ebx, edx
mov ecx, 8
mov eax, edi
mov edx, ebx
call fcn.1004a550
mov edi, eax
xor eax, eax
mov al, byte [esi + 0x19]
mov ebx, edx
cdq
or edi, eax
or ebx, edx
mov ecx, 8
mov eax, edi
mov edx, ebx
call fcn.1004a550
mov edi, eax
xor eax, eax
mov al, byte [esi + 0x1a]
mov ebx, edx
cdq
or edi, eax
or ebx, edx
mov ecx, 8
mov eax, edi
mov edx, ebx
call fcn.1004a550
mov edi, eax
xor eax, eax
mov al, byte [esi + 0x1b]
mov ebx, edx
cdq
or edi, eax
or ebx, edx
mov ecx, 8
mov eax, edi
mov edx, ebx
call fcn.1004a550
mov edi, eax
xor eax, eax
mov al, byte [esi + 0x1c]
mov ebx, edx
cdq
or edi, eax
or ebx, edx
mov ecx, 8
mov eax, edi
mov edx, ebx
call fcn.1004a550
mov ecx, eax
mov ebp, dword [esp + 0x44]
xor eax, eax
mov ebx, dword [esp + 0x40]
mov al, byte [esi + 0x1d]
mov edi, edx
cdq
or ecx, eax
or edi, edx
mov dword [esp + 0xd4], ecx
mov esi, ebp
mov dword [esp + 0xd8], edi
mov ecx, 0x17
mov eax, ebx
mov edx, ebp
shr esi, 9
xor edi, edi
call fcn.1004a550
or edi, edx
mov edx, ebx
or esi, eax
xor eax, eax
shl edx, 0xe
mov dword [esp + 0x10], eax
mov dword [esp + 0x14], edx
mov ecx, 0x12
mov eax, ebx
mov edx, ebp
call fcn.1004a530
mov ecx, dword [esp + 0x10]
or ecx, eax
mov eax, dword [esp + 0x14]
or eax, edx
mov edx, dword [esp + 0x44]
xor esi, ecx
xor edi, eax
mov eax, ebx
mov ecx, 0xe
xor ebp, ebp
shl ebx, 0x12
call fcn.1004a530
mov ecx, dword [esp + 0x44]
or ebp, eax
mov eax, dword [esp + 0x40]
or ebx, edx
mov edx, eax
xor esi, ebp
mov ebp, dword [esp + 0x48]
xor edi, ebx
not edx
mov ebx, ecx
and edx, ebp
mov ebp, dword [esp + 0x4c]
not ebx
and ebx, ebp
mov ebp, dword [esp + 0x30]
and ebp, eax
mov eax, dword [esp + 0x34]
and eax, ecx
xor edx, ebp
mov ebp, dword [0x10059788]
mov ecx, dword [esp + 0xd8]
xor ebx, eax
mov eax, dword [esp + 0x20]
add esi, edx
mov edx, dword [esp + 0xd4]
adc edi, ebx
mov ebx, dword [0x1005978c]
add esi, ebp
mov ebp, dword [esp + 0x24]
adc edi, ebx
mov ebx, dword [esp + 0x58]
add esi, edx
adc edi, ecx
add esi, eax
adc edi, ebp
mov ebp, dword [esp + 0x2c]
mov dword [esp + 0x18], esi
add ebx, esi
mov esi, dword [esp + 0x5c]
mov dword [esp + 0x58], ebx
mov ebx, dword [esp + 0x28]
mov dword [esp + 0x1c], edi
adc esi, edi
mov ecx, 0x1c
mov dword [esp + 0x5c], esi
mov esi, ebx
mov eax, ebx
mov edx, ebp
xor edi, edi
shl esi, 4
call fcn.1004a530
or esi, edx
mov edx, ebp
or edi, eax
xor eax, eax
shr edx, 2
mov dword [esp + 0x14], eax
mov dword [esp + 0x10], edx
mov ecx, 0x1e
mov eax, ebx
mov edx, ebp
call fcn.1004a550
mov ecx, dword [esp + 0x10]
or ecx, eax
mov eax, dword [esp + 0x14]
or eax, edx
mov edx, ebp
xor edi, ecx
xor esi, eax
mov ebx, edx
mov eax, dword [esp + 0x28]
mov ecx, 0x19
shr ebx, 7
xor ebp, ebp
call fcn.1004a550
mov ecx, dword [esp + 0x28]
or ebx, eax
mov eax, dword [esp + 0x38]
or ebp, edx
mov edx, eax
xor edi, ebx
xor edx, ecx
mov ecx, dword [esp + 0x3c]
xor esi, ebp
mov ebp, dword [esp + 0x2c]
mov ebx, ecx
xor ebx, ebp
mov ebp, dword [esp + 0x50]
and edx, ebp
mov ebp, dword [esp + 0x54]
and ebx, ebp
mov ebp, dword [esp + 0x28]
and eax, ebp
mov ebp, dword [esp + 0x2c]
and ecx, ebp
xor edx, eax
xor ebx, ecx
add edi, edx
mov edx, dword [esp + 0x1c]
mov ecx, 8
adc esi, ebx
mov ebx, dword [esp + 0x18]
add edi, ebx
adc esi, edx
xor eax, eax
mov dword [esp + 0x24], esi
mov esi, dword [esp + 0x78]
mov dword [esp + 0x20], edi
mov al, byte [esi + 0x1e]
cdq
call fcn.1004a550
mov edi, eax
xor eax, eax
mov al, byte [esi + 0x1f]
mov ebx, edx
cdq
or edi, eax
or ebx, edx
mov ecx, 8
mov eax, edi
mov edx, ebx
call fcn.1004a550
mov edi, eax
xor eax, eax
mov al, byte [esi + 0x20]
mov ebx, edx
cdq
or edi, eax
or ebx, edx
mov ecx, 8
mov eax, edi
mov edx, ebx
call fcn.1004a550
mov edi, eax
xor eax, eax
mov al, byte [esi + 0x21]
mov ebx, edx
cdq
or edi, eax
or ebx, edx
mov ecx, 8
mov eax, edi
mov edx, ebx
call fcn.1004a550
mov edi, eax
xor eax, eax
mov al, byte [esi + 0x22]
mov ebx, edx
cdq
or edi, eax
or ebx, edx
mov ecx, 8
mov eax, edi
mov edx, ebx
call fcn.1004a550
mov edi, eax
xor eax, eax
mov al, byte [esi + 0x23]
mov ebx, edx
cdq
or edi, eax
or ebx, edx
mov ecx, 8
mov eax, edi
mov edx, ebx
call fcn.1004a550
mov edi, eax
xor eax, eax
mov al, byte [esi + 0x24]
mov ebx, edx
cdq
or edi, eax
or ebx, edx
mov ecx, 8
mov eax, edi
mov edx, ebx
call fcn.1004a550
mov ecx, eax
mov ebp, dword [esp + 0x5c]
xor eax, eax
mov ebx, dword [esp + 0x58]
mov al, byte [esi + 0x25]
mov edi, edx
cdq
or ecx, eax
or edi, edx
mov dword [esp + 0xdc], ecx
mov esi, ebp
mov dword [esp + 0xe0], edi
mov ecx, 0x17
mov eax, ebx
mov edx, ebp
shr esi, 9
xor edi, edi
call fcn.1004a550
or edi, edx
mov edx, ebx
or esi, eax
xor eax, eax
shl edx, 0xe
mov dword [esp + 0x10], eax
mov dword [esp + 0x14], edx
mov ecx, 0x12
mov eax, ebx
mov edx, ebp
call fcn.1004a530
mov ecx, dword [esp + 0x10]
xor ebp, ebp
or ecx, eax
mov eax, dword [esp + 0x14]
or eax, edx
mov edx, dword [esp + 0x5c]
xor esi, ecx
xor edi, eax
mov eax, ebx
mov ecx, 0xe
shl ebx, 0x12
call fcn.1004a530
mov ecx, dword [esp + 0x5c]
or ebp, eax
mov eax, dword [esp + 0x58]
or ebx, edx
mov edx, eax
xor esi, ebp
mov ebp, dword [esp + 0x30]
xor edi, ebx
not edx
mov ebx, ecx
and edx, ebp
mov ebp, dword [esp + 0x34]
not ebx
and ebx, ebp
mov ebp, dword [esp + 0x40]
and ebp, eax
mov eax, dword [esp + 0x44]
and eax, ecx
xor edx, ebp
mov ebp, dword [0x10059790]
mov ecx, dword [esp + 0xe0]
xor ebx, eax
mov eax, dword [esp + 0x48]
add esi, edx
mov edx, dword [esp + 0xdc]
adc edi, ebx
mov ebx, dword [0x10059794]
add esi, ebp
mov ebp, dword [esp + 0x4c]
adc edi, ebx
mov ebx, dword [esp + 0x50]
add esi, edx
adc edi, ecx
add esi, eax
adc edi, ebp
mov ebp, dword [esp + 0x24]
mov dword [esp + 0x18], esi
add ebx, esi
mov esi, dword [esp + 0x54]
mov dword [esp + 0x50], ebx
mov ebx, dword [esp + 0x20]
mov dword [esp + 0x1c], edi
adc esi, edi
mov ecx, 0x1c
mov dword [esp + 0x54], esi
mov esi, ebx
mov eax, ebx
mov edx, ebp
xor edi, edi
shl esi, 4
call fcn.1004a530
or esi, edx
mov edx, ebp
or edi, eax
xor eax, eax
shr edx, 2
mov dword [esp + 0x14], eax
mov dword [esp + 0x10], edx
mov ecx, 0x1e
mov eax, ebx
mov edx, ebp
call fcn.1004a550
mov ecx, dword [esp + 0x10]
or ecx, eax
mov eax, dword [esp + 0x14]
or eax, edx
mov edx, ebp
xor edi, ecx
xor esi, eax
mov eax, dword [esp + 0x20]
mov ebx, edx
mov ecx, 0x19
xor ebp, ebp
shr ebx, 7
call fcn.1004a550
mov ecx, dword [esp + 0x20]
or ebx, eax
mov eax, dword [esp + 0x28]
or ebp, edx
mov edx, eax
xor edi, ebx
xor edx, ecx
mov ecx, dword [esp + 0x2c]
xor esi, ebp
mov ebp, dword [esp + 0x24]
mov ebx, ecx
xor ebx, ebp
mov ebp, dword [esp + 0x38]
and edx, ebp
mov ebp, dword [esp + 0x3c]
and ebx, ebp
mov ebp, dword [esp + 0x20]
and eax, ebp
mov ebp, dword [esp + 0x24]
and ecx, ebp
xor edx, eax
xor ebx, ecx
add edi, edx
mov edx, dword [esp + 0x1c]
adc esi, ebx
mov ebx, dword [esp + 0x18]
add edi, ebx
mov ecx, 8
adc esi, edx
xor eax, eax
mov dword [esp + 0x4c], esi
mov esi, dword [esp + 0x78]
mov dword [esp + 0x48], edi
mov al, byte [esi + 0x26]
cdq
call fcn.1004a550
mov edi, eax
xor eax, eax
mov al, byte [esi + 0x27]
mov ebx, edx
cdq
or edi, eax
or ebx, edx
mov ecx, 8
mov eax, edi
mov edx, ebx
call fcn.1004a550
mov edi, eax
xor eax, eax
mov al, byte [esi + 0x28]
mov ebx, edx
cdq
or edi, eax
or ebx, edx
mov ecx, 8
mov eax, edi
mov edx, ebx
call fcn.1004a550
mov edi, eax
xor eax, eax
mov al, byte [esi + 0x29]
mov ebx, edx
cdq
or edi, eax
or ebx, edx
mov ecx, 8
mov eax, edi
mov edx, ebx
call fcn.1004a550
mov edi, eax
xor eax, eax
mov al, byte [esi + 0x2a]
mov ebx, edx
cdq
or edi, eax
or ebx, edx
mov ecx, 8
mov eax, edi
mov edx, ebx
call fcn.1004a550
mov edi, eax
xor eax, eax
mov al, byte [esi + 0x2b]
mov ebx, edx
cdq
or edi, eax
or ebx, edx
mov ecx, 8
mov eax, edi
mov edx, ebx
call fcn.1004a550
mov edi, eax
xor eax, eax
mov al, byte [esi + 0x2c]
mov ebx, edx
cdq
or edi, eax
or ebx, edx
mov ecx, 8
mov eax, edi
mov edx, ebx
call fcn.1004a550
mov ecx, eax
mov ebp, dword [esp + 0x54]
xor eax, eax
mov ebx, dword [esp + 0x50]
mov al, byte [esi + 0x2d]
mov edi, edx
cdq
or ecx, eax
or edi, edx
mov dword [esp + 0xe4], ecx
mov esi, ebp
mov dword [esp + 0xe8], edi
mov ecx, 0x17
mov eax, ebx
mov edx, ebp
shr esi, 9
xor edi, edi
call fcn.1004a550
or edi, edx
mov edx, ebx
or esi, eax
xor eax, eax
shl edx, 0xe
mov dword [esp + 0x10], eax
mov dword [esp + 0x14], edx
mov ecx, 0x12
mov eax, ebx
mov edx, ebp
call fcn.1004a530
mov ecx, dword [esp + 0x10]
xor ebp, ebp
or ecx, eax
mov eax, dword [esp + 0x14]
or eax, edx
mov edx, dword [esp + 0x54]
xor esi, ecx
xor edi, eax
mov eax, ebx
mov ecx, 0xe
shl ebx, 0x12
call fcn.1004a530
mov ecx, dword [esp + 0x54]
or ebp, eax
mov eax, dword [esp + 0x50]
or ebx, edx
mov edx, eax
xor esi, ebp
mov ebp, dword [esp + 0x40]
xor edi, ebx
not edx
mov ebx, ecx
and edx, ebp
mov ebp, dword [esp + 0x44]
not ebx
and ebx, ebp
mov ebp, dword [esp + 0x58]
and eax, ebp
mov ebp, dword [esp + 0x5c]
and ecx, ebp
mov ebp, dword [0x10059798]
xor edx, eax
xor ebx, ecx
mov ecx, dword [esp + 0xe8]
mov eax, dword [esp + 0x30]
add esi, edx
mov edx, dword [esp + 0xe4]
adc edi, ebx
mov ebx, dword [0x1005979c]
add esi, ebp
mov ebp, dword [esp + 0x34]
adc edi, ebx
mov ebx, dword [esp + 0x38]
add esi, edx
adc edi, ecx
add esi, eax
adc edi, ebp
add ebx, esi
mov dword [esp + 0x18], esi
mov dword [esp + 0x1c], edi
mov dword [esp + 0x38], ebx
mov esi, dword [esp + 0x3c]
mov ebx, dword [esp + 0x48]
mov ebp, dword [esp + 0x4c]
mov ecx, 0x1c
adc esi, edi
mov eax, ebx
mov dword [esp + 0x3c], esi
mov esi, ebx
mov edx, ebp
xor edi, edi
shl esi, 4
call fcn.1004a530
or esi, edx
mov edx, ebp
or edi, eax
xor eax, eax
shr edx, 2
mov dword [esp + 0x14], eax
mov dword [esp + 0x10], edx
mov ecx, 0x1e
mov eax, ebx
mov edx, ebp
call fcn.1004a550
mov ecx, dword [esp + 0x10]
or ecx, eax
mov eax, dword [esp + 0x14]
or eax, edx
mov edx, ebp
xor edi, ecx
xor esi, eax
mov eax, dword [esp + 0x48]
mov ebx, edx
mov ecx, 0x19
xor ebp, ebp
shr ebx, 7
call fcn.1004a550
mov ecx, dword [esp + 0x48]
or ebx, eax
mov eax, dword [esp + 0x20]
or ebp, edx
mov edx, eax
xor edi, ebx
xor edx, ecx
mov ecx, dword [esp + 0x24]
xor esi, ebp
mov ebp, dword [esp + 0x4c]
mov ebx, ecx
xor ebx, ebp
mov ebp, dword [esp + 0x28]
and edx, ebp
mov ebp, dword [esp + 0x2c]
and ebx, ebp
mov ebp, dword [esp + 0x48]
and eax, ebp
mov ebp, dword [esp + 0x4c]
and ecx, ebp
xor edx, eax
xor ebx, ecx
add edi, edx
mov edx, dword [esp + 0x1c]
mov ecx, 8
adc esi, ebx
mov ebx, dword [esp + 0x18]
add edi, ebx
adc esi, edx
xor eax, eax
mov dword [esp + 0x34], esi
mov esi, dword [esp + 0x78]
mov dword [esp + 0x30], edi
mov al, byte [esi + 0x2e]
cdq
call fcn.1004a550
mov edi, eax
xor eax, eax
mov al, byte [esi + 0x2f]
mov ebx, edx
cdq
or edi, eax
or ebx, edx
mov ecx, 8
mov eax, edi
mov edx, ebx
call fcn.1004a550
mov edi, eax
xor eax, eax
mov al, byte [esi + 0x30]
mov ebx, edx
cdq
or edi, eax
or ebx, edx
mov ecx, 8
mov eax, edi
mov edx, ebx
call fcn.1004a550
mov edi, eax
xor eax, eax
mov al, byte [esi + 0x31]
mov ebx, edx
cdq
or edi, eax
or ebx, edx
mov ecx, 8
mov eax, edi
mov edx, ebx
call fcn.1004a550
mov edi, eax
xor eax, eax
mov al, byte [esi + 0x32]
mov ebx, edx
cdq
or edi, eax
or ebx, edx
mov ecx, 8
mov eax, edi
mov edx, ebx
call fcn.1004a550
mov edi, eax
xor eax, eax
mov al, byte [esi + 0x33]
mov ebx, edx
cdq
or edi, eax
or ebx, edx
mov ecx, 8
mov eax, edi
mov edx, ebx
call fcn.1004a550
mov edi, eax
xor eax, eax
mov al, byte [esi + 0x34]
mov ebx, edx
cdq
or edi, eax
or ebx, edx
mov ecx, 8
mov eax, edi
mov edx, ebx
call fcn.1004a550
mov ecx, eax
mov ebp, dword [esp + 0x3c]
xor eax, eax
mov ebx, dword [esp + 0x38]
mov al, byte [esi + 0x35]
mov edi, edx
cdq
or ecx, eax
or edi, edx
mov dword [esp + 0xec], ecx
mov esi, ebp
mov dword [esp + 0xf0], edi
mov ecx, 0x17
mov eax, ebx
mov edx, ebp
shr esi, 9
xor edi, edi
call fcn.1004a550
or edi, edx
or esi, eax
mov edx, ebx
xor eax, eax
shl edx, 0xe
mov ecx, 0x12
mov dword [esp + 0x10], eax
mov dword [esp + 0x14], edx
mov eax, ebx
mov edx, ebp
call fcn.1004a530
mov ecx, dword [esp + 0x10]
xor ebp, ebp
or ecx, eax
mov eax, dword [esp + 0x14]
or eax, edx
mov edx, dword [esp + 0x3c]
xor esi, ecx
xor edi, eax
mov eax, ebx
mov ecx, 0xe
shl ebx, 0x12
call fcn.1004a530
mov ecx, dword [esp + 0x3c]
or ebp, eax
mov eax, dword [esp + 0x38]
or ebx, edx
mov edx, eax
xor esi, ebp
mov ebp, dword [esp + 0x58]
xor edi, ebx
not edx
mov ebx, ecx
and edx, ebp
mov ebp, dword [esp + 0x5c]
not ebx
and ebx, ebp
mov ebp, dword [esp + 0x50]
and ebp, eax
mov eax, dword [esp + 0x54]
and eax, ecx
xor edx, ebp
mov ebp, dword [0x100597a0]
mov ecx, dword [esp + 0xf0]
xor ebx, eax
mov eax, dword [esp + 0x40]
add esi, edx
mov edx, dword [esp + 0xec]
adc edi, ebx
mov ebx, dword [0x100597a4]
add esi, ebp
mov ebp, dword [esp + 0x44]
adc edi, ebx
mov ebx, dword [esp + 0x28]
add esi, edx
adc edi, ecx
add esi, eax
adc edi, ebp
mov ebp, dword [esp + 0x34]
mov dword [esp + 0x18], esi
add ebx, esi
mov esi, dword [esp + 0x2c]
mov dword [esp + 0x28], ebx
mov ebx, dword [esp + 0x30]
mov dword [esp + 0x1c], edi
adc esi, edi
mov ecx, 0x1c
mov dword [esp + 0x2c], esi
mov esi, ebx
mov eax, ebx
mov edx, ebp
xor edi, edi
shl esi, 4
call fcn.1004a530
or esi, edx
mov edx, ebp
or edi, eax
xor eax, eax
shr edx, 2
mov dword [esp + 0x14], eax
mov dword [esp + 0x10], edx
mov ecx, 0x1e
mov eax, ebx
mov edx, ebp
call fcn.1004a550
mov ecx, dword [esp + 0x10]
or ecx, eax
mov eax, dword [esp + 0x14]
xor edi, ecx
or eax, edx
mov edx, ebp
xor esi, eax
mov eax, dword [esp + 0x30]
mov ebx, edx
mov ecx, 0x19
shr ebx, 7
xor ebp, ebp
call fcn.1004a550
mov ecx, dword [esp + 0x30]
or ebx, eax
mov eax, dword [esp + 0x48]
or ebp, edx
mov edx, eax
xor edi, ebx
xor edx, ecx
mov ecx, dword [esp + 0x4c]
xor esi, ebp
mov ebp, dword [esp + 0x34]
mov ebx, ecx
xor ebx, ebp
mov ebp, dword [esp + 0x20]
and edx, ebp
mov ebp, dword [esp + 0x24]
and ebx, ebp
mov ebp, dword [esp + 0x30]
and eax, ebp
mov ebp, dword [esp + 0x34]
and ecx, ebp
xor edx, eax
xor ebx, ecx
add edi, edx
mov edx, dword [esp + 0x1c]
mov ecx, 8
adc esi, ebx
mov ebx, dword [esp + 0x18]
add edi, ebx
adc esi, edx
xor eax, eax
mov dword [esp + 0x44], esi
mov esi, dword [esp + 0x78]
mov dword [esp + 0x40], edi
mov al, byte [esi + 0x36]
cdq
call fcn.1004a550
mov edi, eax
xor eax, eax
mov al, byte [esi + 0x37]
mov ebx, edx
cdq
or edi, eax
or ebx, edx
mov ecx, 8
mov eax, edi
mov edx, ebx
call fcn.1004a550
mov edi, eax
xor eax, eax
mov al, byte [esi + 0x38]
mov ebx, edx
cdq
or edi, eax
or ebx, edx
mov ecx, 8
mov eax, edi
mov edx, ebx
call fcn.1004a550
mov edi, eax
xor eax, eax
mov al, byte [esi + 0x39]
mov ebx, edx
cdq
or edi, eax
or ebx, edx
mov ecx, 8
mov eax, edi
mov edx, ebx
call fcn.1004a550
mov edi, eax
xor eax, eax
mov ebx, edx
mov al, byte [esi + 0x3a]
mov ecx, 8
cdq
or edi, eax
or ebx, edx
mov eax, edi
mov edx, ebx
call fcn.1004a550
mov edi, eax
xor eax, eax
mov al, byte [esi + 0x3b]
mov ebx, edx
cdq
or edi, eax
or ebx, edx
mov ecx, 8
mov eax, edi
mov edx, ebx
call fcn.1004a550
mov edi, eax
xor eax, eax
mov al, byte [esi + 0x3c]
mov ebx, edx
cdq
or edi, eax
or ebx, edx
mov ecx, 8
mov eax, edi
mov edx, ebx
call fcn.1004a550
mov ecx, eax
mov ebp, dword [esp + 0x2c]
xor eax, eax
mov ebx, dword [esp + 0x28]
mov al, byte [esi + 0x3d]
mov edi, edx
cdq
or ecx, eax
or edi, edx
mov dword [esp + 0xf4], ecx
mov esi, ebp
mov dword [esp + 0xf8], edi
mov ecx, 0x17
mov eax, ebx
mov edx, ebp
shr esi, 9
xor edi, edi
call fcn.1004a550
or edi, edx
mov edx, ebx
or esi, eax
xor eax, eax
shl edx, 0xe
mov dword [esp + 0x10], eax
mov dword [esp + 0x14], edx
mov ecx, 0x12
mov eax, ebx
mov edx, ebp
call fcn.1004a530
mov ecx, dword [esp + 0x10]
xor ebp, ebp
or ecx, eax
mov eax, dword [esp + 0x14]
or eax, edx
mov edx, dword [esp + 0x2c]
xor esi, ecx
xor edi, eax
mov eax, ebx
mov ecx, 0xe
shl ebx, 0x12
call fcn.1004a530
mov ecx, dword [esp + 0x2c]
or ebp, eax
mov eax, dword [esp + 0x28]
or ebx, edx
mov edx, eax
xor esi, ebp
xor edi, ebx
not edx
mov ebp, dword [esp + 0x50]
mov ebx, ecx
and edx, ebp
mov ebp, dword [esp + 0x54]
not ebx
and ebx, ebp
mov ebp, dword [esp + 0x38]
and ebp, eax
mov eax, dword [esp + 0x3c]
and eax, ecx
xor edx, ebp
mov ebp, dword [0x100597a8]
mov ecx, dword [esp + 0xf8]
xor ebx, eax
mov eax, dword [esp + 0x58]
add esi, edx
mov edx, dword [esp + 0xf4]
adc edi, ebx
mov ebx, dword [0x100597ac]
add esi, ebp
mov ebp, dword [esp + 0x5c]
adc edi, ebx
mov ebx, dword [esp + 0x20]
add esi, edx
adc edi, ecx
add esi, eax
adc edi, ebp
mov ebp, dword [esp + 0x44]
mov dword [esp + 0x18], esi
add ebx, esi
mov esi, dword [esp + 0x24]
mov dword [esp + 0x20], ebx
mov ebx, dword [esp + 0x40]
mov dword [esp + 0x1c], edi
adc esi, edi
mov ecx, 0x1c
mov dword [esp + 0x24], esi
mov esi, ebx
mov eax, ebx
mov edx, ebp
xor edi, edi
shl esi, 4
call fcn.1004a530
or esi, edx
mov edx, ebp
or edi, eax
xor eax, eax
shr edx, 2
mov dword [esp + 0x14], eax
mov dword [esp + 0x10], edx
mov ecx, 0x1e
mov eax, ebx
mov edx, ebp
call fcn.1004a550
mov ecx, dword [esp + 0x10]
or ecx, eax
mov eax, dword [esp + 0x14]
or eax, edx
mov edx, ebp
xor edi, ecx
xor esi, eax
mov eax, dword [esp + 0x40]
mov ebx, edx
mov ecx, 0x19
xor ebp, ebp
shr ebx, 7
call fcn.1004a550
mov ecx, dword [esp + 0x40]
or ebx, eax
mov eax, dword [esp + 0x30]
or ebp, edx
mov edx, eax
xor edi, ebx
xor edx, ecx
mov ecx, dword [esp + 0x34]
xor esi, ebp
mov ebp, dword [esp + 0x44]
mov ebx, ecx
xor ebx, ebp
mov ebp, dword [esp + 0x48]
and edx, ebp
mov ebp, dword [esp + 0x4c]
and ebx, ebp
mov ebp, dword [esp + 0x40]
and eax, ebp
mov ebp, dword [esp + 0x44]
and ecx, ebp
xor edx, eax
xor ebx, ecx
add edi, edx
mov edx, dword [esp + 0x1c]
mov ecx, 8
adc esi, ebx
mov ebx, dword [esp + 0x18]
add edi, ebx
adc esi, edx
xor eax, eax
mov dword [esp + 0x5c], esi
mov esi, dword [esp + 0x78]
mov dword [esp + 0x58], edi
mov al, byte [esi + 0x3e]
cdq
call fcn.1004a550
mov edi, eax
xor eax, eax
mov al, byte [esi + 0x3f]
mov ebx, edx
cdq
or edi, eax
or ebx, edx
mov ecx, 8
mov eax, edi
mov edx, ebx
call fcn.1004a550
mov edi, eax
xor eax, eax
mov al, byte [esi + 0x40]
mov ebx, edx
cdq
or edi, eax
or ebx, edx
mov ecx, 8
mov eax, edi
mov edx, ebx
call fcn.1004a550
mov edi, eax
xor eax, eax
mov al, byte [esi + 0x41]
mov ebx, edx
cdq
or edi, eax
or ebx, edx
mov ecx, 8
mov eax, edi
mov edx, ebx
call fcn.1004a550
mov edi, eax
xor eax, eax
mov al, byte [esi + 0x42]
mov ebx, edx
cdq
or edi, eax
or ebx, edx
mov ecx, 8
mov eax, edi
mov edx, ebx
call fcn.1004a550
mov edi, eax
xor eax, eax
mov al, byte [esi + 0x43]
mov ebx, edx
cdq
or edi, eax
or ebx, edx
mov ecx, 8
mov eax, edi
mov edx, ebx
call fcn.1004a550
mov edi, eax
xor eax, eax
mov al, byte [esi + 0x44]
mov ebx, edx
cdq
or edi, eax
or ebx, edx
mov ecx, 8
mov eax, edi
mov edx, ebx
call fcn.1004a550
mov ecx, eax
mov ebp, dword [esp + 0x24]
xor eax, eax
mov ebx, dword [esp + 0x20]
mov al, byte [esi + 0x45]
mov edi, edx
cdq
or ecx, eax
or edi, edx
mov dword [esp + 0xfc], ecx
mov esi, ebp
mov dword [esp + 0x100], edi
mov ecx, 0x17
mov eax, ebx
mov edx, ebp
shr esi, 9
xor edi, edi
call fcn.1004a550
or edi, edx
mov edx, ebx
or esi, eax
xor eax, eax
shl edx, 0xe
mov dword [esp + 0x10], eax
mov dword [esp + 0x14], edx
mov ecx, 0x12
mov eax, ebx
mov edx, ebp
call fcn.1004a530
mov ecx, dword [esp + 0x10]
xor ebp, ebp
or ecx, eax
mov eax, dword [esp + 0x14]
or eax, edx
mov edx, dword [esp + 0x24]
xor esi, ecx
xor edi, eax
mov eax, ebx
mov ecx, 0xe
shl ebx, 0x12
call fcn.1004a530
mov ecx, dword [esp + 0x24]
or ebp, eax
mov eax, dword [esp + 0x20]
or ebx, edx
mov edx, eax
xor esi, ebp
mov ebp, dword [esp + 0x38]
xor edi, ebx
not edx
mov ebx, ecx
and edx, ebp
mov ebp, dword [esp + 0x3c]
not ebx
and ebx, ebp
mov ebp, dword [esp + 0x28]
and ebp, eax
mov eax, dword [esp + 0x2c]
and eax, ecx
xor edx, ebp
mov ebp, dword [0x100597b4]
xor ebx, eax
mov eax, dword [0x100597b0]
mov ecx, dword [esp + 0x50]
add esi, edx
mov edx, dword [esp + 0x100]
adc edi, ebx
mov ebx, dword [esp + 0xfc]
add esi, eax
adc edi, ebp
add esi, ebx
adc edi, edx
add esi, ecx
mov dword [esp + 0x18], esi
mov eax, dword [esp + 0x54]
mov ebp, dword [esp + 0x48]
mov ebx, dword [esp + 0x4c]
mov ecx, dword [esp + 0x40]
adc edi, eax
add ebp, esi
mov edx, dword [esp + 0x44]
mov eax, ecx
adc ebx, edi
mov dword [esp + 0x48], ebp
mov ebp, dword [esp + 0x5c]
mov dword [esp + 0x4c], ebx
mov ebx, dword [esp + 0x58]
mov dword [esp + 0x1c], edi
xor eax, ebx
mov esi, ebx
mov dword [esp + 0x9c], eax
mov eax, edx
xor eax, ebp
xor edi, edi
mov dword [esp + 0xa0], eax
mov eax, ecx
and eax, ebx
mov ecx, 0x1c
mov dword [esp + 0x94], eax
mov eax, edx
and eax, ebp
mov edx, ebp
mov dword [esp + 0x98], eax
mov eax, ebx
shl esi, 4
call fcn.1004a530
or esi, edx
mov edx, ebp
or edi, eax
xor eax, eax
shr edx, 2
mov dword [esp + 0x14], eax
mov dword [esp + 0x10], edx
mov ecx, 0x1e
mov eax, ebx
mov edx, ebp
call fcn.1004a550
mov ecx, dword [esp + 0x10]
or ecx, eax
mov eax, dword [esp + 0x14]
or eax, edx
mov edx, ebp
xor edi, ecx
xor esi, eax
mov eax, dword [esp + 0x58]
mov ebx, edx
mov ecx, 0x19
xor ebp, ebp
shr ebx, 7
call fcn.1004a550
mov ecx, dword [esp + 0x9c]
or ebp, edx
mov edx, dword [esp + 0x30]
or ebx, eax
mov eax, dword [esp + 0x34]
and ecx, edx
mov edx, dword [esp + 0xa0]
xor esi, ebp
mov ebp, dword [esp + 0x94]
xor edi, ebx
mov ebx, dword [esp + 0x98]
and edx, eax
xor ecx, ebp
xor edx, ebx
mov ebx, dword [esp + 0x18]
add edi, ecx
adc esi, edx
mov edx, dword [esp + 0x1c]
add edi, ebx
adc esi, edx
xor eax, eax
mov dword [esp + 0x54], esi
mov esi, dword [esp + 0x78]
mov dword [esp + 0x50], edi
mov al, byte [esi + 0x46]
cdq
mov ecx, 8
call fcn.1004a550
mov edi, eax
xor eax, eax
mov al, byte [esi + 0x47]
mov ebx, edx
cdq
or edi, eax
or ebx, edx
mov ecx, 8
mov eax, edi
mov edx, ebx
call fcn.1004a550
mov edi, eax
xor eax, eax
mov al, byte [esi + 0x48]
mov ebx, edx
cdq
or edi, eax
or ebx, edx
mov ecx, 8
mov eax, edi
mov edx, ebx
call fcn.1004a550
mov edi, eax
xor eax, eax
mov al, byte [esi + 0x49]
mov ebx, edx
cdq
or edi, eax
or ebx, edx
mov ecx, 8
mov eax, edi
mov edx, ebx
call fcn.1004a550
mov edi, eax
xor eax, eax
mov al, byte [esi + 0x4a]
mov ebx, edx
cdq
or edi, eax
or ebx, edx
mov ecx, 8
mov eax, edi
mov edx, ebx
call fcn.1004a550
mov edi, eax
xor eax, eax
mov al, byte [esi + 0x4b]
mov ebx, edx
cdq
or edi, eax
or ebx, edx
mov ecx, 8
mov eax, edi
mov edx, ebx
call fcn.1004a550
mov edi, eax
xor eax, eax
mov al, byte [esi + 0x4c]
mov ebx, edx
cdq
or edi, eax
or ebx, edx
mov ecx, 8
mov eax, edi
mov edx, ebx
call fcn.1004a550
mov ebp, dword [esp + 0x4c]
mov ecx, eax
xor eax, eax
mov edi, edx
mov al, byte [esi + 0x4d]
mov esi, ebp
cdq
or ecx, eax
or edi, edx
mov dword [esp + 0x104], ecx
mov dword [esp + 0x108], edi
shr esi, 9
mov ebx, dword [esp + 0x48]
mov ecx, 0x17
mov eax, ebx
mov edx, ebp
xor edi, edi
call fcn.1004a550
or edi, edx
mov edx, ebx
or esi, eax
xor eax, eax
shl edx, 0xe
mov dword [esp + 0x10], eax
mov dword [esp + 0x14], edx
mov ecx, 0x12
mov eax, ebx
mov edx, ebp
call fcn.1004a530
mov ecx, dword [esp + 0x10]
xor ebp, ebp
or ecx, eax
mov eax, dword [esp + 0x14]
or eax, edx
mov edx, dword [esp + 0x4c]
xor esi, ecx
xor edi, eax
mov eax, ebx
mov ecx, 0xe
shl ebx, 0x12
call fcn.1004a530
mov ecx, dword [esp + 0x4c]
or ebp, eax
mov eax, dword [esp + 0x48]
or ebx, edx
mov edx, eax
xor esi, ebp
mov ebp, dword [esp + 0x28]
xor edi, ebx
not edx
mov ebx, ecx
and edx, ebp
mov ebp, dword [esp + 0x2c]
not ebx
and ebx, ebp
mov ebp, dword [esp + 0x20]
and ebp, eax
mov eax, dword [esp + 0x24]
and eax, ecx
xor edx, ebp
mov ebp, dword [0x100597b8]
mov ecx, dword [esp + 0x108]
xor ebx, eax
mov eax, dword [esp + 0x38]
add esi, edx
mov edx, dword [esp + 0x104]
adc edi, ebx
mov ebx, dword [0x100597bc]
add esi, ebp
mov ebp, dword [esp + 0x3c]
adc edi, ebx
mov ebx, dword [esp + 0x30]
add esi, edx
adc edi, ecx
add esi, eax
adc edi, ebp
mov ebp, dword [esp + 0x54]
mov dword [esp + 0x18], esi
add ebx, esi
mov esi, dword [esp + 0x34]
mov dword [esp + 0x30], ebx
mov ebx, dword [esp + 0x50]
mov dword [esp + 0x1c], edi
adc esi, edi
mov ecx, 0x1c
mov dword [esp + 0x34], esi
mov esi, ebx
mov eax, ebx
mov edx, ebp
xor edi, edi
shl esi, 4
call fcn.1004a530
or edi, eax
or esi, edx
mov edx, ebp
shr edx, 2
xor eax, eax
mov dword [esp + 0x10], edx
mov dword [esp + 0x14], eax
mov ecx, 0x1e
mov eax, ebx
mov edx, ebp
call fcn.1004a550
mov ecx, dword [esp + 0x10]
or ecx, eax
mov eax, dword [esp + 0x14]
or eax, edx
mov edx, ebp
xor edi, ecx
xor esi, eax
mov eax, dword [esp + 0x50]
mov ebx, edx
mov ecx, 0x19
xor ebp, ebp
shr ebx, 7
call fcn.1004a550
mov ecx, dword [esp + 0xa0]
or ebx, eax
mov eax, dword [esp + 0x9c]
or ebp, edx
mov edx, dword [esp + 0x54]
xor edi, ebx
mov ebx, dword [esp + 0x50]
xor esi, ebp
mov ebp, dword [esp + 0x94]
and eax, ebx
mov ebx, dword [esp + 0x98]
and ecx, edx
mov edx, dword [esp + 0x1c]
xor eax, ebp
xor ecx, ebx
mov ebx, dword [esp + 0x18]
add edi, eax
adc esi, ecx
add edi, ebx
adc esi, edx
xor eax, eax
mov dword [esp + 0x3c], esi
mov esi, dword [esp + 0x78]
mov ecx, 8
mov dword [esp + 0x38], edi
mov al, byte [esi + 0x4e]
cdq
call fcn.1004a550
mov edi, eax
xor eax, eax
mov al, byte [esi + 0x4f]
mov ebx, edx
cdq
or edi, eax
or ebx, edx
mov ecx, 8
mov eax, edi
mov edx, ebx
call fcn.1004a550
mov edi, eax
xor eax, eax
mov al, byte [esi + 0x50]
mov ebx, edx
cdq
or edi, eax
or ebx, edx
mov ecx, 8
mov eax, edi
mov edx, ebx
call fcn.1004a550
mov edi, eax
xor eax, eax
mov al, byte [esi + 0x51]
mov ebx, edx
cdq
or edi, eax
or ebx, edx
mov ecx, 8
mov eax, edi
mov edx, ebx
call fcn.1004a550
mov edi, eax
xor eax, eax
mov al, byte [esi + 0x52]
mov ebx, edx
cdq
or edi, eax
or ebx, edx
mov ecx, 8
mov eax, edi
mov edx, ebx
call fcn.1004a550
mov edi, eax
xor eax, eax
mov al, byte [esi + 0x53]
mov ebx, edx
cdq
or edi, eax
or ebx, edx
mov ecx, 8
mov eax, edi
mov edx, ebx
call fcn.1004a550
mov edi, eax
xor eax, eax
mov al, byte [esi + 0x54]
mov ebx, edx
cdq
or edi, eax
or ebx, edx
mov ecx, 8
mov eax, edi
mov edx, ebx
call fcn.1004a550
mov ecx, eax
mov ebp, dword [esp + 0x34]
xor eax, eax
mov ebx, dword [esp + 0x30]
mov al, byte [esi + 0x55]
mov edi, edx
cdq
or ecx, eax
or edi, edx
mov dword [esp + 0x10c], ecx
mov esi, ebp
mov dword [esp + 0x110], edi
mov ecx, 0x17
mov eax, ebx
mov edx, ebp
shr esi, 9
xor edi, edi
call fcn.1004a550
or edi, edx
mov edx, ebx
or esi, eax
xor eax, eax
shl edx, 0xe
mov dword [esp + 0x10], eax
mov dword [esp + 0x14], edx
mov ecx, 0x12
mov eax, ebx
mov edx, ebp
call fcn.1004a530
mov ecx, dword [esp + 0x10]
xor ebp, ebp
or ecx, eax
mov eax, dword [esp + 0x14]
or eax, edx
mov edx, dword [esp + 0x34]
xor esi, ecx
xor edi, eax
mov eax, ebx
mov ecx, 0xe
shl ebx, 0x12
call fcn.1004a530
or ebp, eax
or ebx, edx
xor esi, ebp
xor edi, ebx
mov eax, dword [esp + 0x30]
mov ecx, dword [esp + 0x34]
mov ebp, dword [esp + 0x20]
mov edx, eax
not edx
mov ebx, ecx
and edx, ebp
mov ebp, dword [esp + 0x24]
not ebx
and ebx, ebp
mov ebp, dword [esp + 0x48]
and ebp, eax
mov eax, dword [esp + 0x4c]
and eax, ecx
xor edx, ebp
mov ebp, dword [0x100597c0]
mov ecx, dword [esp + 0x110]
xor ebx, eax
mov eax, dword [esp + 0x28]
add esi, edx
mov edx, dword [esp + 0x10c]
adc edi, ebx
mov ebx, dword [0x100597c4]
add esi, ebp
mov ebp, dword [esp + 0x2c]
adc edi, ebx
mov ebx, dword [esp + 0x40]
add esi, edx
adc edi, ecx
add esi, eax
adc edi, ebp
mov ebp, dword [esp + 0x3c]
mov dword [esp + 0x18], esi
add ebx, esi
mov esi, dword [esp + 0x44]
mov dword [esp + 0x40], ebx
mov ebx, dword [esp + 0x38]
mov dword [esp + 0x1c], edi
adc esi, edi
mov ecx, 0x1c
mov dword [esp + 0x44], esi
mov esi, ebx
mov eax, ebx
mov edx, ebp
xor edi, edi
shl esi, 4
call fcn.1004a530
or esi, edx
mov edx, ebp
or edi, eax
xor eax, eax
shr edx, 2
mov dword [esp + 0x14], eax
mov dword [esp + 0x10], edx
mov ecx, 0x1e
mov eax, ebx
mov edx, ebp
call fcn.1004a550
mov ecx, dword [esp + 0x10]
or ecx, eax
mov eax, dword [esp + 0x14]
or eax, edx
mov edx, ebp
xor edi, ecx
xor esi, eax
mov eax, dword [esp + 0x38]
mov ebx, edx
mov ecx, 0x19
xor ebp, ebp
shr ebx, 7
call fcn.1004a550
mov ecx, dword [esp + 0x58]
or ebx, eax
mov eax, dword [esp + 0x38]
or ebp, edx
mov edx, eax
xor edi, ebx
xor esi, ebp
xor edx, ecx
mov ecx, dword [esp + 0x3c]
mov ebx, ecx
mov ebp, dword [esp + 0x5c]
xor ebx, ebp
mov ebp, dword [esp + 0x50]
and edx, ebp
mov ebp, dword [esp + 0x54]
and ebx, ebp
mov ebp, dword [esp + 0x58]
and eax, ebp
mov ebp, dword [esp + 0x5c]
and ecx, ebp
xor edx, eax
xor ebx, ecx
add edi, edx
mov edx, dword [esp + 0x1c]
mov ecx, 8
adc esi, ebx
mov ebx, dword [esp + 0x18]
add edi, ebx
adc esi, edx
xor eax, eax
mov dword [esp + 0x2c], esi
mov esi, dword [esp + 0x78]
mov dword [esp + 0x28], edi
mov al, byte [esi + 0x56]
cdq
call fcn.1004a550
mov edi, eax
xor eax, eax
mov al, byte [esi + 0x57]
mov ebx, edx
cdq
or edi, eax
or ebx, edx
mov ecx, 8
mov eax, edi
mov edx, ebx
call fcn.1004a550
mov edi, eax
xor eax, eax
mov al, byte [esi + 0x58]
mov ebx, edx
cdq
or edi, eax
or ebx, edx
mov ecx, 8
mov eax, edi
mov edx, ebx
call fcn.1004a550
mov edi, eax
xor eax, eax
mov al, byte [esi + 0x59]
mov ebx, edx
cdq
or edi, eax
or ebx, edx
mov ecx, 8
mov eax, edi
mov edx, ebx
call fcn.1004a550
mov edi, eax
xor eax, eax
mov al, byte [esi + 0x5a]
mov ebx, edx
cdq
or edi, eax
or ebx, edx
mov ecx, 8
mov eax, edi
mov edx, ebx
call fcn.1004a550
mov edi, eax
xor eax, eax
mov al, byte [esi + 0x5b]
mov ebx, edx
cdq
or edi, eax
or ebx, edx
mov ecx, 8
mov eax, edi
mov edx, ebx
call fcn.1004a550
mov edi, eax
xor eax, eax
mov al, byte [esi + 0x5c]
mov ebx, edx
cdq
or edi, eax
or ebx, edx
mov ecx, 8
mov eax, edi
mov edx, ebx
call fcn.1004a550
mov ecx, eax
mov ebp, dword [esp + 0x44]
xor eax, eax
mov ebx, dword [esp + 0x40]
mov al, byte [esi + 0x5d]
mov edi, edx
cdq
or ecx, eax
or edi, edx
mov dword [esp + 0x114], ecx
mov esi, ebp
mov dword [esp + 0x118], edi
mov ecx, 0x17
mov eax, ebx
mov edx, ebp
shr esi, 9
xor edi, edi
call fcn.1004a550
or edi, edx
mov edx, ebx
or esi, eax
xor eax, eax
shl edx, 0xe
mov dword [esp + 0x10], eax
mov dword [esp + 0x14], edx
mov ecx, 0x12
mov eax, ebx
mov edx, ebp
call fcn.1004a530
mov ecx, dword [esp + 0x10]
xor ebp, ebp
or ecx, eax
mov eax, dword [esp + 0x14]
or eax, edx
mov edx, dword [esp + 0x44]
xor esi, ecx
xor edi, eax
mov eax, ebx
mov ecx, 0xe
shl ebx, 0x12
call fcn.1004a530
mov ecx, dword [esp + 0x44]
or ebp, eax
mov eax, dword [esp + 0x40]
or ebx, edx
mov edx, eax
xor esi, ebp
mov ebp, dword [esp + 0x48]
xor edi, ebx
not edx
mov ebx, ecx
and edx, ebp
mov ebp, dword [esp + 0x4c]
not ebx
and ebx, ebp
mov ebp, dword [esp + 0x30]
and ebp, eax
mov eax, dword [esp + 0x34]
and eax, ecx
xor edx, ebp
mov ebp, dword [0x100597c8]
mov ecx, dword [esp + 0x118]
xor ebx, eax
add esi, edx
mov edx, dword [esp + 0x114]
adc edi, ebx
mov ebx, dword [0x100597cc]
add esi, ebp
adc edi, ebx
add esi, edx
mov eax, dword [esp + 0x20]
mov ebp, dword [esp + 0x24]
mov ebx, dword [esp + 0x58]
adc edi, ecx
add esi, eax
adc edi, ebp
mov ebp, dword [esp + 0x2c]
mov dword [esp + 0x18], esi
add ebx, esi
mov esi, dword [esp + 0x5c]
mov dword [esp + 0x58], ebx
mov ebx, dword [esp + 0x28]
mov dword [esp + 0x1c], edi
adc esi, edi
mov ecx, 0x1c
mov dword [esp + 0x5c], esi
mov esi, ebx
mov eax, ebx
mov edx, ebp
xor edi, edi
shl esi, 4
call fcn.1004a530
or esi, edx
mov edx, ebp
or edi, eax
xor eax, eax
shr edx, 2
mov dword [esp + 0x14], eax
mov dword [esp + 0x10], edx
mov ecx, 0x1e
mov eax, ebx
mov edx, ebp
call fcn.1004a550
mov ecx, dword [esp + 0x10]
or ecx, eax
mov eax, dword [esp + 0x14]
or eax, edx
mov edx, ebp
xor edi, ecx
xor esi, eax
mov eax, dword [esp + 0x28]
mov ebx, edx
mov ecx, 0x19
xor ebp, ebp
shr ebx, 7
call fcn.1004a550
mov ecx, dword [esp + 0x28]
or ebx, eax
mov eax, dword [esp + 0x38]
or ebp, edx
mov edx, eax
xor edi, ebx
xor edx, ecx
mov ecx, dword [esp + 0x3c]
xor esi, ebp
mov ebp, dword [esp + 0x2c]
mov ebx, ecx
xor ebx, ebp
mov ebp, dword [esp + 0x50]
and edx, ebp
mov ebp, dword [esp + 0x54]
and ebx, ebp
mov ebp, dword [esp + 0x28]
and eax, ebp
mov ebp, dword [esp + 0x2c]
and ecx, ebp
xor edx, eax
xor ebx, ecx
add edi, edx
mov edx, dword [esp + 0x1c]
mov ecx, 8
adc esi, ebx
mov ebx, dword [esp + 0x18]
add edi, ebx
adc esi, edx
xor eax, eax
mov dword [esp + 0x24], esi
mov esi, dword [esp + 0x78]
mov dword [esp + 0x20], edi
mov al, byte [esi + 0x5e]
cdq
call fcn.1004a550
mov edi, eax
xor eax, eax
mov al, byte [esi + 0x5f]
mov ebx, edx
cdq
or edi, eax
or ebx, edx
mov ecx, 8
mov eax, edi
mov edx, ebx
call fcn.1004a550
mov edi, eax
xor eax, eax
mov al, byte [esi + 0x60]
mov ebx, edx
cdq
or edi, eax
or ebx, edx
mov ecx, 8
mov eax, edi
mov edx, ebx
call fcn.1004a550
mov edi, eax
xor eax, eax
mov al, byte [esi + 0x61]
mov ebx, edx
cdq
or edi, eax
or ebx, edx
mov ecx, 8
mov eax, edi
mov edx, ebx
call fcn.1004a550
mov edi, eax
xor eax, eax
mov al, byte [esi + 0x62]
mov ebx, edx
cdq
or edi, eax
or ebx, edx
mov ecx, 8
mov eax, edi
mov edx, ebx
call fcn.1004a550
mov edi, eax
xor eax, eax
mov al, byte [esi + 0x63]
mov ebx, edx
cdq
or edi, eax
or ebx, edx
mov ecx, 8
mov eax, edi
mov edx, ebx
call fcn.1004a550
mov edi, eax
xor eax, eax
mov al, byte [esi + 0x64]
mov ebx, edx
cdq
or edi, eax
or ebx, edx
mov ecx, 8
mov eax, edi
mov edx, ebx
call fcn.1004a550
mov ebp, dword [esp + 0x5c]
mov ecx, eax
xor eax, eax
mov edi, edx
mov al, byte [esi + 0x65]
mov esi, ebp
cdq
or ecx, eax
or edi, edx
mov dword [esp + 0x11c], ecx
mov dword [esp + 0x120], edi
shr esi, 9
xor edi, edi
mov ecx, 0x17
mov ebx, dword [esp + 0x58]
mov edx, ebp
mov eax, ebx
call fcn.1004a550
or edi, edx
mov edx, ebx
or esi, eax
xor eax, eax
shl edx, 0xe
mov dword [esp + 0x10], eax
mov dword [esp + 0x14], edx
mov ecx, 0x12
mov eax, ebx
mov edx, ebp
call fcn.1004a530
mov ecx, dword [esp + 0x10]
xor ebp, ebp
or ecx, eax
mov eax, dword [esp + 0x14]
or eax, edx
mov edx, dword [esp + 0x5c]
xor esi, ecx
xor edi, eax
mov eax, ebx
mov ecx, 0xe
shl ebx, 0x12
call fcn.1004a530
mov ecx, dword [esp + 0x5c]
or ebp, eax
mov eax, dword [esp + 0x58]
or ebx, edx
mov edx, eax
xor esi, ebp
mov ebp, dword [esp + 0x30]
xor edi, ebx
not edx
mov ebx, ecx
and edx, ebp
mov ebp, dword [esp + 0x34]
not ebx
and ebx, ebp
mov ebp, dword [esp + 0x40]
and ebp, eax
mov eax, dword [esp + 0x44]
and eax, ecx
xor edx, ebp
mov ebp, dword [0x100597d0]
mov ecx, dword [esp + 0x120]
xor ebx, eax
mov eax, dword [esp + 0x48]
add esi, edx
mov edx, dword [esp + 0x11c]
adc edi, ebx
mov ebx, dword [0x100597d4]
add esi, ebp
mov ebp, dword [esp + 0x4c]
adc edi, ebx
mov ebx, dword [esp + 0x50]
add esi, edx
adc edi, ecx
add esi, eax
adc edi, ebp
mov ebp, dword [esp + 0x24]
mov dword [esp + 0x18], esi
add ebx, esi
mov esi, dword [esp + 0x54]
mov dword [esp + 0x50], ebx
mov ebx, dword [esp + 0x20]
mov dword [esp + 0x1c], edi
adc esi, edi
mov ecx, 0x1c
mov dword [esp + 0x54], esi
mov esi, ebx
mov eax, ebx
mov edx, ebp
xor edi, edi
shl esi, 4
call fcn.1004a530
or edi, eax
or esi, edx
mov edx, ebp
shr edx, 2
xor eax, eax
mov dword [esp + 0x10], edx
mov dword [esp + 0x14], eax
mov ecx, 0x1e
mov eax, ebx
mov edx, ebp
call fcn.1004a550
mov ecx, dword [esp + 0x10]
or ecx, eax
mov eax, dword [esp + 0x14]
or eax, edx
mov edx, ebp
xor edi, ecx
xor esi, eax
mov eax, dword [esp + 0x20]
mov ebx, edx
mov ecx, 0x19
xor ebp, ebp
shr ebx, 7
call fcn.1004a550
mov ecx, dword [esp + 0x20]
or ebx, eax
mov eax, dword [esp + 0x28]
or ebp, edx
mov edx, eax
xor edi, ebx
xor edx, ecx
mov ecx, dword [esp + 0x2c]
xor esi, ebp
mov ebp, dword [esp + 0x24]
mov ebx, ecx
xor ebx, ebp
mov ebp, dword [esp + 0x38]
and edx, ebp
mov ebp, dword [esp + 0x3c]
and ebx, ebp
mov ebp, dword [esp + 0x20]
and eax, ebp
mov ebp, dword [esp + 0x24]
and ecx, ebp
xor edx, eax
xor ebx, ecx
add edi, edx
mov edx, dword [esp + 0x1c]
mov ecx, 8
adc esi, ebx
mov ebx, dword [esp + 0x18]
add edi, ebx
adc esi, edx
xor eax, eax
mov dword [esp + 0x4c], esi
mov esi, dword [esp + 0x78]
mov dword [esp + 0x48], edi
mov al, byte [esi + 0x66]
cdq
call fcn.1004a550
mov edi, eax
xor eax, eax
mov al, byte [esi + 0x67]
mov ebx, edx
cdq
or edi, eax
or ebx, edx
mov ecx, 8
mov eax, edi
mov edx, ebx
call fcn.1004a550
mov edi, eax
xor eax, eax
mov al, byte [esi + 0x68]
mov ebx, edx
cdq
or edi, eax
or ebx, edx
mov ecx, 8
mov eax, edi
mov edx, ebx
call fcn.1004a550
mov edi, eax
mov ebx, edx
xor eax, eax
mov ecx, 8
mov al, byte [esi + 0x69]
cdq
or edi, eax
or ebx, edx
mov eax, edi
mov edx, ebx
call fcn.1004a550
mov edi, eax
xor eax, eax
mov al, byte [esi + 0x6a]
mov ebx, edx
cdq
or edi, eax
or ebx, edx
mov ecx, 8
mov eax, edi
mov edx, ebx
call fcn.1004a550
mov edi, eax
xor eax, eax
mov al, byte [esi + 0x6b]
mov ebx, edx
cdq
or edi, eax
or ebx, edx
mov ecx, 8
mov eax, edi
mov edx, ebx
call fcn.1004a550
mov edi, eax
xor eax, eax
mov al, byte [esi + 0x6c]
mov ebx, edx
cdq
or edi, eax
or ebx, edx
mov ecx, 8
mov eax, edi
mov edx, ebx
call fcn.1004a550
mov ecx, eax
mov ebp, dword [esp + 0x54]
xor eax, eax
mov ebx, dword [esp + 0x50]
mov al, byte [esi + 0x6d]
mov edi, edx
cdq
or ecx, eax
or edi, edx
mov dword [esp + 0x124], ecx
mov esi, ebp
mov dword [esp + 0x128], edi
mov ecx, 0x17
mov eax, ebx
mov edx, ebp
shr esi, 9
xor edi, edi
call fcn.1004a550
or edi, edx
mov edx, ebx
or esi, eax
xor eax, eax
shl edx, 0xe
mov dword [esp + 0x10], eax
mov dword [esp + 0x14], edx
mov ecx, 0x12
mov eax, ebx
mov edx, ebp
call fcn.1004a530
mov ecx, dword [esp + 0x10]
xor ebp, ebp
or ecx, eax
mov eax, dword [esp + 0x14]
or eax, edx
xor esi, ecx
xor edi, eax
mov eax, ebx
shl ebx, 0x12
mov ecx, 0xe
mov edx, dword [esp + 0x54]
call fcn.1004a530
mov ecx, dword [esp + 0x54]
or ebp, eax
mov eax, dword [esp + 0x50]
or ebx, edx
mov edx, eax
xor esi, ebp
mov ebp, dword [esp + 0x40]
xor edi, ebx
not edx
mov ebx, ecx
and edx, ebp
mov ebp, dword [esp + 0x44]
not ebx
and ebx, ebp
mov ebp, dword [esp + 0x58]
and eax, ebp
mov ebp, dword [esp + 0x5c]
and ecx, ebp
mov ebp, dword [0x100597d8]
xor edx, eax
xor ebx, ecx
mov ecx, dword [esp + 0x128]
mov eax, dword [esp + 0x30]
add esi, edx
mov edx, dword [esp + 0x124]
adc edi, ebx
mov ebx, dword [0x100597dc]
add esi, ebp
mov ebp, dword [esp + 0x34]
adc edi, ebx
mov ebx, dword [esp + 0x38]
add esi, edx
adc edi, ecx
add esi, eax
adc edi, ebp
mov ebp, dword [esp + 0x4c]
mov dword [esp + 0x18], esi
add ebx, esi
mov esi, dword [esp + 0x3c]
mov dword [esp + 0x38], ebx
mov ebx, dword [esp + 0x48]
mov dword [esp + 0x1c], edi
adc esi, edi
mov ecx, 0x1c
mov dword [esp + 0x3c], esi
mov esi, ebx
mov eax, ebx
mov edx, ebp
xor edi, edi
shl esi, 4
call fcn.1004a530
or esi, edx
mov edx, ebp
or edi, eax
xor eax, eax
shr edx, 2
mov dword [esp + 0x14], eax
mov dword [esp + 0x10], edx
mov ecx, 0x1e
mov eax, ebx
mov edx, ebp
call fcn.1004a550
mov ecx, dword [esp + 0x10]
or ecx, eax
mov eax, dword [esp + 0x14]
or eax, edx
mov edx, ebp
xor edi, ecx
xor esi, eax
mov eax, dword [esp + 0x48]
mov ebx, edx
mov ecx, 0x19
xor ebp, ebp
shr ebx, 7
call fcn.1004a550
or ebx, eax
or ebp, edx
xor edi, ebx
xor esi, ebp
mov edx, dword [esp + 0x20]
mov eax, dword [esp + 0x48]
mov ebp, dword [esp + 0x24]
mov ecx, dword [esp + 0x4c]
mov ebx, edx
xor ebp, ecx
and ebp, dword [esp + 0x2c]
xor ebx, eax
and ebx, dword [esp + 0x28]
and edx, eax
mov eax, dword [esp + 0x24]
and eax, ecx
xor ebx, edx
mov edx, dword [esp + 0x1c]
xor ebp, eax
add edi, ebx
mov ebx, dword [esp + 0x18]
adc esi, ebp
add edi, ebx
adc esi, edx
xor eax, eax
mov dword [esp + 0x34], esi
mov esi, dword [esp + 0x78]
mov ecx, 8
mov dword [esp + 0x30], edi
mov al, byte [esi + 0x6e]
cdq
call fcn.1004a550
mov edi, eax
xor eax, eax
mov al, byte [esi + 0x6f]
mov ebx, edx
cdq
or edi, eax
or ebx, edx
mov ecx, 8
mov eax, edi
mov edx, ebx
call fcn.1004a550
mov edi, eax
xor eax, eax
mov al, byte [esi + 0x70]
mov ebx, edx
cdq
or edi, eax
or ebx, edx
mov ecx, 8
mov eax, edi
mov edx, ebx
call fcn.1004a550
mov edi, eax
xor eax, eax
mov al, byte [esi + 0x71]
mov ebx, edx
cdq
or edi, eax
or ebx, edx
mov ecx, 8
mov eax, edi
mov edx, ebx
call fcn.1004a550
mov edi, eax
xor eax, eax
mov al, byte [esi + 0x72]
mov ebx, edx
cdq
or edi, eax
or ebx, edx
mov ecx, 8
mov eax, edi
mov edx, ebx
call fcn.1004a550
mov edi, eax
xor eax, eax
mov al, byte [esi + 0x73]
mov ebx, edx
cdq
or edi, eax
or ebx, edx
mov ecx, 8
mov eax, edi
mov edx, ebx
call fcn.1004a550
mov edi, eax
xor eax, eax
mov al, byte [esi + 0x74]
mov ebx, edx
cdq
or edi, eax
or ebx, edx
mov ecx, 8
mov eax, edi
mov edx, ebx
call fcn.1004a550
mov ecx, eax
mov ebp, dword [esp + 0x3c]
xor eax, eax
mov ebx, dword [esp + 0x38]
mov al, byte [esi + 0x75]
mov edi, edx
cdq
or ecx, eax
or edi, edx
mov dword [esp + 0x12c], ecx
mov esi, ebp
mov dword [esp + 0x130], edi
mov ecx, 0x17
mov eax, ebx
mov edx, ebp
shr esi, 9
xor edi, edi
call fcn.1004a550
or edi, edx
mov edx, ebx
or esi, eax
xor eax, eax
shl edx, 0xe
mov dword [esp + 0x10], eax
mov dword [esp + 0x14], edx
mov ecx, 0x12
mov eax, ebx
mov edx, ebp
call fcn.1004a530
mov ecx, dword [esp + 0x10]
xor ebp, ebp
or ecx, eax
mov eax, dword [esp + 0x14]
or eax, edx
mov edx, dword [esp + 0x3c]
xor esi, ecx
xor edi, eax
mov eax, ebx
mov ecx, 0xe
shl ebx, 0x12
call fcn.1004a530
mov ecx, dword [esp + 0x3c]
or ebp, eax
mov eax, dword [esp + 0x38]
or ebx, edx
mov edx, eax
xor esi, ebp
mov ebp, dword [esp + 0x58]
xor edi, ebx
not edx
mov ebx, ecx
and edx, ebp
mov ebp, dword [esp + 0x5c]
not ebx
and ebx, ebp
mov ebp, dword [esp + 0x50]
and ebp, eax
mov eax, dword [esp + 0x54]
and eax, ecx
xor edx, ebp
mov ebp, dword [0x100597e0]
xor ebx, eax
add esi, edx
mov edx, dword [esp + 0x12c]
adc edi, ebx
mov ebx, dword [0x100597e4]
add esi, ebp
adc edi, ebx
mov ecx, dword [esp + 0x130]
mov eax, dword [esp + 0x40]
mov ebp, dword [esp + 0x44]
mov ebx, dword [esp + 0x28]
add esi, edx
adc edi, ecx
add esi, eax
adc edi, ebp
mov ebp, dword [esp + 0x34]
mov dword [esp + 0x18], esi
add ebx, esi
mov esi, dword [esp + 0x2c]
mov dword [esp + 0x28], ebx
mov ebx, dword [esp + 0x30]
mov dword [esp + 0x1c], edi
adc esi, edi
mov ecx, 0x1c
mov dword [esp + 0x2c], esi
mov esi, ebx
mov eax, ebx
mov edx, ebp
xor edi, edi
shl esi, 4
call fcn.1004a530
or esi, edx
mov edx, ebp
or edi, eax
xor eax, eax
shr edx, 2
mov dword [esp + 0x14], eax
mov dword [esp + 0x10], edx
mov ecx, 0x1e
mov eax, ebx
mov edx, ebp
call fcn.1004a550
mov ecx, dword [esp + 0x10]
or ecx, eax
mov eax, dword [esp + 0x14]
or eax, edx
mov edx, ebp
xor edi, ecx
xor esi, eax
mov eax, dword [esp + 0x30]
mov ebx, edx
mov ecx, 0x19
xor ebp, ebp
shr ebx, 7
call fcn.1004a550
mov ecx, dword [esp + 0x30]
or ebx, eax
mov eax, dword [esp + 0x48]
or ebp, edx
mov edx, eax
xor edi, ebx
xor edx, ecx
mov ecx, dword [esp + 0x4c]
xor esi, ebp
mov ebp, dword [esp + 0x34]
mov ebx, ecx
xor ebx, ebp
mov ebp, dword [esp + 0x20]
and edx, ebp
mov ebp, dword [esp + 0x24]
and ebx, ebp
mov ebp, dword [esp + 0x30]
and eax, ebp
mov ebp, dword [esp + 0x34]
and ecx, ebp
xor edx, eax
xor ebx, ecx
add edi, edx
mov edx, dword [esp + 0x1c]
adc esi, ebx
mov ebx, dword [esp + 0x18]
add edi, ebx
adc esi, edx
xor eax, eax
mov dword [esp + 0x44], esi
mov esi, dword [esp + 0x78]
mov dword [esp + 0x40], edi
mov al, byte [esi + 0x76]
cdq
mov ecx, 8
call fcn.1004a550
mov edi, eax
xor eax, eax
mov al, byte [esi + 0x77]
mov ebx, edx
cdq
or edi, eax
or ebx, edx
mov ecx, 8
mov eax, edi
mov edx, ebx
call fcn.1004a550
mov edi, eax
xor eax, eax
mov al, byte [esi + 0x78]
mov ebx, edx
cdq
or edi, eax
or ebx, edx
mov ecx, 8
mov eax, edi
mov edx, ebx
call fcn.1004a550
mov edi, eax
xor eax, eax
mov al, byte [esi + 0x79]
mov ebx, edx
cdq
or edi, eax
or ebx, edx
mov ecx, 8
mov eax, edi
mov edx, ebx
call fcn.1004a550
mov edi, eax
xor eax, eax
mov al, byte [esi + 0x7a]
mov ebx, edx
cdq
or edi, eax
or ebx, edx
mov ecx, 8
mov eax, edi
mov edx, ebx
call fcn.1004a550
mov edi, eax
xor eax, eax
mov al, byte [esi + 0x7b]
mov ebx, edx
cdq
or edi, eax
or ebx, edx
mov ecx, 8
mov eax, edi
mov edx, ebx
call fcn.1004a550
mov edi, eax
xor eax, eax
mov al, byte [esi + 0x7c]
mov ebx, edx
cdq
or edi, eax
or ebx, edx
mov ecx, 8
mov eax, edi
mov edx, ebx
call fcn.1004a550
mov ebp, dword [esp + 0x2c]
mov ecx, eax
xor eax, eax
mov edi, edx
mov al, byte [esi + 0x7d]
mov esi, ebp
cdq
or ecx, eax
or edi, edx
mov dword [esp + 0x134], ecx
mov dword [esp + 0x138], edi
shr esi, 9
mov ebx, dword [esp + 0x28]
mov ecx, 0x17
mov eax, ebx
mov edx, ebp
xor edi, edi
call fcn.1004a550
or edi, edx
mov edx, ebx
or esi, eax
xor eax, eax
shl edx, 0xe
mov dword [esp + 0x10], eax
mov dword [esp + 0x14], edx
mov ecx, 0x12
mov eax, ebx
mov edx, ebp
call fcn.1004a530
mov ecx, dword [esp + 0x10]
xor ebp, ebp
or ecx, eax
mov eax, dword [esp + 0x14]
or eax, edx
mov edx, dword [esp + 0x2c]
xor esi, ecx
xor edi, eax
mov eax, ebx
mov ecx, 0xe
shl ebx, 0x12
call fcn.1004a530
mov ecx, dword [esp + 0x2c]
or ebp, eax
mov eax, dword [esp + 0x28]
or ebx, edx
mov edx, eax
xor esi, ebp
mov ebp, dword [esp + 0x50]
xor edi, ebx
not edx
mov ebx, ecx
and edx, ebp
mov ebp, dword [esp + 0x54]
not ebx
and ebx, ebp
mov ebp, dword [esp + 0x38]
and ebp, eax
mov eax, dword [esp + 0x3c]
and eax, ecx
xor edx, ebp
mov ebp, dword [0x100597e8]
mov ecx, dword [esp + 0x138]
xor ebx, eax
mov eax, dword [esp + 0x58]
add esi, edx
mov edx, dword [esp + 0x134]
adc edi, ebx
mov ebx, dword [0x100597ec]
add esi, ebp
mov ebp, dword [esp + 0x5c]
adc edi, ebx
mov ebx, dword [esp + 0x20]
add esi, edx
adc edi, ecx
add esi, eax
adc edi, ebp
mov ebp, dword [esp + 0x44]
mov dword [esp + 0x18], esi
add ebx, esi
mov esi, dword [esp + 0x24]
mov dword [esp + 0x20], ebx
mov ebx, dword [esp + 0x40]
mov dword [esp + 0x1c], edi
adc esi, edi
mov ecx, 0x1c
mov dword [esp + 0x24], esi
mov esi, ebx
mov eax, ebx
mov edx, ebp
xor edi, edi
shl esi, 4
call fcn.1004a530
or edi, eax
or esi, edx
mov edx, ebp
shr edx, 2
xor eax, eax
mov dword [esp + 0x10], edx
mov dword [esp + 0x14], eax
mov ecx, 0x1e
mov eax, ebx
mov edx, ebp
call fcn.1004a550
mov ecx, dword [esp + 0x10]
or ecx, eax
mov eax, dword [esp + 0x14]
or eax, edx
mov edx, ebp
xor edi, ecx
xor esi, eax
mov eax, dword [esp + 0x40]
mov ebx, edx
mov ecx, 0x19
xor ebp, ebp
shr ebx, 7
call fcn.1004a550
mov ecx, dword [esp + 0x40]
or ebx, eax
mov eax, dword [esp + 0x30]
or ebp, edx
mov edx, eax
xor edi, ebx
xor edx, ecx
mov ecx, dword [esp + 0x34]
xor esi, ebp
mov ebp, dword [esp + 0x44]
mov ebx, ecx
mov dword [esp + 0x90], 0x100597f8
xor ebx, ebp
mov ebp, dword [esp + 0x48]
and edx, ebp
mov ebp, dword [esp + 0x4c]
and ebx, ebp
mov ebp, dword [esp + 0x40]
and eax, ebp
mov ebp, dword [esp + 0x44]
and ecx, ebp
xor edx, eax
mov eax, dword [esp + 0x1c]
xor ebx, ecx
mov ecx, dword [esp + 0x18]
add edi, edx
adc esi, ebx
add edi, ecx
adc esi, eax
mov eax, 0x11
mov dword [esp + 0x58], edi
mov dword [esp + 0x5c], esi
mov dword [esp + 0x8c], eax
mov ecx, eax
xor ebp, ebp
and ecx, 0xf
mov edx, dword [esp + ecx*8 + 0xbc]
lea ecx, [esp + ecx*8 + 0xbc]
mov dword [esp + 0x6c], edx
lea edx, [eax - 3]
mov dword [esp + 0xa4], ecx
mov ecx, dword [ecx + 4]
and edx, 0xf
mov dword [esp + 0x70], ecx
mov esi, dword [esp + edx*8 + 0xbc]
mov edi, dword [esp + edx*8 + 0xc0]
lea ecx, [esp + edx*8 + 0xbc]
mov ebx, esi
mov dword [esp + 0x74], ecx
lea ecx, [eax - 7]
dec eax
mov dword [esp + 0xa8], ecx
and eax, 0xf
mov ecx, 0x13
mov dword [esp + 0x80], esi
mov dword [esp + 0x84], edi
lea edx, [esp + eax*8 + 0xbc]
mov eax, esi
mov dword [esp + 0xac], edx
mov edx, edi
shl ebx, 0xd
call fcn.1004a530
or ebx, edx
or ebp, eax
mov dword [esp + 0x14], ebx
mov ebx, edi
shr ebx, 0x1d
mov dword [esp + 0x10], ebx
mov ecx, 3
mov eax, esi
mov edx, edi
xor ebx, ebx
call fcn.1004a550
mov ecx, dword [esp + 0x10]
mov esi, dword [esp + 0x14]
or ecx, eax
mov eax, dword [esp + 0x80]
or ebx, edx
xor ebp, ecx
mov ecx, 6
mov edx, edi
xor esi, ebx
call fcn.1004a530
mov edi, dword [esp + 0x70]
xor esi, edx
mov dword [esp + 0x68], esi
mov esi, dword [esp + 0x6c]
xor ebp, eax
mov ebx, esi
mov dword [esp + 0x7c], ebp
mov ecx, 8
mov eax, esi
mov edx, edi
xor ebp, ebp
shl ebx, 0x18
call fcn.1004a530
or ebx, edx
or ebp, eax
mov dword [esp + 0x14], ebx
mov ebx, esi
mov dword [esp + 0x10], ebp
mov ecx, 1
mov eax, esi
mov edx, edi
xor ebp, ebp
shl ebx, 0x1f
call fcn.1004a530
mov esi, dword [esp + 0x10]
mov edi, dword [esp + 0x14]
or ebp, eax
or ebx, edx
xor esi, ebp
xor edi, ebx
mov ecx, 7
mov eax, dword [esp + 0x6c]
mov edx, dword [esp + 0x70]
call fcn.1004a530
mov ecx, dword [esp + 0x68]
xor edi, edx
mov edx, dword [esp + 0x7c]
xor esi, eax
mov eax, dword [esp + 0xa8]
add edx, esi
adc ecx, edi
dec eax
and eax, 0xf
mov ebp, dword [esp + eax*8 + 0xbc]
add edx, ebp
mov ebp, dword [esp + 0x24]
mov ebx, dword [esp + eax*8 + 0xc0]
mov eax, dword [esp + 0xac]
adc ecx, ebx
mov ebx, dword [esp + 0x20]
mov edi, dword [eax]
add edi, edx
mov edx, ebp
mov dword [eax], edi
mov esi, dword [eax + 4]
adc esi, ecx
mov ecx, 0x17
mov dword [eax + 4], esi
mov esi, ebp
mov eax, ebx
xor edi, edi
shr esi, 9
call fcn.1004a550
or edi, edx
mov edx, ebx
or esi, eax
xor eax, eax
shl edx, 0xe
mov dword [esp + 0x68], eax
mov dword [esp + 0x7c], edx
mov ecx, 0x12
mov eax, ebx
mov edx, ebp
call fcn.1004a530
mov ecx, dword [esp + 0x68]
xor ebp, ebp
or ecx, eax
mov eax, dword [esp + 0x7c]
or eax, edx
mov edx, dword [esp + 0x24]
xor esi, ecx
xor edi, eax
mov eax, ebx
mov ecx, 0xe
shl ebx, 0x12
call fcn.1004a530
mov ecx, dword [esp + 0x24]
or ebp, eax
mov eax, dword [esp + 0x20]
or ebx, edx
mov edx, eax
xor esi, ebp
mov ebp, dword [esp + 0x38]
xor edi, ebx
not edx
mov ebx, ecx
and edx, ebp
mov ebp, dword [esp + 0x3c]
not ebx
and ebx, ebp
mov ebp, dword [esp + 0x28]
and ebp, eax
mov eax, dword [esp + 0x2c]
and eax, ecx
xor edx, ebp
xor ebx, eax
mov eax, dword [esp + 0x90]
add esi, edx
mov edx, dword [eax - 4]
adc edi, ebx
mov ebx, dword [eax - 8]
add esi, ebx
mov eax, dword [esp + 0xac]
mov ebx, dword [esp + 0x50]
adc edi, edx
mov edx, dword [esp + 0x54]
mov ecx, dword [eax]
mov ebp, dword [eax + 4]
mov eax, dword [esp + 0x4c]
add esi, ecx
mov ecx, dword [esp + 0x48]
adc edi, ebp
add esi, ebx
adc edi, edx
add ecx, esi
mov edx, dword [esp + 0x44]
mov dword [esp + 0x48], ecx
mov ecx, dword [esp + 0x40]
mov dword [esp + 0x18], esi
mov esi, dword [esp + 0x58]
mov dword [esp + 0x1c], edi
adc eax, edi
mov edi, dword [esp + 0x5c]
mov dword [esp + 0x4c], eax
mov eax, ecx
xor eax, esi
mov ebx, esi
mov dword [esp + 0x9c], eax
mov eax, edx
xor eax, edi
xor ebp, ebp
mov dword [esp + 0xa0], eax
mov eax, ecx
and eax, esi
mov ecx, 0x1c
mov dword [esp + 0x94], eax
mov eax, edx
and eax, edi
mov edx, edi
mov dword [esp + 0x98], eax
mov eax, esi
shl ebx, 4
call fcn.1004a530
or ebx, edx
or ebp, eax
mov dword [esp + 0x7c], ebx
mov ebx, edi
shr ebx, 2
mov dword [esp + 0x68], ebx
mov ecx, 0x1e
mov eax, esi
mov edx, edi
xor ebx, ebx
call fcn.1004a550
mov ecx, dword [esp + 0x68]
mov esi, dword [esp + 0x7c]
or ecx, eax
mov eax, dword [esp + 0x58]
or ebx, edx
xor ebp, ecx
xor esi, ebx
mov edx, edi
mov ecx, 0x19
xor ebx, ebx
shr edi, 7
call fcn.1004a550
mov ecx, dword [esp + 0x94]
or ebx, edx
mov edx, dword [esp + 0x9c]
or edi, eax
mov eax, dword [esp + 0xa0]
xor esi, ebx
mov ebx, dword [esp + 0x30]
xor ebp, edi
mov edi, dword [esp + 0x34]
and edx, ebx
mov ebx, dword [esp + 0x98]
and eax, edi
xor edx, ecx
xor eax, ebx
add ebp, edx
adc esi, eax
mov eax, dword [esp + 0x18]
mov ecx, dword [esp + 0x8c]
mov ebx, dword [esp + 0x1c]
add ebp, eax
lea edx, [ecx + 1]
mov dword [esp + 0x50], ebp
adc esi, ebx
and edx, 0xf
add ecx, 0xfffffffe
mov dword [esp + 0x54], esi
lea eax, [esp + edx*8 + 0xbc]
and ecx, 0xf
mov dword [esp + 0x14], eax
xor ebp, ebp
mov edx, dword [eax]
mov eax, dword [eax + 4]
mov esi, dword [esp + ecx*8 + 0xbc]
mov edi, dword [esp + ecx*8 + 0xc0]
mov dword [esp + 0x70], eax
lea eax, [esp + ecx*8 + 0xbc]
mov dword [esp + 0x6c], edx
mov dword [esp + 0x88], eax
mov ebx, esi
mov ecx, 0x13
mov eax, esi
mov edx, edi
mov dword [esp + 0x80], esi
mov dword [esp + 0x84], edi
shl ebx, 0xd
call fcn.1004a530
or ebx, edx
or ebp, eax
mov dword [esp + 0x7c], ebx
mov ebx, edi
shr ebx, 0x1d
mov dword [esp + 0x68], ebx
mov ecx, 3
mov eax, esi
mov edx, edi
xor ebx, ebx
call fcn.1004a550
mov ecx, dword [esp + 0x68]
mov esi, dword [esp + 0x7c]
or ecx, eax
mov eax, dword [esp + 0x80]
or ebx, edx
xor ebp, ecx
mov ecx, 6
mov edx, edi
xor esi, ebx
call fcn.1004a530
mov edi, dword [esp + 0x70]
xor esi, edx
mov dword [esp + 0x60], esi
mov esi, dword [esp + 0x6c]
xor ebp, eax
mov ebx, esi
mov dword [esp + 0x10], ebp
mov ecx, 8
mov eax, esi
mov edx, edi
xor ebp, ebp
shl ebx, 0x18
call fcn.1004a530
or ebx, edx
or ebp, eax
mov dword [esp + 0x7c], ebx
mov ebx, esi
mov dword [esp + 0x68], ebp
mov ecx, 1
mov eax, esi
mov edx, edi
xor ebp, ebp
shl ebx, 0x1f
call fcn.1004a530
mov esi, dword [esp + 0x68]
mov edi, dword [esp + 0x7c]
or ebp, eax
or ebx, edx
xor esi, ebp
xor edi, ebx
mov ecx, 7
mov eax, dword [esp + 0x6c]
mov edx, dword [esp + 0x70]
call fcn.1004a530
mov ecx, dword [esp + 0x60]
xor edi, edx
mov edx, dword [esp + 0x10]
xor esi, eax
mov eax, dword [esp + 0xa8]
add edx, esi
adc ecx, edi
and eax, 0xf
mov ebp, dword [esp + eax*8 + 0xbc]
add edx, ebp
mov ebp, dword [esp + 0x4c]
mov ebx, dword [esp + eax*8 + 0xc0]
mov eax, dword [esp + 0xa4]
adc ecx, ebx
mov ebx, dword [esp + 0x48]
mov edi, dword [eax]
add edi, edx
mov edx, ebp
mov dword [eax], edi
mov esi, dword [eax + 4]
adc esi, ecx
mov ecx, 0x17
mov dword [eax + 4], esi
mov esi, ebp
mov eax, ebx
xor edi, edi
shr esi, 9
call fcn.1004a550
or edi, edx
mov edx, ebx
or esi, eax
xor eax, eax
shl edx, 0xe
mov dword [esp + 0x60], eax
mov dword [esp + 0x68], edx
mov ecx, 0x12
mov eax, ebx
mov edx, ebp
call fcn.1004a530
mov ecx, dword [esp + 0x60]
xor ebp, ebp
or ecx, eax
mov eax, dword [esp + 0x68]
or eax, edx
mov edx, dword [esp + 0x4c]
xor esi, ecx
xor edi, eax
mov eax, ebx
mov ecx, 0xe
shl ebx, 0x12
call fcn.1004a530
mov ecx, dword [esp + 0x4c]
or ebp, eax
mov eax, dword [esp + 0x48]
or ebx, edx
mov edx, eax
xor esi, ebp
mov ebp, dword [esp + 0x28]
xor edi, ebx
not edx
mov ebx, ecx
and edx, ebp
mov ebp, dword [esp + 0x2c]
not ebx
and ebx, ebp
mov ebp, dword [esp + 0x20]
and ebp, eax
mov eax, dword [esp + 0x24]
and eax, ecx
xor edx, ebp
xor ebx, eax
mov eax, dword [esp + 0xa4]
add esi, edx
mov ebp, dword [eax]
adc edi, ebx
mov ebx, dword [eax + 4]
add esi, ebp
adc edi, ebx
mov eax, dword [esp + 0x90]
mov ebp, dword [esp + 0x3c]
mov ebx, dword [esp + 0x30]
mov edx, dword [eax]
mov ecx, dword [eax + 4]
mov eax, dword [esp + 0x38]
add esi, edx
adc edi, ecx
add esi, eax
adc edi, ebp
mov dword [esp + 0x18], esi
add ebx, esi
mov esi, dword [esp + 0x34]
adc esi, edi
mov dword [esp + 0x1c], edi
mov edi, dword [esp + 0x54]
mov dword [esp + 0x34], esi
mov esi, dword [esp + 0x50]
mov dword [esp + 0x30], ebx
mov ebx, esi
mov ecx, 0x1c
mov eax, esi
mov edx, edi
xor ebp, ebp
shl ebx, 4
call fcn.1004a530
or ebx, edx
or ebp, eax
mov dword [esp + 0x68], ebx
mov ebx, edi
shr ebx, 2
mov dword [esp + 0x60], ebx
mov ecx, 0x1e
mov eax, esi
mov edx, edi
xor ebx, ebx
call fcn.1004a550
mov ecx, dword [esp + 0x60]
mov esi, dword [esp + 0x68]
or ecx, eax
mov eax, dword [esp + 0x50]
or ebx, edx
xor ebp, ecx
xor esi, ebx
mov edx, edi
mov ecx, 0x19
xor ebx, ebx
shr edi, 7
call fcn.1004a550
mov ecx, dword [esp + 0xa0]
or edi, eax
mov eax, dword [esp + 0x9c]
or ebx, edx
mov edx, dword [esp + 0x54]
xor ebp, edi
mov edi, dword [esp + 0x50]
xor esi, ebx
mov ebx, dword [esp + 0x94]
and eax, edi
mov edi, dword [esp + 0x98]
and ecx, edx
mov edx, dword [esp + 0x8c]
xor eax, ebx
mov ebx, dword [esp + 0x18]
xor ecx, edi
mov edi, dword [esp + 0x1c]
add ebp, eax
adc esi, ecx
add ebp, ebx
adc esi, edi
add edx, 2
and edx, 0xf
mov dword [esp + 0x38], ebp
mov dword [esp + 0x3c], esi
mov ecx, dword [esp + edx*8 + 0xbc]
lea eax, [esp + edx*8 + 0xbc]
mov dword [esp + 0x10], eax
mov dword [esp + 0x6c], ecx
mov edx, dword [eax + 4]
mov eax, dword [esp + 0xac]
mov dword [esp + 0x70], edx
mov esi, dword [eax]
mov edi, dword [eax + 4]
mov ebx, esi
mov ecx, 0x13
mov eax, esi
mov edx, edi
mov dword [esp + 0x80], esi
mov dword [esp + 0x84], edi
xor ebp, ebp
shl ebx, 0xd
call fcn.1004a530
or ebx, edx
or ebp, eax
mov dword [esp + 0x68], ebx
mov ebx, edi
shr ebx, 0x1d
mov dword [esp + 0x60], ebx
mov ecx, 3
mov eax, esi
mov edx, edi
xor ebx, ebx
call fcn.1004a550
mov ecx, dword [esp + 0x60]
mov esi, dword [esp + 0x68]
or ecx, eax
mov eax, dword [esp + 0x80]
or ebx, edx
xor ebp, ecx
mov ecx, 6
mov edx, edi
xor esi, ebx
call fcn.1004a530
mov edi, dword [esp + 0x70]
xor esi, edx
mov dword [esp + 0x64], esi
mov esi, dword [esp + 0x6c]
xor ebp, eax
mov ebx, esi
mov dword [esp + 0x7c], ebp
mov ecx, 8
mov eax, esi
mov edx, edi
xor ebp, ebp
shl ebx, 0x18
call fcn.1004a530
or ebx, edx
or ebp, eax
mov dword [esp + 0x68], ebx
mov ebx, esi
mov dword [esp + 0x60], ebp
mov ecx, 1
mov eax, esi
mov edx, edi
xor ebp, ebp
shl ebx, 0x1f
call fcn.1004a530
mov esi, dword [esp + 0x60]
mov edi, dword [esp + 0x68]
or ebp, eax
mov eax, dword [esp + 0x6c]
or ebx, edx
mov edx, dword [esp + 0x70]
mov ecx, 7
xor esi, ebp
xor edi, ebx
call fcn.1004a530
mov ecx, dword [esp + 0x64]
xor edi, edx
mov edx, dword [esp + 0x7c]
xor esi, eax
mov eax, dword [esp + 0xa8]
add edx, esi
adc ecx, edi
inc eax
and eax, 0xf
add edx, dword [esp + eax*8 + 0xbc]
mov ebx, dword [esp + eax*8 + 0xc0]
mov eax, dword [esp + 0x14]
adc ecx, ebx
mov edi, dword [eax]
mov ebp, dword [esp + 0x34]
mov ebx, dword [esp + 0x30]
add edi, edx
mov edx, ebp
mov dword [eax], edi
mov esi, dword [eax + 4]
adc esi, ecx
mov ecx, 0x17
mov dword [eax + 4], esi
mov esi, ebp
mov eax, ebx
xor edi, edi
shr esi, 9
call fcn.1004a550
or edi, edx
mov edx, ebx
or esi, eax
xor eax, eax
shl edx, 0xe
mov dword [esp + 0x64], eax
mov dword [esp + 0x60], edx
mov ecx, 0x12
mov eax, ebx
mov edx, ebp
call fcn.1004a530
mov ecx, dword [esp + 0x64]
xor ebp, ebp
or ecx, eax
mov eax, dword [esp + 0x60]
or eax, edx
mov edx, dword [esp + 0x34]
xor esi, ecx
xor edi, eax
mov eax, ebx
mov ecx, 0xe
shl ebx, 0x12
call fcn.1004a530
mov ecx, dword [esp + 0x34]
or ebp, eax
mov eax, dword [esp + 0x30]
or ebx, edx
mov edx, eax
xor esi, ebp
mov ebp, dword [esp + 0x20]
xor edi, ebx
not edx
mov ebx, ecx
and edx, ebp
mov ebp, dword [esp + 0x24]
not ebx
and ebx, ebp
mov ebp, dword [esp + 0x48]
and ebp, eax
mov eax, dword [esp + 0x4c]
and eax, ecx
xor edx, ebp
xor ebx, eax
mov eax, dword [esp + 0x90]
add esi, edx
mov ebp, dword [eax + 8]
adc edi, ebx
mov ebx, dword [eax + 0xc]
mov eax, dword [esp + 0x14]
add esi, ebp
mov ebp, dword [esp + 0x2c]
mov edx, dword [eax]
mov ecx, dword [eax + 4]
mov eax, dword [esp + 0x28]
adc edi, ebx
mov ebx, dword [esp + 0x40]
add esi, edx
adc edi, ecx
add esi, eax
adc edi, ebp
mov dword [esp + 0x18], esi
add ebx, esi
mov esi, dword [esp + 0x44]
adc esi, edi
mov dword [esp + 0x1c], edi
mov dword [esp + 0x40], ebx
mov dword [esp + 0x44], esi
mov esi, dword [esp + 0x38]
mov edi, dword [esp + 0x3c]
mov ebx, esi
mov ecx, 0x1c
mov eax, esi
mov edx, edi
xor ebp, ebp
shl ebx, 4
call fcn.1004a530
or ebx, edx
or ebp, eax
mov dword [esp + 0x60], ebx
mov ebx, edi
shr ebx, 2
mov dword [esp + 0x64], ebx
mov ecx, 0x1e
mov eax, esi
mov edx, edi
xor ebx, ebx
call fcn.1004a550
mov ecx, dword [esp + 0x64]
mov esi, dword [esp + 0x60]
or ecx, eax
mov eax, dword [esp + 0x38]
or ebx, edx
xor ebp, ecx
xor esi, ebx
mov edx, edi
mov ecx, 0x19
xor ebx, ebx
shr edi, 7
call fcn.1004a550
mov ecx, dword [esp + 0x58]
or edi, eax
mov eax, dword [esp + 0x38]
or ebx, edx
mov edx, eax
xor ebp, edi
xor edx, ecx
mov ecx, dword [esp + 0x3c]
xor esi, ebx
mov ebx, dword [esp + 0x5c]
mov edi, ecx
xor edi, ebx
mov ebx, dword [esp + 0x50]
and edx, ebx
mov ebx, dword [esp + 0x54]
and edi, ebx
mov ebx, dword [esp + 0x58]
and eax, ebx
mov ebx, dword [esp + 0x5c]
and ecx, ebx
mov ebx, dword [esp + 0x18]
xor edx, eax
mov eax, dword [esp + 0x8c]
xor edi, ecx
add ebp, edx
adc esi, edi
mov edi, dword [esp + 0x1c]
add ebp, ebx
adc esi, edi
add eax, 3
and eax, 0xf
mov dword [esp + 0x2c], esi
mov dword [esp + 0x28], ebp
xor ebp, ebp
mov ecx, dword [esp + eax*8 + 0xbc]
mov edx, dword [esp + eax*8 + 0xc0]
lea eax, [esp + eax*8 + 0xbc]
mov dword [esp + 0x6c], ecx
mov dword [esp + 0xa8], eax
mov eax, dword [esp + 0xa4]
mov dword [esp + 0x70], edx
mov ecx, 0x13
mov esi, dword [eax]
mov edi, dword [eax + 4]
mov ebx, esi
mov dword [esp + 0x80], esi
mov dword [esp + 0x84], edi
mov eax, esi
shl ebx, 0xd
mov edx, edi
call fcn.1004a530
or ebx, edx
or ebp, eax
mov dword [esp + 0x60], ebx
mov ebx, edi
shr ebx, 0x1d
mov dword [esp + 0x64], ebx
mov ecx, 3
mov eax, esi
mov edx, edi
xor ebx, ebx
call fcn.1004a550
mov ecx, dword [esp + 0x64]
mov esi, dword [esp + 0x60]
or ecx, eax
mov eax, dword [esp + 0x80]
or ebx, edx
xor ebp, ecx
mov ecx, 6
mov edx, edi
xor esi, ebx
call fcn.1004a530
mov edi, dword [esp + 0x70]
xor esi, edx
mov dword [esp + 0x7c], esi
mov esi, dword [esp + 0x6c]
xor ebp, eax
mov ebx, esi
mov dword [esp + 0x68], ebp
mov ecx, 8
mov eax, esi
mov edx, edi
xor ebp, ebp
shl ebx, 0x18
call fcn.1004a530
or ebx, edx
or ebp, eax
mov dword [esp + 0x60], ebx
mov ebx, esi
mov dword [esp + 0x64], ebp
mov ecx, 1
mov eax, esi
mov edx, edi
xor ebp, ebp
shl ebx, 0x1f
call fcn.1004a530
mov esi, dword [esp + 0x64]
mov edi, dword [esp + 0x60]
or ebp, eax
mov eax, dword [esp + 0x6c]
or ebx, edx
mov edx, dword [esp + 0x70]
mov ecx, 7
xor esi, ebp
xor edi, ebx
call fcn.1004a530
mov ecx, dword [esp + 0x7c]
xor edi, edx
mov edx, dword [esp + 0x68]
xor esi, eax
mov eax, dword [esp + 0x8c]
add edx, esi
adc ecx, edi
add eax, 0xfffffffb
and eax, 0xf
mov ebp, dword [esp + eax*8 + 0xbc]
add edx, ebp
mov ebp, dword [esp + 0x44]
mov ebx, dword [esp + eax*8 + 0xc0]
mov eax, dword [esp + 0x10]
adc ecx, ebx
mov edi, dword [eax]
add edi, edx
mov dword [eax], edi
mov esi, dword [eax + 4]
adc esi, ecx
mov dword [eax + 4], esi
mov esi, ebp
shr esi, 9
xor edi, edi
mov ebx, dword [esp + 0x40]
mov ecx, 0x17
mov eax, ebx
mov edx, ebp
call fcn.1004a550
or edi, edx
mov edx, ebx
or esi, eax
xor eax, eax
shl edx, 0xe
mov dword [esp + 0x64], eax
mov dword [esp + 0x60], edx
mov ecx, 0x12
mov eax, ebx
mov edx, ebp
call fcn.1004a530
mov ecx, dword [esp + 0x64]
xor ebp, ebp
or ecx, eax
mov eax, dword [esp + 0x60]
or eax, edx
mov edx, dword [esp + 0x44]
xor esi, ecx
xor edi, eax
mov eax, ebx
mov ecx, 0xe
shl ebx, 0x12
call fcn.1004a530
mov ecx, dword [esp + 0x44]
or ebp, eax
mov eax, dword [esp + 0x40]
or ebx, edx
mov edx, eax
xor esi, ebp
mov ebp, dword [esp + 0x48]
xor edi, ebx
not edx
mov ebx, ecx
and edx, ebp
mov ebp, dword [esp + 0x4c]
not ebx
and ebx, ebp
mov ebp, dword [esp + 0x30]
and ebp, eax
mov eax, dword [esp + 0x34]
and eax, ecx
xor edx, ebp
xor ebx, eax
mov eax, dword [esp + 0x90]
add esi, edx
mov ebp, dword [eax + 0x10]
adc edi, ebx
mov ebx, dword [eax + 0x14]
mov eax, dword [esp + 0x10]
add esi, ebp
mov ebp, dword [esp + 0x24]
mov edx, dword [eax]
mov ecx, dword [eax + 4]
mov eax, dword [esp + 0x20]
adc edi, ebx
mov ebx, dword [esp + 0x58]
add esi, edx
adc edi, ecx
add esi, eax
adc edi, ebp
mov dword [esp + 0x18], esi
add ebx, esi
mov esi, dword [esp + 0x5c]
adc esi, edi
mov dword [esp + 0x1c], edi
mov edi, dword [esp + 0x2c]
mov dword [esp + 0x5c], esi
mov esi, dword [esp + 0x28]
mov dword [esp + 0x58], ebx
mov ebx, esi
mov ecx, 0x1c
mov eax, esi
mov edx, edi
xor ebp, ebp
shl ebx, 4
call fcn.1004a530
or ebx, edx
or ebp, eax
mov dword [esp + 0x60], ebx
mov ebx, edi
shr ebx, 2
mov dword [esp + 0x64], ebx
mov ecx, 0x1e
mov eax, esi
mov edx, edi
xor ebx, ebx
call fcn.1004a550
mov ecx, dword [esp + 0x64]
mov esi, dword [esp + 0x60]
or ecx, eax
mov eax, dword [esp + 0x28]
or ebx, edx
xor ebp, ecx
xor esi, ebx
mov edx, edi
mov ecx, 0x19
xor ebx, ebx
shr edi, 7
call fcn.1004a550
mov ecx, dword [esp + 0x28]
or edi, eax
mov eax, dword [esp + 0x38]
or ebx, edx
mov edx, eax
xor ebp, edi
xor edx, ecx
mov ecx, dword [esp + 0x3c]
xor esi, ebx
mov ebx, dword [esp + 0x2c]
mov edi, ecx
xor edi, ebx
mov ebx, dword [esp + 0x50]
and edx, ebx
mov ebx, dword [esp + 0x54]
and edi, ebx
mov ebx, dword [esp + 0x28]
and eax, ebx
mov ebx, dword [esp + 0x2c]
and ecx, ebx
mov ebx, dword [esp + 0x18]
xor edx, eax
mov eax, dword [esp + 0x8c]
xor edi, ecx
add ebp, edx
adc esi, edi
mov edi, dword [esp + 0x1c]
add ebp, ebx
adc esi, edi
add eax, 4
and eax, 0xf
mov dword [esp + 0x24], esi
mov dword [esp + 0x20], ebp
xor ebp, ebp
mov ecx, dword [esp + eax*8 + 0xbc]
mov edx, dword [esp + eax*8 + 0xc0]
lea eax, [esp + eax*8 + 0xbc]
mov dword [esp + 0x6c], ecx
mov dword [esp + 0xa4], eax
mov eax, dword [esp + 0x14]
mov dword [esp + 0x70], edx
mov ecx, 0x13
mov esi, dword [eax]
mov edi, dword [eax + 4]
mov ebx, esi
mov eax, esi
mov edx, edi
mov dword [esp + 0x80], esi
mov dword [esp + 0x84], edi
shl ebx, 0xd
call fcn.1004a530
or ebx, edx
or ebp, eax
mov dword [esp + 0x60], ebx
mov ebx, edi
shr ebx, 0x1d
mov dword [esp + 0x64], ebx
xor ebx, ebx
mov ecx, 3
mov eax, esi
mov edx, edi
call fcn.1004a550
mov ecx, dword [esp + 0x64]
mov esi, dword [esp + 0x60]
or ecx, eax
mov eax, dword [esp + 0x80]
or ebx, edx
xor ebp, ecx
mov ecx, 6
mov edx, edi
xor esi, ebx
call fcn.1004a530
mov edi, dword [esp + 0x70]
xor esi, edx
mov dword [esp + 0x7c], esi
mov esi, dword [esp + 0x6c]
xor ebp, eax
mov ebx, esi
mov dword [esp + 0x68], ebp
mov ecx, 8
mov eax, esi
mov edx, edi
xor ebp, ebp
shl ebx, 0x18
call fcn.1004a530
or ebx, edx
or ebp, eax
mov dword [esp + 0x60], ebx
mov ebx, esi
mov dword [esp + 0x64], ebp
mov ecx, 1
mov eax, esi
mov edx, edi
xor ebp, ebp
shl ebx, 0x1f
call fcn.1004a530
mov esi, dword [esp + 0x64]
mov edi, dword [esp + 0x60]
or ebp, eax
mov eax, dword [esp + 0x6c]
or ebx, edx
mov edx, dword [esp + 0x70]
mov ecx, 7
xor esi, ebp
xor edi, ebx
call fcn.1004a530
mov ecx, dword [esp + 0x7c]
xor edi, edx
mov edx, dword [esp + 0x68]
xor esi, eax
mov eax, dword [esp + 0x8c]
add edx, esi
adc ecx, edi
add eax, 0xfffffffc
and eax, 0xf
mov ebp, dword [esp + eax*8 + 0xbc]
add edx, ebp
mov ebp, dword [esp + 0x5c]
mov ebx, dword [esp + eax*8 + 0xc0]
mov eax, dword [esp + 0xa8]
adc ecx, ebx
mov ebx, dword [esp + 0x58]
mov edi, dword [eax]
add edi, edx
mov edx, ebp
mov dword [eax], edi
mov esi, dword [eax + 4]
adc esi, ecx
mov ecx, 0x17
mov dword [eax + 4], esi
mov esi, ebp
mov eax, ebx
xor edi, edi
shr esi, 9
call fcn.1004a550
or esi, eax
or edi, edx
mov edx, ebx
xor eax, eax
shl edx, 0xe
mov dword [esp + 0x64], eax
mov dword [esp + 0x60], edx
mov ecx, 0x12
mov eax, ebx
mov edx, ebp
call fcn.1004a530
mov ecx, dword [esp + 0x64]
xor ebp, ebp
or ecx, eax
mov eax, dword [esp + 0x60]
or eax, edx
mov edx, dword [esp + 0x5c]
xor esi, ecx
xor edi, eax
mov eax, ebx
mov ecx, 0xe
shl ebx, 0x12
call fcn.1004a530
mov ecx, dword [esp + 0x5c]
or ebp, eax
mov eax, dword [esp + 0x58]
or ebx, edx
mov edx, eax
xor esi, ebp
mov ebp, dword [esp + 0x30]
xor edi, ebx
not edx
mov ebx, ecx
and edx, ebp
mov ebp, dword [esp + 0x34]
not ebx
and ebx, ebp
mov ebp, dword [esp + 0x40]
and ebp, eax
mov eax, dword [esp + 0x44]
and eax, ecx
xor edx, ebp
xor ebx, eax
mov eax, dword [esp + 0x90]
add esi, edx
mov ebp, dword [eax + 0x18]
adc edi, ebx
mov ebx, dword [eax + 0x1c]
mov eax, dword [esp + 0xa8]
add esi, ebp
mov ebp, dword [esp + 0x4c]
mov edx, dword [eax]
mov ecx, dword [eax + 4]
mov eax, dword [esp + 0x48]
adc edi, ebx
mov ebx, dword [esp + 0x50]
add esi, edx
adc edi, ecx
add esi, eax
adc edi, ebp
mov dword [esp + 0x18], esi
add ebx, esi
mov esi, dword [esp + 0x54]
adc esi, edi
mov dword [esp + 0x1c], edi
mov edi, dword [esp + 0x24]
mov dword [esp + 0x54], esi
mov esi, dword [esp + 0x20]
mov dword [esp + 0x50], ebx
mov ebx, esi
mov ecx, 0x1c
mov eax, esi
mov edx, edi
xor ebp, ebp
shl ebx, 4
call fcn.1004a530
or ebx, edx
or ebp, eax
mov dword [esp + 0x60], ebx
mov ebx, edi
shr ebx, 2
mov dword [esp + 0x64], ebx
xor ebx, ebx
mov ecx, 0x1e
mov eax, esi
mov edx, edi
call fcn.1004a550
mov ecx, dword [esp + 0x64]
mov esi, dword [esp + 0x60]
or ecx, eax
mov eax, dword [esp + 0x20]
or ebx, edx
xor ebp, ecx
xor esi, ebx
mov edx, edi
mov ecx, 0x19
xor ebx, ebx
shr edi, 7
call fcn.1004a550
mov ecx, dword [esp + 0x20]
or edi, eax
mov eax, dword [esp + 0x28]
or ebx, edx
mov edx, eax
xor ebp, edi
xor edx, ecx
mov ecx, dword [esp + 0x2c]
xor esi, ebx
mov ebx, dword [esp + 0x24]
mov edi, ecx
xor edi, ebx
mov ebx, dword [esp + 0x38]
and edx, ebx
mov ebx, dword [esp + 0x3c]
and edi, ebx
mov ebx, dword [esp + 0x20]
and eax, ebx
mov ebx, dword [esp + 0x24]
and ecx, ebx
mov ebx, dword [esp + 0x18]
xor edx, eax
mov eax, dword [esp + 0x8c]
xor edi, ecx
add ebp, edx
adc esi, edi
mov edi, dword [esp + 0x1c]
add ebp, ebx
adc esi, edi
add eax, 5
and eax, 0xf
mov dword [esp + 0x4c], esi
mov dword [esp + 0x48], ebp
xor ebp, ebp
mov ecx, dword [esp + eax*8 + 0xbc]
mov edx, dword [esp + eax*8 + 0xc0]
lea eax, [esp + eax*8 + 0xbc]
mov dword [esp + 0x6c], ecx
mov dword [esp + 0x14], eax
mov eax, dword [esp + 0x10]
mov dword [esp + 0x70], edx
mov ecx, 0x13
mov esi, dword [eax]
mov edi, dword [eax + 4]
mov ebx, esi
mov eax, esi
mov edx, edi
mov dword [esp + 0x80], esi
mov dword [esp + 0x84], edi
shl ebx, 0xd
call fcn.1004a530
or ebx, edx
or ebp, eax
mov dword [esp + 0x60], ebx
mov ebx, edi
shr ebx, 0x1d
mov dword [esp + 0x64], ebx
mov ecx, 3
mov eax, esi
mov edx, edi
xor ebx, ebx
call fcn.1004a550
mov ecx, dword [esp + 0x64]
mov esi, dword [esp + 0x60]
or ecx, eax
or ebx, edx
xor ebp, ecx
mov eax, dword [esp + 0x80]
mov ecx, 6
mov edx, edi
xor esi, ebx
call fcn.1004a530
mov edi, dword [esp + 0x70]
xor esi, edx
mov dword [esp + 0x7c], esi
mov esi, dword [esp + 0x6c]
xor ebp, eax
mov ebx, esi
mov dword [esp + 0x68], ebp
mov ecx, 8
mov eax, esi
mov edx, edi
xor ebp, ebp
shl ebx, 0x18
call fcn.1004a530
or ebx, edx
or ebp, eax
mov dword [esp + 0x60], ebx
mov ebx, esi
mov dword [esp + 0x64], ebp
mov ecx, 1
mov eax, esi
mov edx, edi
xor ebp, ebp
shl ebx, 0x1f
call fcn.1004a530
mov esi, dword [esp + 0x64]
mov edi, dword [esp + 0x60]
or ebp, eax
mov eax, dword [esp + 0x6c]
or ebx, edx
mov edx, dword [esp + 0x70]
mov ecx, 7
xor esi, ebp
xor edi, ebx
call fcn.1004a530
mov ecx, dword [esp + 0x7c]
xor esi, eax
mov eax, dword [esp + 0x74]
xor edi, edx
mov edx, dword [esp + 0x68]
mov ebp, dword [eax]
mov ebx, dword [eax + 4]
mov eax, dword [esp + 0xa4]
add edx, esi
adc ecx, edi
add edx, ebp
mov edi, dword [eax]
mov ebp, dword [esp + 0x54]
adc ecx, ebx
mov ebx, dword [esp + 0x50]
add edi, edx
mov edx, ebp
mov dword [eax], edi
mov esi, dword [eax + 4]
adc esi, ecx
mov ecx, 0x17
mov dword [eax + 4], esi
mov esi, ebp
mov eax, ebx
xor edi, edi
shr esi, 9
call fcn.1004a550
or edi, edx
mov edx, ebx
or esi, eax
xor eax, eax
shl edx, 0xe
mov dword [esp + 0x74], eax
mov dword [esp + 0x64], edx
mov ecx, 0x12
mov eax, ebx
mov edx, ebp
call fcn.1004a530
mov ecx, dword [esp + 0x74]
or ecx, eax
mov eax, dword [esp + 0x64]
or eax, edx
mov edx, dword [esp + 0x54]
xor esi, ecx
xor edi, eax
mov eax, ebx
mov ecx, 0xe
xor ebp, ebp
shl ebx, 0x12
call fcn.1004a530
mov ecx, dword [esp + 0x54]
or ebp, eax
mov eax, dword [esp + 0x50]
or ebx, edx
mov edx, eax
xor esi, ebp
mov ebp, dword [esp + 0x40]
xor edi, ebx
not edx
mov ebx, ecx
and edx, ebp
mov ebp, dword [esp + 0x44]
not ebx
and ebx, ebp
mov ebp, dword [esp + 0x58]
and eax, ebp
mov ebp, dword [esp + 0x5c]
and ecx, ebp
xor edx, eax
mov eax, dword [esp + 0x90]
xor ebx, ecx
add esi, edx
mov ebp, dword [eax + 0x20]
adc edi, ebx
mov ebx, dword [eax + 0x24]
mov eax, dword [esp + 0xa4]
add esi, ebp
mov ebp, dword [esp + 0x34]
mov edx, dword [eax]
mov ecx, dword [eax + 4]
mov eax, dword [esp + 0x30]
adc edi, ebx
mov ebx, dword [esp + 0x38]
add esi, edx
adc edi, ecx
add esi, eax
adc edi, ebp
mov dword [esp + 0x18], esi
add ebx, esi
mov esi, dword [esp + 0x3c]
adc esi, edi
mov dword [esp + 0x1c], edi
mov edi, dword [esp + 0x4c]
mov dword [esp + 0x3c], esi
mov esi, dword [esp + 0x48]
mov dword [esp + 0x38], ebx
mov ebx, esi
mov ecx, 0x1c
mov eax, esi
mov edx, edi
xor ebp, ebp
shl ebx, 4
call fcn.1004a530
or ebx, edx
or ebp, eax
mov dword [esp + 0x64], ebx
mov ebx, edi
shr ebx, 2
mov dword [esp + 0x74], ebx
mov ecx, 0x1e
mov eax, esi
mov edx, edi
xor ebx, ebx
call fcn.1004a550
mov ecx, dword [esp + 0x74]
mov esi, dword [esp + 0x64]
or ecx, eax
or ebx, edx
mov edx, edi
xor ebp, ecx
xor esi, ebx
shr edi, 7
xor ebx, ebx
mov eax, dword [esp + 0x48]
mov ecx, 0x19
call fcn.1004a550
mov ecx, dword [esp + 0x4c]
or edi, eax
mov eax, dword [esp + 0x48]
or ebx, edx
mov edx, dword [esp + 0x20]
xor ebp, edi
xor esi, ebx
mov ebx, dword [esp + 0x24]
mov edi, edx
xor ebx, ecx
and ebx, dword [esp + 0x2c]
xor edi, eax
and edi, dword [esp + 0x28]
and edx, eax
mov eax, dword [esp + 0x24]
and eax, ecx
xor edi, edx
mov ecx, dword [esp + 0x8c]
xor ebx, eax
add ebp, edi
mov edi, dword [esp + 0x1c]
adc esi, ebx
mov ebx, dword [esp + 0x18]
add ebp, ebx
adc esi, edi
add ecx, 6
and ecx, 0xf
mov dword [esp + 0x34], esi
mov dword [esp + 0x30], ebp
xor ebp, ebp
mov edx, dword [esp + ecx*8 + 0xbc]
lea eax, [esp + ecx*8 + 0xbc]
mov dword [esp + 0x10], eax
mov dword [esp + 0x6c], edx
mov eax, dword [eax + 4]
mov ecx, 0x13
mov dword [esp + 0x70], 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 + 0x80], esi
mov dword [esp + 0x84], edi
shl ebx, 0xd
call fcn.1004a530
or ebx, edx
or ebp, eax
mov dword [esp + 0x64], ebx
mov ebx, edi
shr ebx, 0x1d
mov dword [esp + 0x74], ebx
mov ecx, 3
mov eax, esi
mov edx, edi
xor ebx, ebx
call fcn.1004a550
mov ecx, dword [esp + 0x74]
mov esi, dword [esp + 0x64]
or ecx, eax
mov eax, dword [esp + 0x80]
or ebx, edx
xor ebp, ecx
mov ecx, 6
mov edx, edi
xor esi, ebx
call fcn.1004a530
xor esi, edx
xor ebp, eax
mov dword [esp + 0x68], esi
mov esi, dword [esp + 0x6c]
mov dword [esp + 0x60], ebp
mov ebx, esi
xor ebp, ebp
mov ecx, 8
shl ebx, 0x18
mov eax, esi
mov edi, dword [esp + 0x70]
mov edx, edi
call fcn.1004a530
or ebx, edx
or ebp, eax
mov dword [esp + 0x64], ebx
mov ebx, esi
mov dword [esp + 0x74], ebp
mov ecx, 1
mov eax, esi
mov edx, edi
xor ebp, ebp
shl ebx, 0x1f
call fcn.1004a530
mov esi, dword [esp + 0x74]
mov edi, dword [esp + 0x64]
or ebp, eax
mov eax, dword [esp + 0x6c]
or ebx, edx
mov edx, dword [esp + 0x70]
mov ecx, 7
xor esi, ebp
xor edi, ebx
call fcn.1004a530
mov ecx, dword [esp + 0x68]
xor esi, eax
mov eax, dword [esp + 0x88]
xor edi, edx
mov edx, dword [esp + 0x60]
mov ebp, dword [eax]
mov ebx, dword [eax + 4]
mov eax, dword [esp + 0x14]
add edx, esi
adc ecx, edi
add edx, ebp
mov edi, dword [eax]
mov ebp, dword [esp + 0x3c]
adc ecx, ebx
mov ebx, dword [esp + 0x38]
add edi, edx
mov edx, ebp
mov dword [eax], edi
mov esi, dword [eax + 4]
adc esi, ecx
mov ecx, 0x17
mov dword [eax + 4], esi
mov esi, ebp
mov eax, ebx
xor edi, edi
shr esi, 9
call fcn.1004a550
or edi, edx
mov edx, ebx
or esi, eax
xor eax, eax
shl edx, 0xe
mov dword [esp + 0x88], eax
mov dword [esp + 0x74], edx
mov ecx, 0x12
mov eax, ebx
mov edx, ebp
call fcn.1004a530
mov ecx, dword [esp + 0x88]
xor ebp, ebp
or ecx, eax
mov eax, dword [esp + 0x74]
or eax, edx
mov edx, dword [esp + 0x3c]
xor esi, ecx
xor edi, eax
mov eax, ebx
mov ecx, 0xe
shl ebx, 0x12
call fcn.1004a530
or ebp, eax
mov eax, dword [esp + 0x38]
or ebx, edx
mov edx, eax
xor esi, ebp
xor edi, ebx
not edx
mov ecx, dword [esp + 0x3c]
mov ebp, dword [esp + 0x58]
mov ebx, ecx
and edx, ebp
mov ebp, dword [esp + 0x5c]
not ebx
and ebx, ebp
mov ebp, dword [esp + 0x50]
and ebp, eax
mov eax, dword [esp + 0x54]
and eax, ecx
xor edx, ebp
xor ebx, eax
mov eax, dword [esp + 0x90]
add esi, edx
mov ebp, dword [eax + 0x28]
adc edi, ebx
mov ebx, dword [eax + 0x2c]
mov eax, dword [esp + 0x14]
add esi, ebp
mov ebp, dword [esp + 0x44]
mov edx, dword [eax]
mov ecx, dword [eax + 4]
mov eax, dword [esp + 0x40]
adc edi, ebx
mov ebx, dword [esp + 0x28]
add esi, edx
adc edi, ecx
add esi, eax
adc edi, ebp
mov dword [esp + 0x18], esi
add ebx, esi
mov esi, dword [esp + 0x2c]
adc esi, edi
mov dword [esp + 0x1c], edi
mov edi, dword [esp + 0x34]
mov dword [esp + 0x2c], esi
mov esi, dword [esp + 0x30]
mov dword [esp + 0x28], ebx
mov ebx, esi
mov ecx, 0x1c
mov eax, esi
mov edx, edi
xor ebp, ebp
shl ebx, 4
call fcn.1004a530
or ebx, edx
or ebp, eax
mov dword [esp + 0x74], ebx
mov ebx, edi
shr ebx, 2
mov dword [esp + 0x88], ebx
mov ecx, 0x1e
mov eax, esi
mov edx, edi
xor ebx, ebx
call fcn.1004a550
mov ecx, dword [esp + 0x88]
mov esi, dword [esp + 0x74]
or ecx, eax
mov eax, dword [esp + 0x30]
or ebx, edx
xor ebp, ecx
xor esi, ebx
mov edx, edi
mov ecx, 0x19
xor ebx, ebx
shr edi, 7
call fcn.1004a550
mov ecx, dword [esp + 0x30]
or edi, eax
mov eax, dword [esp + 0x48]
or ebx, edx
mov edx, eax
xor ebp, edi
xor edx, ecx
mov ecx, dword [esp + 0x4c]
xor esi, ebx
mov ebx, dword [esp + 0x34]
mov edi, ecx
xor edi, ebx
mov ebx, dword [esp + 0x20]
and edx, ebx
mov ebx, dword [esp + 0x24]
and edi, ebx
mov ebx, dword [esp + 0x30]
and eax, ebx
mov ebx, dword [esp + 0x34]
and ecx, ebx
mov ebx, dword [esp + 0x18]
xor edx, eax
mov eax, dword [esp + 0x8c]
xor edi, ecx
add ebp, edx
adc esi, edi
mov edi, dword [esp + 0x1c]
add ebp, ebx
adc esi, edi
add eax, 7
and eax, 0xf
mov dword [esp + 0x44], esi
mov dword [esp + 0x40], ebp
xor ebp, ebp
mov ecx, dword [esp + eax*8 + 0xbc]
mov dword [esp + 0x6c], ecx
mov ecx, 0x13
mov edx, dword [esp + eax*8 + 0xc0]
mov eax, dword [esp + 0xa4]
mov dword [esp + 0x70], edx
mov esi, dword [eax]
mov edi, dword [eax + 4]
mov ebx, esi
mov eax, esi
mov edx, edi
mov dword [esp + 0x80], esi
mov dword [esp + 0x84], edi
shl ebx, 0xd
call fcn.1004a530
or ebx, edx
or ebp, eax
mov dword [esp + 0x74], ebx
mov ebx, edi
shr ebx, 0x1d
mov dword [esp + 0x88], ebx
mov ecx, 3
mov eax, esi
mov edx, edi
xor ebx, ebx
call fcn.1004a550
mov ecx, dword [esp + 0x88]
mov esi, dword [esp + 0x74]
or ecx, eax
mov eax, dword [esp + 0x80]
or ebx, edx
xor ebp, ecx
mov ecx, 6
mov edx, edi
xor esi, ebx
call fcn.1004a530
mov edi, dword [esp + 0x70]
xor esi, edx
mov dword [esp + 0x60], esi
mov esi, dword [esp + 0x6c]
xor ebp, eax
mov ebx, esi
mov dword [esp + 0x64], ebp
mov ecx, 8
mov eax, esi
mov edx, edi
xor ebp, ebp
shl ebx, 0x18
call fcn.1004a530
or ebx, edx
or ebp, eax
mov dword [esp + 0x74], ebx
mov ebx, esi
mov dword [esp + 0x88], ebp
xor ebp, ebp
shl ebx, 0x1f
mov ecx, 1
mov eax, esi
mov edx, edi
call fcn.1004a530
mov esi, dword [esp + 0x88]
mov edi, dword [esp + 0x74]
or ebp, eax
mov eax, dword [esp + 0x6c]
or ebx, edx
mov edx, dword [esp + 0x70]
mov ecx, 7
xor esi, ebp
xor edi, ebx
call fcn.1004a530
mov ecx, dword [esp + 0x60]
xor esi, eax
mov eax, dword [esp + 0xac]
xor edi, edx
mov edx, dword [esp + 0x64]
mov ebp, dword [eax]
mov ebx, dword [eax + 4]
mov eax, dword [esp + 0x10]
add edx, esi
adc ecx, edi
add edx, ebp
mov edi, dword [eax]
mov ebp, dword [esp + 0x2c]
adc ecx, ebx
mov ebx, dword [esp + 0x28]
add edi, edx
mov edx, ebp
mov dword [eax], edi
mov esi, dword [eax + 4]
adc esi, ecx
mov ecx, 0x17
mov dword [eax + 4], esi
mov esi, ebp
mov eax, ebx
xor edi, edi
shr esi, 9
call fcn.1004a550
or edi, edx
mov edx, ebx
or esi, eax
xor eax, eax
shl edx, 0xe
mov dword [esp + 0x88], eax
mov dword [esp + 0x74], edx
mov ecx, 0x12
mov eax, ebx
mov edx, ebp
call fcn.1004a530
mov ecx, dword [esp + 0x88]
xor ebp, ebp
or ecx, eax
mov eax, dword [esp + 0x74]
or eax, edx
mov edx, dword [esp + 0x2c]
xor esi, ecx
xor edi, eax
mov eax, ebx
mov ecx, 0xe
shl ebx, 0x12
call fcn.1004a530
mov ecx, dword [esp + 0x2c]
or ebp, eax
mov eax, dword [esp + 0x28]
or ebx, edx
mov edx, eax
xor esi, ebp
mov ebp, dword [esp + 0x50]
xor edi, ebx
not edx
mov ebx, ecx
and edx, ebp
mov ebp, dword [esp + 0x54]
not ebx
and ebx, ebp
mov ebp, dword [esp + 0x38]
and ebp, eax
mov eax, dword [esp + 0x3c]
and eax, ecx
xor edx, ebp
xor ebx, eax
mov eax, dword [esp + 0x90]
add esi, edx
adc edi, ebx
mov ebp, dword [eax + 0x30]
mov ebx, dword [eax + 0x34]
mov eax, dword [esp + 0x10]
add esi, ebp
mov ebp, dword [esp + 0x5c]
mov edx, dword [eax]
mov ecx, dword [eax + 4]
mov eax, dword [esp + 0x58]
adc edi, ebx
mov ebx, dword [esp + 0x20]
add esi, edx
adc edi, ecx
add esi, eax
adc edi, ebp
mov dword [esp + 0x18], esi
add ebx, esi
mov esi, dword [esp + 0x24]
adc esi, edi
mov dword [esp + 0x1c], edi
mov edi, dword [esp + 0x44]
mov dword [esp + 0x24], esi
mov esi, dword [esp + 0x40]
mov dword [esp + 0x20], ebx
mov ebx, esi
mov ecx, 0x1c
mov eax, esi
mov edx, edi
xor ebp, ebp
shl ebx, 4
call fcn.1004a530
or ebx, edx
or ebp, eax
mov dword [esp + 0x74], ebx
mov ebx, edi
shr ebx, 2
mov dword [esp + 0x88], ebx
mov ecx, 0x1e
mov eax, esi
mov edx, edi
xor ebx, ebx
call fcn.1004a550
mov ecx, dword [esp + 0x88]
mov esi, dword [esp + 0x74]
or ecx, eax
mov eax, dword [esp + 0x40]
or ebx, edx
xor ebp, ecx
xor esi, ebx
mov edx, edi
mov ecx, 0x19
xor ebx, ebx
shr edi, 7
call fcn.1004a550
mov ecx, dword [esp + 0x40]
or edi, eax
mov eax, dword [esp + 0x30]
xor ebp, edi
or ebx, edx
mov edx, dword [esp + 0x34]
mov edi, eax
and eax, dword [esp + 0x40]
xor esi, ebx
xor edi, ecx
mov ecx, dword [esp + 0x44]
and edi, dword [esp + 0x48]
mov ebx, edx
and edx, ecx
xor ebx, ecx
xor edi, eax
and ebx, dword [esp + 0x4c]
mov eax, dword [esp + 0x18]
xor ebx, edx
add ebp, edi
adc esi, ebx
mov ebx, dword [esp + 0x1c]
add ebp, eax
adc esi, ebx
mov edx, ebp
mov eax, dword [esp + 0x8c]
mov ebp, dword [esp + 0x90]
add eax, 8
add ebp, 0x40
mov dword [esp + 0x58], edx
mov dword [esp + 0x5c], esi
lea edi, [eax - 1]
mov dword [esp + 0x8c], eax
cmp edi, 0x50
mov dword [esp + 0x90], ebp
jl 0x10042368
mov eax, dword [esp + 0x13c]
mov ebx, dword [esp + 0x40]
add eax, edx
mov edx, dword [esp + 0x140]
adc edx, esi
mov esi, dword [esp + 0x178]
mov ebp, dword [esp + 0x30]
mov edi, dword [esp + 0x48]
mov dword [esi], eax
mov eax, dword [esp + 0x16c]
add eax, ebx
mov ebx, dword [esp + 0x34]
mov dword [esi + 4], edx
mov edx, dword [esp + 0x170]
mov dword [esi + 8], eax
mov eax, dword [esp + 0x164]
adc edx, ecx
mov ecx, dword [esp + 0x168]
add eax, ebp
mov ebp, dword [esp + 0x20]
mov dword [esi + 0x10], eax
mov eax, dword [esp + 0x154]
adc ecx, ebx
mov ebx, dword [esp + 0x24]
mov dword [esi + 0xc], edx
mov edx, dword [esp + 0x4c]
mov dword [esi + 0x14], ecx
mov ecx, dword [esp + 0x158]
add eax, edi
mov edi, dword [esp + 0x28]
mov dword [esi + 0x18], eax
mov eax, dword [esp + 0x144]
adc ecx, edx
mov edx, dword [esp + 0x2c]
mov dword [esi + 0x1c], ecx
mov ecx, dword [esp + 0x148]
add eax, ebp
mov ebp, dword [esp + 0x38]
mov dword [esi + 0x20], eax
mov eax, dword [esp + 0x14c]
adc ecx, ebx
mov ebx, dword [esp + 0x3c]
mov dword [esi + 0x24], ecx
mov ecx, dword [esp + 0x150]
add eax, edi
mov edi, dword [esp + 0x50]
mov dword [esi + 0x28], eax
mov eax, dword [esp + 0x15c]
adc ecx, edx
mov edx, dword [esp + 0x54]
mov dword [esi + 0x2c], ecx
mov ecx, dword [esp + 0x160]
add eax, ebp
mov dword [esi + 0x30], eax
mov eax, dword [esp + 0xb4]
adc ecx, ebx
add eax, edi
mov edi, dword [esp + 0x78]
mov dword [esi + 0x34], ecx
mov ecx, dword [esp + 0xb8]
mov dword [esi + 0x38], eax
mov eax, dword [esp + 0xb0]
adc ecx, edx
add edi, 0x80
dec eax
mov dword [esi + 0x3c], ecx
mov dword [esp + 0x78], edi
mov dword [esp + 0xb0], eax
jne 0x1003fa9d
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x164
ret