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

Disassembly:
push ebp
push edi
push esi
push ebx
sub esp, 0x190
mov eax, dword [esp + 0x1a4]
mov eax, dword [eax]
mov dword [esp + 0x70], eax
mov edx, dword [esp + 0x1a4]
mov edx, dword [edx + 4]
mov dword [esp + 0x78], edx
mov ecx, dword [esp + 0x1a4]
mov ecx, dword [ecx + 8]
mov dword [esp + 0x84], ecx
mov ebx, dword [esp + 0x1a4]
mov ebx, dword [ebx + 0xc]
mov dword [esp + 0x88], ebx
mov esi, dword [esp + 0x1a4]
mov esi, dword [esi + 0x10]
mov dword [esp + 0x74], esi
mov eax, dword [esp + 0x1a4]
mov eax, dword [eax + 0x14]
mov dword [esp + 0x7c], eax
mov edx, dword [esp + 0x1a4]
mov edx, dword [edx + 0x18]
mov dword [esp + 0x80], edx
mov ecx, dword [esp + 0x1a4]
mov ecx, dword [ecx + 0x1c]
mov dword [esp + 0x8c], ecx
mov ebx, dword [esp + 0x1a8]
mov ebx, dword [ebx]
rol bx, 8
rol ebx, 0x10
rol bx, 8
mov dword [esp + 0x2c], ebx
mov eax, esi
ror eax, 0xb
mov edx, esi
ror edx, 6
xor eax, edx
mov edx, esi
ror edx, 0x19
xor eax, edx
lea ebx, [ecx + eax + 0x428a2f98]
mov eax, dword [esp + 0x80]
xor eax, dword [esp + 0x7c]
and eax, esi
xor eax, dword [esp + 0x80]
add ebx, eax
add ebx, dword [esp + 0x2c]
mov ecx, dword [esp + 0x88]
add ecx, ebx
mov edx, dword [esp + 0x78]
or edx, dword [esp + 0x70]
and edx, dword [esp + 0x84]
mov eax, dword [esp + 0x78]
and eax, dword [esp + 0x70]
or edx, eax
mov eax, dword [esp + 0x70]
ror eax, 0xd
mov esi, dword [esp + 0x70]
ror esi, 2
xor eax, esi
mov esi, dword [esp + 0x70]
ror esi, 0x16
xor eax, esi
add eax, edx
add eax, ebx
mov dword [esp + 4], eax
mov esi, dword [esp + 0x1a8]
mov esi, dword [esi + 4]
rol si, 8
rol esi, 0x10
rol si, 8
mov dword [esp + 0x30], esi
mov eax, dword [esp + 0x80]
lea esi, [eax + esi + 0x71374491]
mov eax, dword [esp + 0x7c]
xor eax, dword [esp + 0x74]
and eax, ecx
xor eax, dword [esp + 0x7c]
add esi, eax
mov eax, ecx
rol eax, 0x15
mov edx, ecx
rol edx, 7
xor eax, edx
mov edx, ecx
rol edx, 0x1a
xor eax, edx
add esi, eax
mov edx, dword [esp + 0x84]
add edx, esi
mov ebx, dword [esp + 4]
or ebx, dword [esp + 0x70]
and ebx, dword [esp + 0x78]
mov eax, dword [esp + 4]
and eax, dword [esp + 0x70]
or ebx, eax
mov eax, dword [esp + 4]
rol eax, 0x13
mov edi, dword [esp + 4]
rol edi, 0xa
xor eax, edi
mov edi, dword [esp + 4]
rol edi, 0x1e
xor eax, edi
add eax, ebx
add eax, esi
mov dword [esp], eax
mov ebx, dword [esp + 0x1a8]
mov ebx, dword [ebx + 8]
rol bx, 8
rol ebx, 0x10
rol bx, 8
mov dword [esp + 0x3c], ebx
mov esi, dword [esp + 0x7c]
lea edi, [esi + ebx - 0x4a3f0431]
mov eax, dword [esp + 0x74]
xor eax, ecx
and eax, edx
xor eax, dword [esp + 0x74]
add edi, eax
mov eax, edx
rol eax, 0x15
mov ebx, edx
rol ebx, 0x1a
xor eax, ebx
mov ebx, edx
rol ebx, 7
xor eax, ebx
add edi, eax
mov eax, dword [esp + 0x78]
add eax, edi
mov esi, dword [esp]
or esi, dword [esp + 4]
and esi, dword [esp + 0x70]
mov ebx, dword [esp]
and ebx, dword [esp + 4]
or esi, ebx
mov ebx, dword [esp]
rol ebx, 0x13
mov ebp, dword [esp]
rol ebp, 0x1e
xor ebx, ebp
mov ebp, dword [esp]
rol ebp, 0xa
xor ebx, ebp
add ebx, esi
add ebx, edi
mov dword [esp + 0x14], ebx
mov ebx, dword [esp + 0x1a8]
mov ebx, dword [ebx + 0xc]
rol bx, 8
rol ebx, 0x10
rol bx, 8
mov dword [esp + 0x44], ebx
mov esi, dword [esp + 0x74]
lea edi, [esi + ebx - 0x164a245b]
mov ebx, edx
xor ebx, ecx
and ebx, eax
xor ebx, ecx
add edi, ebx
mov ebx, eax
rol ebx, 0x15
mov esi, eax
rol esi, 0x1a
xor ebx, esi
mov esi, eax
rol esi, 7
xor ebx, esi
add ebx, edi
mov dword [esp + 0x10], ebx
mov edi, dword [esp + 0x70]
add edi, ebx
mov esi, dword [esp + 0x14]
or esi, dword [esp]
and esi, dword [esp + 4]
mov ebx, dword [esp + 0x14]
and ebx, dword [esp]
or esi, ebx
mov ebx, dword [esp + 0x14]
rol ebx, 0x13
mov ebp, dword [esp + 0x14]
rol ebp, 0x1e
xor ebx, ebp
mov ebp, dword [esp + 0x14]
rol ebp, 0xa
xor ebx, ebp
add ebx, esi
mov ebp, dword [esp + 0x10]
add ebp, ebx
mov ebx, dword [esp + 0x1a8]
mov ebx, dword [ebx + 0x10]
rol bx, 8
rol ebx, 0x10
rol bx, 8
mov dword [esp + 0x48], ebx
lea esi, [ecx + ebx + 0x3956c25b]
mov ecx, eax
xor ecx, edx
and ecx, edi
xor ecx, edx
add esi, ecx
mov ecx, edi
rol ecx, 0x15
mov ebx, edi
rol ebx, 0x1a
xor ecx, ebx
mov ebx, edi
rol ebx, 7
xor ecx, ebx
add ecx, esi
mov dword [esp + 8], ecx
mov esi, dword [esp + 4]
add esi, ecx
mov dword [esp + 4], esi
mov ebx, dword [esp + 0x14]
or ebx, ebp
and ebx, dword [esp]
mov ecx, dword [esp + 0x14]
and ecx, ebp
or ebx, ecx
mov ecx, ebp
rol ecx, 0x13
mov esi, ebp
rol esi, 0x1e
xor ecx, esi
mov esi, ebp
rol esi, 0xa
xor ecx, esi
add ecx, ebx
mov esi, dword [esp + 8]
add esi, ecx
mov ecx, dword [esp + 0x1a8]
mov ecx, dword [ecx + 0x14]
rol cx, 8
rol ecx, 0x10
rol cx, 8
mov dword [esp + 0x4c], ecx
lea ebx, [edx + ecx + 0x59f111f1]
mov edx, edi
xor edx, eax
and edx, dword [esp + 4]
xor edx, eax
add ebx, edx
mov edx, dword [esp + 4]
rol edx, 0x15
mov ecx, dword [esp + 4]
rol ecx, 0x1a
xor edx, ecx
mov ecx, dword [esp + 4]
rol ecx, 7
xor edx, ecx
add edx, ebx
mov dword [esp + 8], edx
mov ebx, dword [esp]
add ebx, edx
mov dword [esp + 0xc], ebx
mov ecx, esi
or ecx, ebp
and ecx, dword [esp + 0x14]
mov edx, esi
and edx, ebp
or ecx, edx
mov edx, esi
rol edx, 0x13
mov ebx, esi
rol ebx, 0x1e
xor edx, ebx
mov ebx, esi
rol ebx, 0xa
xor edx, ebx
add edx, ecx
add edx, dword [esp + 8]
mov dword [esp], edx
mov edx, dword [esp + 0x1a8]
mov edx, dword [edx + 0x18]
rol dx, 8
rol edx, 0x10
rol dx, 8
mov dword [esp + 0x38], edx
lea ecx, [eax + edx - 0x6dc07d5c]
mov eax, dword [esp + 4]
xor eax, edi
and eax, dword [esp + 0xc]
xor eax, edi
add ecx, eax
mov eax, dword [esp + 0xc]
rol eax, 0x15
mov edx, dword [esp + 0xc]
rol edx, 0x1a
xor eax, edx
mov edx, dword [esp + 0xc]
rol edx, 7
xor eax, edx
add ecx, eax
mov ebx, dword [esp + 0x14]
add ebx, ecx
mov dword [esp + 0x18], ebx
mov edx, dword [esp]
or edx, esi
and edx, ebp
mov eax, dword [esp]
and eax, esi
or edx, eax
mov eax, dword [esp]
rol eax, 0x13
mov ebx, dword [esp]
rol ebx, 0x1e
xor eax, ebx
mov ebx, dword [esp]
rol ebx, 0xa
xor eax, ebx
add eax, edx
add eax, ecx
mov dword [esp + 0x14], eax
mov eax, dword [esp + 0x1a8]
mov eax, dword [eax + 0x1c]
rol ax, 8
rol eax, 0x10
rol ax, 8
mov dword [esp + 0x40], eax
lea ecx, [edi + eax - 0x54e3a12b]
mov eax, dword [esp + 0xc]
xor eax, dword [esp + 4]
and eax, dword [esp + 0x18]
xor eax, dword [esp + 4]
add ecx, eax
mov eax, dword [esp + 0x18]
rol eax, 0x15
mov edx, dword [esp + 0x18]
rol edx, 0x1a
xor eax, edx
mov edx, dword [esp + 0x18]
rol edx, 7
xor eax, edx
add ecx, eax
add ebp, ecx
mov edx, dword [esp + 0x14]
or edx, dword [esp]
and edx, esi
mov eax, dword [esp + 0x14]
and eax, dword [esp]
or edx, eax
mov eax, dword [esp + 0x14]
rol eax, 0x13
mov ebx, dword [esp + 0x14]
rol ebx, 0x1e
xor eax, ebx
mov ebx, dword [esp + 0x14]
rol ebx, 0xa
xor eax, ebx
add eax, edx
add eax, ecx
mov dword [esp + 0x10], eax
mov edx, dword [esp + 0x1a8]
mov edi, dword [edx + 0x20]
rol di, 8
rol edi, 0x10
rol di, 8
mov ebx, dword [esp + 4]
lea ecx, [edi + ebx - 0x27f85568]
mov eax, dword [esp + 0xc]
xor eax, dword [esp + 0x18]
and eax, ebp
xor eax, dword [esp + 0xc]
add ecx, eax
mov eax, ebp
ror eax, 0xb
mov edx, ebp
ror edx, 6
xor eax, edx
mov edx, ebp
ror edx, 0x19
xor eax, edx
add ecx, eax
add esi, ecx
mov dword [esp + 0x1c], esi
mov edx, dword [esp + 0x14]
or edx, dword [esp + 0x10]
and edx, dword [esp]
mov eax, dword [esp + 0x14]
and eax, dword [esp + 0x10]
or edx, eax
mov eax, dword [esp + 0x10]
ror eax, 0xd
mov ebx, dword [esp + 0x10]
ror ebx, 2
xor eax, ebx
mov ebx, dword [esp + 0x10]
ror ebx, 0x16
xor eax, ebx
add eax, edx
add eax, ecx
mov dword [esp + 4], eax
mov eax, dword [esp + 0x1a8]
mov esi, dword [eax + 0x24]
rol si, 8
rol esi, 0x10
rol si, 8
mov ecx, dword [esp + 0xc]
lea edx, [esi + ecx + 0x12835b01]
mov eax, dword [esp + 0x18]
xor eax, ebp
and eax, dword [esp + 0x1c]
xor eax, dword [esp + 0x18]
add edx, eax
mov eax, dword [esp + 0x1c]
rol eax, 0x15
mov ecx, dword [esp + 0x1c]
rol ecx, 0x1a
xor eax, ecx
mov ecx, dword [esp + 0x1c]
rol ecx, 7
xor eax, ecx
add edx, eax
mov ebx, dword [esp]
add ebx, edx
mov dword [esp + 0x20], ebx
mov ebx, dword [esp + 4]
or ebx, dword [esp + 0x10]
and ebx, dword [esp + 0x14]
mov eax, dword [esp + 4]
and eax, dword [esp + 0x10]
or ebx, eax
mov eax, dword [esp + 4]
rol eax, 0x13
mov ecx, dword [esp + 4]
rol ecx, 0x1e
xor eax, ecx
mov ecx, dword [esp + 4]
rol ecx, 0xa
xor eax, ecx
add eax, ebx
add eax, edx
mov dword [esp], eax
mov eax, dword [esp + 0x1a8]
mov eax, dword [eax + 0x28]
rol ax, 8
rol eax, 0x10
rol ax, 8
mov dword [esp + 0x5c], eax
mov ecx, dword [esp + 0x18]
lea edx, [eax + ecx + 0x243185be]
mov eax, dword [esp + 0x1c]
xor eax, ebp
and eax, dword [esp + 0x20]
xor eax, ebp
add edx, eax
mov eax, dword [esp + 0x20]
rol eax, 0x15
mov ecx, dword [esp + 0x20]
rol ecx, 0x1a
xor eax, ecx
mov ecx, dword [esp + 0x20]
rol ecx, 7
xor eax, ecx
add edx, eax
mov ebx, dword [esp + 0x14]
add ebx, edx
mov dword [esp + 0x24], ebx
mov ecx, dword [esp]
or ecx, dword [esp + 4]
and ecx, dword [esp + 0x10]
mov eax, dword [esp]
and eax, dword [esp + 4]
or ecx, eax
mov eax, dword [esp]
rol eax, 0x13
mov ebx, dword [esp]
rol ebx, 0x1e
xor eax, ebx
mov ebx, dword [esp]
rol ebx, 0xa
xor eax, ebx
add eax, ecx
add eax, edx
mov dword [esp + 0xc], eax
mov eax, dword [esp + 0x1a8]
mov eax, dword [eax + 0x2c]
rol ax, 8
rol eax, 0x10
rol ax, 8
mov dword [esp + 0x58], eax
lea edx, [eax + ebp + 0x550c7dc3]
mov eax, dword [esp + 0x20]
xor eax, dword [esp + 0x1c]
and eax, dword [esp + 0x24]
xor eax, dword [esp + 0x1c]
add edx, eax
mov eax, dword [esp + 0x24]
rol eax, 0x15
mov ecx, dword [esp + 0x24]
rol ecx, 0x1a
xor eax, ecx
mov ecx, dword [esp + 0x24]
rol ecx, 7
xor eax, ecx
add eax, edx
mov edx, dword [esp + 0x10]
add edx, eax
mov dword [esp + 0x28], edx
mov ecx, dword [esp + 0xc]
or ecx, dword [esp]
and ecx, dword [esp + 4]
mov edx, dword [esp + 0xc]
and edx, dword [esp]
or ecx, edx
mov edx, dword [esp + 0xc]
rol edx, 0x13
mov ebx, dword [esp + 0xc]
rol ebx, 0x1e
xor edx, ebx
mov ebx, dword [esp + 0xc]
rol ebx, 0xa
xor edx, ebx
add edx, ecx
add edx, eax
mov dword [esp + 0x18], edx
mov ebx, dword [esp + 0x1a8]
mov ecx, dword [ebx + 0x30]
rol cx, 8
rol ecx, 0x10
rol cx, 8
mov eax, dword [esp + 0x1c]
lea edx, [eax + ecx + 0x72be5d74]
mov eax, dword [esp + 0x24]
xor eax, dword [esp + 0x20]
and eax, dword [esp + 0x28]
xor eax, dword [esp + 0x20]
lea ebx, [edx + eax]
mov eax, dword [esp + 0x28]
rol eax, 0x15
mov edx, dword [esp + 0x28]
rol edx, 0x1a
xor eax, edx
mov edx, dword [esp + 0x28]
rol edx, 7
xor eax, edx
lea ebp, [ebx + eax]
mov edx, dword [esp + 4]
add edx, ebp
mov dword [esp + 0x14], edx
mov edx, dword [esp + 0x18]
or edx, dword [esp + 0xc]
and edx, dword [esp]
mov eax, dword [esp + 0x18]
and eax, dword [esp + 0xc]
or edx, eax
mov eax, dword [esp + 0x18]
rol eax, 0x13
mov ebx, dword [esp + 0x18]
rol ebx, 0x1e
xor eax, ebx
mov ebx, dword [esp + 0x18]
rol ebx, 0xa
xor eax, ebx
add eax, edx
add eax, ebp
mov dword [esp + 0x1c], eax
mov ebx, dword [esp + 0x1a8]
mov ebp, dword [ebx + 0x34]
rol bp, 8
rol ebp, 0x10
rol bp, 8
mov eax, dword [esp + 0x20]
lea edx, [eax + ebp - 0x7f214e02]
mov eax, dword [esp + 0x28]
xor eax, dword [esp + 0x24]
and eax, dword [esp + 0x14]
xor eax, dword [esp + 0x24]
lea ebx, [edx + eax]
mov eax, dword [esp + 0x14]
rol eax, 0x15
mov edx, dword [esp + 0x14]
rol edx, 0x1a
xor eax, edx
mov edx, dword [esp + 0x14]
rol edx, 7
xor eax, edx
add eax, ebx
mov dword [esp + 4], eax
add eax, dword [esp]
mov dword [esp + 0x10], eax
mov ebx, dword [esp + 0x1c]
or ebx, dword [esp + 0x18]
and ebx, dword [esp + 0xc]
mov eax, dword [esp + 0x1c]
and eax, dword [esp + 0x18]
or ebx, eax
mov eax, dword [esp + 0x1c]
rol eax, 0x13
mov edx, dword [esp + 0x1c]
rol edx, 0x1e
xor eax, edx
mov edx, dword [esp + 0x1c]
rol edx, 0xa
xor eax, edx
add eax, ebx
add eax, dword [esp + 4]
mov dword [esp + 4], eax
mov edx, dword [esp + 0x1a8]
mov ebx, dword [edx + 0x38]
rol bx, 8
rol ebx, 0x10
rol bx, 8
mov eax, dword [esp + 0x24]
lea edx, [eax + ebx - 0x6423f959]
mov eax, dword [esp + 0x14]
xor eax, dword [esp + 0x28]
and eax, dword [esp + 0x10]
xor eax, dword [esp + 0x28]
add eax, edx
mov dword [esp], eax
mov eax, dword [esp + 0x10]
rol eax, 0x15
mov edx, dword [esp + 0x10]
rol edx, 0x1a
xor eax, edx
mov edx, dword [esp + 0x10]
rol edx, 7
xor eax, edx
add eax, dword [esp]
mov dword [esp + 0x20], eax
add eax, dword [esp + 0xc]
mov dword [esp + 0xc], eax
mov edx, dword [esp + 4]
or edx, dword [esp + 0x1c]
mov eax, dword [esp + 0x18]
and edx, eax
mov eax, dword [esp + 4]
and eax, dword [esp + 0x1c]
or edx, eax
mov dword [esp], edx
mov edx, dword [esp + 4]
rol edx, 0x13
mov eax, dword [esp + 4]
rol eax, 0x1e
xor edx, eax
mov eax, dword [esp + 4]
rol eax, 0xa
xor edx, eax
mov eax, dword [esp]
add eax, edx
add eax, dword [esp + 0x20]
mov dword [esp], eax
mov edx, dword [esp + 0x1a8]
mov edx, dword [edx + 0x3c]
rol dx, 8
rol edx, 0x10
rol dx, 8
mov dword [esp + 0x34], edx
mov eax, dword [esp + 0x28]
lea eax, [eax + edx - 0x3e640e8c]
mov dword [esp + 8], eax
mov eax, dword [esp + 0x10]
xor eax, dword [esp + 0x14]
and eax, dword [esp + 0xc]
xor eax, dword [esp + 0x14]
add eax, dword [esp + 8]
mov dword [esp + 8], eax
mov edx, dword [esp + 0xc]
rol edx, 0x15
mov eax, dword [esp + 0xc]
rol eax, 0x1a
xor edx, eax
mov eax, dword [esp + 0xc]
rol eax, 7
xor edx, eax
add edx, dword [esp + 8]
mov dword [esp + 0x20], edx
add edx, dword [esp + 0x18]
mov dword [esp + 0x18], edx
mov edx, dword [esp]
or edx, dword [esp + 4]
mov eax, dword [esp + 0x1c]
and edx, eax
mov eax, dword [esp]
and eax, dword [esp + 4]
or edx, eax
mov dword [esp + 8], edx
mov edx, dword [esp]
rol edx, 0x13
mov eax, dword [esp]
rol eax, 0x1e
xor edx, eax
mov eax, dword [esp]
rol eax, 0xa
xor edx, eax
add edx, dword [esp + 8]
add edx, dword [esp + 0x20]
mov dword [esp + 8], edx
mov dword [esp + 0x64], ebp
mov dword [esp + 0x68], ecx
mov dword [esp + 0x50], ebx
mov edx, dword [esp + 0x30]
mov dword [esp + 0x6c], esi
mov eax, dword [esp + 0x2c]
mov dword [esp + 0x54], edi
mov ecx, 0x10
mov edi, dword [esp + 0x1c]
jmp 0x70a5548c
mov esi, dword [esp + 0x20]
mov dword [esp + 0x6c], esi
mov esi, dword [esp + 0x60]
mov dword [esp + 0x50], esi
mov esi, dword [esp + 0x24]
mov dword [esp + 0x5c], esi
mov dword [esp + 0x34], ebx
mov ebx, dword [esp + 0x28]
mov dword [esp + 0x58], ebx
mov esi, dword [esp + 0x2c]
mov dword [esp + 0x68], esi
mov ebx, dword [esp + 0x30]
mov dword [esp + 0x64], ebx
add eax, dword [esp + 0x6c]
mov ebx, edx
ror ebx, 0x12
mov esi, edx
ror esi, 7
xor ebx, esi
mov esi, edx
shr esi, 3
xor ebx, esi
add eax, ebx
mov ebx, dword [esp + 0x50]
ror ebx, 0x13
mov esi, dword [esp + 0x50]
ror esi, 0x11
xor ebx, esi
mov esi, dword [esp + 0x50]
shr esi, 0xa
xor ebx, esi
add ebx, eax
mov dword [esp + 0x1c], ebx
mov dword [esp + ecx*4 + 0x90], ebx
mov ebx, dword [esp + 0x18]
rol ebx, 0x15
mov eax, dword [esp + 0x18]
rol eax, 0x1a
xor ebx, eax
mov eax, dword [esp + 0x18]
rol eax, 7
xor ebx, eax
mov eax, dword [esp + 0x10]
xor eax, dword [esp + 0xc]
and eax, dword [esp + 0x18]
xor eax, dword [esp + 0x10]
add eax, ebx
add eax, dword [ecx*4 + 0x70a66600]
add eax, dword [esp + 0x1c]
add eax, dword [esp + 0x14]
lea ebx, [edi + eax]
mov edi, dword [esp]
or edi, dword [esp + 8]
and edi, dword [esp + 4]
mov esi, dword [esp]
and esi, dword [esp + 8]
or edi, esi
mov esi, dword [esp + 8]
rol esi, 0x13
mov ebp, dword [esp + 8]
rol ebp, 0x1e
xor esi, ebp
mov ebp, dword [esp + 8]
rol ebp, 0xa
xor esi, ebp
add esi, edi
add eax, esi
add edx, dword [esp + 0x5c]
mov esi, dword [esp + 0x3c]
ror esi, 0x12
mov edi, dword [esp + 0x3c]
ror edi, 7
xor esi, edi
mov edi, dword [esp + 0x3c]
shr edi, 3
xor esi, edi
add edx, esi
mov esi, dword [esp + 0x34]
ror esi, 0x13
mov edi, dword [esp + 0x34]
ror edi, 0x11
xor esi, edi
mov edi, dword [esp + 0x34]
shr edi, 0xa
xor esi, edi
add esi, edx
mov dword [esp + 0x20], esi
mov dword [esp + ecx*4 + 0x94], esi
mov edi, dword [esp + 0x10]
add edi, dword [ecx*4 + 0x70a66604]
add edi, esi
mov edx, dword [esp + 0xc]
xor edx, dword [esp + 0x18]
and edx, ebx
xor edx, dword [esp + 0xc]
add edi, edx
mov edx, ebx
rol edx, 0x15
mov esi, ebx
rol esi, 0x1a
xor edx, esi
mov esi, ebx
rol esi, 7
xor edx, esi
add edi, edx
mov esi, dword [esp + 4]
add esi, edi
mov dword [esp + 0x10], esi
mov esi, dword [esp + 8]
or esi, eax
and esi, dword [esp]
mov edx, dword [esp + 8]
and edx, eax
or esi, edx
mov edx, eax
rol edx, 0x13
mov ebp, eax
rol ebp, 0x1e
xor edx, ebp
mov ebp, eax
rol ebp, 0xa
xor edx, ebp
add edx, esi
add edx, edi
mov dword [esp + 4], edx
mov esi, dword [esp + 0x58]
add esi, dword [esp + 0x3c]
mov edx, dword [esp + 0x44]
ror edx, 0x12
mov edi, dword [esp + 0x44]
ror edi, 7
xor edx, edi
mov edi, dword [esp + 0x44]
shr edi, 3
xor edx, edi
add esi, edx
mov edx, dword [esp + 0x1c]
ror edx, 0x13
mov edi, dword [esp + 0x1c]
ror edi, 0x11
xor edx, edi
mov edi, dword [esp + 0x1c]
shr edi, 0xa
xor edx, edi
add edx, esi
mov dword [esp + 0x24], edx
mov dword [esp + ecx*4 + 0x98], edx
mov edi, dword [esp + 0xc]
add edi, dword [ecx*4 + 0x70a66608]
add edi, edx
mov esi, dword [esp + 0x18]
xor esi, ebx
and esi, dword [esp + 0x10]
xor esi, dword [esp + 0x18]
add edi, esi
mov edx, dword [esp + 0x10]
rol edx, 0x15
mov esi, dword [esp + 0x10]
rol esi, 0x1a
xor edx, esi
mov esi, dword [esp + 0x10]
rol esi, 7
xor edx, esi
add edi, edx
mov edx, dword [esp]
add edx, edi
mov dword [esp + 0xc], edx
mov esi, dword [esp + 4]
or esi, eax
and esi, dword [esp + 8]
mov edx, dword [esp + 4]
and edx, eax
or esi, edx
mov edx, dword [esp + 4]
rol edx, 0x13
mov ebp, dword [esp + 4]
rol ebp, 0x1e
xor edx, ebp
mov ebp, dword [esp + 4]
rol ebp, 0xa
xor edx, ebp
add edx, esi
add edx, edi
mov dword [esp], edx
mov esi, dword [esp + 0x68]
add esi, dword [esp + 0x44]
mov edx, dword [esp + 0x48]
ror edx, 0x12
mov edi, dword [esp + 0x48]
ror edi, 7
xor edx, edi
mov edi, dword [esp + 0x48]
shr edi, 3
xor edx, edi
add esi, edx
mov edx, dword [esp + 0x20]
ror edx, 0x13
mov edi, dword [esp + 0x20]
ror edi, 0x11
xor edx, edi
mov edi, dword [esp + 0x20]
shr edi, 0xa
xor edx, edi
add edx, esi
mov dword [esp + 0x28], edx
mov dword [esp + ecx*4 + 0x9c], edx
mov edi, dword [esp + 0x18]
add edi, dword [ecx*4 + 0x70a6660c]
add edi, edx
mov edx, dword [esp + 0x10]
xor edx, ebx
and edx, dword [esp + 0xc]
xor edx, ebx
add edi, edx
mov edx, dword [esp + 0xc]
rol edx, 0x15
mov esi, dword [esp + 0xc]
rol esi, 0x1a
xor edx, esi
mov esi, dword [esp + 0xc]
rol esi, 7
xor edx, esi
add edi, edx
mov esi, dword [esp + 8]
add esi, edi
mov dword [esp + 8], esi
mov esi, dword [esp]
or esi, dword [esp + 4]
and esi, eax
mov edx, dword [esp]
and edx, dword [esp + 4]
or esi, edx
mov edx, dword [esp]
rol edx, 0x13
mov ebp, dword [esp]
rol ebp, 0x1e
xor edx, ebp
mov ebp, dword [esp]
rol ebp, 0xa
xor edx, ebp
add edx, esi
lea ebp, [edx + edi]
mov esi, dword [esp + 0x64]
add esi, dword [esp + 0x48]
mov edx, dword [esp + 0x4c]
ror edx, 0x12
mov edi, dword [esp + 0x4c]
ror edi, 7
xor edx, edi
mov edi, dword [esp + 0x4c]
shr edi, 3
xor edx, edi
add esi, edx
mov edx, dword [esp + 0x24]
ror edx, 0x13
mov edi, dword [esp + 0x24]
ror edi, 0x11
xor edx, edi
mov edi, dword [esp + 0x24]
shr edi, 0xa
xor edx, edi
add edx, esi
mov dword [esp + 0x2c], edx
mov dword [esp + ecx*4 + 0xa0], edx
add ebx, dword [ecx*4 + 0x70a66610]
add ebx, edx
mov edx, dword [esp + 0xc]
xor edx, dword [esp + 0x10]
and edx, dword [esp + 8]
xor edx, dword [esp + 0x10]
add ebx, edx
mov edx, dword [esp + 8]
rol edx, 0x15
mov esi, dword [esp + 8]
rol esi, 0x1a
xor edx, esi
mov esi, dword [esp + 8]
rol esi, 7
xor edx, esi
add ebx, edx
add eax, ebx
mov dword [esp + 0x14], eax
mov edx, dword [esp]
or edx, ebp
and edx, dword [esp + 4]
mov eax, dword [esp]
and eax, ebp
or edx, eax
mov eax, ebp
rol eax, 0x13
mov esi, ebp
rol esi, 0x1e
xor eax, esi
mov esi, ebp
rol esi, 0xa
xor eax, esi
add eax, edx
lea edi, [eax + ebx]
mov edx, dword [esp + 0x4c]
add edx, dword [esp + 0x50]
mov eax, dword [esp + 0x38]
ror eax, 0x12
mov ebx, dword [esp + 0x38]
ror ebx, 7
xor eax, ebx
mov ebx, dword [esp + 0x38]
shr ebx, 3
xor eax, ebx
add edx, eax
mov eax, dword [esp + 0x28]
ror eax, 0x13
mov ebx, dword [esp + 0x28]
ror ebx, 0x11
xor eax, ebx
mov ebx, dword [esp + 0x28]
shr ebx, 0xa
xor eax, ebx
add eax, edx
mov dword [esp + 0x30], eax
mov dword [esp + ecx*4 + 0xa4], eax
mov ebx, dword [esp + 0x10]
add ebx, dword [ecx*4 + 0x70a66614]
add ebx, eax
mov eax, dword [esp + 8]
xor eax, dword [esp + 0xc]
and eax, dword [esp + 0x14]
xor eax, dword [esp + 0xc]
add ebx, eax
mov eax, dword [esp + 0x14]
rol eax, 0x15
mov edx, dword [esp + 0x14]
rol edx, 0x1a
xor eax, edx
mov edx, dword [esp + 0x14]
rol edx, 7
xor eax, edx
add ebx, eax
mov eax, dword [esp + 4]
add eax, ebx
mov dword [esp + 0x10], eax
mov edx, edi
or edx, ebp
and edx, dword [esp]
mov eax, edi
and eax, ebp
or edx, eax
mov eax, edi
rol eax, 0x13
mov esi, edi
rol esi, 0x1e
xor eax, esi
mov esi, edi
rol esi, 0xa
xor eax, esi
add eax, edx
add eax, ebx
mov dword [esp + 4], eax
mov edx, dword [esp + 0x34]
add edx, dword [esp + 0x38]
mov eax, dword [esp + 0x40]
ror eax, 0x12
mov ebx, dword [esp + 0x40]
ror ebx, 7
xor eax, ebx
mov ebx, dword [esp + 0x40]
shr ebx, 3
xor eax, ebx
add edx, eax
mov eax, dword [esp + 0x2c]
ror eax, 0x13
mov ebx, dword [esp + 0x2c]
ror ebx, 0x11
xor eax, ebx
mov ebx, dword [esp + 0x2c]
shr ebx, 0xa
xor eax, ebx
add eax, edx
mov dword [esp + 0x60], eax
mov dword [esp + ecx*4 + 0xa8], eax
mov ebx, dword [esp + 0xc]
add ebx, dword [ecx*4 + 0x70a66618]
add ebx, eax
mov eax, dword [esp + 0x14]
xor eax, dword [esp + 8]
and eax, dword [esp + 0x10]
xor eax, dword [esp + 8]
add ebx, eax
mov eax, dword [esp + 0x10]
rol eax, 0x15
mov edx, dword [esp + 0x10]
rol edx, 0x1a
xor eax, edx
mov edx, dword [esp + 0x10]
rol edx, 7
xor eax, edx
add ebx, eax
mov edx, dword [esp]
add edx, ebx
mov dword [esp + 0xc], edx
mov edx, dword [esp + 4]
or edx, edi
and edx, ebp
mov eax, dword [esp + 4]
and eax, edi
or edx, eax
mov eax, dword [esp + 4]
rol eax, 0x13
mov esi, dword [esp + 4]
rol esi, 0x1e
xor eax, esi
mov esi, dword [esp + 4]
rol esi, 0xa
xor eax, esi
add eax, edx
add eax, ebx
mov dword [esp], eax
mov ebx, dword [esp + 0x54]
ror ebx, 0x12
mov eax, dword [esp + 0x54]
ror eax, 7
xor ebx, eax
mov eax, dword [esp + 0x54]
shr eax, 3
xor ebx, eax
add ebx, dword [esp + 0x40]
add ebx, dword [esp + 0x1c]
mov eax, dword [esp + 0x30]
ror eax, 0x13
mov edx, dword [esp + 0x30]
ror edx, 0x11
xor eax, edx
mov edx, dword [esp + 0x30]
shr edx, 0xa
xor eax, edx
add ebx, eax
mov dword [esp + ecx*4 + 0xac], ebx
mov esi, dword [esp + 8]
add esi, ebx
add esi, dword [ecx*4 + 0x70a6661c]
mov eax, dword [esp + 0x10]
xor eax, dword [esp + 0x14]
and eax, dword [esp + 0xc]
xor eax, dword [esp + 0x14]
add esi, eax
mov eax, dword [esp + 0xc]
rol eax, 0x15
mov edx, dword [esp + 0xc]
rol edx, 0x1a
xor eax, edx
mov edx, dword [esp + 0xc]
rol edx, 7
xor eax, edx
add esi, eax
add ebp, esi
mov dword [esp + 0x18], ebp
mov edx, dword [esp]
or edx, dword [esp + 4]
and edx, edi
mov eax, dword [esp]
and eax, dword [esp + 4]
or edx, eax
mov eax, dword [esp]
rol eax, 0x13
mov ebp, dword [esp]
rol ebp, 0x1e
xor eax, ebp
mov ebp, dword [esp]
rol ebp, 0xa
xor eax, ebp
add eax, edx
add eax, esi
mov dword [esp + 8], eax
add ecx, 8
mov esi, dword [esp + 0x64]
mov dword [esp + 0x4c], esi
mov eax, dword [esp + 0x68]
mov dword [esp + 0x48], eax
mov edx, dword [esp + 0x58]
mov dword [esp + 0x44], edx
mov esi, dword [esp + 0x34]
mov dword [esp + 0x40], esi
mov eax, dword [esp + 0x5c]
mov dword [esp + 0x3c], eax
mov edx, dword [esp + 0x50]
mov dword [esp + 0x38], edx
mov edx, dword [esp + 0x6c]
mov eax, dword [esp + 0x54]
mov esi, dword [esp + 0x1c]
mov dword [esp + 0x54], esi
cmp ecx, 0x40
jne 0x70a55458
mov dword [esp + 0x1c], edi
mov edx, dword [esp + 8]
add edx, dword [esp + 0x70]
mov eax, dword [esp + 0x1a4]
mov dword [eax], edx
mov esi, dword [esp]
add esi, dword [esp + 0x78]
mov dword [eax + 4], esi
mov edi, dword [esp + 4]
add edi, dword [esp + 0x84]
mov dword [eax + 8], edi
mov ebp, dword [esp + 0x1c]
add ebp, dword [esp + 0x88]
mov dword [eax + 0xc], ebp
mov eax, dword [esp + 0x18]
add eax, dword [esp + 0x74]
mov edx, dword [esp + 0x1a4]
mov dword [edx + 0x10], eax
mov edx, dword [esp + 0xc]
add edx, dword [esp + 0x7c]
mov ecx, dword [esp + 0x1a4]
mov dword [ecx + 0x14], edx
mov edx, dword [esp + 0x10]
add edx, dword [esp + 0x80]
mov dword [ecx + 0x18], edx
mov ebx, dword [esp + 0x14]
add ebx, dword [esp + 0x8c]
mov dword [ecx + 0x1c], ebx
add esp, 0x190
pop ebx
pop esi
pop edi
pop ebp
ret