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

Disassembly:
push ebp
push edi
push esi
push ebx
xor esi, esi
sub esp, 0x84
mov ebp, dword [esp + 0x98]
mov dword [esp + 4], 0
mov dword [esp + 0x34], 0
mov dword [esp + 0x3c], 0
movzx eax, byte [ebp + 1]
movzx ecx, byte [ebp]
mov ebx, dword [ebp + 2]
shl eax, 8
mov edx, eax
movzx eax, byte [ebp + 2]
shl eax, 0x10
or eax, edx
xor edx, edx
or eax, ecx
movzx ecx, byte [ebp + 6]
and eax, 0x1fffff
mov dword [esp], eax
mov eax, ebx
xor ebx, ebx
shrd eax, esi, 5
mov edi, ebx
mov esi, ecx
mov ebx, dword [ebp + 7]
and eax, 0x1fffff
shl esi, 8
mov dword [esp + 0x30], eax
movzx eax, byte [ebp + 7]
shld edi, ecx, 8
shld edx, eax, 0x10
shl eax, 0x10
mov ecx, eax
movzx eax, byte [ebp + 5]
mov dword [esp + 0x14], edx
or ecx, esi
xor edx, edx
or ecx, eax
mov eax, dword [esp + 0x14]
mov dword [esp + 0x14], 0
mov dword [esp + 8], ecx
mov esi, dword [esp + 8]
or eax, edi
mov dword [esp + 0xc], eax
mov edi, dword [esp + 0xc]
mov dword [esp + 0xc], 0
shrd esi, edi, 2
xor edi, edi
mov eax, esi
xor esi, esi
and eax, 0x1fffff
mov dword [esp + 8], eax
mov eax, ebx
mov ebx, dword [ebp + 0xa]
shrd eax, esi, 7
xor esi, esi
and eax, 0x1fffff
mov dword [esp + 0x38], eax
mov eax, ebx
shrd eax, esi, 4
movzx esi, byte [ebp + 0xe]
and eax, 0x1fffff
mov dword [esp + 0x10], eax
movzx eax, byte [ebp + 0xf]
mov dword [esp + 0x44], 0
mov dword [esp + 0x4c], 0
shld edi, esi, 8
shl esi, 8
shld edx, eax, 0x10
shl eax, 0x10
mov ecx, esi
mov esi, eax
movzx eax, byte [ebp + 0xd]
mov dword [esp + 0x24], edx
or esi, ecx
movzx edx, byte [ebp + 0x16]
or esi, eax
mov eax, dword [esp + 0x24]
mov dword [esp + 0x24], 0
mov dword [esp + 0x18], esi
mov ecx, dword [esp + 0x18]
xor esi, esi
shl edx, 8
or eax, edi
xor edi, edi
mov dword [esp + 0x1c], eax
mov ebx, dword [esp + 0x1c]
mov dword [esp + 0x1c], 0
shrd ecx, ebx, 1
mov ebx, dword [ebp + 0xf]
mov eax, ecx
movzx ecx, byte [ebp + 0x15]
and eax, 0x1fffff
mov dword [esp + 0x40], eax
mov eax, ebx
mov ebx, dword [ebp + 0x17]
shrd eax, esi, 6
xor esi, esi
and eax, 0x1fffff
mov dword [esp + 0x18], eax
movzx eax, byte [ebp + 0x17]
shl eax, 0x10
or eax, edx
xor edx, edx
or ecx, eax
mov eax, ebx
shrd eax, esi, 5
movzx esi, byte [ebp + 0x1b]
and ecx, 0x1fffff
and eax, 0x1fffff
mov dword [esp + 0x20], ecx
mov dword [esp + 0x48], eax
movzx eax, byte [ebp + 0x1c]
shld edi, esi, 8
shl esi, 8
shld edx, eax, 0x10
shl eax, 0x10
mov ecx, esi
mov esi, eax
movzx eax, byte [ebp + 0x1a]
mov dword [esp + 0x54], edx
or esi, ecx
xor edx, edx
or esi, eax
mov eax, dword [esp + 0x54]
mov dword [esp + 0x28], esi
mov ecx, dword [esp + 0x28]
or eax, edi
mov dword [esp + 0x2c], eax
mov ebx, dword [esp + 0x2c]
mov dword [esp + 0x2c], 0
shrd ecx, ebx, 2
mov eax, ecx
and eax, 0x1fffff
mov dword [esp + 0x28], eax
mov eax, dword [ebp + 0x1c]
mov ecx, dword [esp]
mov ebx, dword [esp + 4]
shrd eax, edx, 7
shr edx, 7
add ecx, 0x100000
adc ebx, 0
mov esi, ecx
mov dword [esp + 0x54], edx
mov edi, ebx
mov edx, ebx
mov dword [esp + 0x50], eax
shrd esi, ebx, 0x15
sar edi, 0x15
add esi, dword [esp + 0x30]
mov ebx, dword [esp + 4]
adc edi, dword [esp + 0x34]
mov dword [esp + 0x30], esi
mov esi, dword [esp + 0xc]
mov dword [esp + 0x34], edi
mov edi, ecx
mov ecx, dword [esp]
and edi, 0xffe00000
sub ecx, edi
sbb ebx, edx
mov dword [esp + 0x58], ecx
mov dword [esp + 0x5c], ebx
mov ebx, dword [esp + 8]
add ebx, 0x100000
adc esi, 0
mov ecx, ebx
mov ebx, esi
mov esi, ecx
mov edi, ebx
mov edx, ebx
shrd esi, ebx, 0x15
sar edi, 0x15
add esi, dword [esp + 0x38]
mov ebx, dword [esp + 8]
adc edi, dword [esp + 0x3c]
mov dword [esp + 0x38], esi
mov esi, dword [esp + 0xc]
mov dword [esp + 0x3c], edi
mov edi, ecx
mov ecx, dword [esp + 0x10]
and edi, 0xffe00000
sub ebx, edi
mov dword [esp + 0x60], ebx
mov ebx, dword [esp + 0x14]
sbb esi, edx
add ecx, 0x100000
mov dword [esp + 0x64], esi
mov esi, ecx
adc ebx, 0
shrd esi, ebx, 0x15
mov edi, ebx
sar edi, 0x15
mov eax, esi
add eax, dword [esp + 0x40]
mov edx, edi
adc edx, dword [esp + 0x44]
mov edi, ecx
and edi, 0xffe00000
mov dword [esp + 8], eax
mov dword [esp + 0xc], edx
mov edx, ebx
mov ebx, dword [esp + 0x10]
mov esi, dword [esp + 0x14]
movzx eax, byte [ebp + 0x14]
sub ebx, edi
mov edi, dword [esp + 0x1c]
sbb esi, edx
mov dword [esp + 0x40], ebx
mov dword [esp + 0x44], esi
mov esi, dword [esp + 0x18]
add esi, 0x100000
mov dword [esp + 0x10], esi
movzx esi, byte [ebp + 0x13]
adc edi, 0
mov dword [esp + 0x14], edi
xor edx, edx
xor edi, edi
shld edx, eax, 0x10
shl eax, 0x10
shld edi, esi, 8
shl esi, 8
mov dword [esp + 0x6c], edx
mov ecx, esi
mov esi, eax
movzx eax, byte [ebp + 0x12]
or esi, ecx
mov ebx, edi
mov edi, esi
mov esi, dword [esp + 0x10]
or edi, eax
mov dword [esp], edi
mov edi, dword [esp + 0x6c]
mov eax, esi
mov ecx, dword [esp]
or edi, ebx
mov dword [esp + 4], edi
mov edi, dword [esp + 0x14]
mov ebx, dword [esp + 4]
mov edx, edi
shrd eax, edx, 0x15
shrd ecx, ebx, 3
sar edx, 0x15
shr ebx, 3
add ecx, eax
adc ebx, edx
mov dword [esp], ecx
mov ecx, dword [esp + 0x20]
mov dword [esp + 4], ebx
mov ebx, esi
mov esi, edi
mov edi, ebx
mov edx, esi
mov esi, dword [esp + 0x18]
and edi, 0xffe00000
mov ebx, dword [esp + 0x24]
mov eax, edi
mov edi, dword [esp + 0x1c]
sub esi, eax
mov dword [esp + 0x68], esi
sbb edi, edx
add ecx, 0x100000
adc ebx, 0
mov eax, ecx
mov dword [esp + 0x6c], edi
mov edx, ebx
mov edi, ecx
shrd eax, ebx, 0x15
sar edx, 0x15
add eax, dword [esp + 0x48]
adc edx, dword [esp + 0x4c]
and edi, 0xffe00000
mov dword [esp + 0x10], eax
mov dword [esp + 0x14], edx
mov edx, ebx
mov ebx, dword [esp + 0x20]
mov esi, dword [esp + 0x24]
mov ecx, dword [esp + 0x2c]
sub ebx, edi
sbb esi, edx
mov edx, dword [esp + 0x28]
mov dword [esp + 0x48], ebx
mov dword [esp + 0x4c], esi
mov esi, dword [esp + 0x2c]
add edx, 0x100000
adc ecx, 0
mov eax, edx
mov ebx, ecx
mov ecx, edx
mov edx, ebx
mov edi, ecx
shrd eax, ebx, 0x15
sar edx, 0x15
add eax, dword [esp + 0x50]
adc edx, dword [esp + 0x54]
and edi, 0xffe00000
mov dword [esp + 0x18], eax
mov eax, dword [esp + 0x30]
mov dword [esp + 0x1c], edx
mov edx, ebx
mov ebx, dword [esp + 0x28]
sub ebx, edi
sbb esi, edx
mov edx, dword [esp + 0x34]
add eax, 0x100000
mov ecx, eax
mov dword [esp + 0x28], ebx
mov dword [esp + 0x2c], esi
mov dword [esp + 0x20], eax
mov eax, dword [esp + 0x38]
adc edx, 0
shrd ecx, edx, 0x15
mov ebx, edx
mov dword [esp + 0x24], edx
sar ebx, 0x15
mov esi, ecx
add esi, dword [esp + 0x60]
mov edi, ebx
adc edi, dword [esp + 0x64]
mov ebx, dword [esp + 0x20]
mov dword [esp + 0x50], esi
mov esi, dword [esp + 0x24]
mov dword [esp + 0x54], edi
mov edi, ebx
mov ebx, dword [esp + 0x30]
and edi, 0xffe00000
mov edx, esi
mov esi, dword [esp + 0x34]
sub ebx, edi
mov dword [esp + 0x30], ebx
sbb esi, edx
mov edx, dword [esp + 0x3c]
add eax, 0x100000
mov ecx, eax
mov dword [esp + 0x34], esi
mov dword [esp + 0x20], eax
adc edx, 0
shrd ecx, edx, 0x15
mov ebx, edx
mov dword [esp + 0x24], edx
sar ebx, 0x15
mov esi, ebx
mov ebx, ecx
add ebx, dword [esp + 0x40]
adc esi, dword [esp + 0x44]
mov ecx, dword [esp + 0x38]
mov dword [esp + 0x40], ebx
mov ebx, dword [esp + 0x20]
mov dword [esp + 0x44], esi
mov esi, dword [esp + 0x24]
mov edi, ebx
mov ebx, dword [esp + 0x3c]
and edi, 0xffe00000
sub ecx, edi
sbb ebx, esi
mov dword [esp + 0x20], ecx
mov ecx, dword [esp + 8]
mov dword [esp + 0x24], ebx
mov ebx, dword [esp + 0xc]
mov esi, dword [esp + 8]
add ecx, 0x100000
adc ebx, 0
mov eax, ecx
mov edi, ecx
mov edx, ebx
shrd eax, ebx, 0x15
sar edx, 0x15
add eax, dword [esp + 0x68]
adc edx, dword [esp + 0x6c]
and edi, 0xffe00000
mov dword [esp + 0x38], eax
mov eax, edi
mov edi, dword [esp + 0xc]
sub esi, eax
mov eax, dword [esp]
mov dword [esp + 0x3c], edx
mov edx, dword [esp + 4]
mov dword [esp + 8], esi
sbb edi, ebx
add eax, 0x100000
mov dword [esp + 0xc], edi
adc edx, 0
mov esi, eax
mov ecx, eax
shrd esi, edx, 0x15
mov edi, edx
mov ebx, edx
sar edi, 0x15
mov eax, esi
add eax, dword [esp + 0x48]
mov edx, edi
adc edx, dword [esp + 0x4c]
mov edi, ecx
mov esi, dword [esp + 4]
and edi, 0xffe00000
mov dword [esp + 0x48], eax
mov dword [esp + 0x4c], edx
mov edx, ebx
mov ebx, dword [esp]
sub ebx, edi
mov dword [esp + 0x60], ebx
mov eax, dword [esp + 0x10]
sbb esi, edx
mov edx, dword [esp + 0x14]
mov dword [esp + 0x64], esi
add eax, 0x100000
adc edx, 0
mov ecx, eax
mov dword [esp], eax
shrd ecx, edx, 0x15
mov ebx, edx
mov dword [esp + 4], edx
mov eax, dword [esp + 0x18]
sar ebx, 0x15
mov edx, dword [esp + 0x1c]
mov esi, ebx
mov ebx, ecx
add ebx, dword [esp + 0x28]
adc esi, dword [esp + 0x2c]
mov ecx, dword [esp + 0x10]
mov dword [esp + 0x68], ebx
mov ebx, dword [esp]
mov dword [esp + 0x6c], esi
mov esi, dword [esp + 4]
mov edi, ebx
mov ebx, dword [esp + 0x14]
and edi, 0xffe00000
sub ecx, edi
sbb ebx, esi
add eax, 0x100000
mov dword [esp + 0x70], ecx
adc edx, 0
mov ecx, dword [esp + 0x18]
mov esi, eax
mov edi, edx
mov dword [esp + 0x74], ebx
mov ebx, dword [esp + 0x1c]
sar edi, 0x15
shrd esi, edx, 0x15
mov dword [esp + 4], edi
mov edi, eax
mov eax, 0xa2c13
and edi, 0xffe00000
mov dword [esp], esi
mov esi, dword [esp]
sub ecx, edi
mov edi, dword [esp + 4]
sbb ebx, edx
mov dword [esp + 0x78], ecx
mul esi
mov dword [esp + 0x7c], ebx
imul ecx, edi, 0xa2c13
add edx, ecx
mov ecx, eax
add ecx, dword [esp + 0x58]
mov ebx, edx
mov eax, 0x72d18
adc ebx, dword [esp + 0x5c]
mul dword [esp]
mov dword [esp + 0x10], ecx
mov dword [esp + 0x14], ebx
imul ecx, edi, 0x72d18
mov ebx, eax
mov eax, 0x9fb67
add edx, ecx
add ebx, dword [esp + 0x30]
mov edi, dword [esp + 4]
mov esi, edx
adc esi, dword [esp + 0x34]
mul dword [esp]
mov dword [esp + 0x18], ebx
mov dword [esp + 0x1c], esi
imul ebx, edi, 0x9fb67
mov edi, dword [esp + 4]
add edx, ebx
mov ebx, eax
add ebx, dword [esp + 0x50]
mov esi, edx
adc esi, dword [esp + 0x54]
mov eax, 0xfff0c653
mul dword [esp]
imul ecx, edi, 0xfff0c653
mov dword [esp + 0x28], ebx
mov dword [esp + 0x2c], esi
mov esi, dword [esp]
mov edi, esi
mov esi, eax
mov eax, 0x215d1
neg edi
add ecx, edi
mov ebx, edi
add edx, ecx
add esi, dword [esp + 0x20]
mov edi, edx
adc edi, dword [esp + 0x24]
mul dword [esp]
mov dword [esp + 0x20], esi
mov dword [esp + 0x24], edi
mov edi, dword [esp + 4]
imul ecx, edi, 0x215d1
mov esi, eax
add edx, ecx
add esi, dword [esp + 0x40]
mov edi, edx
adc edi, dword [esp + 0x44]
mov dword [esp + 0x30], esi
mov esi, dword [esp]
mov dword [esp + 0x34], edi
mov edi, dword [esp + 4]
imul eax, edi, 0xfff59083
add ebx, eax
mov eax, 0xfff59083
mul esi
add edx, ebx
add eax, dword [esp + 8]
adc edx, dword [esp + 0xc]
mov ecx, dword [esp + 0x10]
mov ebx, dword [esp + 0x14]
mov dword [esp + 4], 0
mov dword [esp + 0xc], 0
mov dword [esp + 0x14], 0
mov esi, ecx
mov edi, ebx
shrd esi, ebx, 0x15
sar edi, 0x15
add esi, dword [esp + 0x18]
mov ebx, ecx
adc edi, dword [esp + 0x1c]
and ebx, 0x1fffff
mov dword [esp + 0x1c], 0
mov dword [esp], ebx
mov ecx, esi
mov ebx, edi
shrd ecx, edi, 0x15
sar ebx, 0x15
add ecx, dword [esp + 0x28]
mov edi, esi
adc ebx, dword [esp + 0x2c]
and edi, 0x1fffff
mov dword [esp + 0x2c], 0
mov dword [esp + 8], edi
mov esi, ecx
mov edi, ebx
shrd esi, ebx, 0x15
sar edi, 0x15
add esi, dword [esp + 0x20]
mov ebx, ecx
adc edi, dword [esp + 0x24]
and ebx, 0x1fffff
mov dword [esp + 0x24], 0
mov dword [esp + 0x10], ebx
mov ecx, esi
mov ebx, edi
shrd ecx, edi, 0x15
sar ebx, 0x15
add ecx, dword [esp + 0x30]
mov edi, esi
adc ebx, dword [esp + 0x34]
and edi, 0x1fffff
mov dword [esp + 0x18], edi
mov esi, ecx
shrd esi, ebx, 0x15
mov edi, ebx
sar edi, 0x15
add esi, eax
adc edi, edx
mov edx, ecx
and edx, 0x1fffff
mov ecx, edi
mov dword [esp + 0x20], edx
mov edx, esi
sar ecx, 0x15
shrd edx, edi, 0x15
mov edi, esi
mov eax, edx
add eax, dword [esp + 0x38]
mov edx, ecx
adc edx, dword [esp + 0x3c]
and edi, 0x1fffff
mov dword [esp + 0x28], edi
mov ebx, eax
mov edi, eax
shrd ebx, edx, 0x15
mov esi, edx
sar esi, 0x15
mov ecx, ebx
add ecx, dword [esp + 0x60]
mov ebx, esi
adc ebx, dword [esp + 0x64]
and edi, 0x1fffff
mov dword [esp + 0x30], edi
mov dword [esp + 0x34], 0
mov dword [esp + 0x3c], 0
mov dword [esp + 0x44], 0
mov esi, ecx
mov edx, ecx
mov dword [esp + 0x54], 0
mov edi, ebx
mov dword [esp + 0x5c], 0
shrd esi, ebx, 0x15
sar edi, 0x15
add esi, dword [esp + 0x48]
adc edi, dword [esp + 0x4c]
and edx, 0x1fffff
mov dword [esp + 0x4c], 0
mov dword [esp + 0x38], edx
mov eax, esi
mov edx, edi
shrd eax, edi, 0x15
sar edx, 0x15
add eax, dword [esp + 0x70]
mov edi, esi
adc edx, dword [esp + 0x74]
and edi, 0x1fffff
mov dword [esp + 0x40], edi
mov ecx, eax
mov ebx, edx
shrd ecx, edx, 0x15
sar ebx, 0x15
add ecx, dword [esp + 0x68]
adc ebx, dword [esp + 0x6c]
and eax, 0x1fffff
mov dword [esp + 0x48], eax
mov eax, ecx
mov edi, ecx
mov edx, ebx
shrd eax, ebx, 0x15
sar edx, 0x15
add eax, dword [esp + 0x78]
adc edx, dword [esp + 0x7c]
and edi, 0x1fffff
mov dword [esp + 0x50], edi
mov ecx, eax
and eax, 0x1fffff
shrd ecx, edx, 0x15
mov ebx, edx
mov dword [esp + 0x58], eax
mov eax, 0xa2c13
sar ebx, 0x15
imul esi, ebx, 0xa2c13
mul ecx
add edx, esi
add eax, dword [esp]
adc edx, dword [esp + 4]
imul edi, ebx, 0x72d18
mov dword [esp], eax
mov eax, 0x72d18
mov dword [esp + 4], edx
mul ecx
add edx, edi
mov esi, eax
add esi, dword [esp + 8]
mov edi, edx
mov eax, 0x9fb67
adc edi, dword [esp + 0xc]
mul ecx
mov dword [esp + 8], esi
imul esi, ebx, 0x9fb67
mov dword [esp + 0xc], edi
add edx, esi
add eax, dword [esp + 0x10]
adc edx, dword [esp + 0x14]
imul edi, ebx, 0xfff0c653
mov dword [esp + 0x10], eax
mov eax, 0xfff0c653
mov dword [esp + 0x14], edx
mov edx, ecx
neg edx
add edi, edx
mov esi, edx
mul ecx
add edx, edi
add eax, dword [esp + 0x18]
adc edx, dword [esp + 0x1c]
imul edi, ebx, 0x215d1
mov dword [esp + 0x18], eax
mov eax, 0x215d1
mov dword [esp + 0x1c], edx
mul ecx
add edx, edi
add eax, dword [esp + 0x20]
adc edx, dword [esp + 0x24]
mov dword [esp + 0x20], eax
imul eax, ebx, 0xfff59083
mov dword [esp + 0x24], edx
add esi, eax
mov eax, 0xfff59083
mul ecx
mov ecx, eax
mov ebx, edx
mov eax, dword [esp]
mov edx, dword [esp + 4]
add ebx, esi
add ecx, dword [esp + 0x28]
adc ebx, dword [esp + 0x2c]
mov esi, eax
mov edi, edx
shrd esi, edx, 0x15
sar edi, 0x15
add esi, dword [esp + 8]
adc edi, dword [esp + 0xc]
mov dword [esp + 0xc], 0
mov dword [esp], esi
mov esi, dword [esp]
mov dword [esp + 4], edi
mov edi, eax
and edi, 0x1fffff
mov dword [esp + 8], edi
mov edi, dword [esp + 4]
shrd esi, edi, 0x15
sar edi, 0x15
mov eax, esi
add eax, dword [esp + 0x10]
mov edx, edi
adc edx, dword [esp + 0x14]
mov dword [esp + 0x28], eax
mov dword [esp + 0x14], 0
mov dword [esp + 0x2c], edx
shrd eax, edx, 0x15
sar edx, 0x15
add eax, dword [esp + 0x18]
adc edx, dword [esp + 0x1c]
mov dword [esp + 0x60], eax
shrd eax, edx, 0x15
mov dword [esp + 0x64], edx
sar edx, 0x15
mov esi, eax
add esi, dword [esp + 0x20]
mov edi, edx
adc edi, dword [esp + 0x24]
mov dword [esp + 0x20], esi
shrd esi, edi, 0x15
mov dword [esp + 0x24], edi
sar edi, 0x15
add esi, ecx
adc edi, ebx
mov ecx, esi
mov dword [esp + 0x68], esi
shrd ecx, edi, 0x15
mov ebx, edi
mov dword [esp + 0x6c], edi
mov eax, ecx
sar ebx, 0x15
mov edx, eax
add edx, dword [esp + 0x30]
mov ecx, ebx
adc ecx, dword [esp + 0x34]
mov dword [esp + 0x30], edx
mov dword [esp + 0x34], ecx
mov ebx, ecx
mov ecx, edx
shrd ecx, ebx, 0x15
sar ebx, 0x15
mov eax, ecx
mov ecx, ebx
mov edx, eax
add edx, dword [esp + 0x38]
adc ecx, dword [esp + 0x3c]
mov dword [esp + 0x38], edx
shrd edx, ecx, 0x15
mov dword [esp + 0x3c], ecx
sar ecx, 0x15
mov eax, edx
add eax, dword [esp + 0x40]
mov edx, ecx
adc edx, dword [esp + 0x44]
mov ecx, eax
mov edi, eax
mov ebx, edx
shrd ecx, edx, 0x15
sar ebx, 0x15
add ecx, dword [esp + 0x48]
adc ebx, dword [esp + 0x4c]
and edi, 0x1fffff
mov dword [esp + 0x10], edi
mov esi, ecx
mov dword [esp + 0x18], ecx
mov edi, ebx
mov dword [esp + 0x1c], ebx
shrd esi, ebx, 0x15
sar edi, 0x15
add esi, dword [esp + 0x50]
adc edi, dword [esp + 0x54]
mov ecx, esi
mov dword [esp + 0x40], esi
mov esi, dword [esp + 8]
shrd ecx, edi, 0x15
mov ebx, edi
mov dword [esp + 0x44], edi
mov edi, dword [esp + 0xc]
mov eax, ecx
sar ebx, 0x15
mov edx, eax
add edx, dword [esp + 0x58]
mov ecx, ebx
movzx ebx, byte [esp]
adc ecx, dword [esp + 0x5c]
mov eax, esi
mov byte [ebp], al
mov eax, esi
shrd esi, edi, 0x10
mov byte [ebp + 1], ah
mov dword [esp + 0x48], edx
mov dword [esp + 0x4c], ecx
shl ebx, 5
mov ecx, dword [esp]
mov eax, esi
or eax, ebx
mov ebx, dword [esp + 4]
mov esi, ecx
mov byte [ebp + 2], al
shrd esi, ebx, 3
mov eax, esi
mov esi, ecx
shrd esi, ebx, 0xb
mov byte [ebp + 3], al
mov eax, esi
mov esi, ecx
mov ecx, dword [esp + 0x28]
shrd esi, ebx, 0x13
mov byte [ebp + 4], al
mov ebx, dword [esp + 0x2c]
mov edi, ecx
and esi, 3
lea eax, [edi*4]
or eax, esi
mov esi, dword [esp + 0x64]
mov byte [ebp + 5], al
mov eax, ecx
shrd eax, ebx, 6
shrd ecx, ebx, 0xe
mov ebx, dword [esp + 0x60]
mov byte [ebp + 6], al
mov eax, ecx
and eax, 0x7f
mov edx, ebx
shl edx, 7
or eax, edx
mov byte [ebp + 7], al
mov eax, ebx
shrd eax, esi, 1
mov byte [ebp + 8], al
mov eax, ebx
shrd eax, esi, 9
shrd ebx, esi, 0x11
mov byte [ebp + 9], al
mov esi, dword [esp + 0x24]
mov eax, ebx
mov ebx, dword [esp + 0x20]
and eax, 0xf
mov edx, ebx
shl edx, 4
or eax, edx
mov byte [ebp + 0xa], al
mov eax, ebx
shrd eax, esi, 4
mov byte [ebp + 0xb], al
mov eax, ebx
mov ecx, dword [esp + 0x14]
shrd eax, esi, 0xc
shrd ebx, esi, 0x14
mov byte [ebp + 0xc], al
mov esi, dword [esp + 0x6c]
mov eax, ebx
mov ebx, dword [esp + 0x68]
and eax, 1
mov edi, ebx
lea edx, [edi + edi]
or eax, edx
mov byte [ebp + 0xd], al
mov eax, ebx
shrd eax, esi, 7
mov byte [ebp + 0xe], al
mov eax, ebx
mov ebx, dword [esp + 0x30]
shrd eax, esi, 0xf
mov esi, dword [esp + 0x34]
and eax, 0x3f
mov edx, eax
mov eax, ebx
shl eax, 6
or eax, edx
mov byte [ebp + 0xf], al
mov eax, ebx
shrd eax, esi, 2
mov byte [ebp + 0x10], al
mov eax, ebx
shrd eax, esi, 0xa
shrd ebx, esi, 0x12
mov byte [ebp + 0x11], al
mov esi, dword [esp + 0x3c]
mov eax, ebx
mov ebx, dword [esp + 0x38]
and eax, 7
mov edi, ebx
lea edx, [edi*8]
mov edi, dword [esp + 0x4c]
or eax, edx
mov edx, dword [esp + 0x10]
mov byte [ebp + 0x12], al
mov eax, ebx
shrd eax, esi, 5
shrd ebx, esi, 0xd
mov byte [ebp + 0x13], al
movzx eax, byte [esp + 0x18]
mov byte [ebp + 0x14], bl
mov ebx, dword [esp + 0x1c]
mov byte [ebp + 0x15], dl
mov byte [ebp + 0x16], dh
shl eax, 5
mov esi, eax
mov eax, edx
shrd eax, ecx, 0x10
mov ecx, dword [esp + 0x18]
or eax, esi
mov esi, dword [esp + 0x44]
mov byte [ebp + 0x17], al
mov eax, ecx
shrd eax, ebx, 3
mov byte [ebp + 0x18], al
mov eax, ecx
shrd eax, ebx, 0xb
shrd ecx, ebx, 0x13
mov ebx, dword [esp + 0x40]
mov byte [ebp + 0x19], al
and ecx, 3
mov eax, ebx
shl eax, 2
or ecx, eax
mov eax, ebx
shrd eax, esi, 6
shrd ebx, esi, 0xe
mov esi, dword [esp + 0x48]
mov byte [ebp + 0x1a], cl
mov byte [ebp + 0x1b], al
mov eax, ebx
and eax, 0x7f
mov ecx, esi
shl ecx, 7
or eax, ecx
mov byte [ebp + 0x1c], al
mov eax, esi
shrd eax, edi, 1
mov byte [ebp + 0x1d], al
mov eax, esi
shrd eax, edi, 9
shrd esi, edi, 0x11
mov byte [ebp + 0x1e], al
mov eax, esi
mov byte [ebp + 0x1f], al
add esp, 0x84
pop ebx
pop esi
pop edi
pop ebp
ret