Function at 0x41ab48
Capabilities:
Enumerate pe sections

Disassembly:
sub esp, 0x18
push ebx
push esi
mov esi, ecx
push edi
mov dword [esp + 0x14], esi
cmp byte [esi + 0x2e48], 0
mov byte [esi + 0x2e58], 1
jne 0x41abbd
push dword [esp + 0x28]
call fcn.0041a576
mov ecx, esi
call fcn.0041a624
test al, al
je 0x41b250
lea edi, [esi + 0x7c]
mov ecx, esi
lea ebx, [esi + 4]
push edi
push ebx
mov dword [esp + 0x14], ebx
call fcn.00419f88
test al, al
je 0x41b250
lea eax, [esi + 0x90]
mov ecx, esi
push eax
push edi
push ebx
call fcn.0041a1a2
test al, al
je 0x41b250
cmp byte [esi + 0xb05a], 0
jne 0x41abc4
jmp 0x41b250
lea eax, [esi + 4]
mov dword [esp + 0xc], eax
push ebp
lea ebp, [esi + 4]
lea ecx, [esi + 0x64]
mov ecx, dword [ecx]
mov eax, dword [esi + 0xb0c0]
cmp ecx, eax
jb 0x41abd9
sub ecx, eax
cmp dword [esi + 0x68], ecx
lea edi, [esi + 0x64]
mov dword [edi], ecx
seta al
mov dword [esi + 0x68], ecx
or byte [esi + 0x6c], al
mov eax, dword [ebp]
cmp eax, dword [esi + 0x78]
jl 0x41ac59
lea edi, [esi + 0x7c]
mov eax, dword [esi + 0x84]
dec eax
add eax, dword [edi]
cmp dword [ebp], eax
jg 0x41ac10
jne 0x41ac47
mov eax, dword [esi + 8]
cmp eax, dword [esi + 0x80]
jl 0x41ac47
cmp byte [esi + 0x8c], 0
jne 0x41b248
push edi
push ebp
mov ecx, esi
call fcn.00419f88
test al, al
je 0x41b24f
lea eax, [esi + 0x90]
mov ecx, esi
push eax
push edi
push ebp
call fcn.0041a1a2
test al, al
jne 0x41abf5
jmp 0x41b24f
mov ecx, esi
call fcn.0041a624
test al, al
je 0x41b248
lea edi, [esi + 0x64]
mov edx, dword [esi + 0x2d2c]
mov eax, edx
sub eax, dword [edi]
mov ecx, dword [esi + 0xb0c0]
cmp eax, ecx
jb 0x41ac6f
add eax, ecx
cmp eax, 0x1004
ja 0x41acb4
cmp edx, dword [edi]
je 0x41acb4
mov ecx, esi
call fcn.0041a794
mov eax, dword [esi + 0x2e54]
cmp eax, dword [esi + 0x2e44]
jg 0x41b24f
jl 0x41aca7
mov eax, dword [esi + 0x2e50]
cmp eax, dword [esi + 0x2e40]
ja 0x41b24f
cmp byte [esi + 0x2e48], 0
jne 0x41b6e3
mov ecx, ebp
call fcn.0040fad6
mov edx, eax
mov eax, dword [esi + 0x114]
and edx, 0xfffe
cmp edx, dword [esi + eax*4 + 0x94]
jae 0x41acfc
push 0x10
pop ecx
sub ecx, eax
shr edx, cl
movzx ecx, byte [edx + esi + 0x118]
add ecx, dword [ebp + 4]
mov eax, ecx
shr eax, 3
add dword [ebp], eax
and ecx, 7
mov dword [ebp + 4], ecx
movzx eax, word [esi + edx*2 + 0x318]
jmp 0x41ad5a
push 0xf
pop edi
inc eax
cmp eax, edi
jae 0x41ad1b
lea ecx, [eax + 0x25]
lea ecx, [esi + ecx*4]
cmp edx, dword [ecx]
jb 0x41ad19
inc eax
add ecx, 4
cmp eax, 0xf
jb 0x41ad0a
jmp 0x41ad1b
mov edi, eax
mov ecx, dword [ebp + 4]
add ecx, edi
mov eax, ecx
and ecx, 7
mov dword [ebp + 4], ecx
shr eax, 3
add dword [ebp], eax
sub edx, dword [esi + edi*4 + 0x90]
push 0x10
pop ecx
sub ecx, edi
shr edx, cl
mov ecx, dword [esi + edi*4 + 0xd4]
lea edi, [esi + 0x64]
add ecx, edx
cmp ecx, dword [esi + 0x90]
sbb eax, eax
and eax, ecx
movzx eax, word [esi + eax*2 + 0x718]
movzx ebx, ax
cmp ebx, 0x100
jae 0x41ad9d
cmp byte [esi + 0x2e38], 0
je 0x41ad88
mov ecx, dword [edi]
push ecx
lea eax, [ecx + 1]
lea ecx, [esi + 0x2d34]
mov dword [edi], eax
call fcn.004190ed
mov byte [eax], bl
jmp 0x41abc8
mov ecx, dword [esi + 0x2d30]
mov eax, dword [edi]
mov byte [ecx + eax], bl
lea ecx, [esi + 0x64]
inc dword [ecx]
jmp 0x41abcb
cmp ebx, 0x106
jb 0x41b21b
lea edi, [ebx - 0x106]
cmp edi, 8
jae 0x41adb9
add edi, 2
jmp 0x41adf3
mov ebx, edi
and edi, 3
shr ebx, 2
or edi, 4
dec ebx
mov ecx, ebx
shl edi, cl
add edi, 2
test ebx, ebx
je 0x41adf3
mov ecx, ebp
call fcn.0040fad6
push 0x10
pop ecx
sub ecx, ebx
shr eax, cl
mov ecx, dword [ebp + 4]
add edi, eax
add ecx, ebx
mov eax, ecx
shr eax, 3
add dword [ebp], eax
and ecx, 7
mov dword [ebp + 4], ecx
mov ecx, ebp
call fcn.0040fad6
mov edx, eax
mov eax, dword [esi + 0xa00]
and edx, 0xfffe
cmp edx, dword [esi + eax*4 + 0x980]
jae 0x41ae3b
push 0x10
pop ecx
sub ecx, eax
shr edx, cl
movzx ecx, byte [edx + esi + 0xa04]
add ecx, dword [ebp + 4]
mov eax, ecx
shr eax, 3
add dword [ebp], eax
and ecx, 7
mov dword [ebp + 4], ecx
movzx eax, word [esi + edx*2 + 0xc04]
jmp 0x41ae99
push 0xf
pop ebx
inc eax
cmp eax, ebx
jae 0x41ae5d
lea ecx, [eax + 0x260]
lea ecx, [esi + ecx*4]
cmp edx, dword [ecx]
jb 0x41ae5b
inc eax
add ecx, 4
cmp eax, 0xf
jb 0x41ae4c
jmp 0x41ae5d
mov ebx, eax
mov ecx, dword [ebp + 4]
add ecx, ebx
mov eax, ecx
and ecx, 7
mov dword [ebp + 4], ecx
shr eax, 3
add dword [ebp], eax
sub edx, dword [esi + ebx*4 + 0x97c]
push 0x10
pop ecx
sub ecx, ebx
shr edx, cl
mov ecx, dword [esi + ebx*4 + 0x9c0]
add ecx, edx
cmp ecx, dword [esi + 0x97c]
sbb eax, eax
and eax, ecx
movzx eax, word [esi + eax*2 + 0x1004]
movzx eax, ax
cmp eax, 4
jae 0x41aea9
lea ebx, [eax + 1]
jmp 0x41b023
mov ebp, eax
and eax, 1
shr ebp, 1
or eax, 2
dec ebp
mov ecx, ebp
shl eax, cl
inc eax
mov dword [esp + 0x14], eax
mov ebx, eax
test ebp, ebp
je 0x41b020
cmp ebp, 4
jb 0x41aff3
jbe 0x41af12
lea ecx, [esi + 4]
cmp ebp, 0x24
jbe 0x41aee3
call fcn.0041ccdc
push 0x44
jmp 0x41aeea
call fcn.0041ccad
push 0x24
pop ecx
sub ecx, ebp
lea edx, [esi + 4]
mov ebx, eax
shr ebx, cl
mov ecx, dword [edx + 4]
add ecx, 0xfffffffc
shl ebx, 4
add ecx, ebp
mov eax, ecx
and ecx, 7
shr eax, 3
add dword [edx], eax
add ebx, dword [esp + 0x14]
mov dword [edx + 4], ecx
jmp 0x41af15
lea edx, [esi + 4]
mov ecx, edx
call fcn.0040fad6
mov edx, eax
mov eax, dword [esi + 0x12ec]
and edx, 0xfffe
cmp edx, dword [esi + eax*4 + 0x126c]
jae 0x41af6a
push 0x10
pop ecx
sub ecx, eax
mov eax, dword [esp + 0x10]
shr edx, cl
movzx ecx, byte [edx + esi + 0x12f0]
add ecx, dword [eax + 4]
mov esi, dword [esp + 0x10]
mov eax, ecx
shr eax, 3
add dword [esi], eax
mov eax, esi
mov esi, dword [esp + 0x18]
and ecx, 7
mov dword [eax + 4], ecx
movzx eax, word [esi + edx*2 + 0x14f0]
jmp 0x41afe1
push 0xf
pop ecx
inc eax
mov dword [esp + 0x14], ecx
cmp eax, ecx
jae 0x41af92
lea ecx, [eax + 0x49b]
lea ecx, [esi + ecx*4]
cmp edx, dword [ecx]
jb 0x41af8e
inc eax
add ecx, 4
cmp eax, 0xf
jb 0x41af7f
jmp 0x41af92
mov dword [esp + 0x14], eax
mov eax, dword [esp + 0x10]
mov esi, dword [esp + 0x10]
push 0x10
mov ecx, dword [eax + 4]
add ecx, dword [esp + 0x18]
mov eax, ecx
and ecx, 7
shr eax, 3
add dword [esi], eax
mov eax, esi
mov esi, dword [esp + 0x1c]
mov dword [eax + 4], ecx
mov eax, dword [esp + 0x18]
pop ecx
sub ecx, eax
sub edx, dword [esi + eax*4 + 0x1268]
shr edx, cl
mov ecx, dword [esi + eax*4 + 0x12ac]
add ecx, edx
cmp ecx, dword [esi + 0x1268]
sbb eax, eax
and eax, ecx
movzx eax, word [esi + eax*2 + 0x18f0]
movzx eax, ax
add ebx, eax
cmp ebp, 0x1e
lea ebp, [esi + 4]
jb 0x41b023
or ebx, 0xffffffff
jmp 0x41b023
lea ecx, [esi + 4]
call fcn.0040fad6
push 0x10
mov ebx, eax
pop ecx
sub ecx, ebp
shr ebx, cl
mov ecx, dword [esi + 8]
add ebx, dword [esp + 0x14]
add ecx, ebp
mov eax, ecx
lea ebp, [esi + 4]
shr eax, 3
add dword [ebp], eax
and ecx, 7
mov dword [ebp + 4], ecx
jmp 0x41b023
lea ebp, [esi + 4]
cmp ebx, 0x100
jbe 0x41b03e
inc edi
cmp ebx, 0x2000
jbe 0x41b03e
inc edi
cmp ebx, 0x40000
jbe 0x41b03e
inc edi
mov eax, dword [esi + 0x50]
mov dword [esi + 0x54], eax
mov eax, dword [esi + 0x4c]
mov dword [esi + 0x50], eax
mov eax, dword [esi + 0x48]
mov dword [esi + 0x4c], eax
mov dword [esi + 0x48], ebx
cmp byte [esi + 0x2e38], 0
mov dword [esi + 0x5c], edi
je 0x41b080
push dword [esi + 0xb0c0]
movzx eax, byte [esi + 0x6c]
push eax
lea eax, [esi + 0x64]
push eax
push ebx
push edi
lea ecx, [esi + 0x2d34]
call fcn.004193c6
jmp 0x41abc8
lea ecx, [esi + 0x64]
mov edx, dword [ecx]
mov ebp, edx
sub ebp, ebx
cmp ebx, edx
jbe 0x41b0cf
mov eax, dword [esi + 0xb0c0]
add ebp, eax
cmp ebx, eax
ja 0x41b09f
cmp byte [esi + 0x6c], 0
jne 0x41b0cf
lea ebp, [esi + 4]
test edi, edi
je 0x41abcb
mov eax, dword [esi + 0x2d30]
dec edi
mov byte [edx + eax], 0
mov edx, dword [ecx]
mov eax, dword [esi + 0xb0c0]
inc edx
cmp edx, eax
jb 0x41b0c4
sub edx, eax
mov dword [ecx], edx
test edi, edi
jne 0x41b0aa
jmp 0x41b6db
mov eax, dword [esi + 0xb0c0]
lea ecx, [eax - 0x1004]
cmp ebp, ecx
jae 0x41b1e3
cmp edx, ecx
jae 0x41b1e3
mov eax, dword [esi + 0x2d30]
add ebp, eax
lea ecx, [edx + eax]
mov dword [esp + 0x14], ecx
lea eax, [edx + edi]
mov dword [esi + 0x64], eax
cmp edi, 8
jb 0x41b177
cmp ebx, edi
jae 0x41b14d
mov edx, edi
shr edx, 3
mov al, byte [ebp]
sub edi, 8
mov byte [ecx], al
mov al, byte [ebp + 1]
mov byte [ecx + 1], al
mov al, byte [ebp + 2]
mov byte [ecx + 2], al
mov al, byte [ebp + 3]
mov byte [ecx + 3], al
mov al, byte [ebp + 4]
mov byte [ecx + 4], al
mov al, byte [ebp + 5]
mov byte [ecx + 5], al
mov al, byte [ebp + 6]
mov byte [ecx + 6], al
mov al, byte [ebp + 7]
add ebp, 8
mov byte [ecx + 7], al
add ecx, 8
sub edx, 1
jne 0x41b10e
jmp 0x41b177
mov ebx, edi
shr ebx, 3
mov edx, dword [esp + 0x14]
mov ecx, dword [ebp + 4]
mov eax, dword [ebp]
push 8
mov dword [edx + 4], ecx
mov ecx, dword [esp + 0x18]
mov dword [edx], eax
pop edx
add ecx, edx
add ebp, edx
sub edi, edx
mov dword [esp + 0x14], ecx
sub ebx, 1
jne 0x41b152
test edi, edi
je 0x41abc5
mov al, byte [ebp]
mov byte [ecx], al
cmp edi, 1
jbe 0x41abc5
mov al, byte [ebp + 1]
mov byte [ecx + 1], al
cmp edi, 2
jbe 0x41abc5
mov al, byte [ebp + 2]
mov byte [ecx + 2], al
cmp edi, 3
jbe 0x41abc5
mov al, byte [ebp + 3]
mov byte [ecx + 3], al
cmp edi, 4
jbe 0x41abc5
mov al, byte [ebp + 4]
mov byte [ecx + 4], al
cmp edi, 5
jbe 0x41abc5
mov al, byte [ebp + 5]
mov byte [ecx + 5], al
cmp edi, 6
jbe 0x41abc5
mov al, byte [ebp + 6]
mov byte [ecx + 6], al
jmp 0x41abc5
lea ecx, [esi + 0x64]
jmp 0x41b212
dec edi
mov ebx, ebp
cmp ebp, eax
jb 0x41b1f1
sub ebx, eax
mov ecx, dword [esi + 0x2d30]
inc ebp
mov al, byte [ebx + ecx]
mov byte [edx + ecx], al
lea ecx, [esi + 0x64]
mov edx, dword [ecx]
mov eax, dword [esi + 0xb0c0]
inc edx
cmp edx, eax
jb 0x41b210
sub edx, eax
mov dword [ecx], edx
test edi, edi
jne 0x41b1e8
jmp 0x41b6db
cmp ebx, 0x100
jne 0x41b259
lea eax, [esp + 0x1c]
mov ecx, esi
push eax
push ebp
call fcn.0041a0ba
test al, al
je 0x41b248
lea eax, [esp + 0x1c]
mov ecx, esi
push eax
call fcn.004191b6
test al, al
jne 0x41abc8
mov ecx, esi
call fcn.0041a794
pop ebp
pop edi
pop esi
pop ebx
add esp, 0x18
ret 4
cmp ebx, 0x101
jne 0x41b421
mov edx, dword [esi + 0x5c]
test edx, edx
je 0x41abc8
cmp byte [esi + 0x2e38], 0
je 0x41b28e
push dword [esi + 0xb0c0]
movzx eax, byte [esi + 0x6c]
push eax
push edi
push dword [esi + 0x48]
push edx
jmp 0x41b070
mov edi, dword [edi]
mov ebx, edi
mov ecx, dword [esi + 0x48]
sub ebx, ecx
cmp ecx, edi
jbe 0x41b2d5
mov eax, dword [esi + 0xb0c0]
add ebx, eax
cmp ecx, eax
ja 0x41b2ad
cmp byte [esi + 0x6c], 0
jne 0x41b2d5
lea ecx, [esi + 0x64]
mov eax, dword [esi + 0x2d30]
dec edx
mov byte [edi + eax], 0
mov edi, dword [ecx]
mov eax, dword [esi + 0xb0c0]
inc edi
cmp edi, eax
jb 0x41b2ca
sub edi, eax
mov dword [ecx], edi
test edx, edx
jne 0x41b2b0
jmp 0x41abcb
mov eax, dword [esi + 0xb0c0]
lea ebp, [eax - 0x1004]
cmp ebx, ebp
jae 0x41b3ee
cmp edi, ebp
jae 0x41b3ee
mov eax, dword [esi + 0x2d30]
add ebx, eax
lea ebp, [edi + eax]
lea eax, [edx + edi]
mov dword [esi + 0x64], eax
cmp edx, 8
jb 0x41b36d
cmp ecx, edx
jae 0x41b34f
mov ecx, edx
shr ecx, 3
mov al, byte [ebx]
sub edx, 8
mov byte [ebp], al
mov al, byte [ebx + 1]
mov byte [ebp + 1], al
mov al, byte [ebx + 2]
mov byte [ebp + 2], al
mov al, byte [ebx + 3]
mov byte [ebp + 3], al
mov al, byte [ebx + 4]
mov byte [ebp + 4], al
mov al, byte [ebx + 5]
mov byte [ebp + 5], al
mov al, byte [ebx + 6]
mov byte [ebp + 6], al
mov al, byte [ebx + 7]
add ebx, 8
mov byte [ebp + 7], al
add ebp, 8
sub ecx, 1
jne 0x41b310
jmp 0x41b36d
mov edi, edx
shr edi, 3
mov eax, dword [ebx]
sub edx, 8
mov ecx, dword [ebx + 4]
add ebx, 8
mov dword [ebp], eax
mov dword [ebp + 4], ecx
add ebp, 8
sub edi, 1
jne 0x41b354
lea ecx, [esi + 0x64]
test edx, edx
je 0x41b6db
mov al, byte [ebx]
lea ecx, [esi + 0x64]
mov byte [ebp], al
cmp edx, 1
jbe 0x41b6db
mov al, byte [ebx + 1]
lea ecx, [esi + 0x64]
mov byte [ebp + 1], al
cmp edx, 2
jbe 0x41b6db
mov al, byte [ebx + 2]
lea ecx, [esi + 0x64]
mov byte [ebp + 2], al
cmp edx, 3
jbe 0x41b6db
mov al, byte [ebx + 3]
lea ecx, [esi + 0x64]
mov byte [ebp + 3], al
cmp edx, 4
jbe 0x41b6db
mov al, byte [ebx + 4]
lea ecx, [esi + 0x64]
mov byte [ebp + 4], al
cmp edx, 5
jbe 0x41b6db
mov al, byte [ebx + 5]
lea ecx, [esi + 0x64]
mov byte [ebp + 5], al
cmp edx, 6
jbe 0x41b6db
mov al, byte [ebx + 6]
mov byte [ebp + 6], al
jmp 0x41abc5
dec edx
mov ebp, ebx
cmp ebx, eax
jb 0x41b3f7
sub ebp, eax
mov ecx, dword [esi + 0x2d30]
inc ebx
mov al, byte [ecx + ebp]
mov byte [edi + ecx], al
lea ecx, [esi + 0x64]
mov edi, dword [ecx]
mov eax, dword [esi + 0xb0c0]
inc edi
cmp edi, eax
jb 0x41b416
sub edi, eax
mov dword [ecx], edi
test edx, edx
jne 0x41b3ee
jmp 0x41b6db
add ebx, 0xfffffefe
lea ecx, [ebx + 0x12]
lea ecx, [esi + ecx*4]
mov ebp, dword [ecx]
mov dword [esp + 0x14], ebp
je 0x41b442
mov eax, dword [ecx - 4]
mov dword [ecx], eax
lea ecx, [ecx - 4]
sub ebx, 1
jne 0x41b435
lea ebx, [esi + 4]
mov dword [esi + 0x48], ebp
mov ecx, ebx
call fcn.0040fad6
mov edx, eax
mov eax, dword [esi + 0x1bd8]
and edx, 0xfffe
cmp edx, dword [esi + eax*4 + 0x1b58]
jae 0x41b48f
push 0x10
pop ecx
sub ecx, eax
shr edx, cl
movzx ecx, byte [edx + esi + 0x1bdc]
add ecx, dword [ebx + 4]
mov eax, ecx
shr eax, 3
add dword [ebx], eax
and ecx, 7
mov dword [ebx + 4], ecx
movzx eax, word [esi + edx*2 + 0x1ddc]
jmp 0x41b4ec
push 0xf
pop edi
inc eax
cmp eax, edi
jae 0x41b4b1
lea ecx, [eax + 0x6d6]
lea ecx, [esi + ecx*4]
cmp edx, dword [ecx]
jb 0x41b4af
inc eax
add ecx, 4
cmp eax, 0xf
jb 0x41b4a0
jmp 0x41b4b1
mov edi, eax
mov ecx, dword [ebx + 4]
add ecx, edi
mov eax, ecx
and ecx, 7
mov dword [ebx + 4], ecx
shr eax, 3
add dword [ebx], eax
sub edx, dword [esi + edi*4 + 0x1b54]
push 0x10
pop ecx
sub ecx, edi
shr edx, cl
mov ecx, dword [esi + edi*4 + 0x1b98]
add ecx, edx
cmp ecx, dword [esi + 0x1b54]
sbb eax, eax
and eax, ecx
movzx eax, word [esi + eax*2 + 0x21dc]
movzx edi, ax
cmp edi, 8
jae 0x41b4f9
add edi, 2
jmp 0x41b534
mov ebx, edi
and edi, 3
shr ebx, 2
or edi, 4
dec ebx
mov ecx, ebx
shl edi, cl
add edi, 2
test ebx, ebx
je 0x41b534
lea ecx, [esi + 4]
call fcn.0040fad6
push 0x10
pop ecx
sub ecx, ebx
shr eax, cl
mov ecx, dword [esi + 8]
add edi, eax
add ecx, ebx
mov eax, ecx
shr eax, 3
add dword [esi + 4], eax
and ecx, 7
mov dword [esi + 8], ecx
cmp byte [esi + 0x2e38], 0
mov dword [esi + 0x5c], edi
je 0x41b561
push dword [esi + 0xb0c0]
movzx eax, byte [esi + 0x6c]
lea ecx, [esi + 0x2d34]
push eax
lea eax, [esi + 0x64]
push eax
push ebp
push edi
call fcn.004193c6
jmp 0x41abc5
lea ecx, [esi + 0x64]
mov edx, dword [ecx]
mov ebx, edx
sub ebx, ebp
cmp ebp, edx
jbe 0x41b5b0
mov eax, dword [esi + 0xb0c0]
add ebx, eax
cmp ebp, eax
ja 0x41b580
cmp byte [esi + 0x6c], 0
jne 0x41b5b0
lea ebp, [esi + 4]
test edi, edi
je 0x41abcb
mov eax, dword [esi + 0x2d30]
dec edi
mov byte [edx + eax], 0
mov edx, dword [ecx]
mov eax, dword [esi + 0xb0c0]
inc edx
cmp edx, eax
jb 0x41b5a5
sub edx, eax
mov dword [ecx], edx
test edi, edi
jne 0x41b58b
jmp 0x41b6db
mov eax, dword [esi + 0xb0c0]
lea ecx, [eax - 0x1004]
cmp ebx, ecx
jae 0x41b69f
cmp edx, ecx
jae 0x41b69f
mov eax, dword [esi + 0x2d30]
lea ecx, [esi + 0x64]
add ebx, eax
push 8
lea ebp, [edx + eax]
lea eax, [edi + edx]
pop edx
mov dword [ecx], eax
cmp edi, edx
jb 0x41b64e
cmp dword [esp + 0x14], edi
jae 0x41b62d
mov ecx, edi
shr ecx, 3
mov al, byte [ebx]
sub edi, edx
mov byte [ebp], al
mov al, byte [ebx + 1]
mov byte [ebp + 1], al
mov al, byte [ebx + 2]
mov byte [ebp + 2], al
mov al, byte [ebx + 3]
mov byte [ebp + 3], al
mov al, byte [ebx + 4]
mov byte [ebp + 4], al
mov al, byte [ebx + 5]
mov byte [ebp + 5], al
mov al, byte [ebx + 6]
mov byte [ebp + 6], al
mov al, byte [ebx + 7]
add ebx, edx
mov byte [ebp + 7], al
add ebp, edx
sub ecx, 1
jne 0x41b5f1
jmp 0x41b64b
mov edx, edi
shr edx, 3
mov eax, dword [ebx]
sub edi, 8
mov ecx, dword [ebx + 4]
add ebx, 8
mov dword [ebp], eax
mov dword [ebp + 4], ecx
add ebp, 8
sub edx, 1
jne 0x41b632
lea ecx, [esi + 0x64]
test edi, edi
je 0x41b6db
mov al, byte [ebx]
mov byte [ebp], al
cmp edi, 1
jbe 0x41b6db
mov al, byte [ebx + 1]
mov byte [ebp + 1], al
cmp edi, 2
jbe 0x41b6db
mov al, byte [ebx + 2]
mov byte [ebp + 2], al
cmp edi, 3
jbe 0x41b6db
mov al, byte [ebx + 3]
mov byte [ebp + 3], al
cmp edi, 4
jbe 0x41b6db
mov al, byte [ebx + 4]
mov byte [ebp + 4], al
cmp edi, 5
jbe 0x41b6db
mov al, byte [ebx + 5]
mov byte [ebp + 5], al
cmp edi, 6
jbe 0x41b6db
mov al, byte [ebx + 6]
mov byte [ebp + 6], al
jmp 0x41b6db
lea ebp, [esi + 4]
lea ecx, [esi + 0x64]
test edi, edi
je 0x41abcb
dec edi
mov ebp, ebx
cmp ebx, eax
jb 0x41b6b6
sub ebp, eax
mov ecx, dword [esi + 0x2d30]
inc ebx
mov al, byte [ecx + ebp]
mov byte [edx + ecx], al
lea ecx, [esi + 0x64]
mov edx, dword [ecx]
mov eax, dword [esi + 0xb0c0]
inc edx
cmp edx, eax
jb 0x41b6d5
sub edx, eax
mov dword [ecx], edx
test edi, edi
jne 0x41b6ad
lea ebp, [esi + 4]
jmp 0x41abcb
mov byte [esi + 0x2e58], 0
jmp 0x41b24f