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

Disassembly:
sub esp, 0x74
mov ecx, dword [esp + 0x78]
mov eax, dword [ecx]
mov edx, dword [ecx + 4]
mov dword [esp + 0x14], eax
mov eax, dword [ecx + 8]
mov dword [esp + 0x18], edx
mov edx, dword [ecx + 0xc]
mov dword [esp + 0x1c], eax
mov eax, dword [ecx + 0x10]
mov dword [esp + 0x20], edx
mov edx, dword [ecx + 0x14]
mov dword [esp + 0x24], eax
mov eax, dword [ecx + 0x18]
mov dword [esp + 0x28], edx
mov edx, dword [ecx + 0x1c]
mov dword [esp + 0x2c], eax
xor eax, eax
mov dword [esp + 0x30], edx
add ecx, 0x2c
mov edx, dword [ecx - 4]
bswap edx
mov dword [esp + eax*4 + 0x34], edx
mov edx, dword [ecx]
bswap edx
mov dword [esp + eax*4 + 0x38], edx
add eax, 2
add ecx, 8
cmp eax, 0x10
jb 0x4229f3
push ebx
push ebp
push esi
xor edx, edx
push edi
mov dword [esp + 0x14], edx
lea esp, [esp]
mov edi, 1
lea ecx, [esp + 0x44]
lea esi, [edx*4 + 0x4287e8]
mov dword [esp + 0x18], edi
lea eax, [edi - 5]
mov dword [esp + 0x1c], ecx
mov dword [esp + 0x10], esi
mov dword [esp + 0x20], 0x10
test edx, edx
je 0x422a8e
mov esi, edi
and esi, 0xf
mov esi, dword [esp + esi*4 + 0x44]
mov ebx, esi
mov ebp, esi
lea edx, [edi - 3]
and edx, 0xf
mov edx, dword [esp + edx*4 + 0x44]
ror ebx, 0x12
ror ebp, 7
xor ebx, ebp
shr esi, 3
xor ebx, esi
mov esi, edx
ror esi, 0x13
mov ebp, edx
ror ebp, 0x11
xor esi, ebp
shr edx, 0xa
xor esi, edx
add edi, 0xfffffff8
add ebx, esi
and edi, 0xf
add ebx, dword [esp + edi*4 + 0x44]
add dword [ecx], ebx
mov edi, dword [ecx]
mov ecx, eax
and ecx, 7
mov edx, dword [esp + ecx*4 + 0x24]
mov ebx, edx
lea ecx, [eax + 2]
and ecx, 7
mov esi, dword [esp + ecx*4 + 0x24]
mov ebp, edx
lea ecx, [eax + 3]
and ecx, 7
ror ebx, 0x19
ror ebp, 0xb
xor ebx, ebp
mov ebp, edx
ror ebp, 6
xor ebx, ebp
add ebx, edi
lea ebp, [eax + 1]
and ebp, 7
mov ebp, dword [esp + ebp*4 + 0x24]
xor ebp, esi
and ebp, edx
mov edx, dword [esp + 0x10]
xor ebp, esi
add ebp, ebx
add ebp, dword [edx]
lea ecx, [esp + ecx*4 + 0x24]
add dword [ecx], ebp
mov esi, dword [ecx]
lea edx, [eax - 1]
and edx, 7
add dword [esp + edx*4 + 0x24], esi
lea edx, [esp + edx*4 + 0x24]
lea edx, [eax - 4]
and edx, 7
mov edx, dword [esp + edx*4 + 0x24]
add dword [esp + 0x10], 4
lea esi, [eax - 3]
and esi, 7
mov esi, dword [esp + esi*4 + 0x24]
mov edi, edx
ror edi, 0x16
mov ebx, edx
ror ebx, 0xd
xor edi, ebx
mov ebx, edx
ror ebx, 2
xor edi, ebx
lea ebx, [eax - 2]
and ebx, 7
mov ebx, dword [esp + ebx*4 + 0x24]
mov ebp, esi
or ebp, edx
and esi, edx
mov edx, dword [esp + 0x14]
and ebx, ebp
or ebx, esi
add edi, ebx
add dword [ecx], edi
mov edi, dword [esp + 0x18]
mov ecx, dword [esp + 0x1c]
inc edi
add ecx, 4
dec eax
dec dword [esp + 0x20]
mov dword [esp + 0x18], edi
mov dword [esp + 0x1c], ecx
jne 0x422a47
add edx, 0x10
mov dword [esp + 0x14], edx
cmp edx, 0x40
jb 0x422a20
mov eax, dword [esp + 0x88]
mov ecx, dword [esp + 0x24]
add dword [eax], ecx
mov edx, dword [esp + 0x28]
add dword [eax + 4], edx
mov ecx, dword [esp + 0x2c]
add dword [eax + 8], ecx
mov edx, dword [esp + 0x30]
add dword [eax + 0xc], edx
mov ecx, dword [esp + 0x34]
mov edx, dword [esp + 0x38]
add dword [eax + 0x10], ecx
add dword [eax + 0x14], edx
mov ecx, dword [esp + 0x3c]
mov edx, dword [esp + 0x40]
add dword [eax + 0x18], ecx
add dword [eax + 0x1c], edx
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x74
ret 4