Function at 0x4af4d0
Capabilities:
Enumerate pe sections

Disassembly:
sub esp, 0x50
push ebx
push ebp
push esi
mov esi, dword [esp + 0x60]
push edi
mov ebx, dword [esi + 0x28]
lea eax, [esi + 0x9324]
mov ebp, dword [esi + 0x54]
mov dword [esp + 0x14], ebx
add ebp, 2
mov dword [esp + 0x2c], eax
mov ebx, eax
mov eax, 6
mov dword [esp + 0x24], ebp
mov dword [esp + 0x28], eax
test ebp, ebp
jle 0x4af520
mov ecx, ebp
mov eax, 0xf0f0f0f
mov edx, ecx
mov edi, ebx
shr ecx, 2
rep stosd dword es:[edi], eax
mov ecx, edx
and ecx, 3
rep stosb byte es:[edi], al
mov eax, dword [esp + 0x28]
add ebx, 0x102
dec eax
mov dword [esp + 0x28], eax
jne 0x4af501
cmp dword [esi + 0x274], 0
mov ebx, dword [esp + 0x14]
jg 0x4af547
push 0xbb9
call fcn.004b2600
add esp, 4
mov eax, dword [esi + 0x274]
mov dword [esp + 0x28], eax
cmp eax, 0xc8
jge 0x4af55f
mov edx, 2
jmp 0x4af588
cmp eax, 0x258
jge 0x4af56d
mov edx, 3
jmp 0x4af588
cmp eax, 0x4b0
jge 0x4af57b
mov edx, 4
jmp 0x4af588
xor edx, edx
cmp eax, 0x960
setge dl
add edx, 5
xor ecx, ecx
mov dword [esp + 0x10], edx
mov dword [esp + 0x18], ecx
mov edi, edx
mov dword [esp + 0x20], edi
test edx, edx
jle 0x4af663
lea eax, [edx + 0x91]
mov dword [esp + 0x1c], ecx
imul ebx, eax, 0x102
add ebx, esi
mov eax, dword [esp + 0x28]
dec ecx
cdq
idiv edi
xor edi, edi
test eax, eax
jle 0x4af5e1
lea edx, [ebp - 1]
mov dword [esp + 0x30], edx
lea edx, [esi + 0x278]
lea edx, [edx + ecx*4]
cmp ecx, dword [esp + 0x30]
jge 0x4af5e1
add edi, dword [edx + 4]
add edx, 4
inc ecx
cmp edi, eax
jl 0x4af5d0
mov edx, dword [esp + 0x10]
cmp ecx, dword [esp + 0x18]
jle 0x4af615
mov eax, dword [esp + 0x20]
cmp eax, edx
je 0x4af615
cmp eax, 1
je 0x4af615
mov eax, dword [esp + 0x1c]
and eax, reloc.WS2_32.dll_accept
jns 0x4af608
dec eax
or eax, 0xfffffffe
inc eax
cmp eax, 1
jne 0x4af615
sub edi, dword [esi + ecx*4 + 0x278]
dec ecx
xor eax, eax
test ebp, ebp
jle 0x4af639
jmp 0x4af620
cmp eax, dword [esp + 0x18]
jl 0x4af630
cmp eax, ecx
jg 0x4af630
mov byte [ebx + eax], 0
jmp 0x4af634
mov byte [ebx + eax], 0xf
inc eax
cmp eax, ebp
jl 0x4af620
mov eax, dword [esp + 0x20]
inc ecx
sub dword [esp + 0x28], edi
dec eax
inc dword [esp + 0x1c]
sub ebx, 0x102
mov dword [esp + 0x20], eax
mov edi, eax
mov dword [esp + 0x18], ecx
test eax, eax
jg 0x4af5b2
mov ebx, dword [esp + 0x14]
mov dword [esp + 0x20], 4
jmp 0x4af670
test edx, edx
jle 0x4af6b1
xor eax, eax
mov dword [esp + 0x28], edx
mov ecx, edx
lea edi, [esp + 0x48]
rep stosd dword es:[edi], eax
lea ebx, [esi + 0xb160]
mov eax, edx
lea ebx, [ebx]
test ebp, ebp
jle 0x4af6a0
xor eax, eax
mov ecx, ebp
mov edi, ebx
rep stosd dword es:[edi], eax
mov eax, dword [esp + 0x28]
add ebx, 0x408
dec eax
mov dword [esp + 0x28], eax
jne 0x4af690
mov ebx, dword [esp + 0x14]
cmp edx, 6
jne 0x4af71c
test ebp, ebp
jle 0x4af71c
lea eax, [esi + 0xc994]
mov ebx, ebp
lea edi, [esi + 0x9324]
mov dword [esp + 0x30], eax
mov ebp, eax
mov edi, edi
movzx ecx, byte [edi + 0x102]
lea edi, [edi + 1]
movzx eax, byte [edi - 1]
lea ebp, [ebp + 0x10]
shl ecx, 0x10
or ecx, eax
mov dword [ebp - 0x14], ecx
movzx ecx, byte [edi + 0x305]
movzx eax, byte [edi + 0x203]
shl ecx, 0x10
or ecx, eax
mov dword [ebp - 0x10], ecx
movzx ecx, byte [edi + 0x509]
movzx eax, byte [edi + 0x407]
shl ecx, 0x10
or ecx, eax
mov dword [ebp - 0xc], ecx
dec ebx
jne 0x4af6d0
mov ebx, dword [esp + 0x14]
xor ebp, ebp
mov dword [esp + 0x18], 0
cmp dword [esi + 0x274], ebp
jle 0x4b0195
mov ecx, dword [esi + 0x274]
lea eax, [ebp + 0x31]
mov dword [esp + 0x1c], eax
cmp eax, ecx
jl 0x4af74a
lea eax, [ecx - 1]
mov dword [esp + 0x1c], eax
test edx, edx
jle 0x4af75f
xor eax, eax
lea edi, [esp + 0x38]
mov ecx, edx
shr ecx, 1
rep stosd dword es:[edi], eax
adc ecx, ecx
rep stosw word es:[edi], ax
mov edi, dword [esp + 0x1c]
cmp edx, 6
jne 0x4afeb2
mov eax, edi
sub eax, ebp
inc eax
cmp eax, 0x32
jne 0x4afeb2
movzx ecx, word [ebx + ebp*2]
lea eax, [ecx + 0xc99]
add ecx, ecx
add eax, eax
mov edi, dword [esi + ecx*8 + 0xc994]
mov edx, dword [esi + eax*8]
mov ebx, dword [esi + ecx*8 + 0xc998]
mov eax, dword [esp + 0x14]
movzx ecx, word [eax + ebp*2 + 2]
lea eax, [ecx + 0xc99]
add ecx, ecx
add eax, eax
add edi, dword [esi + ecx*8 + 0xc994]
add edx, dword [esi + eax*8]
add ebx, dword [esi + ecx*8 + 0xc998]
mov eax, dword [esp + 0x14]
movzx ecx, word [eax + ebp*2 + 4]
lea eax, [ecx + 0xc99]
add ecx, ecx
add eax, eax
add edi, dword [esi + ecx*8 + 0xc994]
add edx, dword [esi + eax*8]
add ebx, dword [esi + ecx*8 + 0xc998]
mov eax, dword [esp + 0x14]
movzx ecx, word [eax + ebp*2 + 6]
lea eax, [ecx + 0xc99]
add ecx, ecx
add eax, eax
add edi, dword [esi + ecx*8 + 0xc994]
add edx, dword [esi + eax*8]
add ebx, dword [esi + ecx*8 + 0xc998]
mov eax, dword [esp + 0x14]
movzx ecx, word [eax + ebp*2 + 8]
lea eax, [ecx + 0xc99]
add ecx, ecx
add eax, eax
add edi, dword [esi + ecx*8 + 0xc994]
add edx, dword [esi + eax*8]
add ebx, dword [esi + ecx*8 + 0xc998]
mov eax, dword [esp + 0x14]
movzx ecx, word [eax + ebp*2 + 0xa]
lea eax, [ecx + 0xc99]
add ecx, ecx
add eax, eax
add edi, dword [esi + ecx*8 + 0xc994]
add edx, dword [esi + eax*8]
add ebx, dword [esi + ecx*8 + 0xc998]
mov eax, dword [esp + 0x14]
movzx ecx, word [eax + ebp*2 + 0xc]
lea eax, [ecx + 0xc99]
add ecx, ecx
add eax, eax
add edi, dword [esi + ecx*8 + 0xc994]
add edx, dword [esi + eax*8]
add ebx, dword [esi + ecx*8 + 0xc998]
mov eax, dword [esp + 0x14]
movzx ecx, word [eax + ebp*2 + 0xe]
lea eax, [ecx + 0xc99]
add ecx, ecx
add eax, eax
add edi, dword [esi + ecx*8 + 0xc994]
add edx, dword [esi + eax*8]
add ebx, dword [esi + ecx*8 + 0xc998]
mov eax, dword [esp + 0x14]
movzx ecx, word [eax + ebp*2 + 0x10]
lea eax, [ecx + 0xc99]
add ecx, ecx
add eax, eax
add edi, dword [esi + ecx*8 + 0xc994]
add edx, dword [esi + eax*8]
mov eax, dword [esp + 0x14]
add ebx, dword [esi + ecx*8 + 0xc998]
movzx ecx, word [eax + ebp*2 + 0x12]
lea eax, [ecx + 0xc99]
add ecx, ecx
add eax, eax
add edi, dword [esi + ecx*8 + 0xc994]
add edx, dword [esi + eax*8]
mov eax, dword [esp + 0x14]
add ebx, dword [esi + ecx*8 + 0xc998]
movzx ecx, word [eax + ebp*2 + 0x14]
lea eax, [ecx + 0xc99]
add ecx, ecx
add eax, eax
add edi, dword [esi + ecx*8 + 0xc994]
add edx, dword [esi + eax*8]
add ebx, dword [esi + ecx*8 + 0xc998]
mov eax, dword [esp + 0x14]
movzx ecx, word [eax + ebp*2 + 0x16]
lea eax, [ecx + 0xc99]
add ecx, ecx
add eax, eax
add edi, dword [esi + ecx*8 + 0xc994]
add edx, dword [esi + eax*8]
add ebx, dword [esi + ecx*8 + 0xc998]
mov eax, dword [esp + 0x14]
movzx ecx, word [eax + ebp*2 + 0x18]
lea eax, [ecx + 0xc99]
add ecx, ecx
add eax, eax
add edi, dword [esi + ecx*8 + 0xc994]
add edx, dword [esi + eax*8]
add ebx, dword [esi + ecx*8 + 0xc998]
mov eax, dword [esp + 0x14]
movzx ecx, word [eax + ebp*2 + 0x1a]
lea eax, [ecx + 0xc99]
add ecx, ecx
add eax, eax
add edi, dword [esi + ecx*8 + 0xc994]
add edx, dword [esi + eax*8]
add ebx, dword [esi + ecx*8 + 0xc998]
mov eax, dword [esp + 0x14]
movzx ecx, word [eax + ebp*2 + 0x1c]
lea eax, [ecx + 0xc99]
add ecx, ecx
add eax, eax
add edi, dword [esi + ecx*8 + 0xc994]
add edx, dword [esi + eax*8]
add ebx, dword [esi + ecx*8 + 0xc998]
mov eax, dword [esp + 0x14]
movzx ecx, word [eax + ebp*2 + 0x1e]
lea eax, [ecx + 0xc99]
add ecx, ecx
add eax, eax
add edi, dword [esi + ecx*8 + 0xc994]
add edx, dword [esi + eax*8]
add ebx, dword [esi + ecx*8 + 0xc998]
mov eax, dword [esp + 0x14]
movzx ecx, word [eax + ebp*2 + 0x20]
lea eax, [ecx + 0xc99]
add ecx, ecx
add eax, eax
add edi, dword [esi + ecx*8 + 0xc994]
add edx, dword [esi + eax*8]
add ebx, dword [esi + ecx*8 + 0xc998]
mov eax, dword [esp + 0x14]
movzx ecx, word [eax + ebp*2 + 0x22]
lea eax, [ecx + 0xc99]
add ecx, ecx
add eax, eax
add edi, dword [esi + ecx*8 + 0xc994]
add edx, dword [esi + eax*8]
add ebx, dword [esi + ecx*8 + 0xc998]
mov eax, dword [esp + 0x14]
movzx ecx, word [eax + ebp*2 + 0x24]
lea eax, [ecx + 0xc99]
add ecx, ecx
add eax, eax
add edi, dword [esi + ecx*8 + 0xc994]
add edx, dword [esi + eax*8]
mov eax, dword [esp + 0x14]
add ebx, dword [esi + ecx*8 + 0xc998]
movzx ecx, word [eax + ebp*2 + 0x26]
lea eax, [ecx + 0xc99]
add ecx, ecx
add eax, eax
add edi, dword [esi + ecx*8 + 0xc994]
add edx, dword [esi + eax*8]
mov eax, dword [esp + 0x14]
add ebx, dword [esi + ecx*8 + 0xc998]
movzx ecx, word [eax + ebp*2 + 0x28]
lea eax, [ecx + 0xc99]
add eax, eax
add ecx, ecx
add edx, dword [esi + eax*8]
add edi, dword [esi + ecx*8 + 0xc994]
add ebx, dword [esi + ecx*8 + 0xc998]
mov eax, dword [esp + 0x14]
movzx ecx, word [eax + ebp*2 + 0x2a]
lea eax, [ecx + 0xc99]
add ecx, ecx
add eax, eax
add edi, dword [esi + ecx*8 + 0xc994]
add edx, dword [esi + eax*8]
add ebx, dword [esi + ecx*8 + 0xc998]
mov eax, dword [esp + 0x14]
movzx ecx, word [eax + ebp*2 + 0x2c]
lea eax, [ecx + 0xc99]
add ecx, ecx
add eax, eax
add edi, dword [esi + ecx*8 + 0xc994]
add edx, dword [esi + eax*8]
add ebx, dword [esi + ecx*8 + 0xc998]
mov eax, dword [esp + 0x14]
movzx ecx, word [eax + ebp*2 + 0x2e]
lea eax, [ecx + 0xc99]
add ecx, ecx
add eax, eax
add edi, dword [esi + ecx*8 + 0xc994]
add edx, dword [esi + eax*8]
add ebx, dword [esi + ecx*8 + 0xc998]
mov eax, dword [esp + 0x14]
movzx ecx, word [eax + ebp*2 + 0x30]
lea eax, [ecx + 0xc99]
add ecx, ecx
add eax, eax
add edi, dword [esi + ecx*8 + 0xc994]
add edx, dword [esi + eax*8]
add ebx, dword [esi + ecx*8 + 0xc998]
mov eax, dword [esp + 0x14]
movzx ecx, word [eax + ebp*2 + 0x32]
lea eax, [ecx + 0xc99]
add ecx, ecx
add eax, eax
add edi, dword [esi + ecx*8 + 0xc994]
add edx, dword [esi + eax*8]
add ebx, dword [esi + ecx*8 + 0xc998]
mov eax, dword [esp + 0x14]
movzx ecx, word [eax + ebp*2 + 0x34]
lea eax, [ecx + 0xc99]
add ecx, ecx
add eax, eax
add edi, dword [esi + ecx*8 + 0xc994]
add edx, dword [esi + eax*8]
add ebx, dword [esi + ecx*8 + 0xc998]
mov eax, dword [esp + 0x14]
movzx ecx, word [eax + ebp*2 + 0x36]
lea eax, [ecx + 0xc99]
add ecx, ecx
add eax, eax
add edi, dword [esi + ecx*8 + 0xc994]
add edx, dword [esi + eax*8]
add ebx, dword [esi + ecx*8 + 0xc998]
mov eax, dword [esp + 0x14]
movzx ecx, word [eax + ebp*2 + 0x38]
lea eax, [ecx + 0xc99]
add ecx, ecx
add eax, eax
add edi, dword [esi + ecx*8 + 0xc994]
add edx, dword [esi + eax*8]
mov eax, dword [esp + 0x14]
add ebx, dword [esi + ecx*8 + 0xc998]
movzx ecx, word [eax + ebp*2 + 0x3a]
lea eax, [ecx + 0xc99]
add ecx, ecx
add eax, eax
add edi, dword [esi + ecx*8 + 0xc994]
add edx, dword [esi + eax*8]
mov eax, dword [esp + 0x14]
add ebx, dword [esi + ecx*8 + 0xc998]
movzx ecx, word [eax + ebp*2 + 0x3c]
lea eax, [ecx + 0xc99]
add eax, eax
add edx, dword [esi + eax*8]
add ecx, ecx
mov eax, dword [esp + 0x14]
add edi, dword [esi + ecx*8 + 0xc994]
add ebx, dword [esi + ecx*8 + 0xc998]
movzx ecx, word [eax + ebp*2 + 0x3e]
lea eax, [ecx + 0xc99]
add ecx, ecx
add eax, eax
add edi, dword [esi + ecx*8 + 0xc994]
add edx, dword [esi + eax*8]
add ebx, dword [esi + ecx*8 + 0xc998]
mov eax, dword [esp + 0x14]
movzx ecx, word [eax + ebp*2 + 0x40]
lea eax, [ecx + 0xc99]
add ecx, ecx
add eax, eax
add edi, dword [esi + ecx*8 + 0xc994]
add edx, dword [esi + eax*8]
add ebx, dword [esi + ecx*8 + 0xc998]
mov eax, dword [esp + 0x14]
movzx ecx, word [eax + ebp*2 + 0x42]
lea eax, [ecx + 0xc99]
add ecx, ecx
add eax, eax
add edi, dword [esi + ecx*8 + 0xc994]
add edx, dword [esi + eax*8]
add ebx, dword [esi + ecx*8 + 0xc998]
mov eax, dword [esp + 0x14]
movzx ecx, word [eax + ebp*2 + 0x44]
lea eax, [ecx + 0xc99]
add ecx, ecx
add eax, eax
add edi, dword [esi + ecx*8 + 0xc994]
add edx, dword [esi + eax*8]
add ebx, dword [esi + ecx*8 + 0xc998]
mov eax, dword [esp + 0x14]
movzx ecx, word [eax + ebp*2 + 0x46]
lea eax, [ecx + 0xc99]
add ecx, ecx
add eax, eax
add edi, dword [esi + ecx*8 + 0xc994]
add edx, dword [esi + eax*8]
add ebx, dword [esi + ecx*8 + 0xc998]
mov eax, dword [esp + 0x14]
movzx ecx, word [eax + ebp*2 + 0x48]
lea eax, [ecx + 0xc99]
add ecx, ecx
add eax, eax
add edi, dword [esi + ecx*8 + 0xc994]
add edx, dword [esi + eax*8]
add ebx, dword [esi + ecx*8 + 0xc998]
mov eax, dword [esp + 0x14]
movzx ecx, word [eax + ebp*2 + 0x4a]
lea eax, [ecx + 0xc99]
add ecx, ecx
add eax, eax
add edi, dword [esi + ecx*8 + 0xc994]
add edx, dword [esi + eax*8]
add ebx, dword [esi + ecx*8 + 0xc998]
mov eax, dword [esp + 0x14]
movzx ecx, word [eax + ebp*2 + 0x4c]
lea eax, [ecx + 0xc99]
add ecx, ecx
add eax, eax
add edi, dword [esi + ecx*8 + 0xc994]
add edx, dword [esi + eax*8]
mov eax, dword [esp + 0x14]
add ebx, dword [esi + ecx*8 + 0xc998]
movzx ecx, word [eax + ebp*2 + 0x4e]
lea eax, [ecx + 0xc99]
add ecx, ecx
add eax, eax
add edi, dword [esi + ecx*8 + 0xc994]
add edx, dword [esi + eax*8]
mov eax, dword [esp + 0x14]
add ebx, dword [esi + ecx*8 + 0xc998]
movzx ecx, word [eax + ebp*2 + 0x50]
lea eax, [ecx + 0xc99]
add eax, eax
add edx, dword [esi + eax*8]
mov eax, dword [esp + 0x14]
add ecx, ecx
add edi, dword [esi + ecx*8 + 0xc994]
add ebx, dword [esi + ecx*8 + 0xc998]
movzx ecx, word [eax + ebp*2 + 0x52]
lea eax, [ecx + 0xc99]
add ecx, ecx
add eax, eax
add edi, dword [esi + ecx*8 + 0xc994]
add edx, dword [esi + eax*8]
add ebx, dword [esi + ecx*8 + 0xc998]
mov eax, dword [esp + 0x14]
movzx ecx, word [eax + ebp*2 + 0x54]
lea eax, [ecx + 0xc99]
add ecx, ecx
add eax, eax
add edi, dword [esi + ecx*8 + 0xc994]
add edx, dword [esi + eax*8]
add ebx, dword [esi + ecx*8 + 0xc998]
mov eax, dword [esp + 0x14]
movzx ecx, word [eax + ebp*2 + 0x56]
lea eax, [ecx + 0xc99]
add ecx, ecx
add eax, eax
add edi, dword [esi + ecx*8 + 0xc994]
add edx, dword [esi + eax*8]
add ebx, dword [esi + ecx*8 + 0xc998]
mov eax, dword [esp + 0x14]
movzx ecx, word [eax + ebp*2 + 0x58]
lea eax, [ecx + 0xc99]
add ecx, ecx
add eax, eax
add edi, dword [esi + ecx*8 + 0xc994]
add edx, dword [esi + eax*8]
add ebx, dword [esi + ecx*8 + 0xc998]
mov eax, dword [esp + 0x14]
movzx ecx, word [eax + ebp*2 + 0x5a]
lea eax, [ecx + 0xc99]
add ecx, ecx
add eax, eax
add edi, dword [esi + ecx*8 + 0xc994]
add edx, dword [esi + eax*8]
add ebx, dword [esi + ecx*8 + 0xc998]
mov eax, dword [esp + 0x14]
movzx ecx, word [eax + ebp*2 + 0x5c]
lea eax, [ecx + 0xc99]
add ecx, ecx
add eax, eax
add edi, dword [esi + ecx*8 + 0xc994]
add edx, dword [esi + eax*8]
add ebx, dword [esi + ecx*8 + 0xc998]
mov eax, dword [esp + 0x14]
movzx ecx, word [eax + ebp*2 + 0x5e]
lea eax, [ecx + 0xc99]
add ecx, ecx
add eax, eax
add edi, dword [esi + ecx*8 + 0xc994]
add edx, dword [esi + eax*8]
add ebx, dword [esi + ecx*8 + 0xc998]
mov eax, dword [esp + 0x14]
movzx ecx, word [eax + ebp*2 + 0x60]
lea eax, [ecx + 0xc99]
add ecx, ecx
add eax, eax
add edi, dword [esi + ecx*8 + 0xc994]
add edx, dword [esi + eax*8]
mov eax, dword [esp + 0x14]
add ebx, dword [esi + ecx*8 + 0xc998]
movzx ecx, word [eax + ebp*2 + 0x62]
lea eax, [ecx + 0xc99]
add ecx, ecx
add eax, eax
add edi, dword [esi + ecx*8 + 0xc994]
add edx, dword [esi + eax*8]
add ebx, dword [esi + ecx*8 + 0xc998]
mov word [esp + 0x38], dx
shr edx, 0x10
mov word [esp + 0x3c], di
shr edi, 0x10
mov word [esp + 0x3a], dx
mov word [esp + 0x3e], di
mov edx, dword [esp + 0x10]
mov edi, dword [esp + 0x1c]
mov word [esp + 0x40], bx
shr ebx, 0x10
mov word [esp + 0x42], bx
mov ebx, dword [esp + 0x14]
jmp 0x4aff09
mov dword [esp + 0x28], ebp
mov eax, ebp
cmp ebp, edi
jg 0x4aff09
lea esp, [esp]
movzx ecx, word [ebx + eax*2]
mov dword [esp + 0x30], ecx
xor ecx, ecx
test edx, edx
jle 0x4aff00
mov eax, dword [esp + 0x30]
mov edi, dword [esp + 0x10]
movzx edx, ax
add edx, 0x9324
add edx, esi
movzx eax, byte [edx]
lea edx, [edx + 0x102]
add word [esp + ecx*2 + 0x38], ax
inc ecx
cmp ecx, edi
jl 0x4afee1
mov edx, dword [esp + 0x10]
mov eax, dword [esp + 0x28]
mov edi, dword [esp + 0x1c]
inc eax
mov dword [esp + 0x28], eax
cmp eax, edi
jle 0x4afec0
or ecx, 0xffffffff
mov dword [esp + 0x30], 0x3b9ac9ff
xor eax, eax
mov dword [esp + 0x28], ecx
test edx, edx
jle 0x4aff42
mov esi, dword [esp + 0x30]
movzx ecx, word [esp + eax*2 + 0x38]
cmp ecx, esi
jge 0x4aff35
mov esi, ecx
mov ecx, eax
mov dword [esp + 0x28], ecx
jmp 0x4aff39
mov ecx, dword [esp + 0x28]
inc eax
cmp eax, edx
jl 0x4aff22
mov esi, dword [esp + 0x64]
mov eax, dword [esp + 0x18]
inc dword [esp + ecx*4 + 0x48]
mov byte [esi + eax + 0x680], cl
inc eax
mov dword [esp + 0x18], eax
cmp edx, 6
jne 0x4b016b
mov eax, edi
sub eax, ebp
inc eax
cmp eax, 0x32
jne 0x4b016b
lea eax, [ecx + 0x2c]
imul ecx, eax, 0x102
movzx eax, word [ebx + ebp*2]
add eax, ecx
inc dword [esi + eax*4]
movzx eax, word [ebx + ebp*2 + 2]
add eax, ecx
inc dword [esi + eax*4]
movzx eax, word [ebx + ebp*2 + 4]
add eax, ecx
inc dword [esi + eax*4]
movzx eax, word [ebx + ebp*2 + 6]
add eax, ecx
inc dword [esi + eax*4]
movzx eax, word [ebx + ebp*2 + 8]
add eax, ecx
inc dword [esi + eax*4]
movzx eax, word [ebx + ebp*2 + 0xa]
add eax, ecx
inc dword [esi + eax*4]
movzx eax, word [ebx + ebp*2 + 0xc]
add eax, ecx
inc dword [esi + eax*4]
movzx eax, word [ebx + ebp*2 + 0xe]
add eax, ecx
inc dword [esi + eax*4]
movzx eax, word [ebx + ebp*2 + 0x10]
add eax, ecx
inc dword [esi + eax*4]
movzx eax, word [ebx + ebp*2 + 0x12]
add eax, ecx
inc dword [esi + eax*4]
movzx eax, word [ebx + ebp*2 + 0x14]
add eax, ecx
inc dword [esi + eax*4]
movzx eax, word [ebx + ebp*2 + 0x16]
add eax, ecx
inc dword [esi + eax*4]
movzx eax, word [ebx + ebp*2 + 0x18]
add eax, ecx
inc dword [esi + eax*4]
movzx eax, word [ebx + ebp*2 + 0x1a]
add eax, ecx
inc dword [esi + eax*4]
movzx eax, word [ebx + ebp*2 + 0x1c]
add eax, ecx
inc dword [esi + eax*4]
movzx eax, word [ebx + ebp*2 + 0x1e]
add eax, ecx
inc dword [esi + eax*4]
movzx eax, word [ebx + ebp*2 + 0x20]
add eax, ecx
inc dword [esi + eax*4]
movzx eax, word [ebx + ebp*2 + 0x22]
add eax, ecx
inc dword [esi + eax*4]
movzx eax, word [ebx + ebp*2 + 0x24]
add eax, ecx
inc dword [esi + eax*4]
movzx eax, word [ebx + ebp*2 + 0x26]
add eax, ecx
inc dword [esi + eax*4]
movzx eax, word [ebx + ebp*2 + 0x28]
add eax, ecx
inc dword [esi + eax*4]
movzx eax, word [ebx + ebp*2 + 0x2a]
add eax, ecx
inc dword [esi + eax*4]
movzx eax, word [ebx + ebp*2 + 0x2c]
add eax, ecx
inc dword [esi + eax*4]
movzx eax, word [ebx + ebp*2 + 0x2e]
add eax, ecx
inc dword [esi + eax*4]
movzx eax, word [ebx + ebp*2 + 0x30]
add eax, ecx
inc dword [esi + eax*4]
movzx eax, word [ebx + ebp*2 + 0x32]
add eax, ecx
inc dword [esi + eax*4]
movzx eax, word [ebx + ebp*2 + 0x34]
add eax, ecx
inc dword [esi + eax*4]
movzx eax, word [ebx + ebp*2 + 0x36]
add eax, ecx
inc dword [esi + eax*4]
movzx eax, word [ebx + ebp*2 + 0x38]
add eax, ecx
inc dword [esi + eax*4]
movzx eax, word [ebx + ebp*2 + 0x3a]
add eax, ecx
inc dword [esi + eax*4]
movzx eax, word [ebx + ebp*2 + 0x3c]
add eax, ecx
inc dword [esi + eax*4]
movzx eax, word [ebx + ebp*2 + 0x3e]
add eax, ecx
inc dword [esi + eax*4]
movzx eax, word [ebx + ebp*2 + 0x40]
add eax, ecx
inc dword [esi + eax*4]
movzx eax, word [ebx + ebp*2 + 0x42]
add eax, ecx
inc dword [esi + eax*4]
movzx eax, word [ebx + ebp*2 + 0x44]
add eax, ecx
inc dword [esi + eax*4]
movzx eax, word [ebx + ebp*2 + 0x46]
add eax, ecx
inc dword [esi + eax*4]
movzx eax, word [ebx + ebp*2 + 0x48]
add eax, ecx
inc dword [esi + eax*4]
movzx eax, word [ebx + ebp*2 + 0x4a]
add eax, ecx
inc dword [esi + eax*4]
movzx eax, word [ebx + ebp*2 + 0x4c]
add eax, ecx
inc dword [esi + eax*4]
movzx eax, word [ebx + ebp*2 + 0x4e]
add eax, ecx
inc dword [esi + eax*4]
movzx eax, word [ebx + ebp*2 + 0x50]
add eax, ecx
inc dword [esi + eax*4]
movzx eax, word [ebx + ebp*2 + 0x52]
add eax, ecx
inc dword [esi + eax*4]
movzx eax, word [ebx + ebp*2 + 0x54]
add eax, ecx
inc dword [esi + eax*4]
movzx eax, word [ebx + ebp*2 + 0x56]
add eax, ecx
inc dword [esi + eax*4]
movzx eax, word [ebx + ebp*2 + 0x58]
add eax, ecx
inc dword [esi + eax*4]
movzx eax, word [ebx + ebp*2 + 0x5a]
add eax, ecx
inc dword [esi + eax*4]
movzx eax, word [ebx + ebp*2 + 0x5c]
add eax, ecx
inc dword [esi + eax*4]
movzx eax, word [ebx + ebp*2 + 0x5e]
add eax, ecx
inc dword [esi + eax*4]
movzx eax, word [ebx + ebp*2 + 0x60]
add eax, ecx
inc dword [esi + eax*4]
movzx eax, word [ebx + ebp*2 + 0x62]
add eax, ecx
inc dword [esi + eax*4]
jmp 0x4b0186
cmp ebp, edi
jg 0x4b0186
lea eax, [ecx + 0x2c]
imul ecx, eax, 0x102
movzx eax, word [ebx + ebp*2]
inc ebp
add eax, ecx
inc dword [esi + eax*4]
cmp ebp, edi
jle 0x4b0178
lea ebp, [edi + 1]
cmp ebp, dword [esi + 0x274]
jl 0x4af732
mov ebp, dword [esp + 0x24]
test edx, edx
jle 0x4b01d8
lea edi, [esi + 0x9324]
lea ebx, [esi + 0xb160]
mov esi, edx
jmp 0x4b01b0
push 0x11
push ebp
push ebx
push edi
call fcn.004b2300
add esp, 0x10
add ebx, 0x408
add edi, 0x102
dec esi
jne 0x4b01b0
mov esi, dword [esp + 0x64]
mov ebx, dword [esp + 0x14]
mov edx, dword [esp + 0x10]
dec dword [esp + 0x20]
jne 0x4af670
cmp edx, 8
jl 0x4b01f4
push 0xbba
call fcn.004b2600
add esp, 4
mov ecx, dword [esp + 0x18]
cmp ecx, 0x8000
jge 0x4b0208
cmp ecx, 0x4652
jle 0x4b0219
push 0xbbb
call fcn.004b2600
mov ecx, dword [esp + 0x1c]
add esp, 4
mov edi, dword [esp + 0x10]
xor eax, eax
test edi, edi
jle 0x4b022c
mov byte [esp + eax + 0x30], al
inc eax
cmp eax, edi
jl 0x4b0223
test ecx, ecx
jle 0x4b0272
mov ebx, ecx
lea ebp, [esi + 0x4cd2]
mov cl, byte [esp + 0x30]
lea esp, [esp]
mov ah, byte [ebp - 0x4652]
xor edx, edx
cmp ah, cl
je 0x4b025f
lea esp, [esp]
inc edx
mov al, cl
mov cl, byte [esp + edx + 0x30]
mov byte [esp + edx + 0x30], al
cmp ah, cl
jne 0x4b0250
mov byte [ebp], dl
inc ebp
mov byte [esp + 0x30], cl
dec ebx
jne 0x4b0240
mov ebx, dword [esp + 0x14]
mov ebp, dword [esp + 0x24]
test edi, edi
jle 0x4b0314
mov dword [esp + 0x20], edi
lea ebx, [esi + 0x9324]
lea edi, [esi + 0x9930]
lea ebx, [ebx]
xor ecx, ecx
mov dword [esp + 0x64], 0
mov edx, 0x20
test ebp, ebp
jle 0x4b02ee
movzx eax, byte [ebx + ecx]
cmp eax, dword [esp + 0x64]
jle 0x4b02b1
mov dword [esp + 0x64], eax
cmp eax, edx
jge 0x4b02b7
mov edx, eax
inc ecx
cmp ecx, ebp
jl 0x4b02a3
cmp dword [esp + 0x64], 0x11
mov dword [esp + 0x28], edx
jle 0x4b02d8
push 0xbbc
call fcn.004b2600
mov edx, dword [esp + 0x2c]
add esp, 4
cmp edx, 1
jge 0x4b02ee
push 0xbbd
call fcn.004b2600
mov edx, dword [esp + 0x2c]
add esp, 4
push ebp
push dword [esp + 0x68]
push edx
push ebx
push edi
call fcn.004b2140
add esp, 0x14
add ebx, 0x102
add edi, 0x408
dec dword [esp + 0x20]
jne 0x4b0290
mov ebx, dword [esp + 0x14]
lea ebp, [esi + 0x58]
xor edx, edx
mov dword [esp + 0x64], ebp
mov ecx, ebp
nop
mov byte [esp + edx + 0x38], 0
xor eax, eax
cmp byte [ecx + eax], 0
je 0x4b0332
mov byte [esp + edx + 0x38], 1
inc eax
cmp eax, 0x10
jl 0x4b0327
inc edx
add ecx, 0x10
cmp edx, 0x10
jl 0x4b0320
xor eax, eax
mov dword [esp + 0x28], eax
cmp byte [esp + eax + 0x38], 0
je 0x4b0390
cmp dword [esi + 0x25c], 8
jl 0x4b0389
jmp 0x4b0360
mov edx, dword [esi + 0x4c]
mov ecx, dword [esi + 0x2c]
mov al, byte [esi + 0x25b]
mov byte [edx + ecx], al
inc dword [esi + 0x4c]
shl dword [esi + 0x258], 8
add dword [esi + 0x25c], 0xfffffff8
cmp dword [esi + 0x25c], 8
jge 0x4b0360
mov eax, 1
jmp 0x4b03cb
cmp dword [esi + 0x25c], 8
jl 0x4b03c9
lea esp, [esp]
mov edx, dword [esi + 0x4c]
mov ecx, dword [esi + 0x2c]
mov al, byte [esi + 0x25b]
mov byte [edx + ecx], al
inc dword [esi + 0x4c]
shl dword [esi + 0x258], 8
add dword [esi + 0x25c], 0xfffffff8
cmp dword [esi + 0x25c], 8
jge 0x4b03a0
xor eax, eax
mov edx, dword [esi + 0x25c]
mov ecx, 0x1f
sub ecx, edx
inc edx
shl eax, cl
or dword [esi + 0x258], eax
mov eax, dword [esp + 0x28]
inc eax
mov dword [esi + 0x25c], edx
mov dword [esp + 0x28], eax
cmp eax, 0x10
jl 0x4b0347
xor eax, eax
mov dword [esp + 0x28], eax
nop
cmp byte [esp + eax + 0x38], 0
je 0x4b04b9
mov edi, dword [esp + 0x64]
xor ebp, ebp
cmp byte [edi + ebp], 0
je 0x4b0450
cmp edx, 8
jl 0x4b0449
lea esp, [esp]
mov edx, dword [esi + 0x4c]
mov ecx, dword [esi + 0x2c]
mov al, byte [esi + 0x25b]
mov byte [edx + ecx], al
inc dword [esi + 0x4c]
shl dword [esi + 0x258], 8
add dword [esi + 0x25c], 0xfffffff8
cmp dword [esi + 0x25c], 8
jge 0x4b0420
mov eax, 1
jmp 0x4b048b
cmp edx, 8
jl 0x4b0489
jmp 0x4b0460
mov edx, dword [esi + 0x4c]
mov ecx, dword [esi + 0x2c]
mov al, byte [esi + 0x25b]
mov byte [edx + ecx], al
inc dword [esi + 0x4c]
shl dword [esi + 0x258], 8
add dword [esi + 0x25c], 0xfffffff8
cmp dword [esi + 0x25c], 8
jge 0x4b0460
xor eax, eax
mov edx, dword [esi + 0x25c]
mov ecx, 0x1f
sub ecx, edx
inc ebp
shl eax, cl
inc edx
or dword [esi + 0x258], eax
mov dword [esi + 0x25c], edx
cmp ebp, 0x10
jl 0x4b0411
mov ebp, dword [esp + 0x64]
mov eax, dword [esp + 0x28]
inc eax
add ebp, 0x10
mov dword [esp + 0x28], eax
mov dword [esp + 0x64], ebp
cmp eax, 0x10
jl 0x4b0400
mov edi, dword [esp + 0x10]
cmp edx, 8
jl 0x4b0509
jmp 0x4b04e0
mov edx, dword [esi + 0x4c]
mov ecx, dword [esi + 0x2c]
mov al, byte [esi + 0x25b]
mov byte [edx + ecx], al
inc dword [esi + 0x4c]
shl dword [esi + 0x258], 8
add dword [esi + 0x25c], 0xfffffff8
cmp dword [esi + 0x25c], 8
jge 0x4b04e0
mov edx, dword [esi + 0x25c]
mov ecx, 0x1d
sub ecx, edx
mov eax, edi
shl eax, cl
or dword [esi + 0x258], eax
lea eax, [edx + 3]
mov dword [esi + 0x25c], eax
cmp eax, 8
jl 0x4b0559
mov edi, edi
mov edx, dword [esi + 0x4c]
mov ecx, dword [esi + 0x2c]
mov al, byte [esi + 0x25b]
mov byte [edx + ecx], al
inc dword [esi + 0x4c]
shl dword [esi + 0x258], 8
add dword [esi + 0x25c], 0xfffffff8
cmp dword [esi + 0x25c], 8
jge 0x4b0530
mov edx, dword [esi + 0x25c]
mov ecx, 0x11
mov ebp, dword [esp + 0x18]
sub ecx, edx
mov eax, ebp
shl eax, cl
or dword [esi + 0x258], eax
lea eax, [edx + 0xf]
mov dword [esi + 0x25c], eax
test ebp, ebp
jle 0x4b0672
lea eax, [esi + 0x4cd2]
mov dword [esp + 0x28], ebp
mov dword [esp + 0x64], eax
mov ebx, ebp
xor ebp, ebp
cmp byte [eax], 0
jbe 0x4b0608
mov ebx, dword [esp + 0x64]
cmp dword [esi + 0x25c], 8
jl 0x4b05d9
lea esp, [esp]
mov edx, dword [esi + 0x4c]
mov ecx, dword [esi + 0x2c]
mov al, byte [esi + 0x25b]
mov byte [edx + ecx], al
inc dword [esi + 0x4c]
shl dword [esi + 0x258], 8
add dword [esi + 0x25c], 0xfffffff8
cmp dword [esi + 0x25c], 8
jge 0x4b05b0
mov edx, dword [esi + 0x25c]
mov ecx, 0x1f
sub ecx, edx
mov eax, 1
shl eax, cl
inc ebp
or dword [esi + 0x258], eax
lea eax, [edx + 1]
mov dword [esi + 0x25c], eax
movzx eax, byte [ebx]
cmp ebp, eax
jl 0x4b05a0
mov ebx, dword [esp + 0x28]
cmp dword [esi + 0x25c], 8
jl 0x4b063a
mov edx, dword [esi + 0x4c]
mov ecx, dword [esi + 0x2c]
mov al, byte [esi + 0x25b]
mov byte [edx + ecx], al
inc dword [esi + 0x4c]
shl dword [esi + 0x258], 8
add dword [esi + 0x25c], 0xfffffff8
cmp dword [esi + 0x25c], 8
jge 0x4b0611
mov edx, dword [esi + 0x25c]
xor eax, eax
mov ecx, 0x1f
sub ecx, edx
shl eax, cl
or dword [esi + 0x258], eax
lea eax, [edx + 1]
mov dword [esi + 0x25c], eax
mov eax, dword [esp + 0x64]
inc eax
dec ebx
mov dword [esp + 0x64], eax
mov dword [esp + 0x28], ebx
jne 0x4b0595
mov ebx, dword [esp + 0x14]
test edi, edi
jle 0x4b0854
mov dword [esp + 0x28], edi
lea ebx, [esi + 0x9324]
mov edi, dword [esp + 0x24]
jmp 0x4b0690
cmp dword [esi + 0x25c], 8
movzx ebp, byte [ebx]
jl 0x4b06c9
lea esp, [esp]
mov edx, dword [esi + 0x4c]
mov ecx, dword [esi + 0x2c]
mov al, byte [esi + 0x25b]
mov byte [edx + ecx], al
inc dword [esi + 0x4c]
shl dword [esi + 0x258], 8
add dword [esi + 0x25c], 0xfffffff8
cmp dword [esi + 0x25c], 8
jge 0x4b06a0
mov edx, dword [esi + 0x25c]
mov ecx, 0x1b
sub ecx, edx
mov eax, ebp
shl eax, cl
or dword [esi + 0x258], eax
lea eax, [edx + 5]
mov dword [esi + 0x25c], eax
test edi, edi
jle 0x4b0838
mov dword [esp + 0x64], edi
movzx eax, byte [ebx]
cmp ebp, eax
jge 0x4b0764
lea esp, [esp]
cmp dword [esi + 0x25c], 8
jl 0x4b0739
lea esp, [esp]
mov edx, dword [esi + 0x4c]
mov ecx, dword [esi + 0x2c]
mov al, byte [esi + 0x25b]
mov byte [edx + ecx], al
inc dword [esi + 0x4c]
shl dword [esi + 0x258], 8
add dword [esi + 0x25c], 0xfffffff8
cmp dword [esi + 0x25c], 8
jge 0x4b0710
mov edx, dword [esi + 0x25c]
mov ecx, 0x1e
sub ecx, edx
mov eax, 2
shl eax, cl
inc ebp
or dword [esi + 0x258], eax
lea eax, [edx + 2]
mov dword [esi + 0x25c], eax
movzx eax, byte [ebx]
cmp ebp, eax
jl 0x4b0700
movzx eax, byte [ebx]
cmp ebp, eax
jle 0x4b07d4
jmp 0x4b0770
cmp dword [esi + 0x25c], 8
jl 0x4b07a9
lea esp, [esp]
mov edx, dword [esi + 0x4c]
mov ecx, dword [esi + 0x2c]
mov al, byte [esi + 0x25b]
mov byte [edx + ecx], al
inc dword [esi + 0x4c]
shl dword [esi + 0x258], 8
add dword [esi + 0x25c], 0xfffffff8
cmp dword [esi + 0x25c], 8
jge 0x4b0780
mov edx, dword [esi + 0x25c]
mov ecx, 0x1e
sub ecx, edx
mov eax, 3
shl eax, cl
dec ebp
or dword [esi + 0x258], eax
lea eax, [edx + 2]
mov dword [esi + 0x25c], eax
movzx eax, byte [ebx]
cmp ebp, eax
jg 0x4b0770
cmp dword [esi + 0x25c], 8
jl 0x4b0809
lea ecx, [ecx]
mov edx, dword [esi + 0x4c]
mov ecx, dword [esi + 0x2c]
mov al, byte [esi + 0x25b]
mov byte [edx + ecx], al
inc dword [esi + 0x4c]
shl dword [esi + 0x258], 8
add dword [esi + 0x25c], 0xfffffff8
cmp dword [esi + 0x25c], 8
jge 0x4b07e0
mov edx, dword [esi + 0x25c]
mov ecx, 0x1f
xor eax, eax
sub ecx, edx
shl eax, cl
inc ebx
or dword [esi + 0x258], eax
dec dword [esp + 0x64]
lea eax, [edx + 1]
mov dword [esi + 0x25c], eax
jne 0x4b06f5
mov ebx, dword [esp + 0x2c]
add ebx, 0x102
dec dword [esp + 0x28]
mov dword [esp + 0x2c], ebx
jne 0x4b0690
mov ebx, dword [esp + 0x14]
mov edi, dword [esp + 0x10]
xor edx, edx
xor ebp, ebp
mov dword [esp + 0x20], edx
cmp dword [esi + 0x274], edx
jle 0x4b211b
jmp 0x4b0870
lea eax, [ebp + 0x31]
mov ecx, eax
mov dword [esp + 0x24], eax
mov eax, dword [esi + 0x274]
mov dword [esp + 0x1c], ecx
cmp ecx, eax
jl 0x4b088c
dec eax
mov dword [esp + 0x1c], eax
movzx eax, byte [edx + esi + 0x680]
cmp eax, edi
jl 0x4b08a9
push 0xbbe
call fcn.004b2600
mov edx, dword [esp + 0x24]
add esp, 4
cmp edi, 6
jne 0x4b2052
mov eax, dword [esp + 0x1c]
sub eax, ebp
inc eax
cmp eax, 0x32
jne 0x4b2052
movzx ecx, byte [edx + esi + 0x680]
lea eax, [ecx + 0x92]
imul edx, eax, 0x102
lea eax, [ecx + 0x26]
imul ecx, eax, 0x408
movzx eax, word [ebx + ebp*2]
add edx, esi
add ecx, esi
mov dword [esp + 0x64], edx
cmp dword [esi + 0x25c], 8
mov dword [esp + 0x14], ecx
mov ecx, dword [ecx + eax*4]
movzx eax, byte [eax + edx]
mov dword [esp + 0x30], ecx
mov dword [esp + 0x2c], eax
jl 0x4b093d
jmp 0x4b0910
mov edx, dword [esi + 0x4c]
mov ecx, dword [esi + 0x2c]
mov al, byte [esi + 0x25b]
mov byte [edx + ecx], al
inc dword [esi + 0x4c]
shl dword [esi + 0x258], 8
add dword [esi + 0x25c], 0xfffffff8
cmp dword [esi + 0x25c], 8
jge 0x4b0910
mov edx, dword [esp + 0x64]
mov eax, dword [esi + 0x25c]
mov ecx, 0x20
mov edi, dword [esp + 0x30]
sub ecx, eax
sub ecx, dword [esp + 0x2c]
shl edi, cl
mov ecx, dword [esp + 0x2c]
or dword [esi + 0x258], edi
add ecx, eax
mov edi, dword [esp + 0x14]
mov dword [esi + 0x25c], ecx
movzx eax, word [ebx + ebp*2 + 2]
mov edi, dword [edi + eax*4]
movzx eax, byte [eax + edx]
mov dword [esp + 0x30], edi
mov dword [esp + 0x2c], eax
cmp ecx, 8
jl 0x4b09b0
mov edx, dword [esi + 0x4c]
mov ecx, dword [esi + 0x2c]
mov al, byte [esi + 0x25b]
mov byte [edx + ecx], al
inc dword [esi + 0x4c]
shl dword [esi + 0x258], 8
add dword [esi + 0x25c], 0xfffffff8
cmp dword [esi + 0x25c], 8
jge 0x4b0983
mov edx, dword [esp + 0x64]
mov eax, dword [esi + 0x25c]
mov ecx, 0x20
mov edi, dword [esp + 0x30]
sub ecx, eax
sub ecx, dword [esp + 0x2c]
shl edi, cl
mov ecx, dword [esp + 0x2c]
or dword [esi + 0x258], edi
add ecx, eax
mov edi, dword [esp + 0x14]
mov dword [esi + 0x25c], ecx
movzx eax, word [ebx + ebp*2 + 4]
mov edi, dword [edi + eax*4]
movzx eax, byte [eax + edx]
mov dword [esp + 0x30], edi
mov dword [esp + 0x2c], eax
cmp ecx, 8
jl 0x4b0a2d
jmp 0x4b0a00
mov edx, dword [esi + 0x4c]
mov ecx, dword [esi + 0x2c]
mov al, byte [esi + 0x25b]
mov byte [edx + ecx], al
inc dword [esi + 0x4c]
shl dword [esi + 0x258], 8
add dword [esi + 0x25c], 0xfffffff8
cmp dword [esi + 0x25c], 8
jge 0x4b0a00
mov edx, dword [esp + 0x64]
mov eax, dword [esi + 0x25c]
mov ecx, 0x20
mov edi, dword [esp + 0x30]
sub ecx, eax
sub ecx, dword [esp + 0x2c]
shl edi, cl
mov ecx, dword [esp + 0x2c]
or dword [esi + 0x258], edi
add ecx, eax
mov edi, dword [esp + 0x14]
mov dword [esi + 0x25c], ecx
movzx eax, word [ebx + ebp*2 + 6]
mov edi, dword [edi + eax*4]
movzx eax, byte [eax + edx]
mov dword [esp + 0x30], edi
mov dword [esp + 0x2c], eax
cmp ecx, 8
jl 0x4b0aa0
mov edx, dword [esi + 0x4c]
mov ecx, dword [esi + 0x2c]
mov al, byte [esi + 0x25b]
mov byte [edx + ecx], al
inc dword [esi + 0x4c]
shl dword [esi + 0x258], 8
add dword [esi + 0x25c], 0xfffffff8
cmp dword [esi + 0x25c], 8
jge 0x4b0a73
mov edx, dword [esp + 0x64]
mov eax, dword [esi + 0x25c]
mov ecx, 0x20
mov edi, dword [esp + 0x30]
sub ecx, eax
sub ecx, dword [esp + 0x2c]
shl edi, cl
mov ecx, dword [esp + 0x2c]
or dword [esi + 0x258], edi
add ecx, eax
mov edi, dword [esp + 0x14]
mov dword [esi + 0x25c], ecx
movzx eax, word [ebx + ebp*2 + 8]
mov edi, dword [edi + eax*4]
movzx eax, byte [eax + edx]
mov dword [esp + 0x30], edi
mov dword [esp + 0x2c], eax
cmp ecx, 8
jl 0x4b0b1d
jmp 0x4b0af0
mov edx, dword [esi + 0x4c]
mov ecx, dword [esi + 0x2c]
mov al, byte [esi + 0x25b]
mov byte [edx + ecx], al
inc dword [esi + 0x4c]
shl dword [esi + 0x258], 8
add dword [esi + 0x25c], 0xfffffff8
cmp dword [esi + 0x25c], 8
jge 0x4b0af0
mov edx, dword [esp + 0x64]
mov eax, dword [esi + 0x25c]
mov ecx, 0x20
mov edi, dword [esp + 0x30]
sub ecx, eax
sub ecx, dword [esp + 0x2c]
shl edi, cl
mov ecx, dword [esp + 0x2c]
or dword [esi + 0x258], edi
add ecx, eax
mov edi, dword [esp + 0x14]
mov dword [esi + 0x25c], ecx
movzx eax, word [ebx + ebp*2 + 0xa]
mov edi, dword [edi + eax*4]
movzx eax, byte [eax + edx]
mov dword [esp + 0x30], edi
mov dword [esp + 0x2c], eax
cmp ecx, 8
jl 0x4b0b90
mov edx, dword [esi + 0x4c]
mov ecx, dword [esi + 0x2c]
mov al, byte [esi + 0x25b]
mov byte [edx + ecx], al
inc dword [esi + 0x4c]
shl dword [esi + 0x258], 8
add dword [esi + 0x25c], 0xfffffff8
cmp dword [esi + 0x25c], 8
jge 0x4b0b63
mov edx, dword [esp + 0x64]
mov eax, dword [esi + 0x25c]
mov ecx, 0x20
mov edi, dword [esp + 0x30]
sub ecx, eax
sub ecx, dword [esp + 0x2c]
shl edi, cl
mov ecx, dword [esp + 0x2c]
or dword [esi + 0x258], edi
add ecx, eax
mov edi, dword [esp + 0x14]
mov dword [esi + 0x25c], ecx
movzx eax, word [ebx + ebp*2 + 0xc]
mov edi, dword [edi + eax*4]
movzx eax, byte [eax + edx]
mov dword [esp + 0x30], edi
mov dword [esp + 0x2c], eax
cmp ecx, 8
jl 0x4b0c0d
jmp 0x4b0be0
mov edx, dword [esi + 0x4c]
mov ecx, dword [esi + 0x2c]
mov al, byte [esi + 0x25b]
mov byte [edx + ecx], al
inc dword [esi + 0x4c]
shl dword [esi + 0x258], 8
add dword [esi + 0x25c], 0xfffffff8
cmp dword [esi + 0x25c], 8
jge 0x4b0be0
mov edx, dword [esp + 0x64]
mov eax, dword [esi + 0x25c]
mov ecx, 0x20
mov edi, dword [esp + 0x30]
sub ecx, eax
sub ecx, dword [esp + 0x2c]
shl edi, cl
mov ecx, dword [esp + 0x2c]
or dword [esi + 0x258], edi
add ecx, eax
mov edi, dword [esp + 0x14]
mov dword [esi + 0x25c], ecx
movzx eax, word [ebx + ebp*2 + 0xe]
mov edi, dword [edi + eax*4]
movzx eax, byte [eax + edx]
mov dword [esp + 0x30], edi
mov dword [esp + 0x2c], eax
cmp ecx, 8
jl 0x4b0c80
mov edx, dword [esi + 0x4c]
mov ecx, dword [esi + 0x2c]
mov al, byte [esi + 0x25b]
mov byte [edx + ecx], al
inc dword [esi + 0x4c]
shl dword [esi + 0x258], 8
add dword [esi + 0x25c], 0xfffffff8
cmp dword [esi + 0x25c], 8
jge 0x4b0c53
mov edx, dword [esp + 0x64]
mov eax, dword [esi + 0x25c]
mov ecx, 0x20
mov edi, dword [esp + 0x30]
sub ecx, eax
sub ecx, dword [esp + 0x2c]
shl edi, cl
mov ecx, dword [esp + 0x2c]
or dword [esi + 0x258], edi
add ecx, eax
mov edi, dword [esp + 0x14]
mov dword [esi + 0x25c], ecx
movzx eax, word [ebx + ebp*2 + 0x10]
mov edi, dword [edi + eax*4]
movzx eax, byte [eax + edx]
mov dword [esp + 0x30], edi
mov dword [esp + 0x2c], eax
cmp ecx, 8
jl 0x4b0cfd
jmp 0x4b0cd0
mov edx, dword [esi + 0x4c]
mov ecx, dword [esi + 0x2c]
mov al, byte [esi + 0x25b]
mov byte [edx + ecx], al
inc dword [esi + 0x4c]
shl dword [esi + 0x258], 8
add dword [esi + 0x25c], 0xfffffff8
cmp dword [esi + 0x25c], 8
jge 0x4b0cd0
mov edx, dword [esp + 0x64]
mov eax, dword [esi + 0x25c]
mov ecx, 0x20
mov edi, dword [esp + 0x30]
sub ecx, eax
sub ecx, dword [esp + 0x2c]
shl edi, cl
mov ecx, dword [esp + 0x2c]
or dword [esi + 0x258], edi
add ecx, eax
mov edi, dword [esp + 0x14]
mov dword [esi + 0x25c], ecx
movzx eax, word [ebx + ebp*2 + 0x12]
mov edi, dword [edi + eax*4]
movzx eax, byte [eax + edx]
mov dword [esp + 0x30], edi
mov dword [esp + 0x2c], eax
cmp ecx, 8
jl 0x4b0d70
mov edx, dword [esi + 0x4c]
mov ecx, dword [esi + 0x2c]
mov al, byte [esi + 0x25b]
mov byte [edx + ecx], al
inc dword [esi + 0x4c]
shl dword [esi + 0x258], 8
add dword [esi + 0x25c], 0xfffffff8
cmp dword [esi + 0x25c], 8
jge 0x4b0d43
mov edx, dword [esp + 0x64]
mov eax, dword [esi + 0x25c]
mov ecx, 0x20
mov edi, dword [esp + 0x30]
sub ecx, eax
sub ecx, dword [esp + 0x2c]
shl edi, cl
mov ecx, dword [esp + 0x2c]
or dword [esi + 0x258], edi
add ecx, eax
mov edi, dword [esp + 0x14]
mov dword [esi + 0x25c], ecx
movzx eax, word [ebx + ebp*2 + 0x14]
mov edi, dword [edi + eax*4]
movzx eax, byte [eax + edx]
mov dword [esp + 0x30], edi
mov dword [esp + 0x2c], eax
cmp ecx, 8
jl 0x4b0ded
jmp 0x4b0dc0
mov edx, dword [esi + 0x4c]
mov ecx, dword [esi + 0x2c]
mov al, byte [esi + 0x25b]
mov byte [edx + ecx], al
inc dword [esi + 0x4c]
shl dword [esi + 0x258], 8
add dword [esi + 0x25c], 0xfffffff8
cmp dword [esi + 0x25c], 8
jge 0x4b0dc0
mov edx, dword [esp + 0x64]
mov eax, dword [esi + 0x25c]
mov ecx, 0x20
mov edi, dword [esp + 0x30]
sub ecx, eax
sub ecx, dword [esp + 0x2c]
shl edi, cl
mov ecx, dword [esp + 0x2c]
or dword [esi + 0x258], edi
add ecx, eax
mov edi, dword [esp + 0x14]
mov dword [esi + 0x25c], ecx
movzx eax, word [ebx + ebp*2 + 0x16]
mov edi, dword [edi + eax*4]
movzx eax, byte [eax + edx]
mov dword [esp + 0x30], edi
mov dword [esp + 0x2c], eax
cmp ecx, 8
jl 0x4b0e60
mov edx, dword [esi + 0x4c]
mov ecx, dword [esi + 0x2c]
mov al, byte [esi + 0x25b]
mov byte [edx + ecx], al
inc dword [esi + 0x4c]
shl dword [esi + 0x258], 8
add dword [esi + 0x25c], 0xfffffff8
cmp dword [esi + 0x25c], 8
jge 0x4b0e33
mov edx, dword [esp + 0x64]
mov eax, dword [esi + 0x25c]
mov ecx, 0x20
mov edi, dword [esp + 0x30]
sub ecx, eax
sub ecx, dword [esp + 0x2c]
shl edi, cl
mov ecx, dword [esp + 0x2c]
or dword [esi + 0x258], edi
add ecx, eax
mov edi, dword [esp + 0x14]
mov dword [esi + 0x25c], ecx
movzx eax, word [ebx + ebp*2 + 0x18]
mov edi, dword [edi + eax*4]
movzx eax, byte [eax + edx]
mov dword [esp + 0x30], edi
mov dword [esp + 0x2c], eax
cmp ecx, 8
jl 0x4b0edd
jmp 0x4b0eb0
mov edx, dword [esi + 0x4c]
mov ecx, dword [esi + 0x2c]
mov al, byte [esi + 0x25b]
mov byte [edx + ecx], al
inc dword [esi + 0x4c]
shl dword [esi + 0x258], 8
add dword [esi + 0x25c], 0xfffffff8
cmp dword [esi + 0x25c], 8
jge 0x4b0eb0
mov edx, dword [esp + 0x64]
mov eax, dword [esi + 0x25c]
mov ecx, 0x20
mov edi, dword [esp + 0x30]
sub ecx, eax
sub ecx, dword [esp + 0x2c]
shl edi, cl
mov ecx, dword [esp + 0x2c]
or dword [esi + 0x258], edi
add ecx, eax
mov edi, dword [esp + 0x14]
mov dword [esi + 0x25c], ecx
movzx eax, word [ebx + ebp*2 + 0x1a]
mov edi, dword [edi + eax*4]
movzx eax, byte [eax + edx]
mov dword [esp + 0x30], edi
mov dword [esp + 0x2c], eax
cmp ecx, 8
jl 0x4b0f50
mov edx, dword [esi + 0x4c]
mov ecx, dword [esi + 0x2c]
mov al, byte [esi + 0x25b]
mov byte [edx + ecx], al
inc dword [esi + 0x4c]
shl dword [esi + 0x258], 8
add dword [esi + 0x25c], 0xfffffff8
cmp dword [esi + 0x25c], 8
jge 0x4b0f23
mov edx, dword [esp + 0x64]
mov eax, dword [esi + 0x25c]
mov ecx, 0x20
mov edi, dword [esp + 0x30]
sub ecx, eax
sub ecx, dword [esp + 0x2c]
shl edi, cl
mov ecx, dword [esp + 0x2c]
or dword [esi + 0x258], edi
add ecx, eax
mov edi, dword [esp + 0x14]
mov dword [esi + 0x25c], ecx
movzx eax, word [ebx + ebp*2 + 0x1c]
mov edi, dword [edi + eax*4]
movzx eax, byte [eax + edx]
mov dword [esp + 0x30], edi
mov dword [esp + 0x2c], eax
cmp ecx, 8
jl 0x4b0fcd
jmp 0x4b0fa0
mov edx, dword [esi + 0x4c]
mov ecx, dword [esi + 0x2c]
mov al, byte [esi + 0x25b]
mov byte [edx + ecx], al
inc dword [esi + 0x4c]
shl dword [esi + 0x258], 8
add dword [esi + 0x25c], 0xfffffff8
cmp dword [esi + 0x25c], 8
jge 0x4b0fa0
mov edx, dword [esp + 0x64]
mov eax, dword [esi + 0x25c]
mov ecx, 0x20
mov edi, dword [esp + 0x30]
sub ecx, eax
sub ecx, dword [esp + 0x2c]
shl edi, cl
mov ecx, dword [esp + 0x2c]
or dword [esi + 0x258], edi
add ecx, eax
mov edi, dword [esp + 0x14]
mov dword [esi + 0x25c], ecx
movzx eax, word [ebx + ebp*2 + 0x1e]
mov edi, dword [edi + eax*4]
movzx eax, byte [eax + edx]
mov dword [esp + 0x30], edi
mov dword [esp + 0x2c], eax
cmp ecx, 8
jl 0x4b1040
mov edx, dword [esi + 0x4c]
mov ecx, dword [esi + 0x2c]
mov al, byte [esi + 0x25b]
mov byte [edx + ecx], al
inc dword [esi + 0x4c]
shl dword [esi + 0x258], 8
add dword [esi + 0x25c], 0xfffffff8
cmp dword [esi + 0x25c], 8
jge 0x4b1013
mov edx, dword [esp + 0x64]
mov eax, dword [esi + 0x25c]
mov ecx, 0x20
mov edi, dword [esp + 0x30]
sub ecx, eax
sub ecx, dword [esp + 0x2c]
shl edi, cl
mov ecx, dword [esp + 0x2c]
or dword [esi + 0x258], edi
add ecx, eax
mov edi, dword [esp + 0x14]
mov dword [esi + 0x25c], ecx
movzx eax, word [ebx + ebp*2 + 0x20]
mov edi, dword [edi + eax*4]
movzx eax, byte [eax + edx]
mov dword [esp + 0x30], edi
mov dword [esp + 0x2c], eax
cmp ecx, 8
jl 0x4b10bd
jmp 0x4b1090
mov edx, dword [esi + 0x4c]
mov ecx, dword [esi + 0x2c]
mov al, byte [esi + 0x25b]
mov byte [edx + ecx], al
inc dword [esi + 0x4c]
shl dword [esi + 0x258], 8
add dword [esi + 0x25c], 0xfffffff8
cmp dword [esi + 0x25c], 8
jge 0x4b1090
mov edx, dword [esp + 0x64]
mov eax, dword [esi + 0x25c]
mov ecx, 0x20
mov edi, dword [esp + 0x30]
sub ecx, eax
sub ecx, dword [esp + 0x2c]
shl edi, cl
mov ecx, dword [esp + 0x2c]
or dword [esi + 0x258], edi
add ecx, eax
mov edi, dword [esp + 0x14]
mov dword [esi + 0x25c], ecx
movzx eax, word [ebx + ebp*2 + 0x22]
mov edi, dword [edi + eax*4]
movzx eax, byte [eax + edx]
mov dword [esp + 0x30], edi
mov dword [esp + 0x2c], eax
cmp ecx, 8
jl 0x4b1130
mov edx, dword [esi + 0x4c]
mov ecx, dword [esi + 0x2c]
mov al, byte [esi + 0x25b]
mov byte [edx + ecx], al
inc dword [esi + 0x4c]
shl dword [esi + 0x258], 8
add dword [esi + 0x25c], 0xfffffff8
cmp dword [esi + 0x25c], 8
jge 0x4b1103
mov edx, dword [esp + 0x64]
mov eax, dword [esi + 0x25c]
mov ecx, 0x20
mov edi, dword [esp + 0x30]
sub ecx, eax
sub ecx, dword [esp + 0x2c]
shl edi, cl
mov ecx, dword [esp + 0x2c]
or dword [esi + 0x258], edi
add ecx, eax
mov edi, dword [esp + 0x14]
mov dword [esi + 0x25c], ecx
movzx eax, word [ebx + ebp*2 + 0x24]
mov edi, dword [edi + eax*4]
movzx eax, byte [eax + edx]
mov dword [esp + 0x30], edi
mov dword [esp + 0x2c], eax
cmp ecx, 8
jl 0x4b11ad
jmp 0x4b1180
mov edx, dword [esi + 0x4c]
mov ecx, dword [esi + 0x2c]
mov al, byte [esi + 0x25b]
mov byte [edx + ecx], al
inc dword [esi + 0x4c]
shl dword [esi + 0x258], 8
add dword [esi + 0x25c], 0xfffffff8
cmp dword [esi + 0x25c], 8
jge 0x4b1180
mov edx, dword [esp + 0x64]
mov eax, dword [esi + 0x25c]
mov ecx, 0x20
mov edi, dword [esp + 0x30]
sub ecx, eax
sub ecx, dword [esp + 0x2c]
shl edi, cl
mov ecx, dword [esp + 0x2c]
or dword [esi + 0x258], edi
add ecx, eax
mov edi, dword [esp + 0x14]
mov dword [esi + 0x25c], ecx
movzx eax, word [ebx + ebp*2 + 0x26]
mov edi, dword [edi + eax*4]
movzx eax, byte [eax + edx]
mov dword [esp + 0x30], edi
mov dword [esp + 0x2c], eax
cmp ecx, 8
jl 0x4b1220
mov edx, dword [esi + 0x4c]
mov ecx, dword [esi + 0x2c]
mov al, byte [esi + 0x25b]
mov byte [edx + ecx], al
inc dword [esi + 0x4c]
shl dword [esi + 0x258], 8
add dword [esi + 0x25c], 0xfffffff8
cmp dword [esi + 0x25c], 8
jge 0x4b11f3
mov edx, dword [esp + 0x64]
mov eax, dword [esi + 0x25c]
mov ecx, 0x20
mov edi, dword [esp + 0x30]
sub ecx, eax
sub ecx, dword [esp + 0x2c]
shl edi, cl
mov ecx, dword [esp + 0x2c]
or dword [esi + 0x258], edi
add ecx, eax
mov edi, dword [esp + 0x14]
mov dword [esi + 0x25c], ecx
movzx eax, word [ebx + ebp*2 + 0x28]
mov edi, dword [edi + eax*4]
movzx eax, byte [eax + edx]
mov dword [esp + 0x30], edi
mov dword [esp + 0x2c], eax
cmp ecx, 8
jl 0x4b129d
jmp 0x4b1270
mov edx, dword [esi + 0x4c]
mov ecx, dword [esi + 0x2c]
mov al, byte [esi + 0x25b]
mov byte [edx + ecx], al
inc dword [esi + 0x4c]
shl dword [esi + 0x258], 8
add dword [esi + 0x25c], 0xfffffff8
cmp dword [esi + 0x25c], 8
jge 0x4b1270
mov edx, dword [esp + 0x64]
mov eax, dword [esi + 0x25c]
mov ecx, 0x20
mov edi, dword [esp + 0x30]
sub ecx, eax
sub ecx, dword [esp + 0x2c]
shl edi, cl
mov ecx, dword [esp + 0x2c]
or dword [esi + 0x258], edi
add ecx, eax
mov edi, dword [esp + 0x14]
mov dword [esi + 0x25c], ecx
movzx eax, word [ebx + ebp*2 + 0x2a]
mov edi, dword [edi + eax*4]
movzx eax, byte [eax + edx]
mov dword [esp + 0x30], edi
mov dword [esp + 0x2c], eax
cmp ecx, 8
jl 0x4b1310
mov edx, dword [esi + 0x4c]
mov ecx, dword [esi + 0x2c]
mov al, byte [esi + 0x25b]
mov byte [edx + ecx], al
inc dword [esi + 0x4c]
shl dword [esi + 0x258], 8
add dword [esi + 0x25c], 0xfffffff8
cmp dword [esi + 0x25c], 8
jge 0x4b12e3
mov edx, dword [esp + 0x64]
mov eax, dword [esi + 0x25c]
mov ecx, 0x20
mov edi, dword [esp + 0x30]
sub ecx, eax
sub ecx, dword [esp + 0x2c]
shl edi, cl
mov ecx, dword [esp + 0x2c]
or dword [esi + 0x258], edi
add ecx, eax
mov edi, dword [esp + 0x14]
mov dword [esi + 0x25c], ecx
movzx eax, word [ebx + ebp*2 + 0x2c]
mov edi, dword [edi + eax*4]
movzx eax, byte [eax + edx]
mov dword [esp + 0x30], edi
mov dword [esp + 0x2c], eax
cmp ecx, 8
jl 0x4b138d
jmp 0x4b1360
mov edx, dword [esi + 0x4c]
mov ecx, dword [esi + 0x2c]
mov al, byte [esi + 0x25b]
mov byte [edx + ecx], al
inc dword [esi + 0x4c]
shl dword [esi + 0x258], 8
add dword [esi + 0x25c], 0xfffffff8
cmp dword [esi + 0x25c], 8
jge 0x4b1360
mov edx, dword [esp + 0x64]
mov eax, dword [esi + 0x25c]
mov ecx, 0x20
mov edi, dword [esp + 0x30]
sub ecx, eax
sub ecx, dword [esp + 0x2c]
shl edi, cl
mov ecx, dword [esp + 0x2c]
or dword [esi + 0x258], edi
add ecx, eax
mov edi, dword [esp + 0x14]
mov dword [esi + 0x25c], ecx
movzx eax, word [ebx + ebp*2 + 0x2e]
mov edi, dword [edi + eax*4]
movzx eax, byte [eax + edx]
mov dword [esp + 0x30], edi
mov dword [esp + 0x2c], eax
cmp ecx, 8
jl 0x4b1400
mov edx, dword [esi + 0x4c]
mov ecx, dword [esi + 0x2c]
mov al, byte [esi + 0x25b]
mov byte [edx + ecx], al
inc dword [esi + 0x4c]
shl dword [esi + 0x258], 8
add dword [esi + 0x25c], 0xfffffff8
cmp dword [esi + 0x25c], 8
jge 0x4b13d3
mov edx, dword [esp + 0x64]
mov eax, dword [esi + 0x25c]
mov ecx, 0x20
mov edi, dword [esp + 0x30]
sub ecx, eax
sub ecx, dword [esp + 0x2c]
shl edi, cl
mov ecx, dword [esp + 0x2c]
or dword [esi + 0x258], edi
add ecx, eax
mov edi, dword [esp + 0x14]
mov dword [esi + 0x25c], ecx
movzx eax, word [ebx + ebp*2 + 0x30]
mov edi, dword [edi + eax*4]
movzx eax, byte [eax + edx]
mov dword [esp + 0x30], edi
mov dword [esp + 0x2c], eax
cmp ecx, 8
jl 0x4b147d
jmp 0x4b1450
mov edx, dword [esi + 0x4c]
mov ecx, dword [esi + 0x2c]
mov al, byte [esi + 0x25b]
mov byte [edx + ecx], al
inc dword [esi + 0x4c]
shl dword [esi + 0x258], 8
add dword [esi + 0x25c], 0xfffffff8
cmp dword [esi + 0x25c], 8
jge 0x4b1450
mov edx, dword [esp + 0x64]
mov eax, dword [esi + 0x25c]
mov ecx, 0x20
mov edi, dword [esp + 0x30]
sub ecx, eax
sub ecx, dword [esp + 0x2c]
shl edi, cl
mov ecx, dword [esp + 0x2c]
or dword [esi + 0x258], edi
add ecx, eax
mov edi, dword [esp + 0x14]
mov dword [esi + 0x25c], ecx
movzx eax, word [ebx + ebp*2 + 0x32]
mov edi, dword [edi + eax*4]
movzx eax, byte [eax + edx]
mov dword [esp + 0x30], edi
mov dword [esp + 0x2c], eax
cmp ecx, 8
jl 0x4b14f0
mov edx, dword [esi + 0x4c]
mov ecx, dword [esi + 0x2c]
mov al, byte [esi + 0x25b]
mov byte [edx + ecx], al
inc dword [esi + 0x4c]
shl dword [esi + 0x258], 8
add dword [esi + 0x25c], 0xfffffff8
cmp dword [esi + 0x25c], 8
jge 0x4b14c3
mov edx, dword [esp + 0x64]
mov eax, dword [esi + 0x25c]
mov ecx, 0x20
mov edi, dword [esp + 0x30]
sub ecx, eax
sub ecx, dword [esp + 0x2c]
shl edi, cl
mov ecx, dword [esp + 0x2c]
or dword [esi + 0x258], edi
add ecx, eax
mov edi, dword [esp + 0x14]
mov dword [esi + 0x25c], ecx
movzx eax, word [ebx + ebp*2 + 0x34]
mov edi, dword [edi + eax*4]
movzx eax, byte [eax + edx]
mov dword [esp + 0x30], edi
mov dword [esp + 0x2c], eax
cmp ecx, 8
jl 0x4b156d
jmp 0x4b1540
mov edx, dword [esi + 0x4c]
mov ecx, dword [esi + 0x2c]
mov al, byte [esi + 0x25b]
mov byte [edx + ecx], al
inc dword [esi + 0x4c]
shl dword [esi + 0x258], 8
add dword [esi + 0x25c], 0xfffffff8
cmp dword [esi + 0x25c], 8
jge 0x4b1540
mov edx, dword [esp + 0x64]
mov eax, dword [esi + 0x25c]
mov ecx, 0x20
mov edi, dword [esp + 0x30]
sub ecx, eax
sub ecx, dword [esp + 0x2c]
shl edi, cl
mov ecx, dword [esp + 0x2c]
or dword [esi + 0x258], edi
add ecx, eax
mov edi, dword [esp + 0x14]
mov dword [esi + 0x25c], ecx
movzx eax, word [ebx + ebp*2 + 0x36]
mov edi, dword [edi + eax*4]
movzx eax, byte [eax + edx]
mov dword [esp + 0x30], edi
mov dword [esp + 0x2c], eax
cmp ecx, 8
jl 0x4b15e0
mov edx, dword [esi + 0x4c]
mov ecx, dword [esi + 0x2c]
mov al, byte [esi + 0x25b]
mov byte [edx + ecx], al
inc dword [esi + 0x4c]
shl dword [esi + 0x258], 8
add dword [esi + 0x25c], 0xfffffff8
cmp dword [esi + 0x25c], 8
jge 0x4b15b3
mov edx, dword [esp + 0x64]
mov eax, dword [esi + 0x25c]
mov ecx, 0x20
mov edi, dword [esp + 0x30]
sub ecx, eax
sub ecx, dword [esp + 0x2c]
shl edi, cl
mov ecx, dword [esp + 0x2c]
or dword [esi + 0x258], edi
add ecx, eax
mov edi, dword [esp + 0x14]
mov dword [esi + 0x25c], ecx
movzx eax, word [ebx + ebp*2 + 0x38]
mov edi, dword [edi + eax*4]
movzx eax, byte [eax + edx]
mov dword [esp + 0x30], edi
mov dword [esp + 0x2c], eax
cmp ecx, 8
jl 0x4b165d
jmp 0x4b1630
mov edx, dword [esi + 0x4c]
mov ecx, dword [esi + 0x2c]
mov al, byte [esi + 0x25b]
mov byte [edx + ecx], al
inc dword [esi + 0x4c]
shl dword [esi + 0x258], 8
add dword [esi + 0x25c], 0xfffffff8
cmp dword [esi + 0x25c], 8
jge 0x4b1630
mov edx, dword [esp + 0x64]
mov eax, dword [esi + 0x25c]
mov ecx, 0x20
mov edi, dword [esp + 0x30]
sub ecx, eax
sub ecx, dword [esp + 0x2c]
shl edi, cl
mov ecx, dword [esp + 0x2c]
or dword [esi + 0x258], edi
add ecx, eax
mov edi, dword [esp + 0x14]
mov dword [esi + 0x25c], ecx
movzx eax, word [ebx + ebp*2 + 0x3a]
mov edi, dword [edi + eax*4]
movzx eax, byte [eax + edx]
mov dword [esp + 0x30], edi
mov dword [esp + 0x2c], eax
cmp ecx, 8
jl 0x4b16d0
mov edx, dword [esi + 0x4c]
mov ecx, dword [esi + 0x2c]
mov al, byte [esi + 0x25b]
mov byte [edx + ecx], al
inc dword [esi + 0x4c]
shl dword [esi + 0x258], 8
add dword [esi + 0x25c], 0xfffffff8
cmp dword [esi + 0x25c], 8
jge 0x4b16a3
mov edx, dword [esp + 0x64]
mov eax, dword [esi + 0x25c]
mov ecx, 0x20
mov edi, dword [esp + 0x30]
sub ecx, eax
sub ecx, dword [esp + 0x2c]
shl edi, cl
mov ecx, dword [esp + 0x2c]
or dword [esi + 0x258], edi
add ecx, eax
mov edi, dword [esp + 0x14]
mov dword [esi + 0x25c], ecx
movzx eax, word [ebx + ebp*2 + 0x3c]
mov edi, dword [edi + eax*4]
movzx eax, byte [eax + edx]
mov dword [esp + 0x30], edi
mov dword [esp + 0x2c], eax
cmp ecx, 8
jl 0x4b174d
jmp 0x4b1720
mov edx, dword [esi + 0x4c]
mov ecx, dword [esi + 0x2c]
mov al, byte [esi + 0x25b]
mov byte [edx + ecx], al
inc dword [esi + 0x4c]
shl dword [esi + 0x258], 8
add dword [esi + 0x25c], 0xfffffff8
cmp dword [esi + 0x25c], 8
jge 0x4b1720
mov edx, dword [esp + 0x64]
mov eax, dword [esi + 0x25c]
mov ecx, 0x20
mov edi, dword [esp + 0x30]
sub ecx, eax
sub ecx, dword [esp + 0x2c]
shl edi, cl
mov ecx, dword [esp + 0x2c]
or dword [esi + 0x258], edi
add ecx, eax
mov edi, dword [esp + 0x14]
mov dword [esi + 0x25c], ecx
movzx eax, word [ebx + ebp*2 + 0x3e]
mov edi, dword [edi + eax*4]
movzx eax, byte [eax + edx]
mov dword [esp + 0x30], edi
mov dword [esp + 0x2c], eax
cmp ecx, 8
jl 0x4b17c0
mov edx, dword [esi + 0x4c]
mov ecx, dword [esi + 0x2c]
mov al, byte [esi + 0x25b]
mov byte [edx + ecx], al
inc dword [esi + 0x4c]
shl dword [esi + 0x258], 8
add dword [esi + 0x25c], 0xfffffff8
cmp dword [esi + 0x25c], 8
jge 0x4b1793
mov edx, dword [esp + 0x64]
mov eax, dword [esi + 0x25c]
mov ecx, 0x20
mov edi, dword [esp + 0x30]
sub ecx, eax
sub ecx, dword [esp + 0x2c]
shl edi, cl
mov ecx, dword [esp + 0x2c]
or dword [esi + 0x258], edi
add ecx, eax
mov edi, dword [esp + 0x14]
mov dword [esi + 0x25c], ecx
movzx eax, word [ebx + ebp*2 + 0x40]
mov edi, dword [edi + eax*4]
movzx eax, byte [eax + edx]
mov dword [esp + 0x30], edi
mov dword [esp + 0x2c], eax
cmp ecx, 8
jl 0x4b183d
jmp 0x4b1810
mov edx, dword [esi + 0x4c]
mov ecx, dword [esi + 0x2c]
mov al, byte [esi + 0x25b]
mov byte [edx + ecx], al
inc dword [esi + 0x4c]
shl dword [esi + 0x258], 8
add dword [esi + 0x25c], 0xfffffff8
cmp dword [esi + 0x25c], 8
jge 0x4b1810
mov edx, dword [esp + 0x64]
mov eax, dword [esi + 0x25c]
mov ecx, 0x20
mov edi, dword [esp + 0x30]
sub ecx, eax
sub ecx, dword [esp + 0x2c]
shl edi, cl
mov ecx, dword [esp + 0x2c]
or dword [esi + 0x258], edi
add ecx, eax
mov edi, dword [esp + 0x14]
mov dword [esi + 0x25c], ecx
movzx eax, word [ebx + ebp*2 + 0x42]
mov edi, dword [edi + eax*4]
movzx eax, byte [eax + edx]
mov dword [esp + 0x30], edi
mov dword [esp + 0x2c], eax
cmp ecx, 8
jl 0x4b18b0
mov edx, dword [esi + 0x4c]
mov ecx, dword [esi + 0x2c]
mov al, byte [esi + 0x25b]
mov byte [edx + ecx], al
inc dword [esi + 0x4c]
shl dword [esi + 0x258], 8
add dword [esi + 0x25c], 0xfffffff8
cmp dword [esi + 0x25c], 8
jge 0x4b1883
mov edx, dword [esp + 0x64]
mov eax, dword [esi + 0x25c]
mov ecx, 0x20
mov edi, dword [esp + 0x30]
sub ecx, eax
sub ecx, dword [esp + 0x2c]
shl edi, cl
mov ecx, dword [esp + 0x2c]
or dword [esi + 0x258], edi
add ecx, eax
mov edi, dword [esp + 0x14]
mov dword [esi + 0x25c], ecx
movzx eax, word [ebx + ebp*2 + 0x44]
mov edi, dword [edi + eax*4]
movzx eax, byte [eax + edx]
mov dword [esp + 0x30], edi
mov dword [esp + 0x2c], eax
cmp ecx, 8
jl 0x4b192d
jmp 0x4b1900
mov edx, dword [esi + 0x4c]
mov ecx, dword [esi + 0x2c]
mov al, byte [esi + 0x25b]
mov byte [edx + ecx], al
inc dword [esi + 0x4c]
shl dword [esi + 0x258], 8
add dword [esi + 0x25c], 0xfffffff8
cmp dword [esi + 0x25c], 8
jge 0x4b1900
mov edx, dword [esp + 0x64]
mov eax, dword [esi + 0x25c]
mov ecx, 0x20
mov edi, dword [esp + 0x30]
sub ecx, eax
sub ecx, dword [esp + 0x2c]
shl edi, cl
mov ecx, dword [esp + 0x2c]
or dword [esi + 0x258], edi
add ecx, eax
mov edi, dword [esp + 0x14]
mov dword [esi + 0x25c], ecx
movzx eax, word [ebx + ebp*2 + 0x46]
mov edi, dword [edi + eax*4]
movzx eax, byte [eax + edx]
mov dword [esp + 0x30], edi
mov dword [esp + 0x2c], eax
cmp ecx, 8
jl 0x4b19a0
mov edx, dword [esi + 0x4c]
mov ecx, dword [esi + 0x2c]
mov al, byte [esi + 0x25b]
mov byte [edx + ecx], al
inc dword [esi + 0x4c]
shl dword [esi + 0x258], 8
add dword [esi + 0x25c], 0xfffffff8
cmp dword [esi + 0x25c], 8
jge 0x4b1973
mov edx, dword [esp + 0x64]
mov eax, dword [esi + 0x25c]
mov ecx, 0x20
mov edi, dword [esp + 0x30]
sub ecx, eax
sub ecx, dword [esp + 0x2c]
shl edi, cl
mov ecx, dword [esp + 0x2c]
or dword [esi + 0x258], edi
add ecx, eax
mov edi, dword [esp + 0x14]
mov dword [esi + 0x25c], ecx
movzx eax, word [ebx + ebp*2 + 0x48]
mov edi, dword [edi + eax*4]
movzx eax, byte [eax + edx]
mov dword [esp + 0x30], edi
mov dword [esp + 0x2c], eax
cmp ecx, 8
jl 0x4b1a1d
jmp 0x4b19f0
mov edx, dword [esi + 0x4c]
mov ecx, dword [esi + 0x2c]
mov al, byte [esi + 0x25b]
mov byte [edx + ecx], al
inc dword [esi + 0x4c]
shl dword [esi + 0x258], 8
add dword [esi + 0x25c], 0xfffffff8
cmp dword [esi + 0x25c], 8
jge 0x4b19f0
mov edx, dword [esp + 0x64]
mov eax, dword [esi + 0x25c]
mov ecx, 0x20
mov edi, dword [esp + 0x30]
sub ecx, eax
sub ecx, dword [esp + 0x2c]
shl edi, cl
mov ecx, dword [esp + 0x2c]
or dword [esi + 0x258], edi
add ecx, eax
mov edi, dword [esp + 0x14]
mov dword [esi + 0x25c], ecx
movzx eax, word [ebx + ebp*2 + 0x4a]
mov edi, dword [edi + eax*4]
movzx eax, byte [eax + edx]
mov dword [esp + 0x30], edi
mov dword [esp + 0x2c], eax
cmp ecx, 8
jl 0x4b1a90
mov edx, dword [esi + 0x4c]
mov ecx, dword [esi + 0x2c]
mov al, byte [esi + 0x25b]
mov byte [edx + ecx], al
inc dword [esi + 0x4c]
shl dword [esi + 0x258], 8
add dword [esi + 0x25c], 0xfffffff8
cmp dword [esi + 0x25c], 8
jge 0x4b1a63
mov edx, dword [esp + 0x64]
mov eax, dword [esi + 0x25c]
mov ecx, 0x20
mov edi, dword [esp + 0x30]
sub ecx, eax
sub ecx, dword [esp + 0x2c]
shl edi, cl
mov ecx, dword [esp + 0x2c]
or dword [esi + 0x258], edi
add ecx, eax
mov edi, dword [esp + 0x14]
mov dword [esi + 0x25c], ecx
movzx eax, word [ebx + ebp*2 + 0x4c]
mov edi, dword [edi + eax*4]
movzx eax, byte [eax + edx]
mov dword [esp + 0x30], edi
mov dword [esp + 0x2c], eax
cmp ecx, 8
jl 0x4b1b0d
jmp 0x4b1ae0
mov edx, dword [esi + 0x4c]
mov ecx, dword [esi + 0x2c]
mov al, byte [esi + 0x25b]
mov byte [edx + ecx], al
inc dword [esi + 0x4c]
shl dword [esi + 0x258], 8
add dword [esi + 0x25c], 0xfffffff8
cmp dword [esi + 0x25c], 8
jge 0x4b1ae0
mov edx, dword [esp + 0x64]
mov eax, dword [esi + 0x25c]
mov ecx, 0x20
mov edi, dword [esp + 0x30]
sub ecx, eax
sub ecx, dword [esp + 0x2c]
shl edi, cl
mov ecx, dword [esp + 0x2c]
or dword [esi + 0x258], edi
add ecx, eax
mov edi, dword [esp + 0x14]
mov dword [esi + 0x25c], ecx
movzx eax, word [ebx + ebp*2 + 0x4e]
mov edi, dword [edi + eax*4]
movzx eax, byte [eax + edx]
mov dword [esp + 0x30], edi
mov dword [esp + 0x2c], eax
cmp ecx, 8
jl 0x4b1b80
mov edx, dword [esi + 0x4c]
mov ecx, dword [esi + 0x2c]
mov al, byte [esi + 0x25b]
mov byte [edx + ecx], al
inc dword [esi + 0x4c]
shl dword [esi + 0x258], 8
add dword [esi + 0x25c], 0xfffffff8
cmp dword [esi + 0x25c], 8
jge 0x4b1b53
mov edx, dword [esp + 0x64]
mov eax, dword [esi + 0x25c]
mov ecx, 0x20
mov edi, dword [esp + 0x30]
sub ecx, eax
sub ecx, dword [esp + 0x2c]
shl edi, cl
mov ecx, dword [esp + 0x2c]
or dword [esi + 0x258], edi
add ecx, eax
mov edi, dword [esp + 0x14]
mov dword [esi + 0x25c], ecx
movzx eax, word [ebx + ebp*2 + 0x50]
mov edi, dword [edi + eax*4]
movzx eax, byte [eax + edx]
mov dword [esp + 0x30], edi
mov dword [esp + 0x2c], eax
cmp ecx, 8
jl 0x4b1bfd
jmp 0x4b1bd0
mov edx, dword [esi + 0x4c]
mov ecx, dword [esi + 0x2c]
mov al, byte [esi + 0x25b]
mov byte [edx + ecx], al
inc dword [esi + 0x4c]
shl dword [esi + 0x258], 8
add dword [esi + 0x25c], 0xfffffff8
cmp dword [esi + 0x25c], 8
jge 0x4b1bd0
mov edx, dword [esp + 0x64]
mov eax, dword [esi + 0x25c]
mov ecx, 0x20
mov edi, dword [esp + 0x30]
sub ecx, eax
sub ecx, dword [esp + 0x2c]
shl edi, cl
mov ecx, dword [esp + 0x2c]
or dword [esi + 0x258], edi
add ecx, eax
mov edi, dword [esp + 0x14]
mov dword [esi + 0x25c], ecx
movzx eax, word [ebx + ebp*2 + 0x52]
mov edi, dword [edi + eax*4]
movzx eax, byte [eax + edx]
mov dword [esp + 0x30], edi
mov dword [esp + 0x2c], eax
cmp ecx, 8
jl 0x4b1c70
mov edx, dword [esi + 0x4c]
mov ecx, dword [esi + 0x2c]
mov al, byte [esi + 0x25b]
mov byte [edx + ecx], al
inc dword [esi + 0x4c]
shl dword [esi + 0x258], 8
add dword [esi + 0x25c], 0xfffffff8
cmp dword [esi + 0x25c], 8
jge 0x4b1c43
mov edx, dword [esp + 0x64]
mov eax, dword [esi + 0x25c]
mov ecx, 0x20
mov edi, dword [esp + 0x30]
sub ecx, eax
sub ecx, dword [esp + 0x2c]
shl edi, cl
mov ecx, dword [esp + 0x2c]
or dword [esi + 0x258], edi
add ecx, eax
mov edi, dword [esp + 0x14]
mov dword [esi + 0x25c], ecx
movzx eax, word [ebx + ebp*2 + 0x54]
mov edi, dword [edi + eax*4]
movzx eax, byte [eax + edx]
mov dword [esp + 0x30], edi
mov dword [esp + 0x2c], eax
cmp ecx, 8
jl 0x4b1ced
jmp 0x4b1cc0
mov edx, dword [esi + 0x4c]
mov ecx, dword [esi + 0x2c]
mov al, byte [esi + 0x25b]
mov byte [edx + ecx], al
inc dword [esi + 0x4c]
shl dword [esi + 0x258], 8
add dword [esi + 0x25c], 0xfffffff8
cmp dword [esi + 0x25c], 8
jge 0x4b1cc0
mov edx, dword [esp + 0x64]
mov eax, dword [esi + 0x25c]
mov ecx, 0x20
mov edi, dword [esp + 0x30]
sub ecx, eax
sub ecx, dword [esp + 0x2c]
shl edi, cl
mov ecx, dword [esp + 0x2c]
or dword [esi + 0x258], edi
add ecx, eax
mov edi, dword [esp + 0x14]
mov dword [esi + 0x25c], ecx
movzx eax, word [ebx + ebp*2 + 0x56]
mov edi, dword [edi + eax*4]
movzx eax, byte [eax + edx]
mov dword [esp + 0x30], edi
mov dword [esp + 0x2c], eax
cmp ecx, 8
jl 0x4b1d60
mov edx, dword [esi + 0x4c]
mov ecx, dword [esi + 0x2c]
mov al, byte [esi + 0x25b]
mov byte [edx + ecx], al
inc dword [esi + 0x4c]
shl dword [esi + 0x258], 8
add dword [esi + 0x25c], 0xfffffff8
cmp dword [esi + 0x25c], 8
jge 0x4b1d33
mov edx, dword [esp + 0x64]
mov eax, dword [esi + 0x25c]
mov ecx, 0x20
mov edi, dword [esp + 0x30]
sub ecx, eax
sub ecx, dword [esp + 0x2c]
shl edi, cl
mov ecx, dword [esp + 0x2c]
or dword [esi + 0x258], edi
add ecx, eax
mov edi, dword [esp + 0x14]
mov dword [esi + 0x25c], ecx
movzx eax, word [ebx + ebp*2 + 0x58]
mov edi, dword [edi + eax*4]
movzx eax, byte [eax + edx]
mov dword [esp + 0x30], edi
mov dword [esp + 0x2c], eax
cmp ecx, 8
jl 0x4b1ddd
jmp 0x4b1db0
mov edx, dword [esi + 0x4c]
mov ecx, dword [esi + 0x2c]
mov al, byte [esi + 0x25b]
mov byte [edx + ecx], al
inc dword [esi + 0x4c]
shl dword [esi + 0x258], 8
add dword [esi + 0x25c], 0xfffffff8
cmp dword [esi + 0x25c], 8
jge 0x4b1db0
mov edx, dword [esp + 0x64]
mov eax, dword [esi + 0x25c]
mov ecx, 0x20
mov edi, dword [esp + 0x30]
sub ecx, eax
sub ecx, dword [esp + 0x2c]
shl edi, cl
mov ecx, dword [esp + 0x2c]
or dword [esi + 0x258], edi
add ecx, eax
mov edi, dword [esp + 0x14]
mov dword [esi + 0x25c], ecx
movzx eax, word [ebx + ebp*2 + 0x5a]
mov edi, dword [edi + eax*4]
movzx eax, byte [eax + edx]
mov dword [esp + 0x30], edi
mov dword [esp + 0x2c], eax
cmp ecx, 8
jl 0x4b1e50
mov edx, dword [esi + 0x4c]
mov ecx, dword [esi + 0x2c]
mov al, byte [esi + 0x25b]
mov byte [edx + ecx], al
inc dword [esi + 0x4c]
shl dword [esi + 0x258], 8
add dword [esi + 0x25c], 0xfffffff8
cmp dword [esi + 0x25c], 8
jge 0x4b1e23
mov edx, dword [esp + 0x64]
mov eax, dword [esi + 0x25c]
mov ecx, 0x20
mov edi, dword [esp + 0x30]
sub ecx, eax
sub ecx, dword [esp + 0x2c]
shl edi, cl
mov ecx, dword [esp + 0x2c]
or dword [esi + 0x258], edi
add ecx, eax
mov edi, dword [esp + 0x14]
mov dword [esi + 0x25c], ecx
movzx eax, word [ebx + ebp*2 + 0x5c]
mov edi, dword [edi + eax*4]
movzx eax, byte [eax + edx]
mov dword [esp + 0x30], edi
mov dword [esp + 0x2c], eax
cmp ecx, 8
jl 0x4b1ecd
jmp 0x4b1ea0
mov edx, dword [esi + 0x4c]
mov ecx, dword [esi + 0x2c]
mov al, byte [esi + 0x25b]
mov byte [edx + ecx], al
inc dword [esi + 0x4c]
shl dword [esi + 0x258], 8
add dword [esi + 0x25c], 0xfffffff8
cmp dword [esi + 0x25c], 8
jge 0x4b1ea0
mov edx, dword [esp + 0x64]
mov eax, dword [esi + 0x25c]
mov ecx, 0x20
mov edi, dword [esp + 0x30]
sub ecx, eax
sub ecx, dword [esp + 0x2c]
shl edi, cl
mov ecx, dword [esp + 0x2c]
or dword [esi + 0x258], edi
add ecx, eax
mov edi, dword [esp + 0x14]
mov dword [esi + 0x25c], ecx
movzx eax, word [ebx + ebp*2 + 0x5e]
mov edi, dword [edi + eax*4]
movzx eax, byte [eax + edx]
mov dword [esp + 0x30], edi
mov dword [esp + 0x2c], eax
cmp ecx, 8
jl 0x4b1f40
mov edx, dword [esi + 0x4c]
mov ecx, dword [esi + 0x2c]
mov al, byte [esi + 0x25b]
mov byte [edx + ecx], al
inc dword [esi + 0x4c]
shl dword [esi + 0x258], 8
add dword [esi + 0x25c], 0xfffffff8
cmp dword [esi + 0x25c], 8
jge 0x4b1f13
mov edx, dword [esp + 0x64]
mov eax, dword [esi + 0x25c]
mov ecx, 0x20
mov edi, dword [esp + 0x30]
sub ecx, eax
sub ecx, dword [esp + 0x2c]
shl edi, cl
mov ecx, dword [esp + 0x2c]
or dword [esi + 0x258], edi
add ecx, eax
mov dword [esi + 0x25c], ecx
movzx eax, word [ebx + ebp*2 + 0x60]
mov ebp, dword [esp + 0x14]
mov edi, dword [ebp + eax*4]
movzx eax, byte [eax + edx]
mov dword [esp + 0x28], edi
mov edi, dword [esp + 0x10]
mov dword [esp + 0x2c], eax
cmp ecx, 8
jl 0x4b1fbd
jmp 0x4b1f90
mov edx, dword [esi + 0x4c]
mov ecx, dword [esi + 0x2c]
mov al, byte [esi + 0x25b]
mov byte [edx + ecx], al
inc dword [esi + 0x4c]
shl dword [esi + 0x258], 8
add dword [esi + 0x25c], 0xfffffff8
cmp dword [esi + 0x25c], 8
jge 0x4b1f90
mov edx, dword [esp + 0x64]
mov eax, dword [esi + 0x25c]
mov ecx, 0x20
sub ecx, eax
sub ecx, dword [esp + 0x2c]
shl dword [esp + 0x28], cl
mov ecx, dword [esp + 0x28]
or dword [esi + 0x258], ecx
mov ecx, dword [esp + 0x2c]
add ecx, eax
mov eax, dword [esp + 0x24]
mov dword [esi + 0x25c], ecx
movzx eax, word [ebx + eax*2]
movzx edx, byte [eax + edx]
mov ebp, dword [ebp + eax*4]
mov dword [esp + 0x64], edx
cmp ecx, 8
jl 0x4b202e
mov edx, dword [esi + 0x4c]
mov ecx, dword [esi + 0x2c]
mov al, byte [esi + 0x25b]
mov byte [edx + ecx], al
inc dword [esi + 0x4c]
shl dword [esi + 0x258], 8
add dword [esi + 0x25c], 0xfffffff8
cmp dword [esi + 0x25c], 8
jge 0x4b2001
mov edx, dword [esp + 0x64]
mov eax, dword [esi + 0x25c]
mov ecx, 0x20
sub ecx, eax
sub ecx, edx
shl ebp, cl
or dword [esi + 0x258], ebp
add eax, edx
mov dword [esi + 0x25c], eax
jmp 0x4b2101
cmp ebp, dword [esp + 0x1c]
jg 0x4b2105
mov edi, dword [esp + 0x1c]
movzx ecx, byte [edx + esi + 0x680]
movzx edx, word [ebx + ebp*2]
lea eax, [ecx + 0x26]
imul eax, eax, 0x102
add eax, edx
mov eax, dword [esi + eax*4]
mov dword [esp + 0x30], eax
lea eax, [ecx + 0x92]
imul eax, eax, 0x102
add eax, edx
cmp dword [esi + 0x25c], 8
movzx eax, byte [eax + esi]
mov dword [esp + 0x64], eax
jl 0x4b20c9
lea ecx, [ecx]
mov edx, dword [esi + 0x4c]
mov ecx, dword [esi + 0x2c]
mov al, byte [esi + 0x25b]
mov byte [edx + ecx], al
inc dword [esi + 0x4c]
shl dword [esi + 0x258], 8
add dword [esi + 0x25c], 0xfffffff8
cmp dword [esi + 0x25c], 8
jge 0x4b20a0
mov eax, dword [esi + 0x25c]
mov ecx, 0x20
mov edx, dword [esp + 0x30]
sub ecx, eax
sub ecx, dword [esp + 0x64]
inc ebp
add eax, dword [esp + 0x64]
shl edx, cl
or dword [esi + 0x258], edx
mov edx, dword [esp + 0x20]
mov dword [esi + 0x25c], eax
cmp ebp, edi
jle 0x4b2060
mov edi, dword [esp + 0x10]
mov edx, dword [esp + 0x20]
mov ebp, dword [esp + 0x1c]
inc edx
inc ebp
mov dword [esp + 0x20], edx
cmp ebp, dword [esi + 0x274]
jl 0x4b0870
pop edi
pop esi
pop ebp
pop ebx
cmp edx, dword [esp + 8]
je 0x4b2135
add esp, 0x50
mov dword [esp + 4], 0xbbf
jmp fcn.004b2600
add esp, 0x50
ret