Function at 0x71adc0
Capabilities:
Enumerate pe sections
Resolve function by parsing pe exports

Disassembly:
push ebp
mov ebp, esp
push edi
push esi
push ebx
and esp, 0xfffffff0
sub esp, 0x90
mov eax, dword [ebp + 8]
mov edi, dword [eax + 0x1c]
mov ebx, dword [eax]
mov eax, dword [eax + 4]
mov dword [esp + 0x84], ebx
mov ecx, dword [edi + 0x40]
lea eax, [ebx + eax - 5]
mov esi, dword [edi + 0x34]
mov dword [esp + 0x70], edi
mov dword [esp + 0x74], eax
mov eax, dword [ebp + 8]
mov dword [esp + 0x7c], ecx
mov ecx, dword [edi + 0x50]
mov dword [esp + 0x58], esi
mov ebx, dword [eax + 0xc]
mov eax, dword [eax + 0x10]
mov dword [esp + 0x8c], ecx
mov edx, eax
sub edx, dword [ebp + 0xc]
lea eax, [ebx + eax - 0x101]
mov dword [esp + 0x88], ebx
mov dword [esp + 0x78], eax
mov eax, dword [edi + 0x2c]
add edx, ebx
mov ebx, dword [edi + 0x30]
mov dword [esp + 0x54], edx
mov dword [esp + 0x60], eax
mov eax, 0xffffffff
mov edx, eax
mov dword [esp + 0x50], ebx
mov ebx, dword [edi + 0x38]
mov dword [esp + 0x68], ebx
mov ebx, dword [edi + 0x3c]
mov ecx, dword [edi + 0x54]
mov dword [esp + 0x80], ecx
mov ecx, dword [edi + 0x58]
shl edx, cl
mov ecx, edx
mov edx, dword [esp + 0x7c]
not ecx
mov dword [esp + 0x6c], ecx
mov ecx, dword [edi + 0x5c]
mov edi, dword [esp + 0x68]
shl eax, cl
mov ecx, eax
neg edi
mov eax, esi
not ecx
and edi, 0xf
mov dword [esp + 0x5c], ecx
lea ecx, [esi - 1]
sub eax, edi
mov dword [esp + 0x4c], edi
mov dword [esp + 0x34], eax
mov dword [esp + 0x40], ecx
lea ecx, [edi + 0xf]
mov edi, eax
and eax, 0xfffffff0
shr edi, 4
mov dword [esp + 0x3c], eax
mov eax, dword [esp + 0x60]
mov dword [esp + 0x38], ecx
mov dword [esp + 0x44], edi
add eax, esi
mov dword [esp + 0x48], eax
add eax, 0x10
mov dword [esp + 0x30], eax
cmp edx, 0xe
ja 0x71aee3
mov edi, dword [esp + 0x84]
lea ecx, [edx + 8]
movzx eax, byte [edi + 1]
movzx esi, byte [edi]
shl eax, cl
mov ecx, edx
add edx, 0x10
shl esi, cl
add eax, esi
add ebx, eax
lea eax, [edi + 2]
mov dword [esp + 0x84], eax
mov eax, dword [esp + 0x6c]
mov esi, dword [esp + 0x8c]
and eax, ebx
lea ecx, [esi + eax*4]
movzx esi, byte [ecx]
movzx eax, word [ecx + 2]
movzx ecx, byte [ecx + 1]
shr ebx, cl
sub edx, ecx
mov ecx, esi
movzx ecx, cl
test ecx, ecx
je 0x71af6a
test esi, 0x10
jne 0x71afb6
test esi, 0x40
jne 0x71b7c8
mov edi, 0xffffffff
mov esi, edx
jmp 0x71af3e
test dl, 0x10
jne 0x71afb0
test dl, 0x40
jne 0x71b1c5
mov edx, edi
shl edx, cl
mov ecx, dword [esp + 0x8c]
not edx
and edx, ebx
add eax, edx
lea ecx, [ecx + eax*4]
movzx edx, byte [ecx]
movzx eax, word [ecx + 2]
movzx ecx, byte [ecx + 1]
shr ebx, cl
sub esi, ecx
movzx ecx, dl
test ecx, ecx
jne 0x71af30
mov edx, esi
mov esi, dword [esp + 0x88]
mov byte [esi], al
lea eax, [esi + 1]
mov dword [esp + 0x88], eax
mov esi, dword [esp + 0x74]
cmp dword [esp + 0x84], esi
jae 0x71af9b
mov esi, dword [esp + 0x78]
cmp dword [esp + 0x88], esi
jb 0x71aeb6
mov dword [esp + 0x7c], edx
mov esi, edx
jmp 0x71b1eb
mov edi, esi
mov esi, edx
mov edx, edi
mov dword [esp + 0x64], eax
mov eax, esi
and eax, 0xf
je 0x71b001
movzx edi, al
cmp edi, edx
jbe 0x71afec
mov esi, dword [esp + 0x84]
mov ecx, edx
add edx, 8
movzx esi, byte [esi]
shl esi, cl
add ebx, esi
mov esi, dword [esp + 0x84]
add esi, 1
mov dword [esp + 0x84], esi
mov ecx, eax
mov esi, 0xffffffff
sub edx, edi
shl esi, cl
not esi
and esi, ebx
add dword [esp + 0x64], esi
shr ebx, cl
cmp edx, 0xe
jbe 0x71b262
mov eax, dword [esp + 0x5c]
mov esi, dword [esp + 0x80]
and eax, ebx
lea ecx, [esi + eax*4]
movzx esi, byte [ecx]
movzx eax, word [ecx + 2]
movzx ecx, byte [ecx + 1]
shr ebx, cl
sub edx, ecx
mov ecx, esi
test esi, 0x10
movzx ecx, cl
jne 0x71b08a
and esi, 0x40
jne 0x71bb95
mov edi, 0xffffffff
mov esi, edx
jmp 0x71b059
and edx, 0x40
jne 0x71b2c0
mov edx, edi
shl edx, cl
mov ecx, dword [esp + 0x80]
not edx
and edx, ebx
add eax, edx
lea ecx, [ecx + eax*4]
movzx edx, byte [ecx]
movzx eax, word [ecx + 2]
movzx ecx, byte [ecx + 1]
shr ebx, cl
sub esi, ecx
test dl, 0x10
movzx ecx, dl
je 0x71b050
mov edi, esi
mov esi, edx
mov edx, edi
mov dword [esp + 0x28], eax
mov eax, esi
and eax, 0xf
movzx edi, al
cmp edi, edx
jbe 0x71b0bf
mov esi, dword [esp + 0x84]
mov ecx, edx
movzx esi, byte [esi]
shl esi, cl
lea ecx, [edx + 8]
add ebx, esi
cmp edi, ecx
ja 0x71b7d3
add dword [esp + 0x84], 1
mov edx, ecx
mov ecx, eax
mov esi, 0xffffffff
sub edx, edi
shl esi, cl
not esi
and esi, ebx
shr ebx, cl
mov ecx, dword [esp + 0x88]
mov dword [esp + 0x18], esi
sub ecx, dword [esp + 0x54]
add esi, dword [esp + 0x28]
mov dword [esp + 0x20], ecx
cmp esi, ecx
mov dword [esp + 0x24], esi
jbe 0x71b73c
sub esi, ecx
cmp dword [esp + 0x50], esi
mov dword [esp + 0x2c], esi
jae 0x71b111
mov eax, dword [esp + 0x70]
mov ecx, dword [eax + 0x1bc4]
test ecx, ecx
jne 0x71bb75
mov eax, dword [esp + 0x58]
test eax, eax
jne 0x71b2e2
mov eax, dword [esp + 0x2c]
mov esi, dword [esp + 0x60]
sub esi, eax
add esi, dword [esp + 0x68]
cmp dword [esp + 0x64], eax
mov dword [esp + 0x7c], esi
ja 0x71bbab
cmp dword [esp + 0x64], 2
mov edi, dword [esp + 0x64]
jbe 0x71b18a
mov ecx, dword [esp + 0x64]
mov esi, dword [esp + 0x7c]
mov edi, edx
mov eax, dword [esp + 0x88]
movzx edx, byte [esi]
add esi, 3
sub ecx, 3
add eax, 3
mov byte [eax - 3], dl
movzx edx, byte [esi - 2]
mov byte [eax - 2], dl
movzx edx, byte [esi - 1]
cmp ecx, 2
mov byte [eax - 1], dl
ja 0x71b155
mov edx, edi
mov dword [esp + 0x64], ecx
mov dword [esp + 0x7c], esi
mov dword [esp + 0x88], eax
mov edi, ecx
test edi, edi
je 0x71af7d
mov eax, dword [esp + 0x7c]
mov esi, dword [esp + 0x88]
cmp edi, 2
movzx eax, byte [eax]
mov byte [esi], al
jne 0x71bb9e
mov eax, dword [esp + 0x7c]
movzx eax, byte [eax + 1]
mov byte [esi + 1], al
lea eax, [esi + 2]
mov dword [esp + 0x88], eax
jmp 0x71af7d
mov dword [esp + 0x7c], esi
and edx, 0x20
jne 0x71b290
mov eax, dword [ebp + 8]
mov esi, dword [esp + 0x7c]
mov dword [eax + 0x18], str.invalid_literal_length_code
mov eax, dword [esp + 0x70]
mov dword [eax + 4], 0x3f51
mov edx, dword [esp + 0x84]
mov eax, esi
and esi, 7
shr eax, 3
mov ecx, esi
mov esi, dword [esp + 0x88]
sub edx, eax
mov eax, 0xffffffff
shl eax, cl
not eax
and eax, ebx
mov ebx, dword [ebp + 8]
mov dword [ebx + 0xc], esi
mov esi, dword [esp + 0x74]
mov dword [ebx], edx
cmp esi, edx
jbe 0x71b2a4
sub esi, edx
mov edx, esi
add edx, 5
mov dword [ebx + 4], edx
mov ebx, dword [esp + 0x88]
mov edx, dword [esp + 0x78]
cmp ebx, edx
jb 0x71b2b5
sub edx, dword [esp + 0x88]
add edx, 0x101
mov ebx, dword [ebp + 8]
mov dword [ebx + 0x10], edx
mov ebx, dword [esp + 0x70]
mov dword [ebx + 0x3c], eax
mov dword [ebx + 0x40], ecx
lea esp, [ebp - 0xc]
pop ebx
pop esi
pop edi
pop ebp
ret
mov edi, dword [esp + 0x84]
lea ecx, [edx + 8]
movzx eax, byte [edi + 1]
movzx esi, byte [edi]
shl eax, cl
mov ecx, edx
add edx, 0x10
shl esi, cl
add eax, esi
add ebx, eax
lea eax, [edi + 2]
mov dword [esp + 0x84], eax
jmp 0x71b00a
mov eax, dword [esp + 0x70]
mov esi, dword [esp + 0x7c]
mov dword [eax + 4], 0x3f3f
jmp 0x71b1eb
mov ebx, esi
sub ebx, edx
mov edx, ebx
mov ebx, dword [ebp + 8]
add edx, 5
jmp 0x71b22b
sub edx, ebx
add edx, 0x101
jmp 0x71b24a
mov dword [esp + 0x7c], esi
mov eax, dword [ebp + 8]
mov esi, dword [esp + 0x7c]
mov dword [eax + 0x18], str.invalid_distance_code
mov eax, dword [esp + 0x70]
mov dword [eax + 4], 0x3f51
jmp 0x71b1eb
mov edi, dword [esp + 0x58]
mov eax, dword [esp + 0x2c]
cmp edi, eax
jae 0x71b7fb
mov esi, dword [esp + 0x48]
sub esi, eax
sub eax, edi
add esi, dword [esp + 0x68]
cmp dword [esp + 0x64], eax
mov dword [esp + 0x1c], eax
mov dword [esp + 0x7c], esi
jbe 0x71b139
sub dword [esp + 0x64], eax
mov esi, eax
mov eax, dword [esp + 0x20]
sub eax, dword [esp + 0x28]
mov edi, dword [esp + 0x48]
sub eax, dword [esp + 0x18]
mov ecx, dword [esp + 0x68]
add edi, eax
add eax, dword [esp + 0x30]
mov dword [esp + 0xc], edi
mov edi, dword [esp + 0xc]
add eax, ecx
add edi, ecx
mov ecx, dword [esp + 0x88]
cmp ecx, eax
lea eax, [ecx + 0x10]
setae byte [esp + 0x14]
movzx ecx, byte [esp + 0x14]
cmp edi, eax
setae al
or cl, al
je 0x71c2e2
cmp esi, 0x16
jbe 0x71c2e2
mov eax, edi
lea edi, [esi - 1]
neg eax
and eax, 0xf
mov ecx, edi
mov dword [esp + 0x10], edi
lea edi, [eax + 0xf]
cmp edi, ecx
ja 0x71c34c
test eax, eax
je 0x71c364
mov ecx, dword [esp + 0x7c]
mov esi, dword [esp + 0x88]
cmp eax, 1
lea edi, [ecx + 1]
mov ecx, dword [esp + 0x7c]
mov dword [esp + 0x14], edi
lea edi, [esi + 1]
movzx ecx, byte [ecx]
mov byte [esi], cl
je 0x71b686
mov ecx, dword [esp + 0x7c]
cmp eax, 2
lea edi, [ecx + 2]
mov ecx, dword [esp + 0x7c]
mov dword [esp + 0x14], edi
lea edi, [esi + 2]
movzx ecx, byte [ecx + 1]
mov byte [esi + 1], cl
mov esi, dword [esp + 0x1c]
lea ecx, [esi - 2]
mov dword [esp + 0x10], ecx
je 0x71b686
mov ecx, dword [esp + 0x7c]
cmp eax, 3
lea edi, [ecx + 3]
mov ecx, dword [esp + 0x88]
mov dword [esp + 0x14], edi
mov esi, ecx
lea edi, [ecx + 3]
mov ecx, dword [esp + 0x7c]
movzx ecx, byte [ecx + 2]
mov byte [esi + 2], cl
mov esi, dword [esp + 0x1c]
lea ecx, [esi - 3]
mov dword [esp + 0x10], ecx
je 0x71b686
mov ecx, dword [esp + 0x7c]
cmp eax, 4
lea edi, [ecx + 4]
mov ecx, dword [esp + 0x88]
mov dword [esp + 0x14], edi
mov esi, ecx
lea edi, [ecx + 4]
mov ecx, dword [esp + 0x7c]
movzx ecx, byte [ecx + 3]
mov byte [esi + 3], cl
mov esi, dword [esp + 0x1c]
lea ecx, [esi - 4]
mov dword [esp + 0x10], ecx
je 0x71b686
mov ecx, dword [esp + 0x7c]
cmp eax, 5
lea edi, [ecx + 5]
mov ecx, dword [esp + 0x88]
mov dword [esp + 0x14], edi
mov esi, ecx
lea edi, [ecx + 5]
mov ecx, dword [esp + 0x7c]
movzx ecx, byte [ecx + 4]
mov byte [esi + 4], cl
mov esi, dword [esp + 0x1c]
lea ecx, [esi - 5]
mov dword [esp + 0x10], ecx
je 0x71b686
mov ecx, dword [esp + 0x7c]
cmp eax, 6
lea edi, [ecx + 6]
mov ecx, dword [esp + 0x88]
mov dword [esp + 0x14], edi
mov esi, ecx
lea edi, [ecx + 6]
mov ecx, dword [esp + 0x7c]
movzx ecx, byte [ecx + 5]
mov byte [esi + 5], cl
mov esi, dword [esp + 0x1c]
lea ecx, [esi - 6]
mov dword [esp + 0x10], ecx
je 0x71b686
mov ecx, dword [esp + 0x7c]
cmp eax, 7
lea edi, [ecx + 7]
mov ecx, dword [esp + 0x88]
mov dword [esp + 0x14], edi
mov esi, ecx
lea edi, [ecx + 7]
mov ecx, dword [esp + 0x7c]
movzx ecx, byte [ecx + 6]
mov byte [esi + 6], cl
mov esi, dword [esp + 0x1c]
lea ecx, [esi - 7]
mov dword [esp + 0x10], ecx
je 0x71b686
mov ecx, dword [esp + 0x7c]
cmp eax, 8
lea edi, [ecx + 8]
mov ecx, dword [esp + 0x88]
mov dword [esp + 0x14], edi
mov esi, ecx
lea edi, [ecx + 8]
mov ecx, dword [esp + 0x7c]
movzx ecx, byte [ecx + 7]
mov byte [esi + 7], cl
mov esi, dword [esp + 0x1c]
lea ecx, [esi - 8]
mov dword [esp + 0x10], ecx
je 0x71b686
mov ecx, dword [esp + 0x7c]
cmp eax, 9
lea edi, [ecx + 9]
mov ecx, dword [esp + 0x88]
mov dword [esp + 0x14], edi
mov esi, ecx
lea edi, [ecx + 9]
mov ecx, dword [esp + 0x7c]
movzx ecx, byte [ecx + 8]
mov byte [esi + 8], cl
mov esi, dword [esp + 0x1c]
lea ecx, [esi - 9]
mov dword [esp + 0x10], ecx
je 0x71b686
mov ecx, dword [esp + 0x7c]
cmp eax, 0xa
lea edi, [ecx + 0xa]
mov ecx, dword [esp + 0x88]
mov dword [esp + 0x14], edi
mov esi, ecx
lea edi, [ecx + 0xa]
mov ecx, dword [esp + 0x7c]
movzx ecx, byte [ecx + 9]
mov byte [esi + 9], cl
mov esi, dword [esp + 0x1c]
lea ecx, [esi - 0xa]
mov dword [esp + 0x10], ecx
je 0x71b686
mov ecx, dword [esp + 0x7c]
cmp eax, 0xb
lea edi, [ecx + 0xb]
mov ecx, dword [esp + 0x88]
mov dword [esp + 0x14], edi
mov esi, ecx
lea edi, [ecx + 0xb]
mov ecx, dword [esp + 0x7c]
movzx ecx, byte [ecx + 0xa]
mov byte [esi + 0xa], cl
mov esi, dword [esp + 0x1c]
lea ecx, [esi - 0xb]
mov dword [esp + 0x10], ecx
je 0x71b686
mov ecx, dword [esp + 0x7c]
cmp eax, 0xc
lea edi, [ecx + 0xc]
mov ecx, dword [esp + 0x88]
mov dword [esp + 0x14], edi
mov esi, ecx
lea edi, [ecx + 0xc]
mov ecx, dword [esp + 0x7c]
movzx ecx, byte [ecx + 0xb]
mov byte [esi + 0xb], cl
mov esi, dword [esp + 0x1c]
lea ecx, [esi - 0xc]
mov dword [esp + 0x10], ecx
je 0x71b686
mov ecx, dword [esp + 0x7c]
cmp eax, 0xd
lea edi, [ecx + 0xd]
mov ecx, dword [esp + 0x88]
mov dword [esp + 0x14], edi
mov esi, ecx
lea edi, [ecx + 0xd]
mov ecx, dword [esp + 0x7c]
movzx ecx, byte [ecx + 0xc]
mov byte [esi + 0xc], cl
mov esi, dword [esp + 0x1c]
lea ecx, [esi - 0xd]
mov dword [esp + 0x10], ecx
je 0x71b686
mov ecx, dword [esp + 0x7c]
cmp eax, 0xf
lea edi, [ecx + 0xe]
mov ecx, dword [esp + 0x88]
mov dword [esp + 0x14], edi
mov esi, ecx
lea edi, [ecx + 0xe]
mov ecx, dword [esp + 0x7c]
movzx ecx, byte [ecx + 0xd]
mov byte [esi + 0xd], cl
mov esi, dword [esp + 0x1c]
lea ecx, [esi - 0xe]
mov dword [esp + 0x10], ecx
jne 0x71b686
mov ecx, dword [esp + 0x7c]
mov esi, dword [esp + 0x88]
lea edi, [ecx + 0xf]
movzx ecx, byte [ecx + 0xe]
mov dword [esp + 0x14], edi
lea edi, [esi + 0xf]
mov byte [esi + 0xe], cl
mov esi, dword [esp + 0x1c]
sub esi, 0xf
mov dword [esp + 0x10], esi
mov esi, dword [esp + 0x1c]
mov ecx, dword [esp + 0x20]
sub esi, eax
mov dword [esp + 8], esi
shr esi, 4
mov dword [esp + 0x7c], esi
mov esi, dword [esp + 0x88]
add esi, eax
add eax, dword [esp + 0xc]
mov dword [esp + 0xc], ebx
add eax, dword [esp + 0x68]
xor ebx, ebx
movdqa xmm1, xmmword [eax]
add ebx, 1
add esi, 0x10
add eax, 0x10
movups xmmword [esi - 0x10], xmm1
cmp dword [esp + 0x7c], ebx
ja 0x71b6b2
mov dword [esp + 0x20], ecx
mov ecx, dword [esp + 8]
mov esi, dword [esp + 0x10]
mov ebx, dword [esp + 0xc]
mov eax, ecx
and eax, 0xfffffff0
sub esi, eax
add edi, eax
mov dword [esp + 0x10], esi
mov esi, dword [esp + 0x14]
add esi, eax
cmp eax, ecx
mov dword [esp + 0x7c], esi
je 0x71b707
mov eax, dword [esp + 0x10]
mov ecx, dword [esp + 0x20]
add eax, esi
movsb byte es:[edi], byte [esi]
cmp esi, eax
jne 0x71b6fe
mov dword [esp + 0x20], ecx
mov edi, dword [esp + 0x1c]
mov esi, dword [esp + 0x64]
add edi, dword [esp + 0x88]
cmp dword [esp + 0x58], esi
mov dword [esp + 0x1c], edi
jb 0x71bf60
mov eax, dword [esp + 0x68]
mov dword [esp + 0x7c], eax
mov eax, dword [esp + 0x1c]
mov dword [esp + 0x88], eax
jmp 0x71b139
mov eax, dword [esp + 0x88]
mov dword [esp + 0x7c], edx
mov dword [esp + 0x88], ebx
mov ebx, dword [esp + 0x64]
mov ecx, eax
mov esi, eax
sub ecx, dword [esp + 0x24]
jmp 0x71b764
mov ecx, edi
mov esi, eax
movzx edx, byte [ecx]
lea edi, [ecx + 3]
sub ebx, 3
add eax, 3
mov byte [eax - 3], dl
movzx edx, byte [ecx + 1]
mov byte [eax - 2], dl
movzx edx, byte [edi - 1]
cmp ebx, 2
mov byte [eax - 1], dl
ja 0x71b760
mov edi, ebx
mov edx, dword [esp + 0x7c]
mov ebx, dword [esp + 0x88]
test edi, edi
mov dword [esp + 0x88], eax
je 0x71af7d
movzx eax, byte [ecx + 3]
cmp edi, 2
mov byte [esi + 3], al
jne 0x71bb66
lea eax, [esi + 5]
mov dword [esp + 0x88], eax
movzx eax, byte [ecx + 4]
mov byte [esi + 4], al
jmp 0x71af7d
mov dword [esp + 0x7c], edx
mov edx, esi
jmp 0x71b1c9
mov esi, dword [esp + 0x84]
add edx, 0x10
movzx esi, byte [esi + 1]
shl esi, cl
add ebx, esi
mov esi, dword [esp + 0x84]
add esi, 2
mov dword [esp + 0x84], esi
jmp 0x71b0bf
mov esi, edi
sub esi, eax
add esi, dword [esp + 0x68]
cmp dword [esp + 0x64], eax
mov dword [esp + 0x7c], esi
jbe 0x71b139
sub dword [esp + 0x64], eax
mov eax, dword [esp + 0x20]
sub eax, dword [esp + 0x28]
mov esi, dword [esp + 0x58]
sub eax, dword [esp + 0x18]
add esi, eax
mov edi, esi
mov dword [esp + 0x18], esi
mov esi, dword [esp + 0x68]
mov ecx, esi
add ecx, edi
mov dword [esp + 0x28], ecx
mov ecx, dword [esp + 0x58]
lea eax, [ecx + eax + 0x10]
add eax, esi
mov esi, dword [esp + 0x88]
cmp esi, eax
setae al
mov edi, eax
lea eax, [esi + 0x10]
cmp dword [esp + 0x28], eax
mov ecx, edi
setae al
or cl, al
je 0x71c301
mov edi, dword [esp + 0x2c]
cmp edi, 0x16
jbe 0x71c301
mov eax, dword [esp + 0x28]
sub edi, 1
mov dword [esp + 0x20], edi
neg eax
and eax, 0xf
mov ecx, eax
lea eax, [eax + 0xf]
cmp eax, edi
ja 0x71c397
test ecx, ecx
je 0x71c380
mov eax, dword [esp + 0x7c]
cmp ecx, 1
lea edi, [eax + 1]
movzx eax, byte [eax]
mov dword [esp + 0x28], edi
lea edi, [esi + 1]
mov byte [esi], al
je 0x71badc
mov eax, dword [esp + 0x7c]
lea edi, [eax + 2]
movzx eax, byte [eax + 1]
mov dword [esp + 0x28], edi
lea edi, [esi + 2]
mov byte [esi + 1], al
mov eax, dword [esp + 0x2c]
sub eax, 2
cmp ecx, 2
mov dword [esp + 0x20], eax
je 0x71badc
mov eax, dword [esp + 0x7c]
lea edi, [eax + 3]
movzx eax, byte [eax + 2]
mov dword [esp + 0x28], edi
lea edi, [esi + 3]
mov byte [esi + 2], al
mov eax, dword [esp + 0x2c]
sub eax, 3
cmp ecx, 3
mov dword [esp + 0x20], eax
je 0x71badc
mov eax, dword [esp + 0x7c]
lea edi, [eax + 4]
movzx eax, byte [eax + 3]
mov dword [esp + 0x28], edi
lea edi, [esi + 4]
mov byte [esi + 3], al
mov eax, dword [esp + 0x2c]
sub eax, 4
cmp ecx, 4
mov dword [esp + 0x20], eax
je 0x71badc
mov eax, dword [esp + 0x7c]
lea edi, [eax + 5]
movzx eax, byte [eax + 4]
mov dword [esp + 0x28], edi
lea edi, [esi + 5]
mov byte [esi + 4], al
mov eax, dword [esp + 0x2c]
sub eax, 5
cmp ecx, 5
mov dword [esp + 0x20], eax
je 0x71badc
mov eax, dword [esp + 0x7c]
lea edi, [eax + 6]
movzx eax, byte [eax + 5]
mov dword [esp + 0x28], edi
lea edi, [esi + 6]
mov byte [esi + 5], al
mov eax, dword [esp + 0x2c]
sub eax, 6
cmp ecx, 6
mov dword [esp + 0x20], eax
je 0x71badc
mov eax, dword [esp + 0x7c]
lea edi, [eax + 7]
movzx eax, byte [eax + 6]
mov dword [esp + 0x28], edi
lea edi, [esi + 7]
mov byte [esi + 6], al
mov eax, dword [esp + 0x2c]
sub eax, 7
cmp ecx, 7
mov dword [esp + 0x20], eax
je 0x71badc
mov eax, dword [esp + 0x7c]
lea edi, [eax + 8]
movzx eax, byte [eax + 7]
mov dword [esp + 0x28], edi
lea edi, [esi + 8]
mov byte [esi + 7], al
mov eax, dword [esp + 0x2c]
sub eax, 8
cmp ecx, 8
mov dword [esp + 0x20], eax
je 0x71badc
mov eax, dword [esp + 0x7c]
lea edi, [eax + 9]
movzx eax, byte [eax + 8]
mov dword [esp + 0x28], edi
lea edi, [esi + 9]
mov byte [esi + 8], al
mov eax, dword [esp + 0x2c]
sub eax, 9
cmp ecx, 9
mov dword [esp + 0x20], eax
je 0x71badc
mov eax, dword [esp + 0x7c]
lea edi, [eax + 0xa]
movzx eax, byte [eax + 9]
mov dword [esp + 0x28], edi
lea edi, [esi + 0xa]
mov byte [esi + 9], al
mov eax, dword [esp + 0x2c]
sub eax, 0xa
cmp ecx, 0xa
mov dword [esp + 0x20], eax
je 0x71badc
mov eax, dword [esp + 0x7c]
lea edi, [eax + 0xb]
movzx eax, byte [eax + 0xa]
mov dword [esp + 0x28], edi
lea edi, [esi + 0xb]
mov byte [esi + 0xa], al
mov eax, dword [esp + 0x2c]
sub eax, 0xb
cmp ecx, 0xb
mov dword [esp + 0x20], eax
je 0x71badc
mov eax, dword [esp + 0x7c]
lea edi, [eax + 0xc]
movzx eax, byte [eax + 0xb]
mov dword [esp + 0x28], edi
lea edi, [esi + 0xc]
mov byte [esi + 0xb], al
mov eax, dword [esp + 0x2c]
sub eax, 0xc
cmp ecx, 0xc
mov dword [esp + 0x20], eax
je 0x71badc
mov eax, dword [esp + 0x7c]
lea edi, [eax + 0xd]
movzx eax, byte [eax + 0xc]
mov dword [esp + 0x28], edi
lea edi, [esi + 0xd]
mov byte [esi + 0xc], al
mov eax, dword [esp + 0x2c]
sub eax, 0xd
cmp ecx, 0xd
mov dword [esp + 0x20], eax
je 0x71badc
mov eax, dword [esp + 0x7c]
lea edi, [eax + 0xe]
movzx eax, byte [eax + 0xd]
mov dword [esp + 0x28], edi
lea edi, [esi + 0xe]
mov byte [esi + 0xd], al
mov eax, dword [esp + 0x2c]
sub eax, 0xe
cmp ecx, 0xf
mov dword [esp + 0x20], eax
jne 0x71badc
mov eax, dword [esp + 0x7c]
lea edi, [eax + 0xf]
movzx eax, byte [eax + 0xe]
mov dword [esp + 0x28], edi
lea edi, [esi + 0xf]
mov byte [esi + 0xe], al
mov eax, dword [esp + 0x2c]
sub eax, 0xf
mov dword [esp + 0x20], eax
mov eax, dword [esp + 0x2c]
sub eax, ecx
mov dword [esp + 0x1c], eax
sub eax, 0x10
shr eax, 4
add eax, 1
mov dword [esp + 0x7c], eax
mov eax, dword [esp + 0x88]
lea esi, [eax + ecx]
mov eax, dword [esp + 0x18]
add eax, ecx
add eax, dword [esp + 0x68]
xor ecx, ecx
movdqa xmm2, xmmword [eax]
add ecx, 1
add esi, 0x10
add eax, 0x10
movups xmmword [esi - 0x10], xmm2
cmp dword [esp + 0x7c], ecx
ja 0x71bb09
mov eax, dword [esp + 0x7c]
mov ecx, dword [esp + 0x20]
mov esi, dword [esp + 0x28]
shl eax, 4
add esi, eax
add edi, eax
sub ecx, eax
cmp eax, dword [esp + 0x1c]
mov dword [esp + 0x7c], esi
je 0x71bb47
lea eax, [esi + ecx]
movsb byte es:[edi], byte [esi]
cmp esi, eax
jne 0x71bb42
mov esi, dword [esp + 0x2c]
add dword [esp + 0x88], esi
mov eax, dword [esp + 0x88]
sub eax, dword [esp + 0x24]
mov dword [esp + 0x7c], eax
jmp 0x71b139
lea eax, [esi + 4]
mov dword [esp + 0x88], eax
jmp 0x71af7d
mov eax, dword [ebp + 8]
mov dword [esp + 0x7c], edx
mov esi, edx
mov dword [eax + 0x18], str.invalid_distance_too_far_back
mov eax, dword [esp + 0x70]
mov dword [eax + 4], 0x3f51
jmp 0x71b1eb
mov dword [esp + 0x7c], edx
jmp 0x71b2c4
add dword [esp + 0x88], 1
jmp 0x71af7d
sub dword [esp + 0x64], eax
mov eax, dword [esp + 0x20]
sub eax, dword [esp + 0x28]
mov edi, dword [esp + 0x60]
sub eax, dword [esp + 0x18]
mov ecx, dword [esp + 0x68]
add edi, eax
mov esi, edi
mov dword [esp + 0x14], edi
mov edi, ecx
add edi, esi
mov esi, dword [esp + 0x60]
lea eax, [esi + eax + 0x10]
mov esi, dword [esp + 0x88]
add eax, ecx
cmp esi, eax
mov eax, esi
setae cl
add eax, 0x10
cmp edi, eax
setae al
or cl, al
je 0x71bf46
mov esi, dword [esp + 0x2c]
cmp esi, 0x16
jbe 0x71bf46
mov eax, edi
neg eax
mov ecx, eax
lea eax, [esi - 1]
and ecx, 0xf
mov edi, eax
mov dword [esp + 0x28], eax
lea eax, [ecx + 0xf]
cmp eax, edi
ja 0x71c31e
test ecx, ecx
mov eax, dword [esp + 0x7c]
je 0x71c330
mov edi, dword [esp + 0x88]
add eax, 1
cmp ecx, 1
mov dword [esp + 0x20], eax
lea eax, [edi + 1]
mov dword [esp + 0x1c], eax
mov eax, dword [esp + 0x7c]
movzx eax, byte [eax]
mov byte [edi], al
je 0x71beb5
mov eax, dword [esp + 0x7c]
add eax, 2
cmp ecx, 2
mov dword [esp + 0x20], eax
lea eax, [edi + 2]
mov dword [esp + 0x1c], eax
mov eax, dword [esp + 0x7c]
movzx eax, byte [eax + 1]
mov byte [edi + 1], al
lea eax, [esi - 2]
mov dword [esp + 0x28], eax
je 0x71beb5
mov eax, dword [esp + 0x7c]
add eax, 3
cmp ecx, 3
mov dword [esp + 0x20], eax
lea eax, [edi + 3]
mov dword [esp + 0x1c], eax
mov eax, dword [esp + 0x7c]
movzx eax, byte [eax + 2]
mov byte [edi + 2], al
lea eax, [esi - 3]
mov dword [esp + 0x28], eax
je 0x71beb5
mov eax, dword [esp + 0x7c]
add eax, 4
cmp ecx, 4
mov dword [esp + 0x20], eax
lea eax, [edi + 4]
mov dword [esp + 0x1c], eax
mov eax, dword [esp + 0x7c]
movzx eax, byte [eax + 3]
mov byte [edi + 3], al
lea eax, [esi - 4]
mov dword [esp + 0x28], eax
je 0x71beb5
mov eax, dword [esp + 0x7c]
add eax, 5
cmp ecx, 5
mov dword [esp + 0x20], eax
lea eax, [edi + 5]
mov dword [esp + 0x1c], eax
mov eax, dword [esp + 0x7c]
movzx eax, byte [eax + 4]
mov byte [edi + 4], al
lea eax, [esi - 5]
mov dword [esp + 0x28], eax
je 0x71beb5
mov eax, dword [esp + 0x7c]
add eax, 6
cmp ecx, 6
mov dword [esp + 0x20], eax
lea eax, [edi + 6]
mov dword [esp + 0x1c], eax
mov eax, dword [esp + 0x7c]
movzx eax, byte [eax + 5]
mov byte [edi + 5], al
lea eax, [esi - 6]
mov dword [esp + 0x28], eax
je 0x71beb5
mov eax, dword [esp + 0x7c]
add eax, 7
cmp ecx, 7
mov dword [esp + 0x20], eax
lea eax, [edi + 7]
mov dword [esp + 0x1c], eax
mov eax, dword [esp + 0x7c]
movzx eax, byte [eax + 6]
mov byte [edi + 6], al
lea eax, [esi - 7]
mov dword [esp + 0x28], eax
je 0x71beb5
mov eax, dword [esp + 0x7c]
add eax, 8
cmp ecx, 8
mov dword [esp + 0x20], eax
lea eax, [edi + 8]
mov dword [esp + 0x1c], eax
mov eax, dword [esp + 0x7c]
movzx eax, byte [eax + 7]
mov byte [edi + 7], al
lea eax, [esi - 8]
mov dword [esp + 0x28], eax
je 0x71beb5
mov eax, dword [esp + 0x7c]
add eax, 9
cmp ecx, 9
mov dword [esp + 0x20], eax
lea eax, [edi + 9]
mov dword [esp + 0x1c], eax
mov eax, dword [esp + 0x7c]
movzx eax, byte [eax + 8]
mov byte [edi + 8], al
lea eax, [esi - 9]
mov dword [esp + 0x28], eax
je 0x71beb5
mov eax, dword [esp + 0x7c]
add eax, 0xa
cmp ecx, 0xa
mov dword [esp + 0x20], eax
lea eax, [edi + 0xa]
mov dword [esp + 0x1c], eax
mov eax, dword [esp + 0x7c]
movzx eax, byte [eax + 9]
mov byte [edi + 9], al
lea eax, [esi - 0xa]
mov dword [esp + 0x28], eax
je 0x71beb5
mov eax, dword [esp + 0x7c]
add eax, 0xb
cmp ecx, 0xb
mov dword [esp + 0x20], eax
lea eax, [edi + 0xb]
mov dword [esp + 0x1c], eax
mov eax, dword [esp + 0x7c]
movzx eax, byte [eax + 0xa]
mov byte [edi + 0xa], al
lea eax, [esi - 0xb]
mov dword [esp + 0x28], eax
je 0x71beb5
mov eax, dword [esp + 0x7c]
add eax, 0xc
cmp ecx, 0xc
mov dword [esp + 0x20], eax
lea eax, [edi + 0xc]
mov dword [esp + 0x1c], eax
mov eax, dword [esp + 0x7c]
movzx eax, byte [eax + 0xb]
mov byte [edi + 0xb], al
lea eax, [esi - 0xc]
mov dword [esp + 0x28], eax
je 0x71beb5
mov eax, dword [esp + 0x7c]
add eax, 0xd
cmp ecx, 0xd
mov dword [esp + 0x20], eax
lea eax, [edi + 0xd]
mov dword [esp + 0x1c], eax
mov eax, dword [esp + 0x7c]
movzx eax, byte [eax + 0xc]
mov byte [edi + 0xc], al
lea eax, [esi - 0xd]
mov dword [esp + 0x28], eax
je 0x71beb5
mov eax, dword [esp + 0x7c]
add eax, 0xe
cmp ecx, 0xf
mov dword [esp + 0x20], eax
lea eax, [edi + 0xe]
mov dword [esp + 0x1c], eax
mov eax, dword [esp + 0x7c]
movzx eax, byte [eax + 0xd]
mov byte [edi + 0xd], al
lea eax, [esi - 0xe]
mov dword [esp + 0x28], eax
jne 0x71beb5
mov eax, dword [esp + 0x7c]
add eax, 0xf
mov dword [esp + 0x20], eax
lea eax, [edi + 0xf]
mov dword [esp + 0x1c], eax
mov eax, dword [esp + 0x7c]
movzx eax, byte [eax + 0xe]
mov byte [edi + 0xe], al
lea eax, [esi - 0xf]
mov dword [esp + 0x28], eax
mov eax, dword [esp + 0x2c]
sub eax, ecx
lea edi, [eax - 0x10]
mov dword [esp + 0x18], eax
mov eax, dword [esp + 0x88]
shr edi, 4
lea esi, [eax + ecx]
mov eax, dword [esp + 0x14]
add edi, 1
add eax, ecx
add eax, dword [esp + 0x68]
xor ecx, ecx
nop
movdqa xmm0, xmmword [eax]
add ecx, 1
add esi, 0x10
add eax, 0x10
movups xmmword [esi - 0x10], xmm0
cmp edi, ecx
ja 0x71bee0
mov eax, edi
mov ecx, dword [esp + 0x28]
mov edi, dword [esp + 0x1c]
shl eax, 4
mov esi, dword [esp + 0x20]
add edi, eax
sub ecx, eax
add esi, eax
cmp eax, dword [esp + 0x18]
mov dword [esp + 0x7c], esi
je 0x71bf25
lea eax, [esi + ecx]
lea esi, [esi]
movsb byte es:[edi], byte [esi]
cmp esi, eax
jne 0x71bf20
mov esi, dword [esp + 0x2c]
add dword [esp + 0x88], esi
mov eax, dword [esp + 0x88]
mov esi, eax
sub esi, dword [esp + 0x24]
mov dword [esp + 0x7c], esi
jmp 0x71b139
mov eax, dword [esp + 0x68]
add eax, dword [esp + 0x60]
mov edi, dword [esp + 0x88]
mov esi, dword [esp + 0x7c]
movsb byte es:[edi], byte [esi]
cmp esi, eax
jne 0x71bf59
jmp 0x71bf25
mov eax, dword [esp + 0x28]
sub eax, dword [esp + 0x20]
add eax, dword [esp + 0x18]
mov esi, dword [esp + 0x58]
mov edi, dword [esp + 0x88]
sub dword [esp + 0x64], esi
mov ecx, eax
sub ecx, esi
lea eax, [edi + ecx + 0x10]
cmp dword [esp + 0x68], eax
mov dword [esp + 0x20], ecx
setae al
add edi, ecx
mov esi, eax
mov eax, dword [esp + 0x68]
mov ecx, esi
add eax, 0x10
cmp edi, eax
setae al
or cl, al
je 0x71c3af
cmp dword [esp + 0x58], 0x16
jbe 0x71c3af
mov eax, dword [esp + 0x40]
cmp dword [esp + 0x38], eax
ja 0x71c3e0
mov edi, dword [esp + 0x4c]
test edi, edi
je 0x71c3c7
mov esi, dword [esp + 0x68]
mov eax, dword [esp + 0x1c]
cmp edi, 1
lea ecx, [esi + 1]
mov dword [esp + 0x7c], ecx
lea ecx, [eax + 1]
mov dword [esp + 0x28], ecx
movzx ecx, byte [esi]
mov byte [eax], cl
mov eax, edi
je 0x71c3a6
mov edi, dword [esp + 0x1c]
lea ecx, [esi + 2]
cmp eax, 2
mov dword [esp + 0x7c], ecx
lea ecx, [edi + 2]
mov dword [esp + 0x28], ecx
movzx ecx, byte [esi + 1]
mov byte [edi + 1], cl
mov edi, dword [esp + 0x58]
lea esi, [edi - 2]
je 0x71c264
mov esi, dword [esp + 0x68]
lea eax, [esi + 3]
movzx ecx, byte [esi + 2]
mov dword [esp + 0x7c], eax
mov eax, dword [esp + 0x1c]
add eax, 3
cmp dword [esp + 0x4c], 3
mov dword [esp + 0x28], eax
mov eax, esi
mov esi, dword [esp + 0x1c]
mov byte [esi + 2], cl
lea esi, [edi - 3]
je 0x71c264
mov esi, eax
lea eax, [eax + 4]
movzx ecx, byte [esi + 3]
mov dword [esp + 0x7c], eax
mov eax, dword [esp + 0x1c]
add eax, 4
cmp dword [esp + 0x4c], 4
mov dword [esp + 0x28], eax
mov eax, esi
mov esi, dword [esp + 0x1c]
mov byte [esi + 3], cl
lea esi, [edi - 4]
je 0x71c264
mov esi, eax
lea eax, [eax + 5]
movzx ecx, byte [esi + 4]
mov dword [esp + 0x7c], eax
mov eax, dword [esp + 0x1c]
add eax, 5
cmp dword [esp + 0x4c], 5
mov dword [esp + 0x28], eax
mov eax, esi
mov esi, dword [esp + 0x1c]
mov byte [esi + 4], cl
lea esi, [edi - 5]
je 0x71c264
mov esi, eax
lea eax, [eax + 6]
movzx ecx, byte [esi + 5]
mov dword [esp + 0x7c], eax
mov eax, dword [esp + 0x1c]
add eax, 6
cmp dword [esp + 0x4c], 6
mov dword [esp + 0x28], eax
mov eax, esi
mov esi, dword [esp + 0x1c]
mov byte [esi + 5], cl
lea esi, [edi - 6]
je 0x71c264
mov esi, eax
lea eax, [eax + 7]
movzx ecx, byte [esi + 6]
mov dword [esp + 0x7c], eax
mov eax, dword [esp + 0x1c]
add eax, 7
cmp dword [esp + 0x4c], 7
mov dword [esp + 0x28], eax
mov eax, esi
mov esi, dword [esp + 0x1c]
mov byte [esi + 6], cl
lea esi, [edi - 7]
je 0x71c264
mov esi, eax
lea eax, [eax + 8]
movzx ecx, byte [esi + 7]
mov dword [esp + 0x7c], eax
mov eax, dword [esp + 0x1c]
add eax, 8
cmp dword [esp + 0x4c], 8
mov dword [esp + 0x28], eax
mov eax, esi
mov esi, dword [esp + 0x1c]
mov byte [esi + 7], cl
lea esi, [edi - 8]
je 0x71c264
mov esi, eax
lea eax, [eax + 9]
movzx ecx, byte [esi + 8]
mov dword [esp + 0x7c], eax
mov eax, dword [esp + 0x1c]
add eax, 9
cmp dword [esp + 0x4c], 9
mov dword [esp + 0x28], eax
mov eax, esi
mov esi, dword [esp + 0x1c]
mov byte [esi + 8], cl
lea esi, [edi - 9]
je 0x71c264
mov esi, eax
lea eax, [eax + 0xa]
movzx ecx, byte [esi + 9]
mov dword [esp + 0x7c], eax
mov eax, dword [esp + 0x1c]
add eax, 0xa
cmp dword [esp + 0x4c], 0xa
mov dword [esp + 0x28], eax
mov eax, esi
mov esi, dword [esp + 0x1c]
mov byte [esi + 9], cl
lea esi, [edi - 0xa]
je 0x71c264
mov esi, eax
lea eax, [eax + 0xb]
movzx ecx, byte [esi + 0xa]
mov dword [esp + 0x7c], eax
mov eax, dword [esp + 0x1c]
add eax, 0xb
cmp dword [esp + 0x4c], 0xb
mov dword [esp + 0x28], eax
mov eax, esi
mov esi, dword [esp + 0x1c]
mov byte [esi + 0xa], cl
lea esi, [edi - 0xb]
je 0x71c264
mov esi, eax
lea eax, [eax + 0xc]
movzx ecx, byte [esi + 0xb]
mov dword [esp + 0x7c], eax
mov eax, dword [esp + 0x1c]
add eax, 0xc
cmp dword [esp + 0x4c], 0xc
mov dword [esp + 0x28], eax
mov eax, esi
mov esi, dword [esp + 0x1c]
mov byte [esi + 0xb], cl
lea esi, [edi - 0xc]
je 0x71c264
mov esi, eax
lea eax, [eax + 0xd]
movzx ecx, byte [esi + 0xc]
mov dword [esp + 0x7c], eax
mov eax, dword [esp + 0x1c]
add eax, 0xd
cmp dword [esp + 0x4c], 0xd
mov dword [esp + 0x28], eax
mov eax, esi
mov esi, dword [esp + 0x1c]
mov byte [esi + 0xc], cl
lea esi, [edi - 0xd]
je 0x71c264
mov esi, eax
lea eax, [eax + 0xe]
movzx ecx, byte [esi + 0xd]
mov dword [esp + 0x7c], eax
mov eax, dword [esp + 0x1c]
add eax, 0xe
cmp dword [esp + 0x4c], 0xf
mov dword [esp + 0x28], eax
mov eax, esi
mov esi, dword [esp + 0x1c]
mov byte [esi + 0xd], cl
lea esi, [edi - 0xe]
jne 0x71c264
mov esi, eax
lea ecx, [eax + 0xf]
mov eax, dword [esp + 0x1c]
mov dword [esp + 0x7c], ecx
lea ecx, [eax + 0xf]
mov dword [esp + 0x28], ecx
movzx ecx, byte [esi + 0xe]
lea esi, [edi - 0xf]
mov byte [eax + 0xe], cl
mov ecx, dword [esp + 0x4c]
mov edi, dword [esp + 0x20]
mov dword [esp + 0x1c], ebx
mov dword [esp + 0x20], 0
add edi, ecx
add edi, dword [esp + 0x88]
mov eax, edi
mov edi, dword [esp + 0x68]
mov ebx, eax
add edi, ecx
mov ecx, dword [esp + 0x7c]
movdqa xmm3, xmmword [edi]
add ebx, 0x10
add edi, 0x10
add dword [esp + 0x20], 1
mov eax, dword [esp + 0x20]
movups xmmword [ebx - 0x10], xmm3
cmp eax, dword [esp + 0x44]
jb 0x71c28f
mov edi, ecx
mov eax, dword [esp + 0x28]
mov ecx, dword [esp + 0x3c]
mov ebx, dword [esp + 0x1c]
add eax, ecx
mov dword [esp + 0x1c], eax
mov eax, esi
mov esi, edi
sub eax, ecx
add esi, ecx
cmp ecx, dword [esp + 0x34]
je 0x71bb47
mov edi, dword [esp + 0x1c]
add eax, esi
movsb byte es:[edi], byte [esi]
cmp eax, esi
jne 0x71c2d8
jmp 0x71bb47
mov eax, dword [esp + 0x1c]
mov esi, dword [esp + 0x7c]
mov edi, dword [esp + 0x88]
mov ecx, dword [esp + 0x20]
add eax, esi
movsb byte es:[edi], byte [esi]
cmp eax, esi
jne 0x71c2f7
jmp 0x71b703
mov eax, dword [esp + 0x68]
add eax, dword [esp + 0x58]
mov edi, dword [esp + 0x88]
mov esi, dword [esp + 0x7c]
movsb byte es:[edi], byte [esi]
cmp esi, eax
jne 0x71c314
jmp 0x71bb47
mov ecx, esi
mov edi, dword [esp + 0x88]
mov esi, dword [esp + 0x7c]
jmp 0x71bf16
mov dword [esp + 0x20], eax
mov eax, dword [esp + 0x2c]
mov dword [esp + 0x28], eax
mov eax, dword [esp + 0x88]
mov dword [esp + 0x1c], eax
jmp 0x71beb5
mov eax, dword [esp + 0x1c]
mov edi, dword [esp + 0x88]
mov esi, dword [esp + 0x7c]
mov dword [esp + 0x10], eax
jmp 0x71b6f4
mov esi, dword [esp + 0x7c]
mov edi, dword [esp + 0x88]
mov dword [esp + 0x14], esi
mov esi, dword [esp + 0x1c]
mov dword [esp + 0x10], esi
jmp 0x71b686
mov eax, dword [esp + 0x7c]
mov edi, esi
mov dword [esp + 0x28], eax
mov eax, dword [esp + 0x2c]
mov dword [esp + 0x20], eax
jmp 0x71badc
mov edi, esi
mov ecx, dword [esp + 0x2c]
mov esi, dword [esp + 0x7c]
jmp 0x71bb3f
mov esi, dword [esp + 0x40]
jmp 0x71c264
mov esi, dword [esp + 0x68]
mov eax, dword [esp + 0x58]
mov edi, dword [esp + 0x1c]
add eax, esi
movsb byte es:[edi], byte [esi]
cmp eax, esi
jne 0x71c3bd
jmp 0x71bb47
mov eax, dword [esp + 0x68]
mov esi, dword [esp + 0x58]
mov dword [esp + 0x7c], eax
mov eax, dword [esp + 0x1c]
mov dword [esp + 0x28], eax
jmp 0x71c264
mov esi, dword [esp + 0x68]
mov eax, dword [esp + 0x58]
jmp 0x71c2d2