Function at 0x10010bd0
Capabilities:
Resolve function by parsing pe exports

Disassembly:
sub esp, 0x90
push ebx
push ebp
push esi
mov esi, dword [esp + 0xa0]
push edi
mov edx, dword [esi + 0x10]
mov eax, dword [esi + 8]
mov ecx, dword [esi + 0xc]
mov dword [esp + 0x38], edx
mov edx, dword [esi + 0x14]
mov dword [esp + 0x3c], edx
jmp 0x10010c04
mov ecx, dword [esp + 0x44]
add eax, dword [esp + 0xb0]
movups xmm1, xmmword [esi + 0x18]
mov dword [esp + 0x40], eax
adc ecx, 0
movups xmm2, xmmword [esi + 0x28]
mov dword [esp + 0x44], ecx
movaps xmm0, xmm1
movd ebp, xmm1
psrldq xmm0, 8
movd eax, xmm0
movaps xmm0, xmm1
psrldq xmm0, 4
mov edx, ebp
movd ebx, xmm0
movaps xmm0, xmm2
xor edx, eax
mov dword [esp + 0x34], eax
movd eax, xmm2
psrldq xmm1, 0xc
mov ecx, ebx
psrldq xmm0, 4
xor edx, eax
mov dword [esp + 0x2c], eax
movd eax, xmm0
movaps xmm0, xmm2
movd edi, xmm1
psrldq xmm0, 8
mov dword [esp + 0x30], eax
xor ecx, edi
psrldq xmm2, 0xc
xor ecx, eax
movd esi, xmm2
movd eax, xmm0
push 4
push dword [esp + 0xac]
xor edx, eax
mov dword [esp + 0x30], eax
mov eax, dword [esp + 0x40]
xor ecx, esi
xor eax, dword [esp + 0x48]
xor edx, 0xa9fc1a22
mov dword [esp + 0x68], eax
xor ecx, 0x1bd11bda
mov eax, dword [esp + 0x44]
xor eax, dword [esp + 0x4c]
mov dword [esp + 0x6c], eax
lea eax, [esp + 0x78]
push eax
mov dword [esp + 0x64], ebp
mov dword [esp + 0x68], ebx
mov dword [esp + 0x60], edi
mov dword [esp + 0x54], esi
mov dword [esp + 0x58], edx
mov dword [esp + 0x5c], ecx
call fcn.100171a0
mov ecx, dword [esp + 0x84]
add esp, 0xc
add ecx, dword [esp + 0x34]
mov eax, dword [esp + 0x7c]
mov edx, dword [esp + 0x8c]
adc eax, edi
add ecx, dword [esp + 0x40]
mov edi, dword [esp + 0x88]
adc eax, dword [esp + 0x44]
add edi, dword [esp + 0x28]
adc edx, esi
add dword [esp + 0xa8], 0x20
mov esi, dword [esp + 0x70]
add esi, ebp
mov ebp, dword [esp + 0x74]
mov dword [esp + 0x10], esi
adc ebp, ebx
add dword [esp + 0x10], ecx
adc ebp, eax
xor ebx, ebx
mov dword [esp + 0x14], ebp
mov ebp, eax
shld eax, ecx, 0xe
shr ebp, 0x12
shl ecx, 0xe
or ebp, ecx
xor ebp, dword [esp + 0x10]
or ebx, eax
xor ebx, dword [esp + 0x14]
mov ecx, edx
mov dword [esp + 0x24], ebp
mov ebp, dword [esp + 0x80]
add ebp, dword [esp + 0x38]
mov dword [esp + 0x20], ebx
mov ebx, dword [esp + 0x84]
adc ebx, dword [esp + 0x3c]
add ebp, dword [esp + 0x2c]
adc ebx, dword [esp + 0x30]
add ebp, edi
mov dword [esp + 0x18], ebp
adc ebx, edx
shr ecx, 0x10
shld edx, edi, 0x10
xor eax, eax
mov dword [esp + 0x1c], ebx
or eax, edx
shl edi, 0x10
mov edx, dword [esp + 0x14]
or ecx, edi
mov edi, dword [esp + 0x10]
xor ecx, ebp
xor eax, ebx
mov ebp, ecx
add edi, ecx
mov dword [esp + 0x10], edi
adc edx, eax
xor ebx, ebx
shrd ecx, eax, 0xc
shl ebp, 0x14
or ebx, ecx
shr eax, 0xc
or ebp, eax
mov dword [esp + 0x14], edx
xor ebx, edi
xor ebp, edx
mov edi, dword [esp + 0x24]
mov ecx, edi
add dword [esp + 0x18], edi
mov edx, dword [esp + 0x20]
adc dword [esp + 0x1c], edx
xor eax, eax
shrd edi, edx, 7
shl ecx, 0x19
or eax, edi
shr edx, 7
xor eax, dword [esp + 0x18]
or ecx, edx
xor ecx, dword [esp + 0x1c]
add dword [esp + 0x10], eax
mov edi, ecx
adc dword [esp + 0x14], ecx
xor edx, edx
shld ecx, eax, 0x17
shr edi, 9
shl eax, 0x17
or edx, ecx
xor edx, dword [esp + 0x14]
or edi, eax
xor edi, dword [esp + 0x10]
mov ecx, ebx
add dword [esp + 0x18], ebx
adc dword [esp + 0x1c], ebp
xor eax, eax
shrd ebx, ebp, 0x18
shl ecx, 8
shr ebp, 0x18
or eax, ebx
mov ebx, dword [esp + 0x1c]
or ecx, ebp
mov ebp, dword [esp + 0x18]
xor ecx, ebx
xor eax, ebp
add dword [esp + 0x10], eax
adc dword [esp + 0x14], ecx
add ebp, edi
mov dword [esp + 0x18], ebp
adc ebx, edx
mov dword [esp + 0x1c], ebx
mov ebp, edi
shrd edi, edx, 0x1b
shl ebp, 5
xor ebx, ebx
or ebx, edi
shr edx, 0x1b
xor ebx, dword [esp + 0x18]
or ebp, edx
xor ebp, dword [esp + 0x1c]
mov edx, ecx
add ebx, dword [esp + 0x38]
adc ebp, dword [esp + 0x3c]
add ebx, dword [esp + 0x2c]
adc ebp, dword [esp + 0x30]
xor edi, edi
shld ecx, eax, 5
shr edx, 0x1b
shl eax, 5
or edi, ecx
xor edi, dword [esp + 0x14]
or edx, eax
xor edx, dword [esp + 0x10]
add edx, dword [esp + 0x4c]
mov ecx, dword [esp + 0x34]
adc edi, dword [esp + 0x50]
add edx, 1
mov eax, dword [esp + 0x54]
adc edi, 0
add ecx, ebx
mov dword [esp + 0x20], edi
adc eax, ebp
add dword [esp + 0x10], ecx
mov ecx, dword [esp + 0x14]
adc ecx, eax
mov eax, ebp
shld ebp, ebx, 0x19
shr eax, 7
xor edi, edi
or edi, ebp
shl ebx, 0x19
mov ebp, dword [esp + 0x20]
or eax, ebx
xor eax, dword [esp + 0x10]
xor edi, ecx
mov ebx, dword [esp + 0x18]
mov dword [esp + 0x14], ecx
mov ecx, dword [esp + 0x60]
add ecx, dword [esp + 0x28]
mov dword [esp + 0x24], eax
mov eax, dword [esp + 0x64]
adc eax, dword [esp + 0x48]
mov dword [esp + 0x90], ecx
add ecx, edx
mov dword [esp + 0x68], eax
adc eax, ebp
add ebx, ecx
mov ecx, dword [esp + 0x1c]
adc ecx, eax
mov dword [esp + 0x18], ebx
mov eax, edx
add edx, edx
shrd eax, ebp, 0x1f
shr ebp, 0x1f
xor eax, ebx
or ebp, edx
mov ebx, eax
xor ebp, ecx
add dword [esp + 0x10], eax
adc dword [esp + 0x14], ebp
xor edx, edx
shrd eax, ebp, 0x12
shl ebx, 0xe
shr ebp, 0x12
or edx, eax
xor edx, dword [esp + 0x10]
or ebx, ebp
xor ebx, dword [esp + 0x14]
mov ebp, dword [esp + 0x24]
add dword [esp + 0x18], ebp
adc ecx, edi
mov dword [esp + 0x1c], ecx
xor eax, eax
mov ecx, edi
shld edi, ebp, 0xc
shr ecx, 0x14
or eax, edi
shl ebp, 0xc
xor eax, dword [esp + 0x1c]
or ecx, ebp
xor ecx, dword [esp + 0x18]
add dword [esp + 0x10], ecx
mov ebp, ecx
adc dword [esp + 0x14], eax
xor edi, edi
shrd ecx, eax, 6
shl ebp, 0x1a
or edi, ecx
shr eax, 6
xor edi, dword [esp + 0x10]
or ebp, eax
xor ebp, dword [esp + 0x14]
mov eax, ebx
add dword [esp + 0x18], edx
adc dword [esp + 0x1c], ebx
xor ecx, ecx
shld ebx, edx, 0x16
shr eax, 0xa
or ecx, ebx
shl edx, 0x16
or eax, edx
mov dword [esp + 0x20], ecx
mov edx, dword [esp + 0x18]
mov ebx, ecx
mov ecx, dword [esp + 0x1c]
xor eax, edx
xor ebx, ecx
add dword [esp + 0x10], eax
adc dword [esp + 0x14], ebx
add edx, edi
mov dword [esp + 0x18], edx
adc ecx, ebp
xor ebp, dword [esp + 0x18]
xor edx, edx
mov dword [esp + 0x1c], ecx
or edx, edi
xor edx, ecx
add ebp, dword [esp + 0x60]
mov ecx, dword [esp + 0x2c]
adc edx, dword [esp + 0x64]
add ebp, dword [esp + 0x28]
adc edx, dword [esp + 0x48]
xor edi, edi
xor ebx, dword [esp + 0x10]
or edi, eax
xor edi, dword [esp + 0x14]
add ebx, dword [esp + 0x58]
mov eax, dword [esp + 0x30]
adc edi, dword [esp + 0x5c]
add ebx, 2
adc edi, 0
add ecx, ebp
adc eax, edx
add dword [esp + 0x10], ecx
mov ecx, edx
adc dword [esp + 0x14], eax
xor eax, eax
shld edx, ebp, 0xe
shr ecx, 0x12
shl ebp, 0xe
or eax, edx
or ecx, ebp
mov dword [esp + 0x20], eax
xor ecx, dword [esp + 0x10]
mov edx, eax
xor edx, dword [esp + 0x14]
mov eax, dword [esp + 0x50]
mov dword [esp + 0x24], ecx
mov ecx, dword [esp + 0x4c]
add ecx, dword [esp + 0x40]
mov dword [esp + 0x94], ecx
adc eax, dword [esp + 0x44]
add ecx, ebx
mov ebp, dword [esp + 0x1c]
mov dword [esp + 0x6c], eax
adc eax, edi
add dword [esp + 0x18], ecx
mov ecx, edi
adc ebp, eax
shr ecx, 0x10
shld edi, ebx, 0x10
xor eax, eax
mov dword [esp + 0x1c], ebp
or eax, edi
shl ebx, 0x10
mov edi, dword [esp + 0x14]
or ecx, ebx
xor ecx, dword [esp + 0x18]
xor eax, ebp
add dword [esp + 0x10], ecx
mov ebp, ecx
adc edi, eax
shl ebp, 0x14
shrd ecx, eax, 0xc
xor ebx, ebx
mov dword [esp + 0x14], edi
or ebx, ecx
shr eax, 0xc
xor ebx, dword [esp + 0x10]
or ebp, eax
xor ebp, edi
mov edi, dword [esp + 0x24]
add dword [esp + 0x18], edi
mov ecx, edi
adc dword [esp + 0x1c], edx
xor eax, eax
shrd edi, edx, 7
shl ecx, 0x19
or eax, edi
shr edx, 7
xor eax, dword [esp + 0x18]
or ecx, edx
xor ecx, dword [esp + 0x1c]
add dword [esp + 0x10], eax
mov edi, ecx
adc dword [esp + 0x14], ecx
xor edx, edx
shld ecx, eax, 0x17
shr edi, 9
or edx, ecx
shl eax, 0x17
xor edx, dword [esp + 0x14]
or edi, eax
xor edi, dword [esp + 0x10]
mov ecx, ebx
add dword [esp + 0x18], ebx
adc dword [esp + 0x1c], ebp
xor eax, eax
shrd ebx, ebp, 0x18
shl ecx, 8
shr ebp, 0x18
or eax, ebx
mov ebx, dword [esp + 0x1c]
or ecx, ebp
mov ebp, dword [esp + 0x18]
xor ecx, ebx
xor eax, ebp
add dword [esp + 0x10], eax
adc dword [esp + 0x14], ecx
add ebp, edi
mov dword [esp + 0x18], ebp
mov ebp, edi
adc ebx, edx
shl ebp, 5
mov dword [esp + 0x1c], ebx
xor ebx, ebx
shrd edi, edx, 0x1b
shr edx, 0x1b
or ebx, edi
xor ebx, dword [esp + 0x18]
or ebp, edx
xor ebp, dword [esp + 0x1c]
add ebx, dword [esp + 0x4c]
adc ebp, dword [esp + 0x50]
mov edx, ecx
add ebx, dword [esp + 0x40]
adc ebp, dword [esp + 0x44]
xor edi, edi
shld ecx, eax, 5
shr edx, 0x1b
shl eax, 5
or edi, ecx
xor edi, dword [esp + 0x14]
or edx, eax
xor edx, dword [esp + 0x10]
add edx, dword [esp + 0x34]
mov ecx, dword [esp + 0x28]
adc edi, dword [esp + 0x54]
add edx, 3
mov eax, dword [esp + 0x48]
adc edi, 0
add ecx, ebx
mov dword [esp + 0x20], edi
adc eax, ebp
add dword [esp + 0x10], ecx
mov ecx, dword [esp + 0x14]
adc ecx, eax
mov eax, ebp
shld ebp, ebx, 0x19
shr eax, 7
xor edi, edi
or edi, ebp
shl ebx, 0x19
mov ebp, dword [esp + 0x20]
or eax, ebx
xor eax, dword [esp + 0x10]
xor edi, ecx
mov ebx, dword [esp + 0x18]
mov dword [esp + 0x14], ecx
mov ecx, dword [esp + 0x38]
add ecx, dword [esp + 0x58]
mov dword [esp + 0x24], eax
mov eax, dword [esp + 0x3c]
adc eax, dword [esp + 0x5c]
mov dword [esp + 0x98], ecx
add ecx, edx
mov dword [esp + 0x9c], eax
adc eax, ebp
add ebx, ecx
mov ecx, dword [esp + 0x1c]
adc ecx, eax
mov dword [esp + 0x18], ebx
mov eax, edx
add edx, edx
shrd eax, ebp, 0x1f
shr ebp, 0x1f
xor eax, ebx
or ebp, edx
mov ebx, eax
xor ebp, ecx
add dword [esp + 0x10], eax
adc dword [esp + 0x14], ebp
xor edx, edx
shrd eax, ebp, 0x12
shl ebx, 0xe
shr ebp, 0x12
or edx, eax
xor edx, dword [esp + 0x10]
or ebx, ebp
xor ebx, dword [esp + 0x14]
mov ebp, dword [esp + 0x24]
add dword [esp + 0x18], ebp
adc ecx, edi
xor eax, eax
mov dword [esp + 0x1c], ecx
mov ecx, edi
shld edi, ebp, 0xc
shr ecx, 0x14
shl ebp, 0xc
or eax, edi
xor eax, dword [esp + 0x1c]
or ecx, ebp
xor ecx, dword [esp + 0x18]
add dword [esp + 0x10], ecx
adc dword [esp + 0x14], eax
mov ebp, ecx
shrd ecx, eax, 6
xor edi, edi
shl ebp, 0x1a
or edi, ecx
shr eax, 6
xor edi, dword [esp + 0x10]
or ebp, eax
xor ebp, dword [esp + 0x14]
mov eax, ebx
add dword [esp + 0x18], edx
adc dword [esp + 0x1c], ebx
xor ecx, ecx
shld ebx, edx, 0x16
shr eax, 0xa
or ecx, ebx
shl edx, 0x16
or eax, edx
mov dword [esp + 0x20], ecx
mov edx, dword [esp + 0x18]
mov ebx, ecx
mov ecx, dword [esp + 0x1c]
xor eax, edx
xor ebx, ecx
add dword [esp + 0x10], eax
adc dword [esp + 0x14], ebx
add edx, edi
mov dword [esp + 0x18], edx
adc ecx, ebp
xor ebp, dword [esp + 0x18]
xor edx, edx
mov dword [esp + 0x1c], ecx
or edx, edi
xor edx, ecx
add ebp, dword [esp + 0x38]
mov ecx, dword [esp + 0x4c]
adc edx, dword [esp + 0x3c]
add ebp, dword [esp + 0x58]
adc edx, dword [esp + 0x5c]
xor edi, edi
xor ebx, dword [esp + 0x10]
or edi, eax
xor edi, dword [esp + 0x14]
add ebx, dword [esp + 0x2c]
mov eax, dword [esp + 0x50]
adc edi, dword [esp + 0x30]
add ebx, 4
adc edi, 0
add ecx, ebp
adc eax, edx
add dword [esp + 0x10], ecx
mov ecx, edx
adc dword [esp + 0x14], eax
xor eax, eax
shld edx, ebp, 0xe
shr ecx, 0x12
shl ebp, 0xe
or eax, edx
or ecx, ebp
mov dword [esp + 0x20], eax
xor ecx, dword [esp + 0x10]
mov edx, eax
xor edx, dword [esp + 0x14]
mov eax, dword [esp + 0x64]
mov ebp, dword [esp + 0x1c]
mov dword [esp + 0x24], ecx
mov ecx, dword [esp + 0x60]
add ecx, dword [esp + 0x34]
adc eax, dword [esp + 0x54]
add ecx, ebx
adc eax, edi
add dword [esp + 0x18], ecx
mov ecx, edi
adc ebp, eax
shr ecx, 0x10
shld edi, ebx, 0x10
xor eax, eax
mov dword [esp + 0x1c], ebp
shl ebx, 0x10
or ecx, ebx
xor ecx, dword [esp + 0x18]
or eax, edi
xor eax, ebp
mov edi, dword [esp + 0x14]
add dword [esp + 0x10], ecx
mov ebp, ecx
adc edi, eax
shl ebp, 0x14
shrd ecx, eax, 0xc
xor ebx, ebx
mov dword [esp + 0x14], edi
or ebx, ecx
shr eax, 0xc
xor ebx, dword [esp + 0x10]
or ebp, eax
xor ebp, edi
mov edi, dword [esp + 0x24]
add dword [esp + 0x18], edi
mov ecx, edi
adc dword [esp + 0x1c], edx
xor eax, eax
shrd edi, edx, 7
shl ecx, 0x19
or eax, edi
shr edx, 7
xor eax, dword [esp + 0x18]
or ecx, edx
xor ecx, dword [esp + 0x1c]
add dword [esp + 0x10], eax
mov edi, ecx
adc dword [esp + 0x14], ecx
xor edx, edx
shld ecx, eax, 0x17
shr edi, 9
or edx, ecx
shl eax, 0x17
xor edx, dword [esp + 0x14]
or edi, eax
xor edi, dword [esp + 0x10]
mov ecx, ebx
add dword [esp + 0x18], ebx
adc dword [esp + 0x1c], ebp
xor eax, eax
shrd ebx, ebp, 0x18
shl ecx, 8
shr ebp, 0x18
or eax, ebx
mov ebx, dword [esp + 0x1c]
or ecx, ebp
mov ebp, dword [esp + 0x18]
xor ecx, ebx
xor eax, ebp
add dword [esp + 0x10], eax
adc dword [esp + 0x14], ecx
add ebp, edi
mov dword [esp + 0x18], ebp
mov ebp, edi
adc ebx, edx
shl ebp, 5
shrd edi, edx, 0x1b
mov dword [esp + 0x1c], ebx
xor ebx, ebx
shr edx, 0x1b
or ebx, edi
xor ebx, dword [esp + 0x18]
or ebp, edx
xor ebp, dword [esp + 0x1c]
mov edx, ecx
add ebx, dword [esp + 0x60]
adc ebp, dword [esp + 0x64]
add ebx, dword [esp + 0x34]
adc ebp, dword [esp + 0x54]
xor edi, edi
shld ecx, eax, 5
shr edx, 0x1b
shl eax, 5
or edi, ecx
xor edi, dword [esp + 0x14]
or edx, eax
xor edx, dword [esp + 0x10]
add edx, dword [esp + 0x28]
adc edi, dword [esp + 0x48]
add edx, 5
mov ecx, dword [esp + 0x58]
adc edi, 0
mov eax, dword [esp + 0x5c]
add ecx, ebx
mov dword [esp + 0x20], edi
adc eax, ebp
add dword [esp + 0x10], ecx
mov ecx, dword [esp + 0x14]
adc ecx, eax
mov eax, ebp
shld ebp, ebx, 0x19
shr eax, 7
xor edi, edi
or edi, ebp
shl ebx, 0x19
or eax, ebx
mov ebp, dword [esp + 0x20]
xor eax, dword [esp + 0x10]
xor edi, ecx
mov ebx, dword [esp + 0x18]
mov dword [esp + 0x14], ecx
mov ecx, dword [esp + 0x2c]
add ecx, dword [esp + 0x40]
mov dword [esp + 0x24], eax
mov eax, dword [esp + 0x30]
adc eax, dword [esp + 0x44]
add ecx, edx
adc eax, ebp
add ebx, ecx
mov ecx, dword [esp + 0x1c]
adc ecx, eax
mov dword [esp + 0x18], ebx
mov eax, edx
add edx, edx
shrd eax, ebp, 0x1f
shr ebp, 0x1f
xor eax, ebx
or ebp, edx
mov ebx, eax
xor ebp, ecx
add dword [esp + 0x10], eax
adc dword [esp + 0x14], ebp
xor edx, edx
shrd eax, ebp, 0x12
shl ebx, 0xe
shr ebp, 0x12
or edx, eax
xor edx, dword [esp + 0x10]
or ebx, ebp
xor ebx, dword [esp + 0x14]
mov ebp, dword [esp + 0x24]
add dword [esp + 0x18], ebp
adc ecx, edi
xor eax, eax
mov dword [esp + 0x1c], ecx
mov ecx, edi
shld edi, ebp, 0xc
shr ecx, 0x14
shl ebp, 0xc
or eax, edi
xor eax, dword [esp + 0x1c]
or ecx, ebp
xor ecx, dword [esp + 0x18]
add dword [esp + 0x10], ecx
mov ebp, ecx
adc dword [esp + 0x14], eax
xor edi, edi
shrd ecx, eax, 6
shl ebp, 0x1a
shr eax, 6
or edi, ecx
xor edi, dword [esp + 0x10]
or ebp, eax
xor ebp, dword [esp + 0x14]
mov eax, ebx
add dword [esp + 0x18], edx
adc dword [esp + 0x1c], ebx
shr eax, 0xa
xor ecx, ecx
shld ebx, edx, 0x16
or ecx, ebx
shl edx, 0x16
or eax, edx
mov dword [esp + 0x20], ecx
mov edx, dword [esp + 0x18]
mov ebx, ecx
mov ecx, dword [esp + 0x1c]
xor eax, edx
xor ebx, ecx
add dword [esp + 0x10], eax
adc dword [esp + 0x14], ebx
add edx, edi
mov dword [esp + 0x18], edx
adc ecx, ebp
xor ebp, dword [esp + 0x18]
xor edx, edx
mov dword [esp + 0x1c], ecx
or edx, edi
xor edx, ecx
add ebp, dword [esp + 0x2c]
mov ecx, dword [esp + 0x34]
adc edx, dword [esp + 0x30]
add ebp, dword [esp + 0x40]
adc edx, dword [esp + 0x44]
xor edi, edi
xor ebx, dword [esp + 0x10]
or edi, eax
xor edi, dword [esp + 0x14]
add ebx, dword [esp + 0x4c]
mov eax, dword [esp + 0x54]
adc edi, dword [esp + 0x50]
add ebx, 6
adc edi, 0
add ecx, ebp
adc eax, edx
add dword [esp + 0x10], ecx
mov ecx, edx
adc dword [esp + 0x14], eax
xor eax, eax
shld edx, ebp, 0xe
shr ecx, 0x12
or eax, edx
shl ebp, 0xe
or ecx, ebp
mov dword [esp + 0x20], eax
xor ecx, dword [esp + 0x10]
mov edx, eax
xor edx, dword [esp + 0x14]
mov eax, dword [esp + 0x3c]
mov ebp, dword [esp + 0x1c]
mov dword [esp + 0x24], ecx
mov ecx, dword [esp + 0x38]
add ecx, dword [esp + 0x28]
adc eax, dword [esp + 0x48]
add ecx, ebx
adc eax, edi
add dword [esp + 0x18], ecx
mov ecx, edi
adc ebp, eax
shr ecx, 0x10
shld edi, ebx, 0x10
xor eax, eax
mov dword [esp + 0x1c], ebp
shl ebx, 0x10
or eax, edi
mov edi, dword [esp + 0x14]
or ecx, ebx
xor ecx, dword [esp + 0x18]
xor eax, ebp
add dword [esp + 0x10], ecx
mov ebp, ecx
adc edi, eax
xor ebx, ebx
shrd ecx, eax, 0xc
shl ebp, 0x14
shr eax, 0xc
or ebx, ecx
or ebp, eax
mov dword [esp + 0x14], edi
xor ebx, dword [esp + 0x10]
xor ebp, edi
mov edi, dword [esp + 0x24]
add dword [esp + 0x18], edi
mov ecx, edi
adc dword [esp + 0x1c], edx
xor eax, eax
shrd edi, edx, 7
shl ecx, 0x19
or eax, edi
shr edx, 7
xor eax, dword [esp + 0x18]
or ecx, edx
xor ecx, dword [esp + 0x1c]
add dword [esp + 0x10], eax
mov edi, ecx
adc dword [esp + 0x14], ecx
xor edx, edx
shld ecx, eax, 0x17
shr edi, 9
or edx, ecx
shl eax, 0x17
xor edx, dword [esp + 0x14]
or edi, eax
xor edi, dword [esp + 0x10]
mov ecx, ebx
add dword [esp + 0x18], ebx
adc dword [esp + 0x1c], ebp
xor eax, eax
shrd ebx, ebp, 0x18
shl ecx, 8
or eax, ebx
shr ebp, 0x18
mov ebx, dword [esp + 0x1c]
or ecx, ebp
mov ebp, dword [esp + 0x18]
xor ecx, ebx
xor eax, ebp
add dword [esp + 0x10], eax
adc dword [esp + 0x14], ecx
add ebp, edi
mov dword [esp + 0x18], ebp
mov ebp, edi
adc ebx, edx
shl ebp, 5
shrd edi, edx, 0x1b
mov dword [esp + 0x1c], ebx
xor ebx, ebx
shr edx, 0x1b
or ebx, edi
xor ebx, dword [esp + 0x18]
or ebp, edx
xor ebp, dword [esp + 0x1c]
mov edx, ecx
add ebx, dword [esp + 0x38]
adc ebp, dword [esp + 0x3c]
add ebx, dword [esp + 0x28]
adc ebp, dword [esp + 0x48]
xor edi, edi
shld ecx, eax, 5
shr edx, 0x1b
shl eax, 5
or edi, ecx
xor edi, dword [esp + 0x14]
or edx, eax
xor edx, dword [esp + 0x10]
add edx, dword [esp + 0x58]
mov ecx, dword [esp + 0x2c]
adc edi, dword [esp + 0x5c]
add edx, 7
mov eax, dword [esp + 0x30]
adc edi, 0
add ecx, ebx
mov dword [esp + 0x20], edi
adc eax, ebp
add dword [esp + 0x10], ecx
mov ecx, dword [esp + 0x14]
adc ecx, eax
mov eax, ebp
shr eax, 7
xor edi, edi
mov dword [esp + 0x14], ecx
shld ebp, ebx, 0x19
or edi, ebp
shl ebx, 0x19
or eax, ebx
mov ebp, dword [esp + 0x20]
xor eax, dword [esp + 0x10]
xor edi, ecx
mov ecx, dword [esp + 0x60]
add ecx, dword [esp + 0x4c]
mov ebx, dword [esp + 0x18]
mov dword [esp + 0x24], eax
mov eax, dword [esp + 0x64]
adc eax, dword [esp + 0x50]
add ecx, edx
adc eax, ebp
add ebx, ecx
mov ecx, dword [esp + 0x1c]
adc ecx, eax
mov dword [esp + 0x18], ebx
mov eax, edx
add edx, edx
shrd eax, ebp, 0x1f
xor eax, ebx
shr ebp, 0x1f
or ebp, edx
mov ebx, eax
xor ebp, ecx
add dword [esp + 0x10], eax
adc dword [esp + 0x14], ebp
xor edx, edx
shrd eax, ebp, 0x12
shl ebx, 0xe
or edx, eax
shr ebp, 0x12
xor edx, dword [esp + 0x10]
or ebx, ebp
xor ebx, dword [esp + 0x14]
mov ebp, dword [esp + 0x24]
add dword [esp + 0x18], ebp
adc ecx, edi
xor eax, eax
mov dword [esp + 0x1c], ecx
mov ecx, edi
shld edi, ebp, 0xc
shr ecx, 0x14
or eax, edi
shl ebp, 0xc
xor eax, dword [esp + 0x1c]
or ecx, ebp
xor ecx, dword [esp + 0x18]
add dword [esp + 0x10], ecx
mov ebp, ecx
adc dword [esp + 0x14], eax
xor edi, edi
shrd ecx, eax, 6
shl ebp, 0x1a
shr eax, 6
or edi, ecx
xor edi, dword [esp + 0x10]
or ebp, eax
xor ebp, dword [esp + 0x14]
mov eax, ebx
add dword [esp + 0x18], edx
adc dword [esp + 0x1c], ebx
xor ecx, ecx
shld ebx, edx, 0x16
shr eax, 0xa
or ecx, ebx
shl edx, 0x16
or eax, edx
mov dword [esp + 0x20], ecx
mov edx, dword [esp + 0x18]
mov ebx, ecx
mov ecx, dword [esp + 0x1c]
xor eax, edx
xor ebx, ecx
add dword [esp + 0x10], eax
adc dword [esp + 0x14], ebx
add edx, edi
mov dword [esp + 0x18], edx
adc ecx, ebp
xor ebp, dword [esp + 0x18]
xor edx, edx
or edx, edi
mov dword [esp + 0x1c], ecx
xor edx, ecx
add ebp, dword [esp + 0x60]
mov ecx, dword [esp + 0x28]
adc edx, dword [esp + 0x64]
add ebp, dword [esp + 0x4c]
adc edx, dword [esp + 0x50]
xor edi, edi
xor ebx, dword [esp + 0x10]
or edi, eax
xor edi, dword [esp + 0x14]
add ebx, dword [esp + 0x34]
mov eax, dword [esp + 0x48]
adc edi, dword [esp + 0x54]
add ebx, 8
adc edi, 0
add ecx, ebp
adc eax, edx
add dword [esp + 0x10], ecx
mov ecx, edx
adc dword [esp + 0x14], eax
xor eax, eax
shld edx, ebp, 0xe
shr ecx, 0x12
or eax, edx
shl ebp, 0xe
or ecx, ebp
mov dword [esp + 0x20], eax
xor ecx, dword [esp + 0x10]
mov edx, eax
xor edx, dword [esp + 0x14]
mov eax, dword [esp + 0x5c]
mov ebp, dword [esp + 0x1c]
mov dword [esp + 0x24], ecx
mov ecx, dword [esp + 0x58]
add ecx, dword [esp + 0x40]
adc eax, dword [esp + 0x44]
add ecx, ebx
adc eax, edi
add dword [esp + 0x18], ecx
mov ecx, edi
adc ebp, eax
shr ecx, 0x10
shld edi, ebx, 0x10
xor eax, eax
mov dword [esp + 0x1c], ebp
or eax, edi
shl ebx, 0x10
mov edi, dword [esp + 0x14]
or ecx, ebx
xor ecx, dword [esp + 0x18]
xor eax, ebp
add dword [esp + 0x10], ecx
mov ebp, ecx
adc edi, eax
shl ebp, 0x14
shrd ecx, eax, 0xc
xor ebx, ebx
mov dword [esp + 0x14], edi
shr eax, 0xc
or ebx, ecx
xor ebx, dword [esp + 0x10]
or ebp, eax
xor ebp, edi
mov edi, dword [esp + 0x24]
add dword [esp + 0x18], edi
mov ecx, edi
adc dword [esp + 0x1c], edx
xor eax, eax
shrd edi, edx, 7
shl ecx, 0x19
shr edx, 7
or eax, edi
xor eax, dword [esp + 0x18]
or ecx, edx
xor ecx, dword [esp + 0x1c]
add dword [esp + 0x10], eax
adc dword [esp + 0x14], ecx
xor edx, edx
mov edi, ecx
shld ecx, eax, 0x17
shr edi, 9
shl eax, 0x17
or edx, ecx
xor edx, dword [esp + 0x14]
or edi, eax
xor edi, dword [esp + 0x10]
mov ecx, ebx
add dword [esp + 0x18], ebx
adc dword [esp + 0x1c], ebp
xor eax, eax
shrd ebx, ebp, 0x18
shl ecx, 8
or eax, ebx
shr ebp, 0x18
mov ebx, dword [esp + 0x1c]
or ecx, ebp
mov ebp, dword [esp + 0x18]
xor ecx, ebx
xor eax, ebp
add dword [esp + 0x10], eax
adc dword [esp + 0x14], ecx
add ebp, edi
mov dword [esp + 0x18], ebp
mov ebp, edi
adc ebx, edx
shl ebp, 5
shrd edi, edx, 0x1b
mov dword [esp + 0x1c], ebx
xor ebx, ebx
or ebx, edi
shr edx, 0x1b
xor ebx, dword [esp + 0x18]
or ebp, edx
xor ebp, dword [esp + 0x1c]
mov edx, ecx
add ebx, dword [esp + 0x58]
adc ebp, dword [esp + 0x5c]
add ebx, dword [esp + 0x40]
adc ebp, dword [esp + 0x44]
xor edi, edi
shld ecx, eax, 5
shr edx, 0x1b
shl eax, 5
or edi, ecx
xor edi, dword [esp + 0x14]
or edx, eax
xor edx, dword [esp + 0x10]
add edx, dword [esp + 0x2c]
mov ecx, dword [esp + 0x4c]
adc edi, dword [esp + 0x30]
add edx, 9
mov eax, dword [esp + 0x50]
adc edi, 0
add ecx, ebx
mov dword [esp + 0x20], edi
adc eax, ebp
add dword [esp + 0x10], ecx
mov ecx, dword [esp + 0x14]
adc ecx, eax
mov eax, ebp
shld ebp, ebx, 0x19
shr eax, 7
xor edi, edi
shl ebx, 0x19
or edi, ebp
mov ebp, dword [esp + 0x20]
or eax, ebx
xor eax, dword [esp + 0x10]
xor edi, ecx
mov ebx, dword [esp + 0x18]
mov dword [esp + 0x14], ecx
mov ecx, dword [esp + 0x38]
add ecx, dword [esp + 0x34]
mov dword [esp + 0x24], eax
mov eax, dword [esp + 0x3c]
adc eax, dword [esp + 0x54]
add ecx, edx
adc eax, ebp
add ebx, ecx
mov ecx, dword [esp + 0x1c]
mov dword [esp + 0x18], ebx
adc ecx, eax
mov eax, edx
shrd eax, ebp, 0x1f
add edx, edx
xor eax, ebx
shr ebp, 0x1f
or ebp, edx
mov ebx, eax
xor ebp, ecx
add dword [esp + 0x10], eax
adc dword [esp + 0x14], ebp
xor edx, edx
shrd eax, ebp, 0x12
shl ebx, 0xe
or edx, eax
shr ebp, 0x12
xor edx, dword [esp + 0x10]
or ebx, ebp
xor ebx, dword [esp + 0x14]
mov ebp, dword [esp + 0x24]
add dword [esp + 0x18], ebp
adc ecx, edi
xor eax, eax
mov dword [esp + 0x1c], ecx
mov ecx, edi
shld edi, ebp, 0xc
shr ecx, 0x14
or eax, edi
shl ebp, 0xc
xor eax, dword [esp + 0x1c]
or ecx, ebp
xor ecx, dword [esp + 0x18]
add dword [esp + 0x10], ecx
mov ebp, ecx
adc dword [esp + 0x14], eax
xor edi, edi
shrd ecx, eax, 6
shl ebp, 0x1a
or edi, ecx
shr eax, 6
xor edi, dword [esp + 0x10]
or ebp, eax
xor ebp, dword [esp + 0x14]
mov eax, ebx
add dword [esp + 0x18], edx
adc dword [esp + 0x1c], ebx
xor ecx, ecx
shld ebx, edx, 0x16
shr eax, 0xa
shl edx, 0x16
or ecx, ebx
or eax, edx
mov dword [esp + 0x20], ecx
mov edx, dword [esp + 0x18]
mov ebx, ecx
mov ecx, dword [esp + 0x1c]
xor eax, edx
xor ebx, ecx
add dword [esp + 0x10], eax
adc dword [esp + 0x14], ebx
add edx, edi
mov dword [esp + 0x18], edx
adc ecx, ebp
xor ebp, dword [esp + 0x18]
xor edx, edx
mov dword [esp + 0x1c], ecx
or edx, edi
xor edx, ecx
add ebp, dword [esp + 0x38]
adc edx, dword [esp + 0x3c]
add ebp, dword [esp + 0x34]
adc edx, dword [esp + 0x54]
xor edi, edi
xor ebx, dword [esp + 0x10]
or edi, eax
xor edi, dword [esp + 0x14]
add ebx, dword [esp + 0x28]
adc edi, dword [esp + 0x48]
mov ecx, dword [esp + 0x58]
add ebx, 0xa
mov eax, dword [esp + 0x5c]
adc edi, 0
add ecx, ebp
adc eax, edx
add dword [esp + 0x10], ecx
mov ecx, edx
adc dword [esp + 0x14], eax
xor eax, eax
shld edx, ebp, 0xe
shr ecx, 0x12
or eax, edx
shl ebp, 0xe
or ecx, ebp
mov dword [esp + 0x20], eax
xor ecx, dword [esp + 0x10]
mov edx, eax
xor edx, dword [esp + 0x14]
mov eax, dword [esp + 0x64]
mov ebp, dword [esp + 0x1c]
mov dword [esp + 0x24], ecx
mov ecx, dword [esp + 0x60]
add ecx, dword [esp + 0x2c]
adc eax, dword [esp + 0x30]
add ecx, ebx
adc eax, edi
add dword [esp + 0x18], ecx
mov ecx, edi
adc ebp, eax
shr ecx, 0x10
shld edi, ebx, 0x10
xor eax, eax
mov dword [esp + 0x1c], ebp
or eax, edi
shl ebx, 0x10
mov edi, dword [esp + 0x14]
or ecx, ebx
xor ecx, dword [esp + 0x18]
xor eax, ebp
add dword [esp + 0x10], ecx
mov ebp, ecx
adc edi, eax
shl ebp, 0x14
shrd ecx, eax, 0xc
xor ebx, ebx
mov dword [esp + 0x14], edi
shr eax, 0xc
or ebx, ecx
xor ebx, dword [esp + 0x10]
or ebp, eax
xor ebp, edi
mov edi, dword [esp + 0x24]
add dword [esp + 0x18], edi
mov ecx, edi
adc dword [esp + 0x1c], edx
xor eax, eax
shrd edi, edx, 7
shl ecx, 0x19
or eax, edi
shr edx, 7
xor eax, dword [esp + 0x18]
or ecx, edx
xor ecx, dword [esp + 0x1c]
add dword [esp + 0x10], eax
mov edi, ecx
adc dword [esp + 0x14], ecx
xor edx, edx
shld ecx, eax, 0x17
shr edi, 9
shl eax, 0x17
or edx, ecx
xor edx, dword [esp + 0x14]
or edi, eax
xor edi, dword [esp + 0x10]
mov ecx, ebx
add dword [esp + 0x18], ebx
adc dword [esp + 0x1c], ebp
xor eax, eax
shl ecx, 8
shrd ebx, ebp, 0x18
or eax, ebx
shr ebp, 0x18
or ecx, ebp
mov ebx, dword [esp + 0x1c]
mov ebp, dword [esp + 0x18]
xor ecx, ebx
xor eax, ebp
add dword [esp + 0x10], eax
adc dword [esp + 0x14], ecx
add ebp, edi
mov dword [esp + 0x18], ebp
mov ebp, edi
adc ebx, edx
shl ebp, 5
shrd edi, edx, 0x1b
mov dword [esp + 0x1c], ebx
xor ebx, ebx
or ebx, edi
shr edx, 0x1b
xor ebx, dword [esp + 0x18]
or ebp, edx
xor ebp, dword [esp + 0x1c]
mov edx, ecx
add ebx, dword [esp + 0x60]
adc ebp, dword [esp + 0x64]
add ebx, dword [esp + 0x2c]
adc ebp, dword [esp + 0x30]
xor edi, edi
shld ecx, eax, 5
shr edx, 0x1b
shl eax, 5
or edi, ecx
xor edi, dword [esp + 0x14]
or edx, eax
xor edx, dword [esp + 0x10]
add edx, dword [esp + 0x4c]
mov ecx, dword [esp + 0x34]
adc edi, dword [esp + 0x50]
add edx, 0xb
mov eax, dword [esp + 0x54]
adc edi, 0
add ecx, ebx
mov dword [esp + 0x20], edi
adc eax, ebp
add dword [esp + 0x10], ecx
mov ecx, dword [esp + 0x14]
adc ecx, eax
mov eax, ebp
shld ebp, ebx, 0x19
shr eax, 7
xor edi, edi
or edi, ebp
shl ebx, 0x19
mov ebp, dword [esp + 0x20]
or eax, ebx
xor eax, dword [esp + 0x10]
xor edi, ecx
mov ebx, dword [esp + 0x18]
mov dword [esp + 0x14], ecx
mov ecx, dword [esp + 0x28]
add ecx, dword [esp + 0x40]
mov dword [esp + 0x24], eax
mov eax, dword [esp + 0x48]
adc eax, dword [esp + 0x44]
add ecx, edx
adc eax, ebp
add ebx, ecx
mov ecx, dword [esp + 0x1c]
adc ecx, eax
mov dword [esp + 0x18], ebx
mov eax, edx
add edx, edx
shrd eax, ebp, 0x1f
shr ebp, 0x1f
xor eax, ebx
or ebp, edx
mov ebx, eax
xor ebp, ecx
add dword [esp + 0x10], eax
adc dword [esp + 0x14], ebp
xor edx, edx
shrd eax, ebp, 0x12
shl ebx, 0xe
or edx, eax
shr ebp, 0x12
xor edx, dword [esp + 0x10]
or ebx, ebp
xor ebx, dword [esp + 0x14]
mov ebp, dword [esp + 0x24]
add dword [esp + 0x18], ebp
adc ecx, edi
xor eax, eax
mov dword [esp + 0x1c], ecx
mov ecx, edi
shld edi, ebp, 0xc
shr ecx, 0x14
or eax, edi
shl ebp, 0xc
xor eax, dword [esp + 0x1c]
or ecx, ebp
xor ecx, dword [esp + 0x18]
add dword [esp + 0x10], ecx
mov ebp, ecx
adc dword [esp + 0x14], eax
xor edi, edi
shrd ecx, eax, 6
shl ebp, 0x1a
or edi, ecx
shr eax, 6
xor edi, dword [esp + 0x10]
or ebp, eax
xor ebp, dword [esp + 0x14]
mov eax, ebx
add dword [esp + 0x18], edx
adc dword [esp + 0x1c], ebx
xor ecx, ecx
shld ebx, edx, 0x16
shr eax, 0xa
or ecx, ebx
shl edx, 0x16
or eax, edx
mov dword [esp + 0x20], ecx
mov edx, dword [esp + 0x18]
mov ebx, ecx
mov ecx, dword [esp + 0x1c]
xor eax, edx
xor ebx, ecx
add dword [esp + 0x10], eax
adc dword [esp + 0x14], ebx
add edx, edi
mov dword [esp + 0x18], edx
adc ecx, ebp
xor ebp, dword [esp + 0x18]
xor edx, edx
mov dword [esp + 0x1c], ecx
or edx, edi
xor edx, ecx
add ebp, dword [esp + 0x28]
mov ecx, dword [esp + 0x2c]
adc edx, dword [esp + 0x48]
add ebp, dword [esp + 0x40]
adc edx, dword [esp + 0x44]
xor edi, edi
xor ebx, dword [esp + 0x10]
or edi, eax
xor edi, dword [esp + 0x14]
add ebx, dword [esp + 0x58]
mov eax, dword [esp + 0x30]
adc edi, dword [esp + 0x5c]
add ebx, 0xc
adc edi, 0
add ecx, ebp
adc eax, edx
add dword [esp + 0x10], ecx
mov ecx, edx
adc dword [esp + 0x14], eax
xor eax, eax
shld edx, ebp, 0xe
shr ecx, 0x12
shl ebp, 0xe
or ecx, ebp
or eax, edx
xor ecx, dword [esp + 0x10]
mov edx, eax
xor edx, dword [esp + 0x14]
mov ebp, dword [esp + 0x1c]
mov dword [esp + 0x24], ecx
mov ecx, dword [esp + 0x38]
add ecx, dword [esp + 0x4c]
mov dword [esp + 0x20], eax
mov eax, dword [esp + 0x3c]
adc eax, dword [esp + 0x50]
add ecx, ebx
adc eax, edi
add dword [esp + 0x18], ecx
mov ecx, edi
adc ebp, eax
shr ecx, 0x10
shld edi, ebx, 0x10
xor eax, eax
mov dword [esp + 0x1c], ebp
or eax, edi
shl ebx, 0x10
mov edi, dword [esp + 0x14]
or ecx, ebx
xor ecx, dword [esp + 0x18]
xor eax, ebp
add dword [esp + 0x10], ecx
mov ebp, ecx
adc edi, eax
shl ebp, 0x14
shrd ecx, eax, 0xc
xor ebx, ebx
mov dword [esp + 0x14], edi
or ebx, ecx
shr eax, 0xc
xor ebx, dword [esp + 0x10]
or ebp, eax
xor ebp, edi
mov edi, dword [esp + 0x24]
add dword [esp + 0x18], edi
mov ecx, edi
adc dword [esp + 0x1c], edx
xor eax, eax
shrd edi, edx, 7
shl ecx, 0x19
or eax, edi
shr edx, 7
xor eax, dword [esp + 0x18]
or ecx, edx
xor ecx, dword [esp + 0x1c]
add dword [esp + 0x10], eax
mov edi, ecx
adc dword [esp + 0x14], ecx
xor edx, edx
shld ecx, eax, 0x17
shr edi, 9
shl eax, 0x17
or edx, ecx
xor edx, dword [esp + 0x14]
or edi, eax
xor edi, dword [esp + 0x10]
mov ecx, ebx
add dword [esp + 0x18], ebx
adc dword [esp + 0x1c], ebp
xor eax, eax
shrd ebx, ebp, 0x18
shl ecx, 8
shr ebp, 0x18
or eax, ebx
mov ebx, dword [esp + 0x1c]
or ecx, ebp
mov ebp, dword [esp + 0x18]
xor ecx, ebx
xor eax, ebp
add dword [esp + 0x10], eax
adc dword [esp + 0x14], ecx
add ebp, edi
mov dword [esp + 0x18], ebp
mov ebp, edi
adc ebx, edx
mov dword [esp + 0x1c], ebx
xor ebx, ebx
shrd edi, edx, 0x1b
shl ebp, 5
or ebx, edi
shr edx, 0x1b
xor ebx, dword [esp + 0x18]
or ebp, edx
xor ebp, dword [esp + 0x1c]
mov edx, ecx
add ebx, dword [esp + 0x38]
adc ebp, dword [esp + 0x3c]
add ebx, dword [esp + 0x4c]
adc ebp, dword [esp + 0x50]
xor edi, edi
shld ecx, eax, 5
shr edx, 0x1b
shl eax, 5
or edi, ecx
xor edi, dword [esp + 0x14]
or edx, eax
xor edx, dword [esp + 0x10]
add edx, dword [esp + 0x34]
mov ecx, dword [esp + 0x28]
adc edi, dword [esp + 0x54]
add edx, 0xd
mov eax, dword [esp + 0x48]
adc edi, 0
add ecx, ebx
mov dword [esp + 0x20], edi
adc eax, ebp
add dword [esp + 0x10], ecx
mov ecx, dword [esp + 0x14]
adc ecx, eax
mov eax, ebp
shld ebp, ebx, 0x19
shr eax, 7
xor edi, edi
or edi, ebp
shl ebx, 0x19
mov ebp, dword [esp + 0x20]
or eax, ebx
xor eax, dword [esp + 0x10]
xor edi, ecx
mov ebx, dword [esp + 0x18]
mov dword [esp + 0x14], ecx
mov ecx, dword [esp + 0x60]
add ecx, dword [esp + 0x58]
mov dword [esp + 0x24], eax
mov eax, dword [esp + 0x64]
adc eax, dword [esp + 0x5c]
add ecx, edx
adc eax, ebp
add ebx, ecx
mov ecx, dword [esp + 0x1c]
adc ecx, eax
mov dword [esp + 0x18], ebx
mov eax, edx
add edx, edx
shrd eax, ebp, 0x1f
shr ebp, 0x1f
xor eax, ebx
or ebp, edx
mov ebx, eax
xor ebp, ecx
add dword [esp + 0x10], eax
adc dword [esp + 0x14], ebp
xor edx, edx
shrd eax, ebp, 0x12
shl ebx, 0xe
shr ebp, 0x12
or edx, eax
xor edx, dword [esp + 0x10]
or ebx, ebp
xor ebx, dword [esp + 0x14]
mov ebp, dword [esp + 0x24]
add dword [esp + 0x18], ebp
adc ecx, edi
xor eax, eax
mov dword [esp + 0x1c], ecx
mov ecx, edi
shr ecx, 0x14
shld edi, ebp, 0xc
or eax, edi
shl ebp, 0xc
xor eax, dword [esp + 0x1c]
or ecx, ebp
xor ecx, dword [esp + 0x18]
add dword [esp + 0x10], ecx
mov ebp, ecx
adc dword [esp + 0x14], eax
xor edi, edi
shrd ecx, eax, 6
shl ebp, 0x1a
or edi, ecx
shr eax, 6
xor edi, dword [esp + 0x10]
or ebp, eax
xor ebp, dword [esp + 0x14]
mov eax, ebx
add dword [esp + 0x18], edx
adc dword [esp + 0x1c], ebx
xor ecx, ecx
shld ebx, edx, 0x16
shr eax, 0xa
or ecx, ebx
shl edx, 0x16
or eax, edx
mov dword [esp + 0x20], ecx
mov edx, dword [esp + 0x18]
mov ebx, ecx
mov ecx, dword [esp + 0x1c]
xor eax, edx
xor ebx, ecx
add dword [esp + 0x10], eax
adc dword [esp + 0x14], ebx
add edx, edi
mov dword [esp + 0x18], edx
adc ecx, ebp
xor ebp, dword [esp + 0x18]
xor edx, edx
mov dword [esp + 0x1c], ecx
or edx, edi
xor edx, ecx
add ebp, dword [esp + 0x60]
mov ecx, dword [esp + 0x4c]
adc edx, dword [esp + 0x64]
add ebp, dword [esp + 0x58]
adc edx, dword [esp + 0x5c]
xor edi, edi
xor ebx, dword [esp + 0x10]
or edi, eax
xor edi, dword [esp + 0x14]
add ebx, dword [esp + 0x2c]
mov eax, dword [esp + 0x50]
adc edi, dword [esp + 0x30]
add ebx, 0xe
adc edi, 0
add ecx, ebp
adc eax, edx
add dword [esp + 0x10], ecx
mov ecx, edx
adc dword [esp + 0x14], eax
xor eax, eax
shld edx, ebp, 0xe
shr ecx, 0x12
shl ebp, 0xe
or eax, edx
or ecx, ebp
mov dword [esp + 0x20], eax
xor ecx, dword [esp + 0x10]
mov edx, eax
xor edx, dword [esp + 0x14]
mov eax, dword [esp + 0x54]
mov ebp, dword [esp + 0x1c]
mov dword [esp + 0x24], ecx
mov ecx, dword [esp + 0x34]
add ecx, dword [esp + 0x40]
adc eax, dword [esp + 0x44]
add ecx, ebx
adc eax, edi
add dword [esp + 0x18], ecx
adc ebp, eax
mov dword [esp + 0x1c], ebp
xor eax, eax
mov ecx, edi
shld edi, ebx, 0x10
shr ecx, 0x10
or eax, edi
shl ebx, 0x10
mov edi, dword [esp + 0x14]
xor eax, ebp
or ecx, ebx
xor ecx, dword [esp + 0x18]
add dword [esp + 0x10], ecx
mov ebp, ecx
adc edi, eax
shl ebp, 0x14
shrd ecx, eax, 0xc
xor ebx, ebx
mov dword [esp + 0x14], edi
or ebx, ecx
shr eax, 0xc
xor ebx, dword [esp + 0x10]
or ebp, eax
xor ebp, edi
mov edi, dword [esp + 0x24]
add dword [esp + 0x18], edi
mov ecx, edi
adc dword [esp + 0x1c], edx
xor eax, eax
shrd edi, edx, 7
shl ecx, 0x19
or eax, edi
shr edx, 7
xor eax, dword [esp + 0x18]
or ecx, edx
xor ecx, dword [esp + 0x1c]
add dword [esp + 0x10], eax
mov edi, ecx
adc dword [esp + 0x14], ecx
xor edx, edx
shld ecx, eax, 0x17
shr edi, 9
or edx, ecx
shl eax, 0x17
xor edx, dword [esp + 0x14]
or edi, eax
xor edi, dword [esp + 0x10]
mov ecx, ebx
add dword [esp + 0x18], ebx
adc dword [esp + 0x1c], ebp
xor eax, eax
shrd ebx, ebp, 0x18
shl ecx, 8
shr ebp, 0x18
or eax, ebx
mov ebx, dword [esp + 0x1c]
or ecx, ebp
mov ebp, dword [esp + 0x18]
xor ecx, ebx
xor eax, ebp
add dword [esp + 0x10], eax
adc dword [esp + 0x14], ecx
add ebp, edi
mov dword [esp + 0x18], ebp
mov ebp, edi
adc ebx, edx
shl ebp, 5
shrd edi, edx, 0x1b
mov dword [esp + 0x1c], ebx
xor ebx, ebx
shr edx, 0x1b
or ebx, edi
xor ebx, dword [esp + 0x18]
or ebp, edx
xor ebp, dword [esp + 0x1c]
mov edx, ecx
add ebx, dword [esp + 0x34]
adc ebp, dword [esp + 0x54]
add ebx, dword [esp + 0x40]
adc ebp, dword [esp + 0x44]
xor edi, edi
shr edx, 0x1b
shld ecx, eax, 5
shl eax, 5
or edi, ecx
xor edi, dword [esp + 0x14]
or edx, eax
xor edx, dword [esp + 0x10]
add edx, dword [esp + 0x28]
mov ecx, dword [esp + 0x58]
adc edi, dword [esp + 0x48]
add edx, 0xf
mov eax, dword [esp + 0x5c]
adc edi, 0
add ecx, ebx
mov dword [esp + 0x20], edi
adc eax, ebp
add dword [esp + 0x10], ecx
mov ecx, dword [esp + 0x14]
adc ecx, eax
mov eax, ebp
shld ebp, ebx, 0x19
shr eax, 7
xor edi, edi
or edi, ebp
shl ebx, 0x19
or eax, ebx
mov ebp, dword [esp + 0x20]
xor eax, dword [esp + 0x10]
xor edi, ecx
mov ebx, dword [esp + 0x18]
mov dword [esp + 0x14], ecx
mov ecx, dword [esp + 0x38]
add ecx, dword [esp + 0x2c]
mov dword [esp + 0x24], eax
mov eax, dword [esp + 0x3c]
adc eax, dword [esp + 0x30]
add ecx, edx
adc eax, ebp
add ebx, ecx
mov ecx, dword [esp + 0x1c]
adc ecx, eax
mov dword [esp + 0x18], ebx
mov eax, edx
add edx, edx
shrd eax, ebp, 0x1f
shr ebp, 0x1f
xor eax, ebx
or ebp, edx
mov ebx, eax
xor ebp, ecx
add dword [esp + 0x10], eax
adc dword [esp + 0x14], ebp
xor edx, edx
shrd eax, ebp, 0x12
shl ebx, 0xe
shr ebp, 0x12
or edx, eax
xor edx, dword [esp + 0x10]
or ebx, ebp
xor ebx, dword [esp + 0x14]
mov ebp, dword [esp + 0x24]
add dword [esp + 0x18], ebp
adc ecx, edi
xor eax, eax
mov dword [esp + 0x1c], ecx
mov ecx, edi
shld edi, ebp, 0xc
shr ecx, 0x14
shl ebp, 0xc
or eax, edi
xor eax, dword [esp + 0x1c]
or ecx, ebp
xor ecx, dword [esp + 0x18]
add dword [esp + 0x10], ecx
mov ebp, ecx
adc dword [esp + 0x14], eax
xor edi, edi
shrd ecx, eax, 6
shl ebp, 0x1a
shr eax, 6
or edi, ecx
or ebp, eax
xor edi, dword [esp + 0x10]
xor ebp, dword [esp + 0x14]
mov eax, ebx
add dword [esp + 0x18], edx
adc dword [esp + 0x1c], ebx
xor ecx, ecx
shld ebx, edx, 0x16
shr eax, 0xa
or ecx, ebx
shl edx, 0x16
or eax, edx
mov dword [esp + 0x20], ecx
mov edx, dword [esp + 0x18]
mov ebx, ecx
mov ecx, dword [esp + 0x1c]
xor eax, edx
xor ebx, ecx
add dword [esp + 0x10], eax
adc dword [esp + 0x14], ebx
add edx, edi
mov dword [esp + 0x18], edx
adc ecx, ebp
xor ebp, dword [esp + 0x18]
xor edx, edx
mov dword [esp + 0x1c], ecx
or edx, edi
xor edx, ecx
add ebp, dword [esp + 0x38]
mov ecx, dword [esp + 0x34]
adc edx, dword [esp + 0x3c]
add ebp, dword [esp + 0x2c]
mov dword [esp + 0x20], ebp
adc edx, dword [esp + 0x30]
xor edi, edi
xor ebx, dword [esp + 0x10]
or edi, eax
xor edi, dword [esp + 0x14]
add ebx, dword [esp + 0x4c]
mov eax, dword [esp + 0x54]
adc edi, dword [esp + 0x50]
add ebx, 0x10
adc edi, 0
add ecx, ebp
adc eax, edx
add dword [esp + 0x10], ecx
mov ecx, dword [esp + 0x20]
adc dword [esp + 0x14], eax
mov eax, edx
shld edx, ecx, 0xe
shr eax, 0x12
xor ebp, ebp
shl ecx, 0xe
or ebp, edx
xor ebp, dword [esp + 0x14]
or eax, ecx
xor eax, dword [esp + 0x10]
mov ecx, dword [esp + 0x90]
mov edx, dword [esp + 0x18]
add ecx, ebx
mov dword [esp + 0x20], eax
mov eax, dword [esp + 0x68]
adc eax, edi
add edx, ecx
mov ecx, edi
mov dword [esp + 0x18], edx
adc dword [esp + 0x1c], eax
xor eax, eax
shld edi, ebx, 0x10
shr ecx, 0x10
shl ebx, 0x10
or eax, edi
mov edi, dword [esp + 0x1c]
or ecx, ebx
xor ecx, edx
xor eax, edi
add dword [esp + 0x10], ecx
mov edx, ecx
adc dword [esp + 0x14], eax
xor ebx, ebx
shrd ecx, eax, 0xc
shl edx, 0x14
shr eax, 0xc
or edx, eax
or ebx, ecx
xor edx, dword [esp + 0x14]
xor ebx, dword [esp + 0x10]
mov dword [esp + 0x68], edx
mov edx, dword [esp + 0x20]
mov ecx, edx
add dword [esp + 0x18], edx
adc edi, ebp
xor eax, eax
shrd edx, ebp, 7
shl ecx, 0x19
or eax, edx
shr ebp, 7
or ecx, ebp
mov dword [esp + 0x1c], edi
mov ebp, dword [esp + 0x18]
xor ecx, edi
xor eax, ebp
mov edi, ecx
add dword [esp + 0x10], eax
adc dword [esp + 0x14], ecx
xor edx, edx
shld ecx, eax, 0x17
shr edi, 9
or edx, ecx
shl eax, 0x17
xor edx, dword [esp + 0x14]
or edi, eax
xor edi, dword [esp + 0x10]
mov ecx, ebx
add ebp, ebx
mov dword [esp + 0x18], ebp
mov ebp, dword [esp + 0x68]
adc dword [esp + 0x1c], ebp
xor eax, eax
shrd ebx, ebp, 0x18
shl ecx, 8
shr ebp, 0x18
or eax, ebx
mov ebx, dword [esp + 0x1c]
or ecx, ebp
mov ebp, dword [esp + 0x18]
xor ecx, ebx
xor eax, ebp
add dword [esp + 0x10], eax
adc dword [esp + 0x14], ecx
add ebp, edi
mov dword [esp + 0x18], ebp
mov ebp, edi
adc ebx, edx
shl ebp, 5
shrd edi, edx, 0x1b
mov dword [esp + 0x1c], ebx
xor ebx, ebx
shr edx, 0x1b
or ebx, edi
xor ebx, dword [esp + 0x18]
or ebp, edx
xor ebp, dword [esp + 0x1c]
mov edx, ecx
add ebx, dword [esp + 0x60]
adc ebp, dword [esp + 0x64]
add ebx, dword [esp + 0x28]
adc ebp, dword [esp + 0x48]
xor edi, edi
shld ecx, eax, 5
shr edx, 0x1b
shl eax, 5
or edi, ecx
xor edi, dword [esp + 0x14]
or edx, eax
xor edx, dword [esp + 0x10]
add edx, dword [esp + 0x58]
mov ecx, dword [esp + 0x2c]
adc edi, dword [esp + 0x5c]
add edx, 0x11
mov eax, dword [esp + 0x30]
adc edi, 0
add ecx, ebx
adc eax, ebp
add dword [esp + 0x10], ecx
mov ecx, ebp
adc dword [esp + 0x14], eax
shld ebp, ebx, 0x19
mov eax, dword [esp + 0x6c]
shr ecx, 7
shl ebx, 0x19
or ecx, ebx
xor ebx, ebx
xor ecx, dword [esp + 0x10]
or ebx, ebp
xor ebx, dword [esp + 0x14]
mov ebp, dword [esp + 0x94]
add ebp, edx
mov dword [esp + 0x68], ecx
adc eax, edi
add dword [esp + 0x18], ebp
mov ebp, dword [esp + 0x1c]
adc ebp, eax
mov eax, edx
shrd eax, edi, 0x1f
add edx, edx
mov dword [esp + 0x1c], ebp
xor eax, dword [esp + 0x18]
shr edi, 0x1f
or edi, edx
xor edi, ebp
add dword [esp + 0x10], eax
mov dword [esp + 0x6c], edi
mov ebp, eax
adc dword [esp + 0x14], edi
xor edi, edi
mov edx, dword [esp + 0x6c]
shrd eax, edx, 0x12
shl ebp, 0xe
or edi, eax
shr edx, 0x12
xor edi, dword [esp + 0x10]
or ebp, edx
xor ebp, dword [esp + 0x14]
add dword [esp + 0x18], ecx
mov ecx, ebx
mov edx, dword [esp + 0x68]
adc dword [esp + 0x1c], ebx
xor eax, eax
shld ebx, edx, 0xc
shr ecx, 0x14
or eax, ebx
shl edx, 0xc
xor eax, dword [esp + 0x1c]
or ecx, edx
xor ecx, dword [esp + 0x18]
add dword [esp + 0x10], ecx
mov ebx, ecx
adc dword [esp + 0x14], eax
xor edx, edx
shrd ecx, eax, 6
shl ebx, 0x1a
shr eax, 6
or edx, ecx
xor edx, dword [esp + 0x10]
or ebx, eax
xor ebx, dword [esp + 0x14]
mov ecx, ebp
add dword [esp + 0x18], edi
mov eax, dword [esp + 0x1c]
adc eax, ebp
shr ecx, 0xa
shld ebp, edi, 0x16
shl edi, 0x16
or ecx, edi
xor edi, edi
or edi, ebp
mov ebp, dword [esp + 0x18]
xor ecx, ebp
xor edi, eax
add dword [esp + 0x10], ecx
adc dword [esp + 0x14], edi
add ebp, edx
mov dword [esp + 0x18], ebp
adc eax, ebx
mov esi, dword [esp + 0x28]
add esi, dword [esp + 0x10]
mov dword [esp + 0x1c], eax
mov eax, dword [esp + 0x48]
adc eax, dword [esp + 0x14]
xor eax, dword [esp + 0x74]
xor esi, dword [esp + 0x70]
xor ebx, dword [esp + 0x18]
mov dword [esp + 0x28], esi
mov esi, dword [esp + 0xa4]
mov ebp, dword [esp + 0x28]
mov dword [esi + 0x1c], eax
xor eax, eax
or eax, edx
mov dword [esi + 0x18], ebp
xor eax, dword [esp + 0x1c]
add ebx, dword [esp + 0x4c]
mov edx, dword [esp + 0x98]
adc eax, dword [esp + 0x50]
add ebx, dword [esp + 0x40]
adc eax, dword [esp + 0x44]
xor eax, dword [esp + 0x7c]
xor ebx, dword [esp + 0x78]
add edx, dword [esp + 0x18]
mov dword [esi + 0x24], eax
mov eax, dword [esp + 0x9c]
adc eax, dword [esp + 0x1c]
xor eax, dword [esp + 0x84]
xor edx, dword [esp + 0x80]
xor edi, dword [esp + 0x10]
mov dword [esi + 0x2c], eax
xor eax, eax
or eax, ecx
mov dword [esi + 0x28], edx
xor eax, dword [esp + 0x14]
add edi, dword [esp + 0x34]
mov edx, dword [esp + 0x3c]
adc eax, dword [esp + 0x54]
add edi, 0x12
mov ecx, dword [esp + 0x38]
adc eax, 0
mov dword [esi + 0x20], ebx
xor eax, dword [esp + 0x8c]
and edx, 0xbfffffff
xor edi, dword [esp + 0x88]
sub dword [esp + 0xac], 1
mov dword [esi + 0x34], eax
mov eax, dword [esp + 0x40]
mov dword [esi + 0x30], edi
mov dword [esp + 0x38], ecx
mov dword [esp + 0x3c], edx
jne 0x10010c00
mov dword [esi + 8], eax
mov eax, dword [esp + 0x44]
mov dword [esi + 0xc], eax
pop edi
mov dword [esi + 0x10], ecx
mov dword [esi + 0x14], edx
pop esi
pop ebp
pop ebx
add esp, 0x90
ret