Function at 0x100936d0
Capabilities:
Decompress data using quicklz
Resolve function by parsing pe exports

Disassembly:
mov eax, 0xb8
call fcn.101aa6d0
push ebx
push ebp
push esi
push edi
mov edi, dword [esp + 0xcc]
movzx eax, byte [edi + 0x30]
movzx ecx, byte [edi + 0x2f]
cdq
mov ebx, eax
shld edx, ebx, 6
shr cl, 2
movzx eax, cl
cdq
shl ebx, 6
or ebx, eax
movzx eax, byte [edi + 0x31]
and al, 0x7f
movzx eax, al
cdq
shld edx, eax, 0xe
shl eax, 0xe
and ebx, 0x1fffff
or ebx, eax
movzx eax, byte [edi + 0x34]
and al, 0xf
movzx eax, al
xor ecx, ecx
or ecx, edx
cdq
mov ebp, eax
movzx eax, byte [edi + 0x33]
mov dword [esp + 0x24], ebx
mov ebx, edx
cdq
shld ebx, ebp, 8
and eax, 0xfff
shl ebp, 8
or ebp, eax
movzx eax, byte [edi + 0x32]
cdq
mov esi, eax
shld edx, esi, 1
mov dword [esp + 0x60], ecx
movzx ecx, byte [edi + 0x31]
shr cl, 7
movzx eax, cl
cdq
add esi, esi
or esi, eax
movzx eax, byte [edi + 0x37]
shld ebx, ebp, 9
and al, 1
movzx ecx, byte [edi + 0x34]
movzx eax, al
shl ebp, 9
cdq
and esi, 0x1fffff
or ebp, esi
mov dword [esp + 0x4c], ebp
mov ebp, eax
movzx eax, byte [edi + 0x36]
mov dword [esp + 0x2c], ebx
mov ebx, edx
shld ebx, ebp, 8
cdq
and eax, 0x1ff
shl ebp, 8
or ebp, eax
movzx eax, byte [edi + 0x35]
cdq
mov esi, eax
shr cl, 4
shld edx, esi, 4
shld ebx, ebp, 0xc
movzx eax, cl
cdq
shl esi, 4
shl ebp, 0xc
or esi, eax
movzx eax, byte [edi + 0x38]
movzx ecx, byte [edi + 0x37]
cdq
mov dword [esp + 0x78], ebx
mov ebx, eax
shld edx, ebx, 7
shl ebx, 7
shr cl, 1
movzx eax, cl
cdq
or ebx, eax
movzx eax, byte [edi + 0x39]
and al, 0x3f
movzx eax, al
cdq
shld edx, eax, 0xf
shl eax, 0xf
mov ecx, dword [esp + 0xcc]
and ebx, 0x1fffff
or ebx, eax
movzx eax, byte [edi + 0x3c]
and al, 7
movzx eax, al
and esi, 0x1fffff
or ebp, esi
mov dword [esp + 0x74], ebx
mov dword [esp + 0x50], ebp
xor ebp, ebp
or ebp, edx
cdq
mov edi, eax
movzx eax, byte [ecx + 0x3b]
mov ebx, edx
shld ebx, edi, 8
cdq
and eax, 0x7ff
shl edi, 8
or edi, eax
movzx eax, byte [ecx + 0x3a]
movzx ecx, byte [ecx + 0x39]
cdq
mov esi, eax
shld edx, esi, 2
shld ebx, edi, 0xa
shr cl, 6
movzx eax, cl
cdq
shl edi, 0xa
shl esi, 2
or esi, eax
and esi, 0x1fffff
or edi, esi
mov esi, dword [esp + 0xcc]
mov dword [esp + 0x54], ebx
movzx eax, byte [esi + 0x3e]
cdq
mov ebx, eax
movzx eax, byte [esi + 0x3d]
mov dword [esp + 0x34], edi
mov edi, edx
shld edi, ebx, 8
cdq
shl ebx, 8
or ebx, eax
movzx eax, byte [esi + 0x3f]
or edi, edx
cdq
and edx, 0xff
shld edx, eax, 0x10
shl eax, 0x10
or ebx, eax
movzx eax, byte [esi + 0x3c]
and edi, 0xffffff
or edi, edx
shr al, 3
shld edi, ebx, 5
movzx eax, al
cdq
shl ebx, 5
mov dword [esp + 0x80], ebp
or ebx, eax
movzx eax, byte [esi + 0x2c]
or edi, edx
cdq
mov ecx, eax
movzx eax, byte [esi + 0x2b]
shld edx, ecx, 8
cdq
shl ecx, 8
or ecx, eax
mov eax, dword [esp + 0xcc]
and ecx, 0x1fff
movzx eax, byte [eax + 0x2a]
xor esi, esi
shld esi, ecx, 8
push 0
cdq
push 0xa6f7d
shl ecx, 8
and eax, 0x1fffff
push edi
or ecx, eax
push ebx
mov dword [esp + 0x7c], ebx
mov dword [esp + 0x50], edi
mov dword [esp + 0x98], ecx
call fcn.101ad830
sub dword [esp + 0x88], eax
mov eax, dword [esp + 0xcc]
push 0
movzx eax, byte [eax + 0x27]
sbb esi, edx
and al, 7
movzx eax, al
cdq
mov dword [esp + 0x98], esi
mov esi, eax
mov eax, dword [esp + 0xd0]
mov ecx, edx
movzx eax, byte [eax + 0x26]
shld ecx, esi, 8
shl esi, 8
cdq
and eax, 0x7ff
or esi, eax
shld ecx, esi, 0xa
mov dword [esp + 0x88], ecx
mov ecx, dword [esp + 0xd0]
shl esi, 0xa
movzx eax, byte [ecx + 0x25]
movzx ecx, byte [ecx + 0x24]
mov dword [esp + 0x5c], esi
cdq
mov esi, eax
shld edx, esi, 2
shr cl, 6
movzx eax, cl
shl esi, 2
cdq
push 0xa6f7d
or esi, eax
push ebp
push dword [esp + 0x80]
and esi, 0x1fffff
or dword [esp + 0x68], esi
mov esi, dword [esp + 0x94]
call fcn.101ad830
sub dword [esp + 0x58], eax
push 0
push 0xf39ad
push edi
push ebx
sbb esi, edx
call fcn.101ad830
sub dword [esp + 0x58], eax
push 0
push 0x215d1
push dword [esp + 0x5c]
sbb esi, edx
push dword [esp + 0x40]
call fcn.101ad830
add dword [esp + 0x58], eax
mov eax, dword [esp + 0xcc]
adc esi, edx
movzx eax, byte [eax + 0x22]
and al, 1
movzx eax, al
cdq
mov dword [esp + 0x84], esi
mov esi, eax
mov eax, dword [esp + 0xcc]
mov ecx, edx
movzx eax, byte [eax + 0x21]
shld ecx, esi, 8
shl esi, 8
cdq
and eax, 0x1ff
or esi, eax
shld ecx, esi, 0xc
mov dword [esp + 0x70], ecx
mov ecx, dword [esp + 0xcc]
shl esi, 0xc
movzx eax, byte [ecx + 0x20]
movzx ecx, byte [ecx + 0x1f]
mov dword [esp + 0x28], esi
cdq
mov esi, eax
shld edx, esi, 4
shr cl, 4
movzx eax, cl
push 0
shl esi, 4
cdq
push 0x9fb67
push dword [esp + 0x5c]
or esi, eax
push dword [esp + 0x40]
and esi, 0x1fffff
or dword [esp + 0x38], esi
mov esi, dword [esp + 0x80]
call fcn.101ad830
add dword [esp + 0x28], eax
push 0
push 0xa6f7d
push dword [esp + 0x34]
adc esi, edx
push dword [esp + 0x58]
call fcn.101ad830
sub dword [esp + 0x28], eax
push 0
push 0xf39ad
push ebp
push dword [esp + 0x80]
sbb esi, edx
call fcn.101ad830
sub dword [esp + 0x28], eax
push 0
push 0x72d18
push edi
push ebx
sbb esi, edx
call fcn.101ad830
mov ebx, dword [esp + 0x28]
push 0
push 0x215d1
push dword [esp + 0x80]
add ebx, eax
push dword [esp + 0x5c]
adc esi, edx
call fcn.101ad830
add ebx, eax
adc esi, edx
mov dword [esp + 0x70], esi
mov esi, dword [esp + 0xcc]
mov dword [esp + 0x28], ebx
movzx eax, byte [esi + 0x12]
and al, 7
movzx eax, al
cdq
mov ecx, eax
mov ebx, edx
shld ebx, ecx, 8
shl ecx, 8
movzx eax, byte [esi + 0x11]
cdq
and eax, 0x7ff
or ecx, eax
movzx eax, byte [esi + 0x10]
shld ebx, ecx, 0xa
cdq
mov esi, eax
mov eax, dword [esp + 0xcc]
shl ecx, 0xa
mov dword [esp + 0x44], ecx
movzx ecx, byte [eax + 0xf]
shld edx, esi, 2
shr cl, 6
movzx eax, cl
shl esi, 2
cdq
or esi, eax
push 0
and esi, 0x1fffff
or dword [esp + 0x48], esi
mov esi, dword [esp + 0x64]
push 0xa2c13
mov dword [esp + 0x84], ebx
mov ebx, dword [esp + 0x2c]
push esi
push ebx
call fcn.101ad830
add dword [esp + 0x44], eax
mov eax, dword [esp + 0xcc]
push 0
movzx eax, byte [eax + 0x17]
adc dword [esp + 0x80], edx
cdq
mov ecx, eax
mov eax, dword [esp + 0xd0]
shld edx, ecx, 8
movzx eax, byte [eax + 0x16]
cdq
shl ecx, 8
or ecx, eax
and ecx, 0x1fff
mov dword [esp + 0x18], ecx
mov eax, dword [esp + 0x18]
xor ecx, ecx
shld ecx, eax, 8
shl eax, 8
mov dword [esp + 0x18], eax
mov eax, dword [esp + 0xd0]
push 0x9fb67
movzx eax, byte [eax + 0x15]
cdq
push esi
and eax, 0x1fffff
or dword [esp + 0x20], eax
push ebx
mov dword [esp + 0x6c], ecx
call fcn.101ad830
add dword [esp + 0x14], eax
push 0
push 0x72d18
push dword [esp + 0x34]
adc dword [esp + 0x68], edx
push dword [esp + 0x58]
call fcn.101ad830
add dword [esp + 0x14], eax
push 0
push 0xa2c13
push dword [esp + 0x80]
adc dword [esp + 0x68], edx
push dword [esp + 0x5c]
call fcn.101ad830
add dword [esp + 0x14], eax
mov ecx, dword [esp + 0xcc]
movzx eax, byte [ecx + 0x1b]
adc dword [esp + 0x5c], edx
movzx ecx, byte [ecx + 0x1a]
cdq
shld edx, eax, 6
shl eax, 6
mov dword [esp + 0x10], eax
shr cl, 2
movzx eax, cl
mov ecx, dword [esp + 0x10]
cdq
or ecx, eax
mov eax, dword [esp + 0xcc]
push 0
movzx eax, byte [eax + 0x1c]
and al, 0x7f
movzx eax, al
cdq
and ecx, 0x1fffff
shld edx, eax, 0xe
push 0x9fb67
push dword [esp + 0x80]
mov dword [esp + 0x1c], ecx
push dword [esp + 0x5c]
xor ecx, ecx
shl eax, 0xe
or dword [esp + 0x20], eax
or ecx, edx
mov dword [esp + 0x78], ecx
call fcn.101ad830
add dword [esp + 0x10], eax
push 0
push 0xf39ad
push dword [esp + 0x34]
adc dword [esp + 0x74], edx
push dword [esp + 0x58]
call fcn.101ad830
sub dword [esp + 0x10], eax
push 0
push 0x72d18
sbb dword [esp + 0x70], edx
push ebp
push dword [esp + 0x80]
call fcn.101ad830
add dword [esp + 0x10], eax
mov ebp, dword [esp + 0x68]
push 0
push 0xa2c13
push dword [esp + 0x5c]
adc ebp, edx
push dword [esp + 0x40]
call fcn.101ad830
add dword [esp + 0x10], eax
push 0
push 0x215d1
push esi
push ebx
adc ebp, edx
call fcn.101ad830
add dword [esp + 0x10], eax
mov ecx, dword [esp + 0xcc]
mov ebx, dword [esp + 0x7c]
movzx eax, byte [ecx + 0x13]
movzx ecx, byte [ecx + 0x12]
adc ebp, edx
cdq
mov dword [esp + 0x68], ebp
mov ebp, dword [esp + 0x44]
add ebp, 0x100000
adc ebx, 0
shld edx, eax, 5
shl eax, 5
mov dword [esp + 0x64], eax
shr cl, 3
movzx eax, cl
mov ecx, dword [esp + 0x64]
cdq
or ecx, eax
mov eax, dword [esp + 0xcc]
shrd ebp, ebx, 0x15
movzx eax, byte [eax + 0x14]
and ecx, 0x1fffff
sar ebx, 0x15
mov dword [esp + 0x64], ecx
mov dword [esp + 0xa4], ebp
mov dword [esp + 0xac], ebx
xor ecx, ecx
cdq
push 0
shld edx, eax, 0xd
push 0x72d18
push esi
push dword [esp + 0x30]
shl eax, 0xd
or dword [esp + 0x74], eax
or ecx, edx
mov dword [esp + 0x9c], ecx
call fcn.101ad830
add dword [esp + 0x64], eax
mov esi, dword [esp + 0x8c]
push 0
push 0xa2c13
push dword [esp + 0x34]
adc esi, edx
push dword [esp + 0x58]
call fcn.101ad830
mov ecx, dword [esp + 0x64]
add ecx, eax
mov eax, dword [esp + 0xcc]
adc esi, edx
movzx eax, byte [eax + 0x1a]
add ecx, ebp
mov ebp, dword [esp + 0x14]
adc esi, ebx
mov ebx, dword [esp + 0x5c]
add ebp, 0x100000
adc ebx, 0
and al, 3
movzx eax, al
cdq
mov dword [esp + 0x8c], esi
mov esi, eax
mov eax, dword [esp + 0xcc]
mov dword [esp + 0x64], ecx
movzx eax, byte [eax + 0x19]
mov ecx, edx
shld ecx, esi, 8
shl esi, 8
cdq
and eax, 0x3ff
or esi, eax
shld ecx, esi, 0xb
mov dword [esp + 0x90], ecx
mov ecx, dword [esp + 0xcc]
shl esi, 0xb
movzx eax, byte [ecx + 0x18]
movzx ecx, byte [ecx + 0x17]
mov dword [esp + 0x30], esi
cdq
mov esi, eax
shld edx, esi, 3
shr cl, 5
movzx eax, cl
push 0
shl esi, 3
cdq
push 0x9fb67
push dword [esp + 0x34]
shrd ebp, ebx, 0x15
push dword [esp + 0x58]
or esi, eax
and esi, 0x1fffff
or dword [esp + 0x40], esi
mov esi, dword [esp + 0xa0]
sar ebx, 0x15
mov dword [esp + 0xc8], ebp
mov dword [esp + 0x28], ebx
call fcn.101ad830
add dword [esp + 0x30], eax
push 0
push 0xf39ad
push dword [esp + 0x68]
adc esi, edx
push dword [esp + 0x30]
call fcn.101ad830
sub dword [esp + 0x30], eax
push 0
push 0x72d18
sbb esi, edx
push dword [esp + 0x80]
push dword [esp + 0x5c]
call fcn.101ad830
add dword [esp + 0x30], eax
push 0
push 0xa2c13
push dword [esp + 0x88]
adc esi, edx
push dword [esp + 0x80]
call fcn.101ad830
mov ecx, dword [esp + 0x30]
add ecx, eax
adc esi, edx
add ecx, ebp
mov ebp, dword [esp + 0x10]
adc esi, ebx
mov ebx, dword [esp + 0x68]
mov dword [esp + 0x90], esi
mov esi, dword [esp + 0xcc]
add ebp, 0x100000
movzx eax, byte [esi + 0x1f]
adc ebx, 0
and al, 0xf
movzx eax, al
cdq
mov dword [esp + 0x30], ecx
mov ecx, edx
shld ecx, eax, 8
shl eax, 8
mov dword [esp + 0x20], eax
movzx eax, byte [esi + 0x1e]
cdq
mov edx, dword [esp + 0x20]
and eax, 0xfff
or edx, eax
movzx eax, byte [esi + 0x1d]
shld ecx, edx, 9
shl edx, 9
mov dword [esp + 0x20], edx
cdq
mov esi, eax
mov eax, dword [esp + 0xcc]
mov dword [esp + 0x98], ecx
movzx ecx, byte [eax + 0x1c]
shld edx, esi, 1
shr cl, 7
movzx eax, cl
push 0
add esi, esi
cdq
push 0x9fb67
push dword [esp + 0x88]
shrd ebp, ebx, 0x15
push dword [esp + 0x80]
or esi, eax
and esi, 0x1fffff
or dword [esp + 0x30], esi
mov esi, dword [esp + 0xa8]
sar ebx, 0x15
mov dword [esp + 0x2c], ebp
mov dword [esp + 0x48], ebx
call fcn.101ad830
add dword [esp + 0x20], eax
push 0
push 0xa6f7d
push dword [esp + 0x68]
adc esi, edx
push dword [esp + 0x30]
call fcn.101ad830
sub dword [esp + 0x20], eax
push 0
push 0xf39ad
push dword [esp + 0x80]
sbb esi, edx
push dword [esp + 0x5c]
call fcn.101ad830
sub dword [esp + 0x20], eax
push 0
push 0x72d18
push dword [esp + 0x5c]
sbb esi, edx
push dword [esp + 0x40]
call fcn.101ad830
add dword [esp + 0x20], eax
push 0
push 0xa2c13
push edi
push dword [esp + 0x78]
adc esi, edx
call fcn.101ad830
mov edi, dword [esp + 0x20]
push 0
push 0x215d1
push dword [esp + 0x34]
add edi, eax
push dword [esp + 0x58]
adc esi, edx
call fcn.101ad830
mov ecx, dword [esp + 0xcc]
add edi, eax
movzx eax, byte [ecx + 0x23]
movzx ecx, byte [ecx + 0x22]
adc esi, edx
add edi, ebp
mov ebp, dword [esp + 0x70]
adc esi, ebx
mov ebx, dword [esp + 0x28]
cdq
mov dword [esp + 0x20], edi
mov edi, eax
add ebx, 0x100000
adc ebp, 0
shld edx, edi, 7
shr cl, 1
movzx eax, cl
cdq
shl edi, 7
or edi, eax
mov eax, dword [esp + 0xcc]
push 0
movzx eax, byte [eax + 0x24]
and al, 0x3f
movzx eax, al
cdq
shld edx, eax, 0xf
push 0x9fb67
push dword [esp + 0x48]
shrd ebx, ebp, 0x15
push dword [esp + 0x78]
mov dword [esp + 0xa8], esi
shl eax, 0xf
sar ebp, 0x15
and edi, 0x1fffff
xor esi, esi
mov dword [esp + 0x58], ebx
mov dword [esp + 0x4c], ebp
or edi, eax
or esi, edx
call fcn.101ad830
add edi, eax
push 0
push 0xa6f7d
push dword [esp + 0x80]
adc esi, edx
push dword [esp + 0x5c]
call fcn.101ad830
push 0
push 0xf39ad
push dword [esp + 0x5c]
sub edi, eax
push dword [esp + 0x40]
sbb esi, edx
call fcn.101ad830
push 0
push 0x215d1
push dword [esp + 0x88]
sub edi, eax
push dword [esp + 0x80]
sbb esi, edx
call fcn.101ad830
add edi, eax
adc esi, edx
mov ecx, dword [esp + 0xcc]
add edi, ebx
movzx eax, byte [ecx + 0x28]
movzx ecx, byte [ecx + 0x27]
mov ebx, dword [esp + 0x84]
adc esi, ebp
mov ebp, dword [esp + 0x58]
cdq
mov dword [esp + 0x2c], edi
mov edi, eax
add ebp, 0x100000
adc ebx, 0
shld edx, edi, 5
shr cl, 3
movzx eax, cl
cdq
shl edi, 5
or edi, eax
mov eax, dword [esp + 0xcc]
push 0
movzx eax, byte [eax + 0x29]
cdq
shld edx, eax, 0xd
push 0xa6f7d
push dword [esp + 0x5c]
shrd ebp, ebx, 0x15
push dword [esp + 0x40]
mov dword [esp + 0x5c], esi
shl eax, 0xd
sar ebx, 0x15
and edi, 0x1fffff
xor esi, esi
mov dword [esp + 0x60], ebx
or edi, eax
or esi, edx
call fcn.101ad830
sub edi, eax
push 0
push 0x215d1
push dword [esp + 0x48]
sbb esi, edx
push dword [esp + 0x78]
call fcn.101ad830
add edi, eax
mov eax, dword [esp + 0xcc]
adc esi, edx
movzx eax, byte [eax + 0x2f]
add edi, ebp
adc esi, ebx
mov ebx, dword [esp + 0x94]
mov dword [esp + 0x78], edi
mov edi, dword [esp + 0x88]
add edi, 0x100000
adc ebx, 0
and al, 3
movzx eax, al
cdq
mov dword [esp + 0x80], esi
mov esi, eax
mov eax, dword [esp + 0xcc]
mov ecx, edx
movzx eax, byte [eax + 0x2e]
shld ecx, esi, 8
shl esi, 8
cdq
and eax, 0x3ff
or esi, eax
shld ecx, esi, 0xb
mov dword [esp + 0x60], ecx
mov ecx, dword [esp + 0xcc]
shl esi, 0xb
movzx eax, byte [ecx + 0x2d]
movzx ecx, byte [ecx + 0x2c]
cdq
mov dword [esp + 0x24], esi
mov esi, eax
shrd edi, ebx, 0x15
shld edx, esi, 3
sar ebx, 0x15
shl esi, 3
shr cl, 5
movzx eax, cl
mov ecx, dword [esp + 0x24]
cdq
or esi, eax
mov eax, dword [esp + 0x60]
and esi, 0x1fffff
or ecx, esi
add ecx, edi
adc eax, ebx
mov dword [esp + 0x24], ecx
mov ecx, dword [esp + 0x64]
mov dword [esp + 0x60], eax
mov eax, dword [esp + 0x8c]
add ecx, 0x100000
adc eax, 0
shrd ecx, eax, 0x15
sar eax, 0x15
mov esi, dword [esp + 0x98]
mov edx, dword [esp + 0x3c]
mov dword [esp + 0xbc], ecx
mov ecx, dword [esp + 0x30]
add ecx, 0x100000
mov dword [esp + 0xa8], eax
mov eax, dword [esp + 0x90]
adc eax, 0
shrd ecx, eax, 0x15
sar eax, 0x15
mov dword [esp + 0x9c], ecx
mov ecx, dword [esp + 0x20]
add ecx, 0x100000
adc esi, 0
shrd ecx, esi, 0x15
mov dword [esp + 0xa0], eax
mov eax, dword [esp + 0x48]
shld edx, eax, 0x15
sar esi, 0x15
shl eax, 0x15
mov dword [esp + 0xb0], ecx
sub ecx, eax
mov dword [esp + 0xb4], esi
sbb esi, edx
add dword [esp + 0x28], ecx
mov edx, dword [esp + 0x4c]
push 0xffffffffffffffff
adc dword [esp + 0x74], esi
mov esi, dword [esp + 0x30]
add esi, 0x100000
adc edx, 0
shld dword [esp + 0x54], ebp, 0x15
shrd esi, edx, 0x15
sar edx, 0x15
shl ebp, 0x15
mov ecx, esi
sub ecx, ebp
mov eax, edx
sbb eax, dword [esp + 0x54]
add dword [esp + 0x5c], ecx
push 0xffe00000
push edx
adc dword [esp + 0x90], eax
push esi
call fcn.101ad830
add dword [esp + 0x2c], eax
mov esi, dword [esp + 0x78]
mov ebp, dword [esp + 0x80]
adc dword [esp + 0x4c], edx
add esi, 0x100000
mov edx, ebp
adc edx, 0
shrd esi, edx, 0x15
shld ebx, edi, 0x15
sar edx, 0x15
shl edi, 0x15
mov ecx, esi
sub ecx, edi
mov eax, edx
sbb eax, ebx
add dword [esp + 0x88], ecx
push 0xffffffffffffffff
push 0xffe00000
adc dword [esp + 0x9c], eax
push edx
push esi
call fcn.101ad830
add dword [esp + 0x78], eax
mov ebx, dword [esp + 0x60]
push 0
adc ebp, edx
push 0xa6f7d
mov dword [esp + 0x88], ebp
mov ebp, dword [esp + 0x2c]
push ebx
push ebp
call fcn.101ad830
push 0xffffffffffffffff
push 0xffe00000
push dword [esp + 0x40]
mov esi, eax
push dword [esp + 0x28]
mov edi, edx
call fcn.101ad830
sub eax, esi
sbb edx, edi
add eax, dword [esp + 0x9c]
push 0
adc edx, dword [esp + 0xa4]
add dword [esp + 0x14], eax
push 0xa6f7d
push dword [esp + 0x88]
adc dword [esp + 0x74], edx
push dword [esp + 0x84]
call fcn.101ad830
push 0xffffffffffffffff
push 0xfff0c653
push ebx
push ebp
mov esi, eax
mov edi, edx
call fcn.101ad830
push 0
mov ebx, eax
mov ebp, edx
sub ebx, esi
mov esi, dword [esp + 0x98]
push 0x215d1
sbb ebp, edi
mov edi, dword [esp + 0x90]
push esi
push edi
call fcn.101ad830
mov ecx, dword [esp + 0xb8]
add ebx, eax
mov eax, dword [esp + 0x18]
adc ebp, edx
shld eax, ecx, 0x15
shl ecx, 0x15
sub ebx, ecx
sbb ebp, eax
add ebx, dword [esp + 0xbc]
push 0
adc ebp, dword [esp + 0xac]
add dword [esp + 0x18], ebx
push 0x9fb67
push esi
adc dword [esp + 0x68], ebp
push edi
call fcn.101ad830
mov ebx, dword [esp + 0x4c]
push 0
push 0xa6f7d
push ebx
push dword [esp + 0x38]
mov esi, eax
mov edi, edx
call fcn.101ad830
sub esi, eax
push 0
push 0xf39ad
push dword [esp + 0x88]
sbb edi, edx
push dword [esp + 0x84]
call fcn.101ad830
mov ebp, dword [esp + 0x60]
push 0
push 0x72d18
push ebp
push dword [esp + 0x30]
sub esi, eax
sbb edi, edx
call fcn.101ad830
push 0
push 0x215d1
push dword [esp + 0x8c]
add esi, eax
push dword [esp + 0x64]
adc edi, edx
call fcn.101ad830
mov ecx, dword [esp + 0xa4]
add esi, eax
mov eax, dword [esp + 0xac]
adc edi, edx
shld eax, ecx, 0x15
shl ecx, 0x15
sub esi, ecx
sbb edi, eax
add dword [esp + 0x44], esi
push 0
push 0xa2c13
adc dword [esp + 0x84], edi
mov edi, dword [esp + 0xd4]
push dword [esp + 0x78]
movzx eax, byte [edi + 2]
push dword [esp + 0x34]
cdq
mov ecx, eax
movzx eax, byte [edi + 1]
shld edx, ecx, 8
shl ecx, 8
cdq
or ecx, eax
movzx eax, byte [edi]
and ecx, 0x1fff
xor esi, esi
shld esi, ecx, 8
cdq
shl ecx, 8
and eax, 0x1fffff
or ecx, eax
mov dword [esp + 0x64], ecx
call fcn.101ad830
add dword [esp + 0x54], eax
movzx eax, byte [edi + 5]
adc esi, edx
and al, 3
movzx eax, al
cdq
mov ecx, eax
mov eax, dword [esp + 0xcc]
mov edi, edx
movzx eax, byte [eax + 4]
shld edi, ecx, 8
cdq
shl ecx, 8
and eax, 0x3ff
or ecx, eax
shld edi, ecx, 0xb
shl ecx, 0xb
mov dword [esp + 0x40], ecx
mov ecx, dword [esp + 0xcc]
mov dword [esp + 0x50], esi
movzx eax, byte [ecx + 3]
movzx ecx, byte [ecx + 2]
cdq
mov esi, eax
shld edx, esi, 3
shr cl, 5
movzx eax, cl
shl esi, 3
cdq
or esi, eax
and esi, 0x1fffff
or dword [esp + 0x40], esi
push 0
push 0x72d18
push dword [esp + 0x78]
push dword [esp + 0x34]
call fcn.101ad830
mov esi, dword [esp + 0x40]
push 0
add esi, eax
adc edi, edx
push 0xa2c13
mov dword [esp + 0x74], edi
mov edi, dword [esp + 0x34]
push ebx
push edi
call fcn.101ad830
mov ecx, dword [esp + 0xcc]
add esi, eax
adc dword [esp + 0x6c], edx
movzx eax, byte [ecx + 6]
movzx ecx, byte [ecx + 5]
cdq
shld edx, eax, 6
shl eax, 6
mov dword [esp + 0x38], eax
shr cl, 2
movzx eax, cl
mov ecx, dword [esp + 0x38]
cdq
or ecx, eax
mov eax, dword [esp + 0xcc]
push 0
movzx eax, byte [eax + 7]
and al, 0x7f
movzx eax, al
cdq
shld edx, eax, 0xe
push 0x9fb67
push dword [esp + 0x78]
and ecx, 0x1fffff
push dword [esp + 0x34]
shl eax, 0xe
mov dword [esp + 0x50], esi
or ecx, eax
xor esi, esi
mov dword [esp + 0x48], ecx
or esi, edx
call fcn.101ad830
add dword [esp + 0x38], eax
push 0
push 0x72d18
push ebx
push edi
adc esi, edx
call fcn.101ad830
add dword [esp + 0x38], eax
push 0
push 0xa2c13
push dword [esp + 0x8c]
adc esi, edx
push dword [esp + 0x64]
call fcn.101ad830
add dword [esp + 0x38], eax
adc esi, edx
mov dword [esp + 0x74], esi
mov esi, dword [esp + 0xcc]
movzx eax, byte [esi + 0xa]
and al, 0xf
movzx eax, al
cdq
mov ecx, edx
shld ecx, eax, 8
shl eax, 8
mov dword [esp + 0x1c], eax
movzx eax, byte [esi + 9]
cdq
mov edx, dword [esp + 0x1c]
and eax, 0xfff
or edx, eax
shld ecx, edx, 9
shl edx, 9
mov dword [esp + 0x34], ecx
mov dword [esp + 0x1c], edx
movzx eax, byte [esi + 8]
cdq
mov esi, eax
mov eax, dword [esp + 0xcc]
shld edx, esi, 1
movzx ecx, byte [eax + 7]
shr cl, 7
movzx eax, cl
push 0
add esi, esi
cdq
or esi, eax
push 0x9fb67
and esi, 0x1fffff
or dword [esp + 0x24], esi
mov esi, dword [esp + 0x3c]
push ebx
push edi
call fcn.101ad830
mov edi, dword [esp + 0x1c]
push 0
push 0xf39ad
push dword [esp + 0x78]
add edi, eax
push dword [esp + 0x34]
adc esi, edx
call fcn.101ad830
sub edi, eax
push 0
push 0x72d18
push dword [esp + 0x8c]
sbb esi, edx
push dword [esp + 0x64]
call fcn.101ad830
add edi, eax
push 0
push 0xa2c13
mov dword [esp + 0x24], edi
mov edi, dword [esp + 0x88]
push edi
push dword [esp + 0x84]
adc esi, edx
call fcn.101ad830
add dword [esp + 0x1c], eax
mov eax, dword [esp + 0xcc]
push 0
movzx eax, byte [eax + 0xd]
adc esi, edx
and al, 1
movzx eax, al
mov dword [esp + 0x38], esi
cdq
mov esi, eax
mov eax, dword [esp + 0xd0]
mov ecx, edx
movzx eax, byte [eax + 0xc]
shld ecx, esi, 8
shl esi, 8
cdq
and eax, 0x1ff
or esi, eax
shld ecx, esi, 0xc
mov dword [esp + 0x4c], ecx
mov ecx, dword [esp + 0xd0]
shl esi, 0xc
movzx eax, byte [ecx + 0xb]
movzx ecx, byte [ecx + 0xa]
mov dword [esp + 0x1c], esi
cdq
mov esi, eax
shld edx, esi, 4
shr cl, 4
movzx eax, cl
shl esi, 4
cdq
or esi, eax
and esi, 0x1fffff
or dword [esp + 0x1c], esi
mov esi, dword [esp + 0x4c]
push 0x9fb67
push dword [esp + 0x8c]
push dword [esp + 0x64]
call fcn.101ad830
add dword [esp + 0x18], eax
push 0
push 0xf39ad
push ebx
push dword [esp + 0x38]
adc esi, edx
call fcn.101ad830
sub dword [esp + 0x18], eax
push 0
push 0x72d18
sbb esi, edx
mov dword [esp + 0x50], esi
mov esi, dword [esp + 0x80]
push edi
push esi
call fcn.101ad830
add dword [esp + 0x18], eax
mov eax, dword [esp + 0x48]
push 0
push 0xa2c13
push dword [esp + 0x9c]
adc eax, edx
push dword [esp + 0x94]
mov dword [esp + 0x58], eax
call fcn.101ad830
add dword [esp + 0x18], eax
push 0
push 0x215d1
push dword [esp + 0x78]
adc dword [esp + 0x54], edx
push dword [esp + 0x34]
call fcn.101ad830
add dword [esp + 0x18], eax
mov ecx, dword [esp + 0xcc]
push 0
adc dword [esp + 0x4c], edx
movzx eax, byte [ecx + 0xe]
movzx ecx, byte [ecx + 0xd]
cdq
shld edx, eax, 7
shl eax, 7
mov dword [esp + 0x40], eax
shr cl, 1
movzx eax, cl
mov ecx, dword [esp + 0x40]
cdq
or ecx, eax
mov eax, dword [esp + 0xd0]
and ecx, 0x1fffff
movzx eax, byte [eax + 0xf]
and al, 0x3f
movzx eax, al
cdq
shld edx, eax, 0xf
mov dword [esp + 0x40], ecx
push 0x9fb67
xor ecx, ecx
push edi
shl eax, 0xf
or dword [esp + 0x48], eax
or ecx, edx
push esi
mov dword [esp + 0x5c], ecx
call fcn.101ad830
mov esi, dword [esp + 0x3c]
mov edi, dword [esp + 0x4c]
push 0
push 0xa6f7d
push dword [esp + 0x78]
add esi, eax
push dword [esp + 0x34]
adc edi, edx
call fcn.101ad830
sub esi, eax
push 0
push 0xf39ad
push dword [esp + 0x8c]
sbb edi, edx
push dword [esp + 0x64]
call fcn.101ad830
push 0
push 0x72d18
push dword [esp + 0x9c]
sub esi, eax
push dword [esp + 0x94]
sbb edi, edx
call fcn.101ad830
push 0
add esi, eax
push 0xa2c13
mov dword [esp + 0x44], esi
mov esi, dword [esp + 0x2c]
push ebp
push esi
adc edi, edx
call fcn.101ad830
mov ebp, dword [esp + 0x3c]
push 0
push 0x215d1
push ebx
push dword [esp + 0x38]
add ebp, eax
adc edi, edx
call fcn.101ad830
mov ecx, dword [esp + 0x54]
add ebp, eax
mov eax, dword [esp + 0x50]
adc edi, edx
add ecx, 0x100000
adc eax, 0
shrd ecx, eax, 0x15
sar eax, 0x15
add dword [esp + 0x40], ecx
mov dword [esp + 0xb8], ecx
mov ecx, dword [esp + 0x38]
adc dword [esp + 0x6c], eax
mov dword [esp + 0xac], eax
mov eax, dword [esp + 0x74]
add ecx, 0x100000
adc eax, 0
shrd ecx, eax, 0x15
mov ebx, dword [esp + 0x44]
sar eax, 0x15
add dword [esp + 0x1c], ecx
mov dword [esp + 0x70], ecx
mov ecx, dword [esp + 0x18]
adc dword [esp + 0x34], eax
mov dword [esp + 0x28], eax
mov eax, dword [esp + 0x48]
add ecx, 0x100000
adc eax, 0
shrd ecx, eax, 0x15
sar eax, 0x15
add ebp, ecx
adc edi, eax
mov dword [esp + 0x3c], ebp
mov ebp, dword [esp + 0x7c]
add ebx, 0x100000
adc ebp, 0
push 0
shrd ebx, ebp, 0x15
push 0x9fb67
push dword [esp + 0x68]
sar ebp, 0x15
push esi
mov dword [esp + 0xd4], ecx
mov dword [esp + 0xd0], eax
mov dword [esp + 0x5c], edi
mov dword [esp + 0xb4], ebx
mov dword [esp + 0x3c], ebp
call fcn.101ad830
mov esi, eax
push 0
push 0xa6f7d
push dword [esp + 0x8c]
mov edi, edx
push dword [esp + 0x64]
call fcn.101ad830
sub esi, eax
sbb edi, edx
push 0
push 0xf39ad
push dword [esp + 0x9c]
push dword [esp + 0x94]
call fcn.101ad830
push 0
push 0x215d1
push dword [esp + 0x88]
sub esi, eax
push dword [esp + 0x84]
sbb edi, edx
call fcn.101ad830
mov ecx, dword [esp + 0xbc]
add esi, eax
mov eax, dword [esp + 0xa8]
adc edi, edx
shld eax, ecx, 0x15
shl ecx, 0x15
sub esi, ecx
sbb edi, eax
add esi, ebx
mov ebx, dword [esp + 0x14]
adc edi, ebp
add dword [esp + 0x64], esi
mov ebp, dword [esp + 0x5c]
push 0
adc dword [esp + 0x90], edi
add ebx, 0x100000
adc ebp, 0
push 0xa6f7d
push dword [esp + 0x9c]
shrd ebx, ebp, 0x15
push dword [esp + 0x94]
sar ebp, 0x15
call fcn.101ad830
mov esi, eax
push 0
push 0x215d1
push dword [esp + 0x68]
mov edi, edx
push dword [esp + 0x30]
call fcn.101ad830
mov ecx, dword [esp + 0xa0]
sub eax, esi
mov esi, dword [esp + 0x9c]
sbb edx, edi
shld ecx, esi, 0x15
mov edi, dword [esp + 0xb4]
shl esi, 0x15
sub eax, esi
sbb edx, ecx
mov esi, dword [esp + 0x68]
add eax, ebx
adc edx, ebp
add dword [esp + 0x30], eax
mov eax, dword [esp + 0xb0]
adc dword [esp + 0x90], edx
mov edx, dword [esp + 0x10]
add edx, 0x100000
adc esi, 0
shld edi, eax, 0x15
shrd edx, esi, 0x15
shl eax, 0x15
sar esi, 0x15
mov ecx, edx
sub ecx, eax
mov eax, esi
sbb eax, edi
add dword [esp + 0x20], ecx
mov edi, dword [esp + 0x6c]
mov ecx, dword [esp + 0x1c]
adc dword [esp + 0x98], eax
mov eax, dword [esp + 0x40]
add eax, 0x100000
adc edi, 0
shrd eax, edi, 0x15
mov dword [esp + 0xb4], eax
mov eax, dword [esp + 0x34]
sar edi, 0x15
add ecx, 0x100000
adc eax, 0
shrd ecx, eax, 0x15
sar eax, 0x15
mov dword [esp + 0xb0], eax
mov eax, dword [esp + 0x4c]
mov dword [esp + 0xa8], ecx
mov ecx, dword [esp + 0x3c]
add ecx, 0x100000
adc eax, 0
shrd ecx, eax, 0x15
sar eax, 0x15
mov dword [esp + 0x9c], eax
mov eax, dword [esp + 0xa4]
shld dword [esp + 0x2c], eax, 0x15
shl eax, 0x15
mov dword [esp + 0x60], ecx
sub ecx, eax
mov eax, dword [esp + 0x9c]
sbb eax, dword [esp + 0x2c]
add dword [esp + 0x44], ecx
mov ecx, dword [esp + 0x8c]
push 0
adc dword [esp + 0x80], eax
mov eax, dword [esp + 0x68]
add eax, 0x100000
adc ecx, 0
shld ebp, ebx, 0x15
shrd eax, ecx, 0x15
shl ebx, 0x15
sar ecx, 0x15
mov dword [esp + 0xa8], eax
mov dword [esp + 0xa4], ecx
mov ecx, eax
mov eax, dword [esp + 0xa4]
sub ecx, ebx
mov ebx, dword [esp + 0x94]
sbb eax, ebp
add dword [esp + 0x18], ecx
mov ebp, dword [esp + 0x24]
push 0xa2c13
adc dword [esp + 0x64], eax
mov eax, dword [esp + 0x38]
add eax, 0x100000
adc ebx, 0
shrd eax, ebx, 0x15
shld esi, edx, 0x15
sar ebx, 0x15
shl edx, 0x15
mov dword [esp + 0x34], ebx
mov dword [esp + 0x88], eax
sub eax, edx
sbb ebx, esi
add dword [esp + 0x18], eax
adc dword [esp + 0x70], ebx
mov ebx, dword [esp + 0xa0]
add ebp, 0x100000
adc ebx, 0
shrd ebp, ebx, 0x15
sar ebx, 0x15
push ebx
push ebp
mov dword [esp + 0xcc], ebp
mov dword [esp + 0x34], ebx
call fcn.101ad830
mov ecx, dword [esp + 0xac]
mov esi, dword [esp + 0xb8]
shld ecx, esi, 0x15
shl esi, 0x15
push 0
sub eax, esi
sbb edx, ecx
add dword [esp + 0x58], eax
push 0x72d18
push ebx
adc dword [esp + 0x5c], edx
push ebp
call fcn.101ad830
mov ecx, dword [esp + 0xb4]
mov esi, edi
shld esi, ecx, 0x15
shl ecx, 0x15
sub eax, ecx
sbb edx, esi
add dword [esp + 0x40], eax
mov eax, dword [esp + 0x70]
push 0
adc dword [esp + 0x70], edx
shld dword [esp + 0x2c], eax, 0x15
push 0x9fb67
mov esi, ebx
push esi
shl eax, 0x15
push ebp
mov dword [esp + 0x80], eax
call fcn.101ad830
sub eax, dword [esp + 0x70]
push 0
sbb edx, dword [esp + 0x2c]
add eax, dword [esp + 0xb8]
push 0xf39ad
adc edx, edi
add dword [esp + 0x40], eax
push esi
push ebp
adc dword [esp + 0x84], edx
call fcn.101ad830
mov ebx, dword [esp + 0xb0]
mov ebp, dword [esp + 0xa8]
push 0xffffffffffffffff
push 0xffe00000
push ebx
push ebp
mov esi, eax
mov edi, edx
call fcn.101ad830
push 0
sub eax, esi
sbb edx, edi
add dword [esp + 0x20], eax
mov edi, dword [esp + 0xc0]
push 0x215d1
push dword [esp + 0x2c]
adc dword [esp + 0x40], edx
push edi
call fcn.101ad830
mov ecx, dword [esp + 0xc0]
mov esi, dword [esp + 0xc4]
shld ecx, esi, 0x15
shl esi, 0x15
sub eax, esi
mov esi, dword [esp + 0x60]
sbb edx, ecx
add eax, ebp
adc edx, ebx
add dword [esp + 0x18], eax
mov ebx, dword [esp + 0x9c]
push 0xffffffffffffffff
adc dword [esp + 0x4c], edx
push 0xfff59083
push dword [esp + 0x2c]
shld ebx, esi, 0x15
push edi
shl esi, 0x15
call fcn.101ad830
mov edi, dword [esp + 0x50]
mov ecx, dword [esp + 0x40]
sub eax, esi
mov esi, dword [esp + 0x54]
sbb edx, ebx
add dword [esp + 0x3c], eax
mov eax, dword [esp + 0x6c]
adc dword [esp + 0x4c], edx
shrd esi, edi, 0x15
sar edi, 0x15
add ecx, esi
adc eax, edi
mov ebp, eax
mov ebx, ecx
shrd ebx, ebp, 0x15
mov dword [esp + 0x6c], eax
mov eax, dword [esp + 0x38]
mov dword [esp + 0x40], ecx
sar ebp, 0x15
mov ecx, dword [esp + 0x74]
add eax, ebx
adc ecx, ebp
mov edx, dword [esp + 0x1c]
mov dword [esp + 0x38], eax
mov dword [esp + 0x74], ecx
shrd eax, ecx, 0x15
sar ecx, 0x15
add edx, eax
mov dword [esp + 0xc4], eax
mov eax, dword [esp + 0x34]
adc eax, ecx
mov dword [esp + 0x34], eax
mov dword [esp + 0xc0], ecx
mov ecx, edx
shrd ecx, eax, 0x15
sar eax, 0x15
mov dword [esp + 0xb0], ecx
mov dword [esp + 0xb4], eax
mov dword [esp + 0x1c], edx
mov edx, dword [esp + 0x18]
add edx, ecx
mov ecx, dword [esp + 0x48]
adc ecx, eax
mov dword [esp + 0x48], ecx
mov eax, edx
shrd eax, ecx, 0x15
sar ecx, 0x15
add dword [esp + 0x3c], eax
mov dword [esp + 0xac], eax
mov eax, dword [esp + 0x3c]
mov dword [esp + 0x18], edx
mov edx, dword [esp + 0x4c]
adc edx, ecx
mov dword [esp + 0xb8], ecx
mov ecx, edx
shrd eax, ecx, 0x15
sar ecx, 0x15
mov dword [esp + 0x94], eax
mov dword [esp + 0x4c], edx
mov edx, dword [esp + 0x44]
add edx, eax
mov eax, dword [esp + 0x7c]
adc eax, ecx
mov dword [esp + 0x7c], eax
mov dword [esp + 0x78], ecx
mov ecx, edx
shrd ecx, eax, 0x15
sar eax, 0x15
mov dword [esp + 0x9c], eax
mov eax, dword [esp + 0xa4]
mov dword [esp + 0x44], edx
mov edx, dword [esp + 0xa0]
shld edx, eax, 0x15
shl eax, 0x15
mov dword [esp + 0x88], ecx
sub ecx, eax
mov eax, dword [esp + 0x9c]
sbb eax, edx
mov edx, dword [esp + 0x64]
add edx, ecx
mov ecx, dword [esp + 0x8c]
adc ecx, eax
mov dword [esp + 0x8c], ecx
mov eax, edx
shrd eax, ecx, 0x15
sar ecx, 0x15
mov dword [esp + 0x64], edx
mov edx, dword [esp + 0x14]
add edx, eax
mov dword [esp + 0xa4], eax
mov eax, dword [esp + 0x5c]
adc eax, ecx
mov dword [esp + 0x84], ecx
mov dword [esp + 0x5c], eax
mov ecx, edx
shrd ecx, eax, 0x15
sar eax, 0x15
mov dword [esp + 0x14], edx
mov dword [esp + 0x70], ecx
mov dword [esp + 0xa0], eax
mov eax, dword [esp + 0x80]
mov edx, dword [esp + 0x2c]
shld edx, eax, 0x15
shl eax, 0x15
sub ecx, eax
mov eax, dword [esp + 0xa0]
sbb eax, edx
mov edx, dword [esp + 0x30]
add edx, ecx
mov ecx, dword [esp + 0x90]
adc ecx, eax
mov dword [esp + 0x90], ecx
mov eax, edx
shrd eax, ecx, 0x15
sar ecx, 0x15
mov dword [esp + 0x80], eax
mov dword [esp + 0x30], edx
mov edx, dword [esp + 0x10]
add edx, eax
mov eax, dword [esp + 0x68]
adc eax, ecx
mov dword [esp + 0x2c], ecx
mov dword [esp + 0x68], eax
mov ecx, edx
shrd ecx, eax, 0x15
sar eax, 0x15
mov dword [esp + 0xa8], eax
mov eax, dword [esp + 0xbc]
mov dword [esp + 0x10], edx
mov edx, dword [esp + 0x24]
shld edx, eax, 0x15
shl eax, 0x15
mov dword [esp + 0x58], ecx
sub ecx, eax
mov eax, dword [esp + 0xa8]
sbb eax, edx
mov edx, dword [esp + 0x20]
add edx, ecx
mov ecx, dword [esp + 0x98]
adc ecx, eax
mov dword [esp + 0x98], ecx
mov eax, edx
shrd eax, ecx, 0x15
push 0
sar ecx, 0x15
push 0xa2c13
push ecx
push eax
mov dword [esp + 0x30], edx
mov dword [esp + 0x34], eax
mov dword [esp + 0x70], ecx
call fcn.101ad830
mov ecx, dword [esp + 0x54]
shld edi, esi, 0x15
shl esi, 0x15
sub eax, esi
sbb edx, edi
add ecx, eax
mov eax, dword [esp + 0x50]
adc eax, edx
push 0
push 0x72d18
push dword [esp + 0x68]
mov edi, ecx
push dword [esp + 0x30]
mov esi, eax
shrd edi, esi, 0x15
mov dword [esp + 0x64], ecx
mov dword [esp + 0x60], eax
sar esi, 0x15
call fcn.101ad830
shld ebp, ebx, 0x15
shl ebx, 0x15
sub eax, ebx
mov ebx, dword [esp + 0x6c]
sbb edx, ebp
mov ebp, dword [esp + 0x40]
add eax, edi
adc edx, esi
add ebp, eax
mov dword [esp + 0x40], ebp
push 0xffffffffffffffff
push 0xffe00000
push esi
adc ebx, edx
push edi
mov dword [esp + 0x7c], ebx
call fcn.101ad830
add dword [esp + 0x54], eax
push 0
mov esi, ebx
adc dword [esp + 0x54], edx
mov ebx, dword [esp + 0xc8]
mov edi, ebp
mov ebp, dword [esp + 0xc4]
push 0x9fb67
push dword [esp + 0x68]
shrd edi, esi, 0x15
push dword [esp + 0x30]
shld ebp, ebx, 0x15
sar esi, 0x15
shl ebx, 0x15
call fcn.101ad830
sub eax, ebx
mov ebx, dword [esp + 0x74]
sbb edx, ebp
mov ebp, dword [esp + 0x38]
push 0xffffffffffffffff
add eax, edi
adc edx, esi
push 0xffe00000
add ebp, eax
push esi
adc ebx, edx
push edi
mov dword [esp + 0x48], ebp
mov dword [esp + 0x84], ebx
call fcn.101ad830
add dword [esp + 0x40], eax
push 0
push 0xf39ad
adc dword [esp + 0x74], edx
push dword [esp + 0x68]
shrd ebp, ebx, 0x15
push dword [esp + 0x30]
sar ebx, 0x15
call fcn.101ad830
mov esi, eax
push 0xffffffffffffffff
push 0xffe00000
push dword [esp + 0xbc]
mov edi, edx
push dword [esp + 0xbc]
call fcn.101ad830
sub eax, esi
mov esi, dword [esp + 0x34]
sbb edx, edi
mov edi, dword [esp + 0x1c]
push 0xffffffffffffffff
add eax, ebp
adc edx, ebx
push 0xffe00000
add edi, eax
push ebx
adc esi, edx
push ebp
mov dword [esp + 0x2c], edi
mov dword [esp + 0x44], esi
call fcn.101ad830
add dword [esp + 0x38], eax
push 0
push 0x215d1
adc dword [esp + 0x7c], edx
push dword [esp + 0x68]
shrd edi, esi, 0x15
push dword [esp + 0x30]
sar esi, 0x15
call fcn.101ad830
mov ecx, dword [esp + 0xac]
mov ebx, dword [esp + 0xb8]
shld ebx, ecx, 0x15
shl ecx, 0x15
mov ebp, dword [esp + 0x18]
sub eax, ecx
sbb edx, ebx
mov ebx, dword [esp + 0x48]
push 0xffffffffffffffff
add eax, edi
adc edx, esi
push 0xffe00000
add ebp, eax
push esi
adc ebx, edx
push edi
mov dword [esp + 0x28], ebp
mov dword [esp + 0x58], ebx
call fcn.101ad830
add dword [esp + 0x1c], eax
push 0xffffffffffffffff
mov esi, ebx
adc dword [esp + 0x38], edx
mov ebx, dword [esp + 0x98]
mov edi, ebp
mov ebp, dword [esp + 0x7c]
push 0xfff59083
push dword [esp + 0x68]
shrd edi, esi, 0x15
push dword [esp + 0x30]
shld ebp, ebx, 0x15
sar esi, 0x15
shl ebx, 0x15
call fcn.101ad830
sub eax, ebx
mov ebx, dword [esp + 0x3c]
sbb edx, ebp
mov ebp, dword [esp + 0x4c]
push 0xffffffffffffffff
add eax, edi
push 0xffe00000
adc edx, esi
add ebx, eax
push esi
push edi
mov dword [esp + 0x4c], ebx
adc ebp, edx
call fcn.101ad830
add dword [esp + 0x18], eax
mov eax, dword [esp + 0x88]
mov edi, dword [esp + 0x44]
adc dword [esp + 0x48], edx
mov esi, ebx
mov ebx, dword [esp + 0x9c]
shld ebx, eax, 0x15
mov edx, ebp
shrd esi, edx, 0x15
shl eax, 0x15
sar edx, 0x15
mov ecx, esi
sub ecx, eax
push 0xffffffffffffffff
mov eax, edx
sbb eax, ebx
mov ebx, dword [esp + 0x80]
push 0xffe00000
add edi, ecx
push edx
adc ebx, eax
push esi
mov dword [esp + 0x54], edi
mov dword [esp + 0x8c], ebx
call fcn.101ad830
add dword [esp + 0x3c], eax
mov eax, dword [esp + 0xa4]
mov esi, edi
mov edi, dword [esp + 0x84]
adc ebp, edx
mov edx, ebx
shrd esi, edx, 0x15
shld edi, eax, 0x15
shl eax, 0x15
mov ecx, esi
sar edx, 0x15
sub ecx, eax
mov ebx, dword [esp + 0x64]
push 0xffffffffffffffff
push 0xffe00000
mov eax, edx
sbb eax, edi
mov edi, dword [esp + 0x94]
add ebx, ecx
push edx
push esi
mov dword [esp + 0x74], ebx
adc edi, eax
call fcn.101ad830
add dword [esp + 0x44], eax
mov eax, dword [esp + 0x70]
mov esi, ebx
adc dword [esp + 0x7c], edx
mov ebx, dword [esp + 0xa0]
shld ebx, eax, 0x15
mov edx, edi
shrd esi, edx, 0x15
shl eax, 0x15
sar edx, 0x15
mov ecx, esi
sub ecx, eax
mov eax, edx
sbb eax, ebx
add dword [esp + 0x14], ecx
mov ebx, dword [esp + 0x5c]
push 0xffffffffffffffff
push 0xffe00000
push edx
adc ebx, eax
push esi
mov dword [esp + 0x6c], ebx
call fcn.101ad830
add dword [esp + 0x64], eax
mov esi, dword [esp + 0x14]
mov eax, dword [esp + 0x80]
adc edi, edx
mov dword [esp + 0x8c], edi
mov edi, dword [esp + 0x2c]
shld edi, eax, 0x15
mov edx, ebx
mov ebx, dword [esp + 0x30]
shrd esi, edx, 0x15
shl eax, 0x15
sar edx, 0x15
push 0xffffffffffffffff
mov ecx, esi
sub ecx, eax
push 0xffe00000
mov eax, edx
sbb eax, edi
mov edi, dword [esp + 0x98]
add ebx, ecx
push edx
push esi
mov dword [esp + 0x40], ebx
adc edi, eax
call fcn.101ad830
add dword [esp + 0x14], eax
mov eax, dword [esp + 0x58]
mov esi, ebx
adc dword [esp + 0x5c], edx
mov ebx, dword [esp + 0xa8]
shld ebx, eax, 0x15
mov edx, edi
shrd esi, edx, 0x15
shl eax, 0x15
sar edx, 0x15
mov ecx, esi
sub ecx, eax
mov eax, edx
sbb eax, ebx
add dword [esp + 0x10], ecx
mov ebx, dword [esp + 0x68]
push 0xffffffffffffffff
adc ebx, eax
push 0xffe00000
mov dword [esp + 0x70], ebx
push edx
push esi
call fcn.101ad830
add dword [esp + 0x30], eax
mov esi, dword [esp + 0x10]
mov eax, dword [esp + 0x24]
adc edi, edx
mov edx, ebx
mov ebx, dword [esp + 0x60]
shrd esi, edx, 0x15
shld ebx, eax, 0x15
shl eax, 0x15
sar edx, 0x15
mov ecx, esi
sub ecx, eax
push 0xffffffffffffffff
mov eax, edx
sbb eax, ebx
add dword [esp + 0x24], ecx
push 0xffe00000
mov dword [esp + 0x98], edi
mov edi, dword [esp + 0xa0]
push edx
push esi
adc edi, eax
call fcn.101ad830
add dword [esp + 0x10], eax
mov esi, dword [esp + 0xcc]
mov eax, dword [esp + 0x54]
adc dword [esp + 0x68], edx
mov ebx, dword [esp + 0x50]
mov edx, dword [esp + 0x6c]
mov byte [esi], al
mov ecx, eax
mov eax, ebx
shrd ecx, eax, 8
sar eax, 8
mov byte [esi + 1], cl
mov ecx, dword [esp + 0x40]
mov eax, edx
shld eax, ecx, 5
mov eax, dword [esp + 0x54]
shrd eax, ebx, 0x10
shl ecx, 5
or cl, al
mov byte [esi + 2], cl
sar ebx, 0x10
mov ebx, dword [esp + 0x40]
mov ecx, ebx
mov eax, edx
shrd ecx, eax, 3
sar eax, 3
mov byte [esi + 3], cl
mov ecx, ebx
mov eax, edx
shrd ecx, eax, 0xb
mov byte [esi + 4], cl
mov esi, dword [esp + 0x74]
mov ecx, dword [esp + 0x38]
sar eax, 0xb
mov eax, esi
shld eax, ecx, 2
mov eax, dword [esp + 0xcc]
shrd ebx, edx, 0x13
shl ecx, 2
or bl, cl
mov ecx, dword [esp + 0x38]
mov byte [eax + 5], bl
mov ebx, dword [esp + 0x1c]
mov eax, esi
shrd ecx, eax, 6
sar eax, 6
mov eax, dword [esp + 0xcc]
sar edx, 0x13
mov edx, dword [esp + 0x34]
mov byte [eax + 6], cl
mov ecx, ebx
mov eax, edx
shld eax, ecx, 7
mov eax, dword [esp + 0x38]
shl ecx, 7
shrd eax, esi, 0xe
or cl, al
mov eax, edx
sar esi, 0xe
mov esi, dword [esp + 0xcc]
mov byte [esi + 7], cl
mov ecx, ebx
shrd ecx, eax, 1
sar eax, 1
mov byte [esi + 8], cl
mov eax, edx
mov ecx, ebx
shrd ecx, eax, 9
sar eax, 9
mov byte [esi + 9], cl
shrd ebx, edx, 0x11
sar edx, 0x11
mov edx, dword [esp + 0x48]
mov dword [esp + 0x1c], ebx
mov ebx, dword [esp + 0x18]
mov eax, edx
mov ecx, ebx
shld eax, ecx, 4
mov eax, dword [esp + 0x1c]
shl ecx, 4
or al, cl
mov byte [esi + 0xa], al
mov eax, edx
mov ecx, ebx
shrd ecx, eax, 4
sar eax, 4
mov byte [esi + 0xb], cl
mov eax, edx
mov ecx, ebx
shrd ecx, eax, 0xc
shrd ebx, edx, 0x14
sar eax, 0xc
mov byte [esi + 0xc], cl
sar edx, 0x14
mov edx, dword [esp + 0x3c]
mov ecx, edx
mov eax, ebp
shld eax, ecx, 1
add ecx, ecx
or bl, cl
mov ecx, edx
mov eax, ebp
shrd ecx, eax, 7
sar eax, 7
mov byte [esi + 0xe], cl
mov ecx, dword [esp + 0x44]
mov byte [esi + 0xd], bl
mov ebx, dword [esp + 0x7c]
mov eax, ebx
shld eax, ecx, 6
shl ecx, 6
shrd edx, ebp, 0xf
or cl, dl
mov edx, dword [esp + 0x44]
mov byte [esi + 0xf], cl
mov eax, ebx
mov ecx, edx
shrd ecx, eax, 2
sar eax, 2
mov byte [esi + 0x10], cl
mov eax, ebx
mov ecx, edx
shrd ecx, eax, 0xa
shrd edx, ebx, 0x12
sar eax, 0xa
mov dword [esp + 0x44], edx
mov edx, dword [esp + 0x8c]
sar ebx, 0x12
mov ebx, dword [esp + 0x64]
mov byte [esi + 0x11], cl
mov ecx, ebx
mov eax, edx
shld eax, ecx, 3
mov eax, dword [esp + 0x44]
shl ecx, 3
sar ebp, 0xf
or al, cl
mov byte [esi + 0x12], al
mov ebp, dword [esp + 0x5c]
mov ecx, ebx
mov eax, edx
shrd ecx, eax, 5
sar eax, 5
mov eax, dword [esp + 0x14]
mov byte [esi + 0x15], al
mov byte [esi + 0x13], cl
mov ecx, eax
shrd ebx, edx, 0xd
mov eax, ebp
shrd ecx, eax, 8
sar eax, 8
mov byte [esi + 0x16], cl
mov byte [esi + 0x14], bl
mov ebx, dword [esp + 0x30]
sar edx, 0xd
mov edx, dword [esp + 0x90]
mov ecx, ebx
mov eax, edx
shld eax, ecx, 5
mov eax, dword [esp + 0x14]
shrd eax, ebp, 0x10
shl ecx, 5
or cl, al
mov byte [esi + 0x17], cl
mov ecx, ebx
mov eax, edx
shrd ecx, eax, 3
sar eax, 3
mov byte [esi + 0x18], cl
mov ecx, ebx
mov eax, edx
shrd ecx, eax, 0xb
sar eax, 0xb
mov byte [esi + 0x19], cl
mov ecx, dword [esp + 0x10]
sar ebp, 0x10
mov ebp, dword [esp + 0x68]
shrd ebx, edx, 0x13
mov eax, ebp
shld eax, ecx, 2
shl ecx, 2
or bl, cl
mov byte [esi + 0x1a], bl
mov ebx, dword [esp + 0x10]
mov eax, ebp
mov ecx, ebx
shrd ecx, eax, 6
sar eax, 6
mov byte [esi + 0x1b], cl
sar edx, 0x13
mov edx, dword [esp + 0x20]
mov eax, edi
mov ecx, edx
shld eax, ecx, 7
shrd ebx, ebp, 0xe
shl ecx, 7
or cl, bl
mov byte [esi + 0x1c], cl
mov eax, edi
mov ecx, edx
shrd ecx, eax, 1
sar eax, 1
mov byte [esi + 0x1d], cl
mov eax, edi
mov ecx, edx
shrd ecx, eax, 9
shrd edx, edi, 0x11
sar ebp, 0xe
sar eax, 9
sar edi, 0x11
pop edi
mov byte [esi + 0x1e], cl
mov byte [esi + 0x1f], dl
pop esi
pop ebp
pop ebx
add esp, 0xb8
ret