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

Disassembly:
push ebp
mov ebp, esp
mov edx, dword [ebp + 0xc]
push esi
push edi
mov edi, dword [ebp + 8]
movzx eax, byte [edx]
and al, 7
mov byte [edi], al
mov eax, dword [edx]
shr eax, 3
and al, 7
mov byte [edi + 1], al
mov ecx, dword [edx]
shr ecx, 6
and cl, 7
mov byte [edi + 2], cl
movzx eax, byte [edx + 4]
and al, 1
shl al, 2
xor al, cl
mov byte [edi + 2], al
mov eax, dword [edx + 4]
shr eax, 1
and al, 7
mov byte [edi + 3], al
mov eax, dword [edx + 4]
shr eax, 4
and al, 7
mov byte [edi + 4], al
mov ecx, dword [edx + 4]
shr ecx, 7
and cl, 7
mov byte [edi + 5], cl
movzx eax, byte [edx + 8]
and al, 3
add al, al
xor al, cl
mov byte [edi + 5], al
mov eax, dword [edx + 8]
shr eax, 2
and al, 7
mov byte [edi + 6], al
mov eax, dword [edx + 8]
shr eax, 5
and al, 7
mov byte [edi + 7], al
movzx eax, byte [edx + 0xc]
and al, 7
mov byte [edi + 8], al
mov eax, dword [edx + 0xc]
shr eax, 3
and al, 7
mov byte [edi + 9], al
mov ecx, dword [edx + 0xc]
shr ecx, 6
and cl, 7
mov byte [edi + 0xa], cl
movzx eax, byte [edx + 0x10]
and al, 1
shl al, 2
xor al, cl
mov byte [edi + 0xa], al
mov eax, dword [edx + 0x10]
shr eax, 1
and al, 7
mov byte [edi + 0xb], al
mov eax, dword [edx + 0x10]
shr eax, 4
and al, 7
mov byte [edi + 0xc], al
mov ecx, dword [edx + 0x10]
shr ecx, 7
and cl, 7
mov byte [edi + 0xd], cl
movzx eax, byte [edx + 0x14]
and al, 3
add al, al
xor al, cl
mov byte [edi + 0xd], al
mov eax, dword [edx + 0x14]
shr eax, 2
and al, 7
mov byte [edi + 0xe], al
mov eax, dword [edx + 0x14]
shr eax, 5
and al, 7
mov byte [edi + 0xf], al
movzx eax, byte [edx + 0x18]
and al, 7
mov byte [edi + 0x10], al
mov eax, dword [edx + 0x18]
shr eax, 3
and al, 7
mov byte [edi + 0x11], al
mov ecx, dword [edx + 0x18]
shr ecx, 6
and cl, 7
mov byte [edi + 0x12], cl
movzx eax, byte [edx + 0x1c]
and al, 1
shl al, 2
xor al, cl
mov byte [edi + 0x12], al
mov eax, dword [edx + 0x1c]
shr eax, 1
and al, 7
mov byte [edi + 0x13], al
mov eax, dword [edx + 0x1c]
shr eax, 4
and al, 7
mov byte [edi + 0x14], al
mov ecx, dword [edx + 0x1c]
shr ecx, 7
and cl, 7
mov byte [edi + 0x15], cl
movzx eax, byte [edx + 0x20]
and al, 3
add al, al
xor al, cl
mov byte [edi + 0x15], al
mov eax, dword [edx + 0x20]
shr eax, 2
and al, 7
mov byte [edi + 0x16], al
mov eax, dword [edx + 0x20]
shr eax, 5
and al, 7
mov byte [edi + 0x17], al
movzx eax, byte [edx + 0x24]
and al, 7
mov byte [edi + 0x18], al
mov eax, dword [edx + 0x24]
shr eax, 3
and al, 7
mov byte [edi + 0x19], al
mov ecx, dword [edx + 0x24]
shr ecx, 6
and cl, 7
mov byte [edi + 0x1a], cl
movzx eax, byte [edx + 0x28]
and al, 1
shl al, 2
xor al, cl
mov byte [edi + 0x1a], al
mov eax, dword [edx + 0x28]
shr eax, 1
and al, 7
mov byte [edi + 0x1b], al
mov eax, dword [edx + 0x28]
shr eax, 4
and al, 7
mov byte [edi + 0x1c], al
mov ecx, dword [edx + 0x28]
shr ecx, 7
and cl, 7
mov byte [edi + 0x1d], cl
movzx eax, byte [edx + 0x2c]
and al, 3
add al, al
xor al, cl
mov byte [edi + 0x1d], al
mov eax, dword [edx + 0x2c]
shr eax, 2
and al, 7
mov byte [edi + 0x1e], al
mov eax, dword [edx + 0x2c]
shr eax, 5
and al, 7
mov byte [edi + 0x1f], al
movzx eax, byte [edx + 0x30]
and al, 7
mov byte [edi + 0x20], al
mov eax, dword [edx + 0x30]
shr eax, 3
and al, 7
mov byte [edi + 0x21], al
mov ecx, dword [edx + 0x30]
shr ecx, 6
and cl, 7
mov byte [edi + 0x22], cl
movzx eax, byte [edx + 0x34]
and al, 1
shl al, 2
xor al, cl
mov byte [edi + 0x22], al
mov eax, dword [edx + 0x34]
shr eax, 1
and al, 7
mov byte [edi + 0x23], al
mov eax, dword [edx + 0x34]
shr eax, 4
and al, 7
mov byte [edi + 0x24], al
mov ecx, dword [edx + 0x34]
shr ecx, 7
and cl, 7
mov byte [edi + 0x25], cl
movzx eax, byte [edx + 0x38]
and al, 3
add al, al
xor al, cl
mov byte [edi + 0x25], al
mov eax, dword [edx + 0x38]
shr eax, 2
and al, 7
mov byte [edi + 0x26], al
mov eax, dword [edx + 0x38]
shr eax, 5
and al, 7
mov byte [edi + 0x27], al
movzx eax, byte [edx + 0x3c]
and al, 7
mov byte [edi + 0x28], al
mov eax, dword [edx + 0x3c]
shr eax, 3
and al, 7
mov byte [edi + 0x29], al
mov ecx, dword [edx + 0x3c]
shr ecx, 6
and cl, 7
mov byte [edi + 0x2a], cl
movzx eax, byte [edx + 0x40]
and al, 1
shl al, 2
xor al, cl
mov byte [edi + 0x2a], al
mov eax, dword [edx + 0x40]
shr eax, 1
and al, 7
mov byte [edi + 0x2b], al
mov eax, dword [edx + 0x40]
shr eax, 4
and al, 7
mov byte [edi + 0x2c], al
mov ecx, dword [edx + 0x40]
shr ecx, 7
and cl, 7
mov byte [edi + 0x2d], cl
movzx eax, byte [edx + 0x44]
and al, 3
add al, al
xor al, cl
mov byte [edi + 0x2d], al
mov eax, dword [edx + 0x44]
shr eax, 2
and al, 7
mov byte [edi + 0x2e], al
mov eax, dword [edx + 0x44]
shr eax, 5
and al, 7
mov byte [edi + 0x2f], al
movzx eax, byte [edx + 0x48]
and al, 7
mov byte [edi + 0x30], al
mov eax, dword [edx + 0x48]
shr eax, 3
and al, 7
mov byte [edi + 0x31], al
mov ecx, dword [edx + 0x48]
shr ecx, 6
and cl, 7
mov byte [edi + 0x32], cl
movzx eax, byte [edx + 0x4c]
and al, 1
shl al, 2
xor al, cl
mov byte [edi + 0x32], al
mov eax, dword [edx + 0x4c]
shr eax, 1
and al, 7
mov byte [edi + 0x33], al
mov eax, dword [edx + 0x4c]
shr eax, 4
and al, 7
mov byte [edi + 0x34], al
mov ecx, dword [edx + 0x4c]
shr ecx, 7
and cl, 7
mov byte [edi + 0x35], cl
movzx eax, byte [edx + 0x50]
and al, 3
add al, al
xor al, cl
mov byte [edi + 0x35], al
mov eax, dword [edx + 0x50]
shr eax, 2
and al, 7
mov byte [edi + 0x36], al
mov eax, dword [edx + 0x50]
shr eax, 5
and al, 7
mov byte [edi + 0x37], al
movzx eax, byte [edx + 0x54]
and al, 7
mov byte [edi + 0x38], al
mov eax, dword [edx + 0x54]
shr eax, 3
and al, 7
mov byte [edi + 0x39], al
mov ecx, dword [edx + 0x54]
shr ecx, 6
and cl, 7
mov byte [edi + 0x3a], cl
movzx eax, byte [edx + 0x58]
and al, 1
shl al, 2
xor al, cl
mov byte [edi + 0x3a], al
mov eax, dword [edx + 0x58]
shr eax, 1
and al, 7
mov byte [edi + 0x3b], al
mov eax, dword [edx + 0x58]
shr eax, 4
and al, 7
mov byte [edi + 0x3c], al
mov ecx, dword [edx + 0x58]
shr ecx, 7
and cl, 7
mov byte [edi + 0x3d], cl
movzx eax, byte [edx + 0x5c]
and al, 3
add al, al
xor al, cl
mov byte [edi + 0x3d], al
mov eax, dword [edx + 0x5c]
shr eax, 2
and al, 7
mov byte [edi + 0x3e], al
mov eax, dword [edx + 0x5c]
shr eax, 5
and al, 7
mov byte [edi + 0x3f], al
movzx eax, byte [edx + 0x60]
and al, 7
mov byte [edi + 0x40], al
mov eax, dword [edx + 0x60]
shr eax, 3
and al, 7
mov byte [edi + 0x41], al
mov ecx, dword [edx + 0x60]
shr ecx, 6
and cl, 7
mov byte [edi + 0x42], cl
movzx eax, byte [edx + 0x64]
and al, 1
shl al, 2
xor al, cl
mov byte [edi + 0x42], al
mov eax, dword [edx + 0x64]
shr eax, 1
and al, 7
mov byte [edi + 0x43], al
mov eax, dword [edx + 0x64]
shr eax, 4
and al, 7
mov byte [edi + 0x44], al
mov ecx, dword [edx + 0x64]
shr ecx, 7
and cl, 7
mov byte [edi + 0x45], cl
movzx eax, byte [edx + 0x68]
and al, 3
add al, al
xor al, cl
mov byte [edi + 0x45], al
mov eax, dword [edx + 0x68]
shr eax, 2
and al, 7
mov byte [edi + 0x46], al
mov eax, dword [edx + 0x68]
shr eax, 5
and al, 7
mov byte [edi + 0x47], al
movzx eax, byte [edx + 0x6c]
and al, 7
mov byte [edi + 0x48], al
mov eax, dword [edx + 0x6c]
shr eax, 3
and al, 7
mov byte [edi + 0x49], al
mov ecx, dword [edx + 0x6c]
shr ecx, 6
and cl, 7
mov byte [edi + 0x4a], cl
movzx eax, byte [edx + 0x70]
and al, 1
shl al, 2
xor al, cl
mov byte [edi + 0x4a], al
mov eax, dword [edx + 0x70]
shr eax, 1
and al, 7
mov byte [edi + 0x4b], al
mov eax, dword [edx + 0x70]
shr eax, 4
and al, 7
mov byte [edi + 0x4c], al
mov ecx, dword [edx + 0x70]
shr ecx, 7
and cl, 7
mov byte [edi + 0x4d], cl
movzx eax, byte [edx + 0x74]
and al, 3
add al, al
xor al, cl
mov byte [edi + 0x4d], al
mov eax, dword [edx + 0x74]
shr eax, 2
and al, 7
mov byte [edi + 0x4e], al
mov eax, dword [edx + 0x74]
shr eax, 5
and al, 7
mov byte [edi + 0x4f], al
movzx eax, byte [edx + 0x78]
and al, 7
mov byte [edi + 0x50], al
mov eax, dword [edx + 0x78]
shr eax, 3
and al, 7
mov byte [edi + 0x51], al
mov ecx, dword [edx + 0x78]
shr ecx, 6
and cl, 7
mov byte [edi + 0x52], cl
movzx eax, byte [edx + 0x7c]
and al, 1
shl al, 2
xor al, cl
mov byte [edi + 0x52], al
mov eax, dword [edx + 0x7c]
shr eax, 1
and al, 7
mov byte [edi + 0x53], al
mov eax, dword [edx + 0x7c]
shr eax, 4
and al, 7
mov byte [edi + 0x54], al
xor al, al
xor esi, esi
mov cl, byte [esi + edi]
add cl, al
mov al, cl
and cl, 7
sar al, 3
mov dl, cl
add byte [edi + esi + 1], al
mov al, dl
shr al, 2
mov cl, al
shl cl, 3
sub dl, cl
mov byte [esi + edi], dl
inc esi
cmp esi, 0x54
jl 0x56c6a2
add byte [edi + 0x54], al
pop edi
pop esi
pop ebp
ret