Function at 0x41aaf8
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 0x41ab6d
push dword [esp + 0x28]
call fcn.0041a526
mov ecx, esi
call fcn.0041a5d4
test al, al
je 0x41b200
lea edi, [esi + 0x7c]
mov ecx, esi
lea ebx, [esi + 4]
push edi
push ebx
mov dword [esp + 0x14], ebx
call fcn.00419f38
test al, al
je 0x41b200
lea eax, [esi + 0x90]
mov ecx, esi
push eax
push edi
push ebx
call fcn.0041a152
test al, al
je 0x41b200
cmp byte [esi + 0xb05a], 0
jne 0x41ab74
jmp 0x41b200
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 0x41ab89
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 0x41ac09
lea edi, [esi + 0x7c]
mov eax, dword [esi + 0x84]
dec eax
add eax, dword [edi]
cmp dword [ebp], eax
jg 0x41abc0
jne 0x41abf7
mov eax, dword [esi + 8]
cmp eax, dword [esi + 0x80]
jl 0x41abf7
cmp byte [esi + 0x8c], 0
jne 0x41b1f8
push edi
push ebp
mov ecx, esi
call fcn.00419f38
test al, al
je 0x41b1ff
lea eax, [esi + 0x90]
mov ecx, esi
push eax
push edi
push ebp
call fcn.0041a152
test al, al
jne 0x41aba5
jmp 0x41b1ff
mov ecx, esi
call fcn.0041a5d4
test al, al
je 0x41b1f8
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 0x41ac1f
add eax, ecx
cmp eax, 0x1004
ja 0x41ac64
cmp edx, dword [edi]
je 0x41ac64
mov ecx, esi
call fcn.0041a744
mov eax, dword [esi + 0x2e54]
cmp eax, dword [esi + 0x2e44]
jg 0x41b1ff
jl 0x41ac57
mov eax, dword [esi + 0x2e50]
cmp eax, dword [esi + 0x2e40]
ja 0x41b1ff
cmp byte [esi + 0x2e48], 0
jne 0x41b693
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 0x41acac
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 0x41ad0a
push 0xf
pop edi
inc eax
cmp eax, edi
jae 0x41accb
lea ecx, [eax + 0x25]
lea ecx, [esi + ecx*4]
cmp edx, dword [ecx]
jb 0x41acc9
inc eax
add ecx, 4
cmp eax, 0xf
jb 0x41acba
jmp 0x41accb
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 0x41ad4d
cmp byte [esi + 0x2e38], 0
je 0x41ad38
mov ecx, dword [edi]
push ecx
lea eax, [ecx + 1]
lea ecx, [esi + 0x2d34]
mov dword [edi], eax
call fcn.0041909d
mov byte [eax], bl
jmp 0x41ab78
mov ecx, dword [esi + 0x2d30]
mov eax, dword [edi]
mov byte [ecx + eax], bl
lea ecx, [esi + 0x64]
inc dword [ecx]
jmp 0x41ab7b
cmp ebx, 0x106
jb 0x41b1cb
lea edi, [ebx - 0x106]
cmp edi, 8
jae 0x41ad69
add edi, 2
jmp 0x41ada3
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 0x41ada3
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 0x41adeb
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 0x41ae49
push 0xf
pop ebx
inc eax
cmp eax, ebx
jae 0x41ae0d
lea ecx, [eax + 0x260]
lea ecx, [esi + ecx*4]
cmp edx, dword [ecx]
jb 0x41ae0b
inc eax
add ecx, 4
cmp eax, 0xf
jb 0x41adfc
jmp 0x41ae0d
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 0x41ae59
lea ebx, [eax + 1]
jmp 0x41afd3
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 0x41afd0
cmp ebp, 4
jb 0x41afa3
jbe 0x41aec2
lea ecx, [esi + 4]
cmp ebp, 0x24
jbe 0x41ae93
call fcn.0041cc8c
push 0x44
jmp 0x41ae9a
call fcn.0041cc5d
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 0x41aec5
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 0x41af1a
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 0x41af91
push 0xf
pop ecx
inc eax
mov dword [esp + 0x14], ecx
cmp eax, ecx
jae 0x41af42
lea ecx, [eax + 0x49b]
lea ecx, [esi + ecx*4]
cmp edx, dword [ecx]
jb 0x41af3e
inc eax
add ecx, 4
cmp eax, 0xf
jb 0x41af2f
jmp 0x41af42
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 0x41afd3
or ebx, 0xffffffff
jmp 0x41afd3
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 0x41afd3
lea ebp, [esi + 4]
cmp ebx, 0x100
jbe 0x41afee
inc edi
cmp ebx, 0x2000
jbe 0x41afee
inc edi
cmp ebx, 0x40000
jbe 0x41afee
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 0x41b030
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.00419376
jmp 0x41ab78
lea ecx, [esi + 0x64]
mov edx, dword [ecx]
mov ebp, edx
sub ebp, ebx
cmp ebx, edx
jbe 0x41b07f
mov eax, dword [esi + 0xb0c0]
add ebp, eax
cmp ebx, eax
ja 0x41b04f
cmp byte [esi + 0x6c], 0
jne 0x41b07f
lea ebp, [esi + 4]
test edi, edi
je 0x41ab7b
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 0x41b074
sub edx, eax
mov dword [ecx], edx
test edi, edi
jne 0x41b05a
jmp 0x41b68b
mov eax, dword [esi + 0xb0c0]
lea ecx, [eax - 0x1004]
cmp ebp, ecx
jae 0x41b193
cmp edx, ecx
jae 0x41b193
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 0x41b127
cmp ebx, edi
jae 0x41b0fd
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 0x41b0be
jmp 0x41b127
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 0x41b102
test edi, edi
je 0x41ab75
mov al, byte [ebp]
mov byte [ecx], al
cmp edi, 1
jbe 0x41ab75
mov al, byte [ebp + 1]
mov byte [ecx + 1], al
cmp edi, 2
jbe 0x41ab75
mov al, byte [ebp + 2]
mov byte [ecx + 2], al
cmp edi, 3
jbe 0x41ab75
mov al, byte [ebp + 3]
mov byte [ecx + 3], al
cmp edi, 4
jbe 0x41ab75
mov al, byte [ebp + 4]
mov byte [ecx + 4], al
cmp edi, 5
jbe 0x41ab75
mov al, byte [ebp + 5]
mov byte [ecx + 5], al
cmp edi, 6
jbe 0x41ab75
mov al, byte [ebp + 6]
mov byte [ecx + 6], al
jmp 0x41ab75
lea ecx, [esi + 0x64]
jmp 0x41b1c2
dec edi
mov ebx, ebp
cmp ebp, eax
jb 0x41b1a1
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 0x41b1c0
sub edx, eax
mov dword [ecx], edx
test edi, edi
jne 0x41b198
jmp 0x41b68b
cmp ebx, 0x100
jne 0x41b209
lea eax, [esp + 0x1c]
mov ecx, esi
push eax
push ebp
call fcn.0041a06a
test al, al
je 0x41b1f8
lea eax, [esp + 0x1c]
mov ecx, esi
push eax
call fcn.00419166
test al, al
jne 0x41ab78
mov ecx, esi
call fcn.0041a744
pop ebp
pop edi
pop esi
pop ebx
add esp, 0x18
ret 4
cmp ebx, 0x101
jne 0x41b3d1
mov edx, dword [esi + 0x5c]
test edx, edx
je 0x41ab78
cmp byte [esi + 0x2e38], 0
je 0x41b23e
push dword [esi + 0xb0c0]
movzx eax, byte [esi + 0x6c]
push eax
push edi
push dword [esi + 0x48]
push edx
jmp 0x41b020
mov edi, dword [edi]
mov ebx, edi
mov ecx, dword [esi + 0x48]
sub ebx, ecx
cmp ecx, edi
jbe 0x41b285
mov eax, dword [esi + 0xb0c0]
add ebx, eax
cmp ecx, eax
ja 0x41b25d
cmp byte [esi + 0x6c], 0
jne 0x41b285
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 0x41b27a
sub edi, eax
mov dword [ecx], edi
test edx, edx
jne 0x41b260
jmp 0x41ab7b
mov eax, dword [esi + 0xb0c0]
lea ebp, [eax - 0x1004]
cmp ebx, ebp
jae 0x41b39e
cmp edi, ebp
jae 0x41b39e
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 0x41b31d
cmp ecx, edx
jae 0x41b2ff
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 0x41b2c0
jmp 0x41b31d
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 0x41b304
lea ecx, [esi + 0x64]
test edx, edx
je 0x41b68b
mov al, byte [ebx]
lea ecx, [esi + 0x64]
mov byte [ebp], al
cmp edx, 1
jbe 0x41b68b
mov al, byte [ebx + 1]
lea ecx, [esi + 0x64]
mov byte [ebp + 1], al
cmp edx, 2
jbe 0x41b68b
mov al, byte [ebx + 2]
lea ecx, [esi + 0x64]
mov byte [ebp + 2], al
cmp edx, 3
jbe 0x41b68b
mov al, byte [ebx + 3]
lea ecx, [esi + 0x64]
mov byte [ebp + 3], al
cmp edx, 4
jbe 0x41b68b
mov al, byte [ebx + 4]
lea ecx, [esi + 0x64]
mov byte [ebp + 4], al
cmp edx, 5
jbe 0x41b68b
mov al, byte [ebx + 5]
lea ecx, [esi + 0x64]
mov byte [ebp + 5], al
cmp edx, 6
jbe 0x41b68b
mov al, byte [ebx + 6]
mov byte [ebp + 6], al
jmp 0x41ab75
dec edx
mov ebp, ebx
cmp ebx, eax
jb 0x41b3a7
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 0x41b3c6
sub edi, eax
mov dword [ecx], edi
test edx, edx
jne 0x41b39e
jmp 0x41b68b
add ebx, 0xfffffefe
lea ecx, [ebx + 0x12]
lea ecx, [esi + ecx*4]
mov ebp, dword [ecx]
mov dword [esp + 0x14], ebp
je 0x41b3f2
mov eax, dword [ecx - 4]
mov dword [ecx], eax
lea ecx, [ecx - 4]
sub ebx, 1
jne 0x41b3e5
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 0x41b43f
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 0x41b49c
push 0xf
pop edi
inc eax
cmp eax, edi
jae 0x41b461
lea ecx, [eax + 0x6d6]
lea ecx, [esi + ecx*4]
cmp edx, dword [ecx]
jb 0x41b45f
inc eax
add ecx, 4
cmp eax, 0xf
jb 0x41b450
jmp 0x41b461
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 0x41b4a9
add edi, 2
jmp 0x41b4e4
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 0x41b4e4
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 0x41b511
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.00419376
jmp 0x41ab75
lea ecx, [esi + 0x64]
mov edx, dword [ecx]
mov ebx, edx
sub ebx, ebp
cmp ebp, edx
jbe 0x41b560
mov eax, dword [esi + 0xb0c0]
add ebx, eax
cmp ebp, eax
ja 0x41b530
cmp byte [esi + 0x6c], 0
jne 0x41b560
lea ebp, [esi + 4]
test edi, edi
je 0x41ab7b
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 0x41b555
sub edx, eax
mov dword [ecx], edx
test edi, edi
jne 0x41b53b
jmp 0x41b68b
mov eax, dword [esi + 0xb0c0]
lea ecx, [eax - 0x1004]
cmp ebx, ecx
jae 0x41b64f
cmp edx, ecx
jae 0x41b64f
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 0x41b5fe
cmp dword [esp + 0x14], edi
jae 0x41b5dd
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 0x41b5a1
jmp 0x41b5fb
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 0x41b5e2
lea ecx, [esi + 0x64]
test edi, edi
je 0x41b68b
mov al, byte [ebx]
mov byte [ebp], al
cmp edi, 1
jbe 0x41b68b
mov al, byte [ebx + 1]
mov byte [ebp + 1], al
cmp edi, 2
jbe 0x41b68b
mov al, byte [ebx + 2]
mov byte [ebp + 2], al
cmp edi, 3
jbe 0x41b68b
mov al, byte [ebx + 3]
mov byte [ebp + 3], al
cmp edi, 4
jbe 0x41b68b
mov al, byte [ebx + 4]
mov byte [ebp + 4], al
cmp edi, 5
jbe 0x41b68b
mov al, byte [ebx + 5]
mov byte [ebp + 5], al
cmp edi, 6
jbe 0x41b68b
mov al, byte [ebx + 6]
mov byte [ebp + 6], al
jmp 0x41b68b
lea ebp, [esi + 4]
lea ecx, [esi + 0x64]
test edi, edi
je 0x41ab7b
dec edi
mov ebp, ebx
cmp ebx, eax
jb 0x41b666
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 0x41b685
sub edx, eax
mov dword [ecx], edx
test edi, edi
jne 0x41b65d
lea ebp, [esi + 4]
jmp 0x41ab7b
mov byte [esi + 0x2e58], 0
jmp 0x41b1ff