Function at 0x4f9b50
Capabilities:
Resolve function by parsing pe exports

Disassembly:
sub esp, 0x118
mov eax, dword [esp + 0x12c]
push ebx
push ebp
push esi
mov ecx, dword [eax + 0x3c0]
push edi
movsx edx, byte [eax + 0x4f0]
mov dword [esp + 0x1c], ecx
mov ecx, dword [esp + 0x12c]
mov dword [esp + 0x20], edx
mov dword [esp + 0x24], 0
mov edx, dword [ecx + 4]
mov edi, dword [ecx + 8]
mov eax, dword [ecx + 0xc]
cmp edx, 0x100
jae 0x4f9ba4
mov dword [esp + 0x24], 1
lea esi, [esp + 0x28]
jmp 0x4f9ba6
mov esi, dword [ecx]
mov ecx, dword [esp + 0x130]
movsx ebp, word [ecx]
sub ebp, dword [esp + 0x134]
mov ecx, ebp
mov edx, ebp
sar ecx, 0x1f
mov ebx, ecx
add ebp, ecx
xor ebx, edx
xor edx, edx
sub ebx, ecx
mov dl, byte [ebx + 0x5560b0]
mov ebx, edx
mov edx, dword [esp + 0x138]
mov dword [esp + 0x10], ebx
movsx ecx, byte [ebx + edx + 0x400]
mov edx, dword [edx + ebx*4]
add eax, ecx
shl edi, cl
or edx, edi
cmp eax, 0xf
jle 0x4f9c21
sub eax, 8
mov ebx, edx
mov ecx, eax
shr ebx, cl
inc esi
mov byte [esi - 1], bl
cmp bl, 0xff
jne 0x4f9c07
mov byte [esi], 0
inc esi
sub eax, 8
mov ebx, edx
mov ecx, eax
shr ebx, cl
inc esi
mov byte [esi - 1], bl
cmp bl, 0xff
mov ebx, dword [esp + 0x10]
jne 0x4f9c21
mov byte [esi], 0
inc esi
mov edi, 1
mov ecx, ebx
shl edi, cl
add eax, ebx
shl edx, cl
dec edi
and edi, ebp
or edi, edx
cmp eax, 0xf
jle 0x4f9c64
sub eax, 8
mov edx, edi
mov ecx, eax
shr edx, cl
inc esi
mov byte [esi - 1], dl
cmp dl, 0xff
jne 0x4f9c4e
mov byte [esi], 0
inc esi
sub eax, 8
mov edx, edi
mov ecx, eax
shr edx, cl
inc esi
mov byte [esi - 1], dl
cmp dl, 0xff
jne 0x4f9c64
mov byte [esi], 0
inc esi
mov ebx, dword [esp + 0x130]
movsx edx, word [ebx + 2]
test edx, edx
jne 0x4f9c7d
mov ebp, 1
jmp 0x4f9d3d
mov ecx, edx
sar ecx, 0x1f
lea ebp, [ecx + edx]
mov dword [esp + 0x18], ebp
mov ebp, ecx
xor ebp, edx
xor edx, edx
sub ebp, ecx
mov dl, byte [ebp + 0x5560b0]
mov ebp, 1
mov ecx, edx
shl ebp, cl
mov ecx, dword [esp + 0x18]
dec ebp
and ecx, ebp
mov ebp, dword [esp + 0x13c]
mov dword [esp + 0x18], ecx
movsx ecx, byte [edx + ebp + 0x400]
mov ebp, dword [ebp + edx*4]
add eax, ecx
shl edi, cl
or ebp, edi
cmp eax, 0xf
jle 0x4f9cfc
sub eax, 8
mov ebx, ebp
mov ecx, eax
shr ebx, cl
inc esi
mov byte [esi - 1], bl
cmp bl, 0xff
jne 0x4f9cdf
mov byte [esi], 0
inc esi
sub eax, 8
mov ebx, ebp
mov ecx, eax
shr ebx, cl
inc esi
mov byte [esi - 1], bl
cmp bl, 0xff
mov ebx, dword [esp + 0x130]
jne 0x4f9cfc
mov byte [esi], 0
inc esi
mov ecx, edx
add eax, edx
mov edx, dword [esp + 0x18]
shl ebp, cl
or ebp, edx
cmp eax, 0xf
mov edi, ebp
jle 0x4f9d3b
sub eax, 8
mov edx, edi
mov ecx, eax
shr edx, cl
inc esi
mov byte [esi - 1], dl
cmp dl, 0xff
jne 0x4f9d25
mov byte [esi], 0
inc esi
sub eax, 8
mov edx, edi
mov ecx, eax
shr edx, cl
inc esi
mov byte [esi - 1], dl
cmp dl, 0xff
jne 0x4f9d3b
mov byte [esi], 0
inc esi
xor ebp, ebp
movsx edx, word [ebx + 0x10]
test edx, edx
mov dword [esp + 0x10], edx
jne 0x4f9d4f
inc ebp
jmp 0x4f9e76
mov ecx, edx
sar ecx, 0x1f
add edx, ecx
mov dword [esp + 0x18], edx
mov edx, ecx
xor edx, dword [esp + 0x10]
sub edx, ecx
xor ecx, ecx
cmp ebp, 0xf
mov cl, byte [edx + 0x5560b0]
mov dword [esp + 0x10], ecx
jle 0x4f9dd3
lea ecx, [ebp - 0x10]
shr ecx, 4
inc ecx
mov dword [esp + 0x14], ecx
neg ecx
shl ecx, 4
add ebp, ecx
mov ecx, dword [esp + 0x20]
mov edx, dword [esp + 0x1c]
shl edi, cl
add eax, ecx
or edi, edx
cmp eax, 0xf
jle 0x4f9dc4
sub eax, 8
mov edx, edi
mov ecx, eax
shr edx, cl
inc esi
mov byte [esi - 1], dl
cmp dl, 0xff
jne 0x4f9dae
mov byte [esi], 0
inc esi
sub eax, 8
mov edx, edi
mov ecx, eax
shr edx, cl
inc esi
mov byte [esi - 1], dl
cmp dl, 0xff
jne 0x4f9dc4
mov byte [esi], 0
inc esi
mov ecx, dword [esp + 0x14]
dec ecx
mov dword [esp + 0x14], ecx
jne 0x4f9d85
mov ecx, dword [esp + 0x10]
mov edx, 1
shl edx, cl
shl ebp, 4
add ebp, ecx
mov ecx, dword [esp + 0x18]
dec edx
and ecx, edx
mov edx, dword [esp + 0x13c]
mov dword [esp + 0x18], ecx
movsx ecx, byte [edx + ebp + 0x400]
mov ebp, dword [edx + ebp*4]
add eax, ecx
shl edi, cl
or ebp, edi
cmp eax, 0xf
jle 0x4f9e33
sub eax, 8
mov edx, ebp
mov ecx, eax
shr edx, cl
inc esi
mov byte [esi - 1], dl
cmp dl, 0xff
jne 0x4f9e1d
mov byte [esi], 0
inc esi
sub eax, 8
mov edx, ebp
mov ecx, eax
shr edx, cl
inc esi
mov byte [esi - 1], dl
cmp dl, 0xff
jne 0x4f9e33
mov byte [esi], 0
inc esi
mov ecx, dword [esp + 0x10]
mov edx, dword [esp + 0x18]
shl ebp, cl
add eax, ecx
or ebp, edx
cmp eax, 0xf
mov edi, ebp
jle 0x4f9e74
sub eax, 8
mov edx, edi
mov ecx, eax
shr edx, cl
inc esi
mov byte [esi - 1], dl
cmp dl, 0xff
jne 0x4f9e5e
mov byte [esi], 0
inc esi
sub eax, 8
mov edx, edi
mov ecx, eax
shr edx, cl
inc esi
mov byte [esi - 1], dl
cmp dl, 0xff
jne 0x4f9e74
mov byte [esi], 0
inc esi
xor ebp, ebp
movsx edx, word [ebx + 0x20]
test edx, edx
mov dword [esp + 0x10], edx
jne 0x4f9e88
inc ebp
jmp 0x4f9faf
mov ecx, edx
sar ecx, 0x1f
add edx, ecx
mov dword [esp + 0x18], edx
mov edx, ecx
xor edx, dword [esp + 0x10]
sub edx, ecx
xor ecx, ecx
cmp ebp, 0xf
mov cl, byte [edx + 0x5560b0]
mov dword [esp + 0x10], ecx
jle 0x4f9f0c
lea ecx, [ebp - 0x10]
shr ecx, 4
inc ecx
mov dword [esp + 0x14], ecx
neg ecx
shl ecx, 4
add ebp, ecx
mov ecx, dword [esp + 0x20]
mov edx, dword [esp + 0x1c]
shl edi, cl
add eax, ecx
or edi, edx
cmp eax, 0xf
jle 0x4f9efd
sub eax, 8
mov edx, edi
mov ecx, eax
shr edx, cl
inc esi
mov byte [esi - 1], dl
cmp dl, 0xff
jne 0x4f9ee7
mov byte [esi], 0
inc esi
sub eax, 8
mov edx, edi
mov ecx, eax
shr edx, cl
inc esi
mov byte [esi - 1], dl
cmp dl, 0xff
jne 0x4f9efd
mov byte [esi], 0
inc esi
mov ecx, dword [esp + 0x14]
dec ecx
mov dword [esp + 0x14], ecx
jne 0x4f9ebe
mov ecx, dword [esp + 0x10]
mov edx, 1
shl edx, cl
shl ebp, 4
add ebp, ecx
mov ecx, dword [esp + 0x18]
dec edx
and ecx, edx
mov edx, dword [esp + 0x13c]
mov dword [esp + 0x18], ecx
movsx ecx, byte [edx + ebp + 0x400]
mov ebp, dword [edx + ebp*4]
add eax, ecx
shl edi, cl
or ebp, edi
cmp eax, 0xf
jle 0x4f9f6c
sub eax, 8
mov edx, ebp
mov ecx, eax
shr edx, cl
inc esi
mov byte [esi - 1], dl
cmp dl, 0xff
jne 0x4f9f56
mov byte [esi], 0
inc esi
sub eax, 8
mov edx, ebp
mov ecx, eax
shr edx, cl
inc esi
mov byte [esi - 1], dl
cmp dl, 0xff
jne 0x4f9f6c
mov byte [esi], 0
inc esi
mov ecx, dword [esp + 0x10]
mov edx, dword [esp + 0x18]
shl ebp, cl
add eax, ecx
or ebp, edx
cmp eax, 0xf
mov edi, ebp
jle 0x4f9fad
sub eax, 8
mov edx, edi
mov ecx, eax
shr edx, cl
inc esi
mov byte [esi - 1], dl
cmp dl, 0xff
jne 0x4f9f97
mov byte [esi], 0
inc esi
sub eax, 8
mov edx, edi
mov ecx, eax
shr edx, cl
inc esi
mov byte [esi - 1], dl
cmp dl, 0xff
jne 0x4f9fad
mov byte [esi], 0
inc esi
xor ebp, ebp
movsx edx, word [ebx + 0x12]
test edx, edx
mov dword [esp + 0x10], edx
jne 0x4f9fc1
inc ebp
jmp 0x4fa0f6
mov ebx, dword [esp + 0x10]
mov ecx, edx
sar ecx, 0x1f
add edx, ecx
mov dword [esp + 0x18], edx
mov edx, ecx
xor edx, ebx
sub edx, ecx
xor ecx, ecx
cmp ebp, 0xf
mov cl, byte [edx + 0x5560b0]
mov dword [esp + 0x10], ecx
jle 0x4fa045
lea ecx, [ebp - 0x10]
mov ebx, dword [esp + 0x20]
shr ecx, 4
inc ecx
mov dword [esp + 0x14], ecx
neg ecx
shl ecx, 4
add ebp, ecx
mov edx, dword [esp + 0x1c]
mov ecx, ebx
shl edi, cl
add eax, ebx
or edi, edx
cmp eax, 0xf
jle 0x4fa03a
sub eax, 8
mov edx, edi
mov ecx, eax
shr edx, cl
inc esi
mov byte [esi - 1], dl
cmp dl, 0xff
jne 0x4fa024
mov byte [esi], 0
inc esi
sub eax, 8
mov edx, edi
mov ecx, eax
shr edx, cl
inc esi
mov byte [esi - 1], dl
cmp dl, 0xff
jne 0x4fa03a
mov byte [esi], 0
inc esi
mov ecx, dword [esp + 0x14]
dec ecx
mov dword [esp + 0x14], ecx
jne 0x4f9ffd
mov ecx, dword [esp + 0x10]
mov edx, dword [esp + 0x13c]
mov ebx, 1
shl ebx, cl
shl ebp, 4
add ebp, ecx
movsx edx, byte [edx + ebp + 0x400]
dec ebx
add eax, edx
mov ecx, ebx
mov ebx, dword [esp + 0x18]
and ebx, ecx
mov ecx, edx
shl edi, cl
mov ecx, dword [esp + 0x13c]
mov ebp, dword [ecx + ebp*4]
or ebp, edi
cmp eax, 0xf
jle 0x4fa0b0
sub eax, 8
mov edx, ebp
mov ecx, eax
shr edx, cl
inc esi
mov byte [esi - 1], dl
cmp dl, 0xff
jne 0x4fa09a
mov byte [esi], 0
inc esi
sub eax, 8
mov edx, ebp
mov ecx, eax
shr edx, cl
inc esi
mov byte [esi - 1], dl
cmp dl, 0xff
jne 0x4fa0b0
mov byte [esi], 0
inc esi
mov ecx, dword [esp + 0x10]
shl ebp, cl
add eax, ecx
or ebp, ebx
cmp eax, 0xf
mov edi, ebp
jle 0x4fa0ed
sub eax, 8
mov edx, edi
mov ecx, eax
shr edx, cl
inc esi
mov byte [esi - 1], dl
cmp dl, 0xff
jne 0x4fa0d7
mov byte [esi], 0
inc esi
sub eax, 8
mov edx, edi
mov ecx, eax
shr edx, cl
inc esi
mov byte [esi - 1], dl
cmp dl, 0xff
jne 0x4fa0ed
mov byte [esi], 0
inc esi
mov ebx, dword [esp + 0x130]
xor ebp, ebp
movsx edx, word [ebx + 4]
test edx, edx
mov dword [esp + 0x10], edx
jne 0x4fa108
inc ebp
jmp 0x4fa23d
mov ebx, dword [esp + 0x10]
mov ecx, edx
sar ecx, 0x1f
add edx, ecx
mov dword [esp + 0x18], edx
mov edx, ecx
xor edx, ebx
sub edx, ecx
xor ecx, ecx
cmp ebp, 0xf
mov cl, byte [edx + 0x5560b0]
mov dword [esp + 0x10], ecx
jle 0x4fa18c
lea ecx, [ebp - 0x10]
mov ebx, dword [esp + 0x20]
shr ecx, 4
inc ecx
mov dword [esp + 0x14], ecx
neg ecx
shl ecx, 4
add ebp, ecx
mov edx, dword [esp + 0x1c]
mov ecx, ebx
shl edi, cl
add eax, ebx
or edi, edx
cmp eax, 0xf
jle 0x4fa181
sub eax, 8
mov edx, edi
mov ecx, eax
shr edx, cl
inc esi
mov byte [esi - 1], dl
cmp dl, 0xff
jne 0x4fa16b
mov byte [esi], 0
inc esi
sub eax, 8
mov edx, edi
mov ecx, eax
shr edx, cl
inc esi
mov byte [esi - 1], dl
cmp dl, 0xff
jne 0x4fa181
mov byte [esi], 0
inc esi
mov ecx, dword [esp + 0x14]
dec ecx
mov dword [esp + 0x14], ecx
jne 0x4fa144
mov ecx, dword [esp + 0x10]
mov edx, dword [esp + 0x13c]
mov ebx, 1
shl ebx, cl
shl ebp, 4
add ebp, ecx
movsx edx, byte [edx + ebp + 0x400]
dec ebx
add eax, edx
mov ecx, ebx
mov ebx, dword [esp + 0x18]
and ebx, ecx
mov ecx, edx
shl edi, cl
mov ecx, dword [esp + 0x13c]
mov ebp, dword [ecx + ebp*4]
or ebp, edi
cmp eax, 0xf
jle 0x4fa1f7
sub eax, 8
mov edx, ebp
mov ecx, eax
shr edx, cl
inc esi
mov byte [esi - 1], dl
cmp dl, 0xff
jne 0x4fa1e1
mov byte [esi], 0
inc esi
sub eax, 8
mov edx, ebp
mov ecx, eax
shr edx, cl
inc esi
mov byte [esi - 1], dl
cmp dl, 0xff
jne 0x4fa1f7
mov byte [esi], 0
inc esi
mov ecx, dword [esp + 0x10]
shl ebp, cl
add eax, ecx
or ebp, ebx
cmp eax, 0xf
mov edi, ebp
jle 0x4fa234
sub eax, 8
mov edx, edi
mov ecx, eax
shr edx, cl
inc esi
mov byte [esi - 1], dl
cmp dl, 0xff
jne 0x4fa21e
mov byte [esi], 0
inc esi
sub eax, 8
mov edx, edi
mov ecx, eax
shr edx, cl
inc esi
mov byte [esi - 1], dl
cmp dl, 0xff
jne 0x4fa234
mov byte [esi], 0
inc esi
mov ebx, dword [esp + 0x130]
xor ebp, ebp
movsx edx, word [ebx + 6]
test edx, edx
mov dword [esp + 0x10], edx
jne 0x4fa24f
inc ebp
jmp 0x4fa384
mov ebx, dword [esp + 0x10]
mov ecx, edx
sar ecx, 0x1f
add edx, ecx
mov dword [esp + 0x18], edx
mov edx, ecx
xor edx, ebx
sub edx, ecx
xor ecx, ecx
cmp ebp, 0xf
mov cl, byte [edx + 0x5560b0]
mov dword [esp + 0x10], ecx
jle 0x4fa2d3
lea ecx, [ebp - 0x10]
mov ebx, dword [esp + 0x20]
shr ecx, 4
inc ecx
mov dword [esp + 0x14], ecx
neg ecx
shl ecx, 4
add ebp, ecx
mov edx, dword [esp + 0x1c]
mov ecx, ebx
shl edi, cl
add eax, ebx
or edi, edx
cmp eax, 0xf
jle 0x4fa2c8
sub eax, 8
mov edx, edi
mov ecx, eax
shr edx, cl
inc esi
mov byte [esi - 1], dl
cmp dl, 0xff
jne 0x4fa2b2
mov byte [esi], 0
inc esi
sub eax, 8
mov edx, edi
mov ecx, eax
shr edx, cl
inc esi
mov byte [esi - 1], dl
cmp dl, 0xff
jne 0x4fa2c8
mov byte [esi], 0
inc esi
mov ecx, dword [esp + 0x14]
dec ecx
mov dword [esp + 0x14], ecx
jne 0x4fa28b
mov ecx, dword [esp + 0x10]
mov edx, dword [esp + 0x13c]
mov ebx, 1
shl ebx, cl
shl ebp, 4
add ebp, ecx
movsx edx, byte [edx + ebp + 0x400]
dec ebx
add eax, edx
mov ecx, ebx
mov ebx, dword [esp + 0x18]
and ebx, ecx
mov ecx, edx
shl edi, cl
mov ecx, dword [esp + 0x13c]
mov ebp, dword [ecx + ebp*4]
or ebp, edi
cmp eax, 0xf
jle 0x4fa33e
sub eax, 8
mov edx, ebp
mov ecx, eax
shr edx, cl
inc esi
mov byte [esi - 1], dl
cmp dl, 0xff
jne 0x4fa328
mov byte [esi], 0
inc esi
sub eax, 8
mov edx, ebp
mov ecx, eax
shr edx, cl
inc esi
mov byte [esi - 1], dl
cmp dl, 0xff
jne 0x4fa33e
mov byte [esi], 0
inc esi
mov ecx, dword [esp + 0x10]
shl ebp, cl
add eax, ecx
or ebp, ebx
cmp eax, 0xf
mov edi, ebp
jle 0x4fa37b
sub eax, 8
mov edx, edi
mov ecx, eax
shr edx, cl
inc esi
mov byte [esi - 1], dl
cmp dl, 0xff
jne 0x4fa365
mov byte [esi], 0
inc esi
sub eax, 8
mov edx, edi
mov ecx, eax
shr edx, cl
inc esi
mov byte [esi - 1], dl
cmp dl, 0xff
jne 0x4fa37b
mov byte [esi], 0
inc esi
mov ebx, dword [esp + 0x130]
xor ebp, ebp
movsx edx, word [ebx + 0x14]
test edx, edx
mov dword [esp + 0x10], edx
jne 0x4fa396
inc ebp
jmp 0x4fa4cb
mov ebx, dword [esp + 0x10]
mov ecx, edx
sar ecx, 0x1f
add edx, ecx
mov dword [esp + 0x18], edx
mov edx, ecx
xor edx, ebx
sub edx, ecx
xor ecx, ecx
cmp ebp, 0xf
mov cl, byte [edx + 0x5560b0]
mov dword [esp + 0x10], ecx
jle 0x4fa41a
lea ecx, [ebp - 0x10]
mov ebx, dword [esp + 0x20]
shr ecx, 4
inc ecx
mov dword [esp + 0x14], ecx
neg ecx
shl ecx, 4
add ebp, ecx
mov edx, dword [esp + 0x1c]
mov ecx, ebx
shl edi, cl
add eax, ebx
or edi, edx
cmp eax, 0xf
jle 0x4fa40f
sub eax, 8
mov edx, edi
mov ecx, eax
shr edx, cl
inc esi
mov byte [esi - 1], dl
cmp dl, 0xff
jne 0x4fa3f9
mov byte [esi], 0
inc esi
sub eax, 8
mov edx, edi
mov ecx, eax
shr edx, cl
inc esi
mov byte [esi - 1], dl
cmp dl, 0xff
jne 0x4fa40f
mov byte [esi], 0
inc esi
mov ecx, dword [esp + 0x14]
dec ecx
mov dword [esp + 0x14], ecx
jne 0x4fa3d2
mov ecx, dword [esp + 0x10]
mov edx, dword [esp + 0x13c]
mov ebx, 1
shl ebx, cl
shl ebp, 4
add ebp, ecx
movsx edx, byte [edx + ebp + 0x400]
dec ebx
add eax, edx
mov ecx, ebx
mov ebx, dword [esp + 0x18]
and ebx, ecx
mov ecx, edx
shl edi, cl
mov ecx, dword [esp + 0x13c]
mov ebp, dword [ecx + ebp*4]
or ebp, edi
cmp eax, 0xf
jle 0x4fa485
sub eax, 8
mov edx, ebp
mov ecx, eax
shr edx, cl
inc esi
mov byte [esi - 1], dl
cmp dl, 0xff
jne 0x4fa46f
mov byte [esi], 0
inc esi
sub eax, 8
mov edx, ebp
mov ecx, eax
shr edx, cl
inc esi
mov byte [esi - 1], dl
cmp dl, 0xff
jne 0x4fa485
mov byte [esi], 0
inc esi
mov ecx, dword [esp + 0x10]
shl ebp, cl
add eax, ecx
or ebp, ebx
cmp eax, 0xf
mov edi, ebp
jle 0x4fa4c2
sub eax, 8
mov edx, edi
mov ecx, eax
shr edx, cl
inc esi
mov byte [esi - 1], dl
cmp dl, 0xff
jne 0x4fa4ac
mov byte [esi], 0
inc esi
sub eax, 8
mov edx, edi
mov ecx, eax
shr edx, cl
inc esi
mov byte [esi - 1], dl
cmp dl, 0xff
jne 0x4fa4c2
mov byte [esi], 0
inc esi
mov ebx, dword [esp + 0x130]
xor ebp, ebp
movsx edx, word [ebx + 0x22]
test edx, edx
mov dword [esp + 0x10], edx
jne 0x4fa4dd
inc ebp
jmp 0x4fa612
mov ebx, dword [esp + 0x10]
mov ecx, edx
sar ecx, 0x1f
add edx, ecx
mov dword [esp + 0x18], edx
mov edx, ecx
xor edx, ebx
sub edx, ecx
xor ecx, ecx
cmp ebp, 0xf
mov cl, byte [edx + 0x5560b0]
mov dword [esp + 0x10], ecx
jle 0x4fa561
lea ecx, [ebp - 0x10]
mov ebx, dword [esp + 0x20]
shr ecx, 4
inc ecx
mov dword [esp + 0x14], ecx
neg ecx
shl ecx, 4
add ebp, ecx
mov edx, dword [esp + 0x1c]
mov ecx, ebx
shl edi, cl
add eax, ebx
or edi, edx
cmp eax, 0xf
jle 0x4fa556
sub eax, 8
mov edx, edi
mov ecx, eax
shr edx, cl
inc esi
mov byte [esi - 1], dl
cmp dl, 0xff
jne 0x4fa540
mov byte [esi], 0
inc esi
sub eax, 8
mov edx, edi
mov ecx, eax
shr edx, cl
inc esi
mov byte [esi - 1], dl
cmp dl, 0xff
jne 0x4fa556
mov byte [esi], 0
inc esi
mov ecx, dword [esp + 0x14]
dec ecx
mov dword [esp + 0x14], ecx
jne 0x4fa519
mov ecx, dword [esp + 0x10]
mov edx, dword [esp + 0x13c]
mov ebx, 1
shl ebx, cl
shl ebp, 4
add ebp, ecx
movsx edx, byte [edx + ebp + 0x400]
dec ebx
add eax, edx
mov ecx, ebx
mov ebx, dword [esp + 0x18]
and ebx, ecx
mov ecx, edx
shl edi, cl
mov ecx, dword [esp + 0x13c]
mov ebp, dword [ecx + ebp*4]
or ebp, edi
cmp eax, 0xf
jle 0x4fa5cc
sub eax, 8
mov edx, ebp
mov ecx, eax
shr edx, cl
inc esi
mov byte [esi - 1], dl
cmp dl, 0xff
jne 0x4fa5b6
mov byte [esi], 0
inc esi
sub eax, 8
mov edx, ebp
mov ecx, eax
shr edx, cl
inc esi
mov byte [esi - 1], dl
cmp dl, 0xff
jne 0x4fa5cc
mov byte [esi], 0
inc esi
mov ecx, dword [esp + 0x10]
shl ebp, cl
add eax, ecx
or ebp, ebx
cmp eax, 0xf
mov edi, ebp
jle 0x4fa609
sub eax, 8
mov edx, edi
mov ecx, eax
shr edx, cl
inc esi
mov byte [esi - 1], dl
cmp dl, 0xff
jne 0x4fa5f3
mov byte [esi], 0
inc esi
sub eax, 8
mov edx, edi
mov ecx, eax
shr edx, cl
inc esi
mov byte [esi - 1], dl
cmp dl, 0xff
jne 0x4fa609
mov byte [esi], 0
inc esi
mov ebx, dword [esp + 0x130]
xor ebp, ebp
movsx edx, word [ebx + 0x30]
test edx, edx
mov dword [esp + 0x10], edx
jne 0x4fa624
inc ebp
jmp 0x4fa759
mov ebx, dword [esp + 0x10]
mov ecx, edx
sar ecx, 0x1f
add edx, ecx
mov dword [esp + 0x18], edx
mov edx, ecx
xor edx, ebx
sub edx, ecx
xor ecx, ecx
cmp ebp, 0xf
mov cl, byte [edx + 0x5560b0]
mov dword [esp + 0x10], ecx
jle 0x4fa6a8
lea ecx, [ebp - 0x10]
mov ebx, dword [esp + 0x20]
shr ecx, 4
inc ecx
mov dword [esp + 0x14], ecx
neg ecx
shl ecx, 4
add ebp, ecx
mov edx, dword [esp + 0x1c]
mov ecx, ebx
shl edi, cl
add eax, ebx
or edi, edx
cmp eax, 0xf
jle 0x4fa69d
sub eax, 8
mov edx, edi
mov ecx, eax
shr edx, cl
inc esi
mov byte [esi - 1], dl
cmp dl, 0xff
jne 0x4fa687
mov byte [esi], 0
inc esi
sub eax, 8
mov edx, edi
mov ecx, eax
shr edx, cl
inc esi
mov byte [esi - 1], dl
cmp dl, 0xff
jne 0x4fa69d
mov byte [esi], 0
inc esi
mov ecx, dword [esp + 0x14]
dec ecx
mov dword [esp + 0x14], ecx
jne 0x4fa660
mov ecx, dword [esp + 0x10]
mov edx, dword [esp + 0x13c]
mov ebx, 1
shl ebx, cl
shl ebp, 4
add ebp, ecx
movsx edx, byte [edx + ebp + 0x400]
dec ebx
add eax, edx
mov ecx, ebx
mov ebx, dword [esp + 0x18]
and ebx, ecx
mov ecx, edx
shl edi, cl
mov ecx, dword [esp + 0x13c]
mov ebp, dword [ecx + ebp*4]
or ebp, edi
cmp eax, 0xf
jle 0x4fa713
sub eax, 8
mov edx, ebp
mov ecx, eax
shr edx, cl
inc esi
mov byte [esi - 1], dl
cmp dl, 0xff
jne 0x4fa6fd
mov byte [esi], 0
inc esi
sub eax, 8
mov edx, ebp
mov ecx, eax
shr edx, cl
inc esi
mov byte [esi - 1], dl
cmp dl, 0xff
jne 0x4fa713
mov byte [esi], 0
inc esi
mov ecx, dword [esp + 0x10]
shl ebp, cl
add eax, ecx
or ebp, ebx
cmp eax, 0xf
mov edi, ebp
jle 0x4fa750
sub eax, 8
mov edx, edi
mov ecx, eax
shr edx, cl
inc esi
mov byte [esi - 1], dl
cmp dl, 0xff
jne 0x4fa73a
mov byte [esi], 0
inc esi
sub eax, 8
mov edx, edi
mov ecx, eax
shr edx, cl
inc esi
mov byte [esi - 1], dl
cmp dl, 0xff
jne 0x4fa750
mov byte [esi], 0
inc esi
mov ebx, dword [esp + 0x130]
xor ebp, ebp
movsx edx, word [ebx + 0x40]
test edx, edx
mov dword [esp + 0x10], edx
jne 0x4fa76b
inc ebp
jmp 0x4fa8a0
mov ebx, dword [esp + 0x10]
mov ecx, edx
sar ecx, 0x1f
add edx, ecx
mov dword [esp + 0x18], edx
mov edx, ecx
xor edx, ebx
sub edx, ecx
xor ecx, ecx
cmp ebp, 0xf
mov cl, byte [edx + 0x5560b0]
mov dword [esp + 0x10], ecx
jle 0x4fa7ef
lea ecx, [ebp - 0x10]
mov ebx, dword [esp + 0x20]
shr ecx, 4
inc ecx
mov dword [esp + 0x14], ecx
neg ecx
shl ecx, 4
add ebp, ecx
mov edx, dword [esp + 0x1c]
mov ecx, ebx
shl edi, cl
add eax, ebx
or edi, edx
cmp eax, 0xf
jle 0x4fa7e4
sub eax, 8
mov edx, edi
mov ecx, eax
shr edx, cl
inc esi
mov byte [esi - 1], dl
cmp dl, 0xff
jne 0x4fa7ce
mov byte [esi], 0
inc esi
sub eax, 8
mov edx, edi
mov ecx, eax
shr edx, cl
inc esi
mov byte [esi - 1], dl
cmp dl, 0xff
jne 0x4fa7e4
mov byte [esi], 0
inc esi
mov ecx, dword [esp + 0x14]
dec ecx
mov dword [esp + 0x14], ecx
jne 0x4fa7a7
mov ecx, dword [esp + 0x10]
mov edx, dword [esp + 0x13c]
mov ebx, 1
shl ebx, cl
shl ebp, 4
add ebp, ecx
movsx edx, byte [edx + ebp + 0x400]
dec ebx
add eax, edx
mov ecx, ebx
mov ebx, dword [esp + 0x18]
and ebx, ecx
mov ecx, edx
shl edi, cl
mov ecx, dword [esp + 0x13c]
mov ebp, dword [ecx + ebp*4]
or ebp, edi
cmp eax, 0xf
jle 0x4fa85a
sub eax, 8
mov edx, ebp
mov ecx, eax
shr edx, cl
inc esi
mov byte [esi - 1], dl
cmp dl, 0xff
jne 0x4fa844
mov byte [esi], 0
inc esi
sub eax, 8
mov edx, ebp
mov ecx, eax
shr edx, cl
inc esi
mov byte [esi - 1], dl
cmp dl, 0xff
jne 0x4fa85a
mov byte [esi], 0
inc esi
mov ecx, dword [esp + 0x10]
shl ebp, cl
add eax, ecx
or ebp, ebx
cmp eax, 0xf
mov edi, ebp
jle 0x4fa897
sub eax, 8
mov edx, edi
mov ecx, eax
shr edx, cl
inc esi
mov byte [esi - 1], dl
cmp dl, 0xff
jne 0x4fa881
mov byte [esi], 0
inc esi
sub eax, 8
mov edx, edi
mov ecx, eax
shr edx, cl
inc esi
mov byte [esi - 1], dl
cmp dl, 0xff
jne 0x4fa897
mov byte [esi], 0
inc esi
mov ebx, dword [esp + 0x130]
xor ebp, ebp
movsx edx, word [ebx + 0x32]
test edx, edx
mov dword [esp + 0x10], edx
jne 0x4fa8b2
inc ebp
jmp 0x4fa9e7
mov ebx, dword [esp + 0x10]
mov ecx, edx
sar ecx, 0x1f
add edx, ecx
mov dword [esp + 0x18], edx
mov edx, ecx
xor edx, ebx
sub edx, ecx
xor ecx, ecx
cmp ebp, 0xf
mov cl, byte [edx + 0x5560b0]
mov dword [esp + 0x10], ecx
jle 0x4fa936
lea ecx, [ebp - 0x10]
mov ebx, dword [esp + 0x20]
shr ecx, 4
inc ecx
mov dword [esp + 0x14], ecx
neg ecx
shl ecx, 4
add ebp, ecx
mov edx, dword [esp + 0x1c]
mov ecx, ebx
shl edi, cl
add eax, ebx
or edi, edx
cmp eax, 0xf
jle 0x4fa92b
sub eax, 8
mov edx, edi
mov ecx, eax
shr edx, cl
inc esi
mov byte [esi - 1], dl
cmp dl, 0xff
jne 0x4fa915
mov byte [esi], 0
inc esi
sub eax, 8
mov edx, edi
mov ecx, eax
shr edx, cl
inc esi
mov byte [esi - 1], dl
cmp dl, 0xff
jne 0x4fa92b
mov byte [esi], 0
inc esi
mov ecx, dword [esp + 0x14]
dec ecx
mov dword [esp + 0x14], ecx
jne 0x4fa8ee
mov ecx, dword [esp + 0x10]
mov edx, dword [esp + 0x13c]
mov ebx, 1
shl ebx, cl
shl ebp, 4
add ebp, ecx
movsx edx, byte [edx + ebp + 0x400]
dec ebx
add eax, edx
mov ecx, ebx
mov ebx, dword [esp + 0x18]
and ebx, ecx
mov ecx, edx
shl edi, cl
mov ecx, dword [esp + 0x13c]
mov ebp, dword [ecx + ebp*4]
or ebp, edi
cmp eax, 0xf
jle 0x4fa9a1
sub eax, 8
mov edx, ebp
mov ecx, eax
shr edx, cl
inc esi
mov byte [esi - 1], dl
cmp dl, 0xff
jne 0x4fa98b
mov byte [esi], 0
inc esi
sub eax, 8
mov edx, ebp
mov ecx, eax
shr edx, cl
inc esi
mov byte [esi - 1], dl
cmp dl, 0xff
jne 0x4fa9a1
mov byte [esi], 0
inc esi
mov ecx, dword [esp + 0x10]
shl ebp, cl
add eax, ecx
or ebp, ebx
cmp eax, 0xf
mov edi, ebp
jle 0x4fa9de
sub eax, 8
mov edx, edi
mov ecx, eax
shr edx, cl
inc esi
mov byte [esi - 1], dl
cmp dl, 0xff
jne 0x4fa9c8
mov byte [esi], 0
inc esi
sub eax, 8
mov edx, edi
mov ecx, eax
shr edx, cl
inc esi
mov byte [esi - 1], dl
cmp dl, 0xff
jne 0x4fa9de
mov byte [esi], 0
inc esi
mov ebx, dword [esp + 0x130]
xor ebp, ebp
movsx edx, word [ebx + 0x24]
test edx, edx
mov dword [esp + 0x10], edx
jne 0x4fa9f9
inc ebp
jmp 0x4fab2e
mov ebx, dword [esp + 0x10]
mov ecx, edx
sar ecx, 0x1f
add edx, ecx
mov dword [esp + 0x18], edx
mov edx, ecx
xor edx, ebx
sub edx, ecx
xor ecx, ecx
cmp ebp, 0xf
mov cl, byte [edx + 0x5560b0]
mov dword [esp + 0x10], ecx
jle 0x4faa7d
lea ecx, [ebp - 0x10]
mov ebx, dword [esp + 0x20]
shr ecx, 4
inc ecx
mov dword [esp + 0x14], ecx
neg ecx
shl ecx, 4
add ebp, ecx
mov edx, dword [esp + 0x1c]
mov ecx, ebx
shl edi, cl
add eax, ebx
or edi, edx
cmp eax, 0xf
jle 0x4faa72
sub eax, 8
mov edx, edi
mov ecx, eax
shr edx, cl
inc esi
mov byte [esi - 1], dl
cmp dl, 0xff
jne 0x4faa5c
mov byte [esi], 0
inc esi
sub eax, 8
mov edx, edi
mov ecx, eax
shr edx, cl
inc esi
mov byte [esi - 1], dl
cmp dl, 0xff
jne 0x4faa72
mov byte [esi], 0
inc esi
mov ecx, dword [esp + 0x14]
dec ecx
mov dword [esp + 0x14], ecx
jne 0x4faa35
mov ecx, dword [esp + 0x10]
mov edx, dword [esp + 0x13c]
mov ebx, 1
shl ebx, cl
shl ebp, 4
add ebp, ecx
movsx edx, byte [edx + ebp + 0x400]
dec ebx
add eax, edx
mov ecx, ebx
mov ebx, dword [esp + 0x18]
and ebx, ecx
mov ecx, edx
shl edi, cl
mov ecx, dword [esp + 0x13c]
mov ebp, dword [ecx + ebp*4]
or ebp, edi
cmp eax, 0xf
jle 0x4faae8
sub eax, 8
mov edx, ebp
mov ecx, eax
shr edx, cl
inc esi
mov byte [esi - 1], dl
cmp dl, 0xff
jne 0x4faad2
mov byte [esi], 0
inc esi
sub eax, 8
mov edx, ebp
mov ecx, eax
shr edx, cl
inc esi
mov byte [esi - 1], dl
cmp dl, 0xff
jne 0x4faae8
mov byte [esi], 0
inc esi
mov ecx, dword [esp + 0x10]
shl ebp, cl
add eax, ecx
or ebp, ebx
cmp eax, 0xf
mov edi, ebp
jle 0x4fab25
sub eax, 8
mov edx, edi
mov ecx, eax
shr edx, cl
inc esi
mov byte [esi - 1], dl
cmp dl, 0xff
jne 0x4fab0f
mov byte [esi], 0
inc esi
sub eax, 8
mov edx, edi
mov ecx, eax
shr edx, cl
inc esi
mov byte [esi - 1], dl
cmp dl, 0xff
jne 0x4fab25
mov byte [esi], 0
inc esi
mov ebx, dword [esp + 0x130]
xor ebp, ebp
movsx edx, word [ebx + 0x16]
test edx, edx
mov dword [esp + 0x10], edx
jne 0x4fab40
inc ebp
jmp 0x4fac75
mov ebx, dword [esp + 0x10]
mov ecx, edx
sar ecx, 0x1f
add edx, ecx
mov dword [esp + 0x18], edx
mov edx, ecx
xor edx, ebx
sub edx, ecx
xor ecx, ecx
cmp ebp, 0xf
mov cl, byte [edx + 0x5560b0]
mov dword [esp + 0x10], ecx
jle 0x4fabc4
lea ecx, [ebp - 0x10]
mov ebx, dword [esp + 0x20]
shr ecx, 4
inc ecx
mov dword [esp + 0x14], ecx
neg ecx
shl ecx, 4
add ebp, ecx
mov edx, dword [esp + 0x1c]
mov ecx, ebx
shl edi, cl
add eax, ebx
or edi, edx
cmp eax, 0xf
jle 0x4fabb9
sub eax, 8
mov edx, edi
mov ecx, eax
shr edx, cl
inc esi
mov byte [esi - 1], dl
cmp dl, 0xff
jne 0x4faba3
mov byte [esi], 0
inc esi
sub eax, 8
mov edx, edi
mov ecx, eax
shr edx, cl
inc esi
mov byte [esi - 1], dl
cmp dl, 0xff
jne 0x4fabb9
mov byte [esi], 0
inc esi
mov ecx, dword [esp + 0x14]
dec ecx
mov dword [esp + 0x14], ecx
jne 0x4fab7c
mov ecx, dword [esp + 0x10]
mov edx, dword [esp + 0x13c]
mov ebx, 1
shl ebx, cl
shl ebp, 4
add ebp, ecx
movsx edx, byte [edx + ebp + 0x400]
dec ebx
add eax, edx
mov ecx, ebx
mov ebx, dword [esp + 0x18]
and ebx, ecx
mov ecx, edx
shl edi, cl
mov ecx, dword [esp + 0x13c]
mov ebp, dword [ecx + ebp*4]
or ebp, edi
cmp eax, 0xf
jle 0x4fac2f
sub eax, 8
mov edx, ebp
mov ecx, eax
shr edx, cl
inc esi
mov byte [esi - 1], dl
cmp dl, 0xff
jne 0x4fac19
mov byte [esi], 0
inc esi
sub eax, 8
mov edx, ebp
mov ecx, eax
shr edx, cl
inc esi
mov byte [esi - 1], dl
cmp dl, 0xff
jne 0x4fac2f
mov byte [esi], 0
inc esi
mov ecx, dword [esp + 0x10]
shl ebp, cl
add eax, ecx
or ebp, ebx
cmp eax, 0xf
mov edi, ebp
jle 0x4fac6c
sub eax, 8
mov edx, edi
mov ecx, eax
shr edx, cl
inc esi
mov byte [esi - 1], dl
cmp dl, 0xff
jne 0x4fac56
mov byte [esi], 0
inc esi
sub eax, 8
mov edx, edi
mov ecx, eax
shr edx, cl
inc esi
mov byte [esi - 1], dl
cmp dl, 0xff
jne 0x4fac6c
mov byte [esi], 0
inc esi
mov ebx, dword [esp + 0x130]
xor ebp, ebp
movsx edx, word [ebx + 8]
test edx, edx
mov dword [esp + 0x10], edx
jne 0x4fac87
inc ebp
jmp 0x4fadbc
mov ebx, dword [esp + 0x10]
mov ecx, edx
sar ecx, 0x1f
add edx, ecx
mov dword [esp + 0x18], edx
mov edx, ecx
xor edx, ebx
sub edx, ecx
xor ecx, ecx
cmp ebp, 0xf
mov cl, byte [edx + 0x5560b0]
mov dword [esp + 0x10], ecx
jle 0x4fad0b
lea ecx, [ebp - 0x10]
mov ebx, dword [esp + 0x20]
shr ecx, 4
inc ecx
mov dword [esp + 0x14], ecx
neg ecx
shl ecx, 4
add ebp, ecx
mov edx, dword [esp + 0x1c]
mov ecx, ebx
shl edi, cl
add eax, ebx
or edi, edx
cmp eax, 0xf
jle 0x4fad00
sub eax, 8
mov edx, edi
mov ecx, eax
shr edx, cl
inc esi
mov byte [esi - 1], dl
cmp dl, 0xff
jne 0x4facea
mov byte [esi], 0
inc esi
sub eax, 8
mov edx, edi
mov ecx, eax
shr edx, cl
inc esi
mov byte [esi - 1], dl
cmp dl, 0xff
jne 0x4fad00
mov byte [esi], 0
inc esi
mov ecx, dword [esp + 0x14]
dec ecx
mov dword [esp + 0x14], ecx
jne 0x4facc3
mov ecx, dword [esp + 0x10]
mov edx, dword [esp + 0x13c]
mov ebx, 1
shl ebx, cl
shl ebp, 4
add ebp, ecx
movsx edx, byte [edx + ebp + 0x400]
dec ebx
add eax, edx
mov ecx, ebx
mov ebx, dword [esp + 0x18]
and ebx, ecx
mov ecx, edx
shl edi, cl
mov ecx, dword [esp + 0x13c]
mov ebp, dword [ecx + ebp*4]
or ebp, edi
cmp eax, 0xf
jle 0x4fad76
sub eax, 8
mov edx, ebp
mov ecx, eax
shr edx, cl
inc esi
mov byte [esi - 1], dl
cmp dl, 0xff
jne 0x4fad60
mov byte [esi], 0
inc esi
sub eax, 8
mov edx, ebp
mov ecx, eax
shr edx, cl
inc esi
mov byte [esi - 1], dl
cmp dl, 0xff
jne 0x4fad76
mov byte [esi], 0
inc esi
mov ecx, dword [esp + 0x10]
shl ebp, cl
add eax, ecx
or ebp, ebx
cmp eax, 0xf
mov edi, ebp
jle 0x4fadb3
sub eax, 8
mov edx, edi
mov ecx, eax
shr edx, cl
inc esi
mov byte [esi - 1], dl
cmp dl, 0xff
jne 0x4fad9d
mov byte [esi], 0
inc esi
sub eax, 8
mov edx, edi
mov ecx, eax
shr edx, cl
inc esi
mov byte [esi - 1], dl
cmp dl, 0xff
jne 0x4fadb3
mov byte [esi], 0
inc esi
mov ebx, dword [esp + 0x130]
xor ebp, ebp
movsx edx, word [ebx + 0xa]
test edx, edx
mov dword [esp + 0x10], edx
jne 0x4fadce
inc ebp
jmp 0x4faf03
mov ebx, dword [esp + 0x10]
mov ecx, edx
sar ecx, 0x1f
add edx, ecx
mov dword [esp + 0x18], edx
mov edx, ecx
xor edx, ebx
sub edx, ecx
xor ecx, ecx
cmp ebp, 0xf
mov cl, byte [edx + 0x5560b0]
mov dword [esp + 0x10], ecx
jle 0x4fae52
lea ecx, [ebp - 0x10]
mov ebx, dword [esp + 0x20]
shr ecx, 4
inc ecx
mov dword [esp + 0x14], ecx
neg ecx
shl ecx, 4
add ebp, ecx
mov edx, dword [esp + 0x1c]
mov ecx, ebx
shl edi, cl
add eax, ebx
or edi, edx
cmp eax, 0xf
jle 0x4fae47
sub eax, 8
mov edx, edi
mov ecx, eax
shr edx, cl
inc esi
mov byte [esi - 1], dl
cmp dl, 0xff
jne 0x4fae31
mov byte [esi], 0
inc esi
sub eax, 8
mov edx, edi
mov ecx, eax
shr edx, cl
inc esi
mov byte [esi - 1], dl
cmp dl, 0xff
jne 0x4fae47
mov byte [esi], 0
inc esi
mov ecx, dword [esp + 0x14]
dec ecx
mov dword [esp + 0x14], ecx
jne 0x4fae0a
mov ecx, dword [esp + 0x10]
mov edx, dword [esp + 0x13c]
mov ebx, 1
shl ebx, cl
shl ebp, 4
add ebp, ecx
movsx edx, byte [edx + ebp + 0x400]
dec ebx
add eax, edx
mov ecx, ebx
mov ebx, dword [esp + 0x18]
and ebx, ecx
mov ecx, edx
shl edi, cl
mov ecx, dword [esp + 0x13c]
mov ebp, dword [ecx + ebp*4]
or ebp, edi
cmp eax, 0xf
jle 0x4faebd
sub eax, 8
mov edx, ebp
mov ecx, eax
shr edx, cl
inc esi
mov byte [esi - 1], dl
cmp dl, 0xff
jne 0x4faea7
mov byte [esi], 0
inc esi
sub eax, 8
mov edx, ebp
mov ecx, eax
shr edx, cl
inc esi
mov byte [esi - 1], dl
cmp dl, 0xff
jne 0x4faebd
mov byte [esi], 0
inc esi
mov ecx, dword [esp + 0x10]
shl ebp, cl
add eax, ecx
or ebp, ebx
cmp eax, 0xf
mov edi, ebp
jle 0x4faefa
sub eax, 8
mov edx, edi
mov ecx, eax
shr edx, cl
inc esi
mov byte [esi - 1], dl
cmp dl, 0xff
jne 0x4faee4
mov byte [esi], 0
inc esi
sub eax, 8
mov edx, edi
mov ecx, eax
shr edx, cl
inc esi
mov byte [esi - 1], dl
cmp dl, 0xff
jne 0x4faefa
mov byte [esi], 0
inc esi
mov ebx, dword [esp + 0x130]
xor ebp, ebp
movsx edx, word [ebx + 0x18]
test edx, edx
mov dword [esp + 0x10], edx
jne 0x4faf15
inc ebp
jmp 0x4fb04a
mov ebx, dword [esp + 0x10]
mov ecx, edx
sar ecx, 0x1f
add edx, ecx
mov dword [esp + 0x18], edx
mov edx, ecx
xor edx, ebx
sub edx, ecx
xor ecx, ecx
cmp ebp, 0xf
mov cl, byte [edx + 0x5560b0]
mov dword [esp + 0x10], ecx
jle 0x4faf99
lea ecx, [ebp - 0x10]
mov ebx, dword [esp + 0x20]
shr ecx, 4
inc ecx
mov dword [esp + 0x14], ecx
neg ecx
shl ecx, 4
add ebp, ecx
mov edx, dword [esp + 0x1c]
mov ecx, ebx
shl edi, cl
add eax, ebx
or edi, edx
cmp eax, 0xf
jle 0x4faf8e
sub eax, 8
mov edx, edi
mov ecx, eax
shr edx, cl
inc esi
mov byte [esi - 1], dl
cmp dl, 0xff
jne 0x4faf78
mov byte [esi], 0
inc esi
sub eax, 8
mov edx, edi
mov ecx, eax
shr edx, cl
inc esi
mov byte [esi - 1], dl
cmp dl, 0xff
jne 0x4faf8e
mov byte [esi], 0
inc esi
mov ecx, dword [esp + 0x14]
dec ecx
mov dword [esp + 0x14], ecx
jne 0x4faf51
mov ecx, dword [esp + 0x10]
mov edx, dword [esp + 0x13c]
mov ebx, 1
shl ebx, cl
shl ebp, 4
add ebp, ecx
movsx edx, byte [edx + ebp + 0x400]
dec ebx
add eax, edx
mov ecx, ebx
mov ebx, dword [esp + 0x18]
and ebx, ecx
mov ecx, edx
shl edi, cl
mov ecx, dword [esp + 0x13c]
mov ebp, dword [ecx + ebp*4]
or ebp, edi
cmp eax, 0xf
jle 0x4fb004
sub eax, 8
mov edx, ebp
mov ecx, eax
shr edx, cl
inc esi
mov byte [esi - 1], dl
cmp dl, 0xff
jne 0x4fafee
mov byte [esi], 0
inc esi
sub eax, 8
mov edx, ebp
mov ecx, eax
shr edx, cl
inc esi
mov byte [esi - 1], dl
cmp dl, 0xff
jne 0x4fb004
mov byte [esi], 0
inc esi
mov ecx, dword [esp + 0x10]
shl ebp, cl
add eax, ecx
or ebp, ebx
cmp eax, 0xf
mov edi, ebp
jle 0x4fb041
sub eax, 8
mov edx, edi
mov ecx, eax
shr edx, cl
inc esi
mov byte [esi - 1], dl
cmp dl, 0xff
jne 0x4fb02b
mov byte [esi], 0
inc esi
sub eax, 8
mov edx, edi
mov ecx, eax
shr edx, cl
inc esi
mov byte [esi - 1], dl
cmp dl, 0xff
jne 0x4fb041
mov byte [esi], 0
inc esi
mov ebx, dword [esp + 0x130]
xor ebp, ebp
movsx edx, word [ebx + 0x26]
test edx, edx
mov dword [esp + 0x10], edx
jne 0x4fb05c
inc ebp
jmp 0x4fb191
mov ebx, dword [esp + 0x10]
mov ecx, edx
sar ecx, 0x1f
add edx, ecx
mov dword [esp + 0x18], edx
mov edx, ecx
xor edx, ebx
sub edx, ecx
xor ecx, ecx
cmp ebp, 0xf
mov cl, byte [edx + 0x5560b0]
mov dword [esp + 0x10], ecx
jle 0x4fb0e0
lea ecx, [ebp - 0x10]
mov ebx, dword [esp + 0x20]
shr ecx, 4
inc ecx
mov dword [esp + 0x14], ecx
neg ecx
shl ecx, 4
add ebp, ecx
mov edx, dword [esp + 0x1c]
mov ecx, ebx
shl edi, cl
add eax, ebx
or edi, edx
cmp eax, 0xf
jle 0x4fb0d5
sub eax, 8
mov edx, edi
mov ecx, eax
shr edx, cl
inc esi
mov byte [esi - 1], dl
cmp dl, 0xff
jne 0x4fb0bf
mov byte [esi], 0
inc esi
sub eax, 8
mov edx, edi
mov ecx, eax
shr edx, cl
inc esi
mov byte [esi - 1], dl
cmp dl, 0xff
jne 0x4fb0d5
mov byte [esi], 0
inc esi
mov ecx, dword [esp + 0x14]
dec ecx
mov dword [esp + 0x14], ecx
jne 0x4fb098
mov ecx, dword [esp + 0x10]
mov edx, dword [esp + 0x13c]
mov ebx, 1
shl ebx, cl
shl ebp, 4
add ebp, ecx
movsx edx, byte [edx + ebp + 0x400]
dec ebx
add eax, edx
mov ecx, ebx
mov ebx, dword [esp + 0x18]
and ebx, ecx
mov ecx, edx
shl edi, cl
mov ecx, dword [esp + 0x13c]
mov ebp, dword [ecx + ebp*4]
or ebp, edi
cmp eax, 0xf
jle 0x4fb14b
sub eax, 8
mov edx, ebp
mov ecx, eax
shr edx, cl
inc esi
mov byte [esi - 1], dl
cmp dl, 0xff
jne 0x4fb135
mov byte [esi], 0
inc esi
sub eax, 8
mov edx, ebp
mov ecx, eax
shr edx, cl
inc esi
mov byte [esi - 1], dl
cmp dl, 0xff
jne 0x4fb14b
mov byte [esi], 0
inc esi
mov ecx, dword [esp + 0x10]
shl ebp, cl
add eax, ecx
or ebp, ebx
cmp eax, 0xf
mov edi, ebp
jle 0x4fb188
sub eax, 8
mov edx, edi
mov ecx, eax
shr edx, cl
inc esi
mov byte [esi - 1], dl
cmp dl, 0xff
jne 0x4fb172
mov byte [esi], 0
inc esi
sub eax, 8
mov edx, edi
mov ecx, eax
shr edx, cl
inc esi
mov byte [esi - 1], dl
cmp dl, 0xff
jne 0x4fb188
mov byte [esi], 0
inc esi
mov ebx, dword [esp + 0x130]
xor ebp, ebp
movsx edx, word [ebx + 0x34]
test edx, edx
mov dword [esp + 0x10], edx
jne 0x4fb1a3
inc ebp
jmp 0x4fb2d8
mov ebx, dword [esp + 0x10]
mov ecx, edx
sar ecx, 0x1f
add edx, ecx
mov dword [esp + 0x18], edx
mov edx, ecx
xor edx, ebx
sub edx, ecx
xor ecx, ecx
cmp ebp, 0xf
mov cl, byte [edx + 0x5560b0]
mov dword [esp + 0x10], ecx
jle 0x4fb227
lea ecx, [ebp - 0x10]
mov ebx, dword [esp + 0x20]
shr ecx, 4
inc ecx
mov dword [esp + 0x14], ecx
neg ecx
shl ecx, 4
add ebp, ecx
mov edx, dword [esp + 0x1c]
mov ecx, ebx
shl edi, cl
add eax, ebx
or edi, edx
cmp eax, 0xf
jle 0x4fb21c
sub eax, 8
mov edx, edi
mov ecx, eax
shr edx, cl
inc esi
mov byte [esi - 1], dl
cmp dl, 0xff
jne 0x4fb206
mov byte [esi], 0
inc esi
sub eax, 8
mov edx, edi
mov ecx, eax
shr edx, cl
inc esi
mov byte [esi - 1], dl
cmp dl, 0xff
jne 0x4fb21c
mov byte [esi], 0
inc esi
mov ecx, dword [esp + 0x14]
dec ecx
mov dword [esp + 0x14], ecx
jne 0x4fb1df
mov ecx, dword [esp + 0x10]
mov edx, dword [esp + 0x13c]
mov ebx, 1
shl ebx, cl
shl ebp, 4
add ebp, ecx
movsx edx, byte [edx + ebp + 0x400]
dec ebx
add eax, edx
mov ecx, ebx
mov ebx, dword [esp + 0x18]
and ebx, ecx
mov ecx, edx
shl edi, cl
mov ecx, dword [esp + 0x13c]
mov ebp, dword [ecx + ebp*4]
or ebp, edi
cmp eax, 0xf
jle 0x4fb292
sub eax, 8
mov edx, ebp
mov ecx, eax
shr edx, cl
inc esi
mov byte [esi - 1], dl
cmp dl, 0xff
jne 0x4fb27c
mov byte [esi], 0
inc esi
sub eax, 8
mov edx, ebp
mov ecx, eax
shr edx, cl
inc esi
mov byte [esi - 1], dl
cmp dl, 0xff
jne 0x4fb292
mov byte [esi], 0
inc esi
mov ecx, dword [esp + 0x10]
shl ebp, cl
add eax, ecx
or ebp, ebx
cmp eax, 0xf
mov edi, ebp
jle 0x4fb2cf
sub eax, 8
mov edx, edi
mov ecx, eax
shr edx, cl
inc esi
mov byte [esi - 1], dl
cmp dl, 0xff
jne 0x4fb2b9
mov byte [esi], 0
inc esi
sub eax, 8
mov edx, edi
mov ecx, eax
shr edx, cl
inc esi
mov byte [esi - 1], dl
cmp dl, 0xff
jne 0x4fb2cf
mov byte [esi], 0
inc esi
mov ebx, dword [esp + 0x130]
xor ebp, ebp
movsx edx, word [ebx + 0x42]
test edx, edx
mov dword [esp + 0x10], edx
jne 0x4fb2ea
inc ebp
jmp 0x4fb41f
mov ebx, dword [esp + 0x10]
mov ecx, edx
sar ecx, 0x1f
add edx, ecx
mov dword [esp + 0x18], edx
mov edx, ecx
xor edx, ebx
sub edx, ecx
xor ecx, ecx
cmp ebp, 0xf
mov cl, byte [edx + 0x5560b0]
mov dword [esp + 0x10], ecx
jle 0x4fb36e
lea ecx, [ebp - 0x10]
mov ebx, dword [esp + 0x20]
shr ecx, 4
inc ecx
mov dword [esp + 0x14], ecx
neg ecx
shl ecx, 4
add ebp, ecx
mov edx, dword [esp + 0x1c]
mov ecx, ebx
shl edi, cl
add eax, ebx
or edi, edx
cmp eax, 0xf
jle 0x4fb363
sub eax, 8
mov edx, edi
mov ecx, eax
shr edx, cl
inc esi
mov byte [esi - 1], dl
cmp dl, 0xff
jne 0x4fb34d
mov byte [esi], 0
inc esi
sub eax, 8
mov edx, edi
mov ecx, eax
shr edx, cl
inc esi
mov byte [esi - 1], dl
cmp dl, 0xff
jne 0x4fb363
mov byte [esi], 0
inc esi
mov ecx, dword [esp + 0x14]
dec ecx
mov dword [esp + 0x14], ecx
jne 0x4fb326
mov ecx, dword [esp + 0x10]
mov edx, dword [esp + 0x13c]
mov ebx, 1
shl ebx, cl
shl ebp, 4
add ebp, ecx
movsx edx, byte [edx + ebp + 0x400]
dec ebx
add eax, edx
mov ecx, ebx
mov ebx, dword [esp + 0x18]
and ebx, ecx
mov ecx, edx
shl edi, cl
mov ecx, dword [esp + 0x13c]
mov ebp, dword [ecx + ebp*4]
or ebp, edi
cmp eax, 0xf
jle 0x4fb3d9
sub eax, 8
mov edx, ebp
mov ecx, eax
shr edx, cl
inc esi
mov byte [esi - 1], dl
cmp dl, 0xff
jne 0x4fb3c3
mov byte [esi], 0
inc esi
sub eax, 8
mov edx, ebp
mov ecx, eax
shr edx, cl
inc esi
mov byte [esi - 1], dl
cmp dl, 0xff
jne 0x4fb3d9
mov byte [esi], 0
inc esi
mov ecx, dword [esp + 0x10]
shl ebp, cl
add eax, ecx
or ebp, ebx
cmp eax, 0xf
mov edi, ebp
jle 0x4fb416
sub eax, 8
mov edx, edi
mov ecx, eax
shr edx, cl
inc esi
mov byte [esi - 1], dl
cmp dl, 0xff
jne 0x4fb400
mov byte [esi], 0
inc esi
sub eax, 8
mov edx, edi
mov ecx, eax
shr edx, cl
inc esi
mov byte [esi - 1], dl
cmp dl, 0xff
jne 0x4fb416
mov byte [esi], 0
inc esi
mov ebx, dword [esp + 0x130]
xor ebp, ebp
movsx edx, word [ebx + 0x50]
test edx, edx
mov dword [esp + 0x10], edx
jne 0x4fb431
inc ebp
jmp 0x4fb566
mov ebx, dword [esp + 0x10]
mov ecx, edx
sar ecx, 0x1f
add edx, ecx
mov dword [esp + 0x18], edx
mov edx, ecx
xor edx, ebx
sub edx, ecx
xor ecx, ecx
cmp ebp, 0xf
mov cl, byte [edx + 0x5560b0]
mov dword [esp + 0x10], ecx
jle 0x4fb4b5
lea ecx, [ebp - 0x10]
mov ebx, dword [esp + 0x20]
shr ecx, 4
inc ecx
mov dword [esp + 0x14], ecx
neg ecx
shl ecx, 4
add ebp, ecx
mov edx, dword [esp + 0x1c]
mov ecx, ebx
shl edi, cl
add eax, ebx
or edi, edx
cmp eax, 0xf
jle 0x4fb4aa
sub eax, 8
mov edx, edi
mov ecx, eax
shr edx, cl
inc esi
mov byte [esi - 1], dl
cmp dl, 0xff
jne 0x4fb494
mov byte [esi], 0
inc esi
sub eax, 8
mov edx, edi
mov ecx, eax
shr edx, cl
inc esi
mov byte [esi - 1], dl
cmp dl, 0xff
jne 0x4fb4aa
mov byte [esi], 0
inc esi
mov ecx, dword [esp + 0x14]
dec ecx
mov dword [esp + 0x14], ecx
jne 0x4fb46d
mov ecx, dword [esp + 0x10]
mov edx, dword [esp + 0x13c]
mov ebx, 1
shl ebx, cl
shl ebp, 4
add ebp, ecx
movsx edx, byte [edx + ebp + 0x400]
dec ebx
add eax, edx
mov ecx, ebx
mov ebx, dword [esp + 0x18]
and ebx, ecx
mov ecx, edx
shl edi, cl
mov ecx, dword [esp + 0x13c]
mov ebp, dword [ecx + ebp*4]
or ebp, edi
cmp eax, 0xf
jle 0x4fb520
sub eax, 8
mov edx, ebp
mov ecx, eax
shr edx, cl
inc esi
mov byte [esi - 1], dl
cmp dl, 0xff
jne 0x4fb50a
mov byte [esi], 0
inc esi
sub eax, 8
mov edx, ebp
mov ecx, eax
shr edx, cl
inc esi
mov byte [esi - 1], dl
cmp dl, 0xff
jne 0x4fb520
mov byte [esi], 0
inc esi
mov ecx, dword [esp + 0x10]
shl ebp, cl
add eax, ecx
or ebp, ebx
cmp eax, 0xf
mov edi, ebp
jle 0x4fb55d
sub eax, 8
mov edx, edi
mov ecx, eax
shr edx, cl
inc esi
mov byte [esi - 1], dl
cmp dl, 0xff
jne 0x4fb547
mov byte [esi], 0
inc esi
sub eax, 8
mov edx, edi
mov ecx, eax
shr edx, cl
inc esi
mov byte [esi - 1], dl
cmp dl, 0xff
jne 0x4fb55d
mov byte [esi], 0
inc esi
mov ebx, dword [esp + 0x130]
xor ebp, ebp
movsx edx, word [ebx + 0x60]
test edx, edx
mov dword [esp + 0x10], edx
jne 0x4fb578
inc ebp
jmp 0x4fb6ad
mov ebx, dword [esp + 0x10]
mov ecx, edx
sar ecx, 0x1f
add edx, ecx
mov dword [esp + 0x18], edx
mov edx, ecx
xor edx, ebx
sub edx, ecx
xor ecx, ecx
cmp ebp, 0xf
mov cl, byte [edx + 0x5560b0]
mov dword [esp + 0x10], ecx
jle 0x4fb5fc
lea ecx, [ebp - 0x10]
mov ebx, dword [esp + 0x20]
shr ecx, 4
inc ecx
mov dword [esp + 0x14], ecx
neg ecx
shl ecx, 4
add ebp, ecx
mov edx, dword [esp + 0x1c]
mov ecx, ebx
shl edi, cl
add eax, ebx
or edi, edx
cmp eax, 0xf
jle 0x4fb5f1
sub eax, 8
mov edx, edi
mov ecx, eax
shr edx, cl
inc esi
mov byte [esi - 1], dl
cmp dl, 0xff
jne 0x4fb5db
mov byte [esi], 0
inc esi
sub eax, 8
mov edx, edi
mov ecx, eax
shr edx, cl
inc esi
mov byte [esi - 1], dl
cmp dl, 0xff
jne 0x4fb5f1
mov byte [esi], 0
inc esi
mov ecx, dword [esp + 0x14]
dec ecx
mov dword [esp + 0x14], ecx
jne 0x4fb5b4
mov ecx, dword [esp + 0x10]
mov edx, dword [esp + 0x13c]
mov ebx, 1
shl ebx, cl
shl ebp, 4
add ebp, ecx
movsx edx, byte [edx + ebp + 0x400]
dec ebx
add eax, edx
mov ecx, ebx
mov ebx, dword [esp + 0x18]
and ebx, ecx
mov ecx, edx
shl edi, cl
mov ecx, dword [esp + 0x13c]
mov ebp, dword [ecx + ebp*4]
or ebp, edi
cmp eax, 0xf
jle 0x4fb667
sub eax, 8
mov edx, ebp
mov ecx, eax
shr edx, cl
inc esi
mov byte [esi - 1], dl
cmp dl, 0xff
jne 0x4fb651
mov byte [esi], 0
inc esi
sub eax, 8
mov edx, ebp
mov ecx, eax
shr edx, cl
inc esi
mov byte [esi - 1], dl
cmp dl, 0xff
jne 0x4fb667
mov byte [esi], 0
inc esi
mov ecx, dword [esp + 0x10]
shl ebp, cl
add eax, ecx
or ebp, ebx
cmp eax, 0xf
mov edi, ebp
jle 0x4fb6a4
sub eax, 8
mov edx, edi
mov ecx, eax
shr edx, cl
inc esi
mov byte [esi - 1], dl
cmp dl, 0xff
jne 0x4fb68e
mov byte [esi], 0
inc esi
sub eax, 8
mov edx, edi
mov ecx, eax
shr edx, cl
inc esi
mov byte [esi - 1], dl
cmp dl, 0xff
jne 0x4fb6a4
mov byte [esi], 0
inc esi
mov ebx, dword [esp + 0x130]
xor ebp, ebp
movsx edx, word [ebx + 0x52]
test edx, edx
mov dword [esp + 0x10], edx
jne 0x4fb6bf
inc ebp
jmp 0x4fb7f4
mov ebx, dword [esp + 0x10]
mov ecx, edx
sar ecx, 0x1f
add edx, ecx
mov dword [esp + 0x18], edx
mov edx, ecx
xor edx, ebx
sub edx, ecx
xor ecx, ecx
cmp ebp, 0xf
mov cl, byte [edx + 0x5560b0]
mov dword [esp + 0x10], ecx
jle 0x4fb743
lea ecx, [ebp - 0x10]
mov ebx, dword [esp + 0x20]
shr ecx, 4
inc ecx
mov dword [esp + 0x14], ecx
neg ecx
shl ecx, 4
add ebp, ecx
mov edx, dword [esp + 0x1c]
mov ecx, ebx
shl edi, cl
add eax, ebx
or edi, edx
cmp eax, 0xf
jle 0x4fb738
sub eax, 8
mov edx, edi
mov ecx, eax
shr edx, cl
inc esi
mov byte [esi - 1], dl
cmp dl, 0xff
jne 0x4fb722
mov byte [esi], 0
inc esi
sub eax, 8
mov edx, edi
mov ecx, eax
shr edx, cl
inc esi
mov byte [esi - 1], dl
cmp dl, 0xff
jne 0x4fb738
mov byte [esi], 0
inc esi
mov ecx, dword [esp + 0x14]
dec ecx
mov dword [esp + 0x14], ecx
jne 0x4fb6fb
mov ecx, dword [esp + 0x10]
mov edx, dword [esp + 0x13c]
mov ebx, 1
shl ebx, cl
shl ebp, 4
add ebp, ecx
movsx edx, byte [edx + ebp + 0x400]
dec ebx
add eax, edx
mov ecx, ebx
mov ebx, dword [esp + 0x18]
and ebx, ecx
mov ecx, edx
shl edi, cl
mov ecx, dword [esp + 0x13c]
mov ebp, dword [ecx + ebp*4]
or ebp, edi
cmp eax, 0xf
jle 0x4fb7ae
sub eax, 8
mov edx, ebp
mov ecx, eax
shr edx, cl
inc esi
mov byte [esi - 1], dl
cmp dl, 0xff
jne 0x4fb798
mov byte [esi], 0
inc esi
sub eax, 8
mov edx, ebp
mov ecx, eax
shr edx, cl
inc esi
mov byte [esi - 1], dl
cmp dl, 0xff
jne 0x4fb7ae
mov byte [esi], 0
inc esi
mov ecx, dword [esp + 0x10]
shl ebp, cl
add eax, ecx
or ebp, ebx
cmp eax, 0xf
mov edi, ebp
jle 0x4fb7eb
sub eax, 8
mov edx, edi
mov ecx, eax
shr edx, cl
inc esi
mov byte [esi - 1], dl
cmp dl, 0xff
jne 0x4fb7d5
mov byte [esi], 0
inc esi
sub eax, 8
mov edx, edi
mov ecx, eax
shr edx, cl
inc esi
mov byte [esi - 1], dl
cmp dl, 0xff
jne 0x4fb7eb
mov byte [esi], 0
inc esi
mov ebx, dword [esp + 0x130]
xor ebp, ebp
movsx edx, word [ebx + 0x44]
test edx, edx
mov dword [esp + 0x10], edx
jne 0x4fb806
inc ebp
jmp 0x4fb93b
mov ebx, dword [esp + 0x10]
mov ecx, edx
sar ecx, 0x1f
add edx, ecx
mov dword [esp + 0x18], edx
mov edx, ecx
xor edx, ebx
sub edx, ecx
xor ecx, ecx
cmp ebp, 0xf
mov cl, byte [edx + 0x5560b0]
mov dword [esp + 0x10], ecx
jle 0x4fb88a
lea ecx, [ebp - 0x10]
mov ebx, dword [esp + 0x20]
shr ecx, 4
inc ecx
mov dword [esp + 0x14], ecx
neg ecx
shl ecx, 4
add ebp, ecx
mov edx, dword [esp + 0x1c]
mov ecx, ebx
shl edi, cl
add eax, ebx
or edi, edx
cmp eax, 0xf
jle 0x4fb87f
sub eax, 8
mov edx, edi
mov ecx, eax
shr edx, cl
inc esi
mov byte [esi - 1], dl
cmp dl, 0xff
jne 0x4fb869
mov byte [esi], 0
inc esi
sub eax, 8
mov edx, edi
mov ecx, eax
shr edx, cl
inc esi
mov byte [esi - 1], dl
cmp dl, 0xff
jne 0x4fb87f
mov byte [esi], 0
inc esi
mov ecx, dword [esp + 0x14]
dec ecx
mov dword [esp + 0x14], ecx
jne 0x4fb842
mov ecx, dword [esp + 0x10]
mov edx, dword [esp + 0x13c]
mov ebx, 1
shl ebx, cl
shl ebp, 4
add ebp, ecx
movsx edx, byte [edx + ebp + 0x400]
dec ebx
add eax, edx
mov ecx, ebx
mov ebx, dword [esp + 0x18]
and ebx, ecx
mov ecx, edx
shl edi, cl
mov ecx, dword [esp + 0x13c]
mov ebp, dword [ecx + ebp*4]
or ebp, edi
cmp eax, 0xf
jle 0x4fb8f5
sub eax, 8
mov edx, ebp
mov ecx, eax
shr edx, cl
inc esi
mov byte [esi - 1], dl
cmp dl, 0xff
jne 0x4fb8df
mov byte [esi], 0
inc esi
sub eax, 8
mov edx, ebp
mov ecx, eax
shr edx, cl
inc esi
mov byte [esi - 1], dl
cmp dl, 0xff
jne 0x4fb8f5
mov byte [esi], 0
inc esi
mov ecx, dword [esp + 0x10]
shl ebp, cl
add eax, ecx
or ebp, ebx
cmp eax, 0xf
mov edi, ebp
jle 0x4fb932
sub eax, 8
mov edx, edi
mov ecx, eax
shr edx, cl
inc esi
mov byte [esi - 1], dl
cmp dl, 0xff
jne 0x4fb91c
mov byte [esi], 0
inc esi
sub eax, 8
mov edx, edi
mov ecx, eax
shr edx, cl
inc esi
mov byte [esi - 1], dl
cmp dl, 0xff
jne 0x4fb932
mov byte [esi], 0
inc esi
mov ebx, dword [esp + 0x130]
xor ebp, ebp
movsx edx, word [ebx + 0x36]
test edx, edx
mov dword [esp + 0x10], edx
jne 0x4fb94d
inc ebp
jmp 0x4fba82
mov ebx, dword [esp + 0x10]
mov ecx, edx
sar ecx, 0x1f
add edx, ecx
mov dword [esp + 0x18], edx
mov edx, ecx
xor edx, ebx
sub edx, ecx
xor ecx, ecx
cmp ebp, 0xf
mov cl, byte [edx + 0x5560b0]
mov dword [esp + 0x10], ecx
jle 0x4fb9d1
lea ecx, [ebp - 0x10]
mov ebx, dword [esp + 0x20]
shr ecx, 4
inc ecx
mov dword [esp + 0x14], ecx
neg ecx
shl ecx, 4
add ebp, ecx
mov edx, dword [esp + 0x1c]
mov ecx, ebx
shl edi, cl
add eax, ebx
or edi, edx
cmp eax, 0xf
jle 0x4fb9c6
sub eax, 8
mov edx, edi
mov ecx, eax
shr edx, cl
inc esi
mov byte [esi - 1], dl
cmp dl, 0xff
jne 0x4fb9b0
mov byte [esi], 0
inc esi
sub eax, 8
mov edx, edi
mov ecx, eax
shr edx, cl
inc esi
mov byte [esi - 1], dl
cmp dl, 0xff
jne 0x4fb9c6
mov byte [esi], 0
inc esi
mov ecx, dword [esp + 0x14]
dec ecx
mov dword [esp + 0x14], ecx
jne 0x4fb989
mov ecx, dword [esp + 0x10]
mov edx, dword [esp + 0x13c]
mov ebx, 1
shl ebx, cl
shl ebp, 4
add ebp, ecx
movsx edx, byte [edx + ebp + 0x400]
dec ebx
add eax, edx
mov ecx, ebx
mov ebx, dword [esp + 0x18]
and ebx, ecx
mov ecx, edx
shl edi, cl
mov ecx, dword [esp + 0x13c]
mov ebp, dword [ecx + ebp*4]
or ebp, edi
cmp eax, 0xf
jle 0x4fba3c
sub eax, 8
mov edx, ebp
mov ecx, eax
shr edx, cl
inc esi
mov byte [esi - 1], dl
cmp dl, 0xff
jne 0x4fba26
mov byte [esi], 0
inc esi
sub eax, 8
mov edx, ebp
mov ecx, eax
shr edx, cl
inc esi
mov byte [esi - 1], dl
cmp dl, 0xff
jne 0x4fba3c
mov byte [esi], 0
inc esi
mov ecx, dword [esp + 0x10]
shl ebp, cl
add eax, ecx
or ebp, ebx
cmp eax, 0xf
mov edi, ebp
jle 0x4fba79
sub eax, 8
mov edx, edi
mov ecx, eax
shr edx, cl
inc esi
mov byte [esi - 1], dl
cmp dl, 0xff
jne 0x4fba63
mov byte [esi], 0
inc esi
sub eax, 8
mov edx, edi
mov ecx, eax
shr edx, cl
inc esi
mov byte [esi - 1], dl
cmp dl, 0xff
jne 0x4fba79
mov byte [esi], 0
inc esi
mov ebx, dword [esp + 0x130]
xor ebp, ebp
movsx edx, word [ebx + 0x28]
test edx, edx
mov dword [esp + 0x10], edx
jne 0x4fba94
inc ebp
jmp 0x4fbbc9
mov ebx, dword [esp + 0x10]
mov ecx, edx
sar ecx, 0x1f
add edx, ecx
mov dword [esp + 0x18], edx
mov edx, ecx
xor edx, ebx
sub edx, ecx
xor ecx, ecx
cmp ebp, 0xf
mov cl, byte [edx + 0x5560b0]
mov dword [esp + 0x10], ecx
jle 0x4fbb18
lea ecx, [ebp - 0x10]
mov ebx, dword [esp + 0x20]
shr ecx, 4
inc ecx
mov dword [esp + 0x14], ecx
neg ecx
shl ecx, 4
add ebp, ecx
mov edx, dword [esp + 0x1c]
mov ecx, ebx
shl edi, cl
add eax, ebx
or edi, edx
cmp eax, 0xf
jle 0x4fbb0d
sub eax, 8
mov edx, edi
mov ecx, eax
shr edx, cl
inc esi
mov byte [esi - 1], dl
cmp dl, 0xff
jne 0x4fbaf7
mov byte [esi], 0
inc esi
sub eax, 8
mov edx, edi
mov ecx, eax
shr edx, cl
inc esi
mov byte [esi - 1], dl
cmp dl, 0xff
jne 0x4fbb0d
mov byte [esi], 0
inc esi
mov ecx, dword [esp + 0x14]
dec ecx
mov dword [esp + 0x14], ecx
jne 0x4fbad0
mov ecx, dword [esp + 0x10]
mov edx, dword [esp + 0x13c]
mov ebx, 1
shl ebx, cl
shl ebp, 4
add ebp, ecx
movsx edx, byte [edx + ebp + 0x400]
dec ebx
add eax, edx
mov ecx, ebx
mov ebx, dword [esp + 0x18]
and ebx, ecx
mov ecx, edx
shl edi, cl
mov ecx, dword [esp + 0x13c]
mov ebp, dword [ecx + ebp*4]
or ebp, edi
cmp eax, 0xf
jle 0x4fbb83
sub eax, 8
mov edx, ebp
mov ecx, eax
shr edx, cl
inc esi
mov byte [esi - 1], dl
cmp dl, 0xff
jne 0x4fbb6d
mov byte [esi], 0
inc esi
sub eax, 8
mov edx, ebp
mov ecx, eax
shr edx, cl
inc esi
mov byte [esi - 1], dl
cmp dl, 0xff
jne 0x4fbb83
mov byte [esi], 0
inc esi
mov ecx, dword [esp + 0x10]
shl ebp, cl
add eax, ecx
or ebp, ebx
cmp eax, 0xf
mov edi, ebp
jle 0x4fbbc0
sub eax, 8
mov edx, edi
mov ecx, eax
shr edx, cl
inc esi
mov byte [esi - 1], dl
cmp dl, 0xff
jne 0x4fbbaa
mov byte [esi], 0
inc esi
sub eax, 8
mov edx, edi
mov ecx, eax
shr edx, cl
inc esi
mov byte [esi - 1], dl
cmp dl, 0xff
jne 0x4fbbc0
mov byte [esi], 0
inc esi
mov ebx, dword [esp + 0x130]
xor ebp, ebp
movsx edx, word [ebx + 0x1a]
test edx, edx
mov dword [esp + 0x10], edx
jne 0x4fbbdb
inc ebp
jmp 0x4fbd10
mov ebx, dword [esp + 0x10]
mov ecx, edx
sar ecx, 0x1f
add edx, ecx
mov dword [esp + 0x18], edx
mov edx, ecx
xor edx, ebx
sub edx, ecx
xor ecx, ecx
cmp ebp, 0xf
mov cl, byte [edx + 0x5560b0]
mov dword [esp + 0x10], ecx
jle 0x4fbc5f
lea ecx, [ebp - 0x10]
mov ebx, dword [esp + 0x20]
shr ecx, 4
inc ecx
mov dword [esp + 0x14], ecx
neg ecx
shl ecx, 4
add ebp, ecx
mov edx, dword [esp + 0x1c]
mov ecx, ebx
shl edi, cl
add eax, ebx
or edi, edx
cmp eax, 0xf
jle 0x4fbc54
sub eax, 8
mov edx, edi
mov ecx, eax
shr edx, cl
inc esi
mov byte [esi - 1], dl
cmp dl, 0xff
jne 0x4fbc3e
mov byte [esi], 0
inc esi
sub eax, 8
mov edx, edi
mov ecx, eax
shr edx, cl
inc esi
mov byte [esi - 1], dl
cmp dl, 0xff
jne 0x4fbc54
mov byte [esi], 0
inc esi
mov ecx, dword [esp + 0x14]
dec ecx
mov dword [esp + 0x14], ecx
jne 0x4fbc17
mov ecx, dword [esp + 0x10]
mov edx, dword [esp + 0x13c]
mov ebx, 1
shl ebx, cl
shl ebp, 4
add ebp, ecx
movsx edx, byte [edx + ebp + 0x400]
dec ebx
add eax, edx
mov ecx, ebx
mov ebx, dword [esp + 0x18]
and ebx, ecx
mov ecx, edx
shl edi, cl
mov ecx, dword [esp + 0x13c]
mov ebp, dword [ecx + ebp*4]
or ebp, edi
cmp eax, 0xf
jle 0x4fbcca
sub eax, 8
mov edx, ebp
mov ecx, eax
shr edx, cl
inc esi
mov byte [esi - 1], dl
cmp dl, 0xff
jne 0x4fbcb4
mov byte [esi], 0
inc esi
sub eax, 8
mov edx, ebp
mov ecx, eax
shr edx, cl
inc esi
mov byte [esi - 1], dl
cmp dl, 0xff
jne 0x4fbcca
mov byte [esi], 0
inc esi
mov ecx, dword [esp + 0x10]
shl ebp, cl
add eax, ecx
or ebp, ebx
cmp eax, 0xf
mov edi, ebp
jle 0x4fbd07
sub eax, 8
mov edx, edi
mov ecx, eax
shr edx, cl
inc esi
mov byte [esi - 1], dl
cmp dl, 0xff
jne 0x4fbcf1
mov byte [esi], 0
inc esi
sub eax, 8
mov edx, edi
mov ecx, eax
shr edx, cl
inc esi
mov byte [esi - 1], dl
cmp dl, 0xff
jne 0x4fbd07
mov byte [esi], 0
inc esi
mov ebx, dword [esp + 0x130]
xor ebp, ebp
movsx edx, word [ebx + 0xc]
test edx, edx
mov dword [esp + 0x10], edx
jne 0x4fbd22
inc ebp
jmp 0x4fbe57
mov ebx, dword [esp + 0x10]
mov ecx, edx
sar ecx, 0x1f
add edx, ecx
mov dword [esp + 0x18], edx
mov edx, ecx
xor edx, ebx
sub edx, ecx
xor ecx, ecx
cmp ebp, 0xf
mov cl, byte [edx + 0x5560b0]
mov dword [esp + 0x10], ecx
jle 0x4fbda6
lea ecx, [ebp - 0x10]
mov ebx, dword [esp + 0x20]
shr ecx, 4
inc ecx
mov dword [esp + 0x14], ecx
neg ecx
shl ecx, 4
add ebp, ecx
mov edx, dword [esp + 0x1c]
mov ecx, ebx
shl edi, cl
add eax, ebx
or edi, edx
cmp eax, 0xf
jle 0x4fbd9b
sub eax, 8
mov edx, edi
mov ecx, eax
shr edx, cl
inc esi
mov byte [esi - 1], dl
cmp dl, 0xff
jne 0x4fbd85
mov byte [esi], 0
inc esi
sub eax, 8
mov edx, edi
mov ecx, eax
shr edx, cl
inc esi
mov byte [esi - 1], dl
cmp dl, 0xff
jne 0x4fbd9b
mov byte [esi], 0
inc esi
mov ecx, dword [esp + 0x14]
dec ecx
mov dword [esp + 0x14], ecx
jne 0x4fbd5e
mov ecx, dword [esp + 0x10]
mov edx, dword [esp + 0x13c]
mov ebx, 1
shl ebx, cl
shl ebp, 4
add ebp, ecx
movsx edx, byte [edx + ebp + 0x400]
dec ebx
add eax, edx
mov ecx, ebx
mov ebx, dword [esp + 0x18]
and ebx, ecx
mov ecx, edx
shl edi, cl
mov ecx, dword [esp + 0x13c]
mov ebp, dword [ecx + ebp*4]
or ebp, edi
cmp eax, 0xf
jle 0x4fbe11
sub eax, 8
mov edx, ebp
mov ecx, eax
shr edx, cl
inc esi
mov byte [esi - 1], dl
cmp dl, 0xff
jne 0x4fbdfb
mov byte [esi], 0
inc esi
sub eax, 8
mov edx, ebp
mov ecx, eax
shr edx, cl
inc esi
mov byte [esi - 1], dl
cmp dl, 0xff
jne 0x4fbe11
mov byte [esi], 0
inc esi
mov ecx, dword [esp + 0x10]
shl ebp, cl
add eax, ecx
or ebp, ebx
cmp eax, 0xf
mov edi, ebp
jle 0x4fbe4e
sub eax, 8
mov edx, edi
mov ecx, eax
shr edx, cl
inc esi
mov byte [esi - 1], dl
cmp dl, 0xff
jne 0x4fbe38
mov byte [esi], 0
inc esi
sub eax, 8
mov edx, edi
mov ecx, eax
shr edx, cl
inc esi
mov byte [esi - 1], dl
cmp dl, 0xff
jne 0x4fbe4e
mov byte [esi], 0
inc esi
mov ebx, dword [esp + 0x130]
xor ebp, ebp
movsx edx, word [ebx + 0xe]
test edx, edx
mov dword [esp + 0x10], edx
jne 0x4fbe69
inc ebp
jmp 0x4fbf9e
mov ebx, dword [esp + 0x10]
mov ecx, edx
sar ecx, 0x1f
add edx, ecx
mov dword [esp + 0x18], edx
mov edx, ecx
xor edx, ebx
sub edx, ecx
xor ecx, ecx
cmp ebp, 0xf
mov cl, byte [edx + 0x5560b0]
mov dword [esp + 0x10], ecx
jle 0x4fbeed
lea ecx, [ebp - 0x10]
mov ebx, dword [esp + 0x20]
shr ecx, 4
inc ecx
mov dword [esp + 0x14], ecx
neg ecx
shl ecx, 4
add ebp, ecx
mov edx, dword [esp + 0x1c]
mov ecx, ebx
shl edi, cl
add eax, ebx
or edi, edx
cmp eax, 0xf
jle 0x4fbee2
sub eax, 8
mov edx, edi
mov ecx, eax
shr edx, cl
inc esi
mov byte [esi - 1], dl
cmp dl, 0xff
jne 0x4fbecc
mov byte [esi], 0
inc esi
sub eax, 8
mov edx, edi
mov ecx, eax
shr edx, cl
inc esi
mov byte [esi - 1], dl
cmp dl, 0xff
jne 0x4fbee2
mov byte [esi], 0
inc esi
mov ecx, dword [esp + 0x14]
dec ecx
mov dword [esp + 0x14], ecx
jne 0x4fbea5
mov ecx, dword [esp + 0x10]
mov edx, dword [esp + 0x13c]
mov ebx, 1
shl ebx, cl
shl ebp, 4
add ebp, ecx
movsx edx, byte [edx + ebp + 0x400]
dec ebx
add eax, edx
mov ecx, ebx
mov ebx, dword [esp + 0x18]
and ebx, ecx
mov ecx, edx
shl edi, cl
mov ecx, dword [esp + 0x13c]
mov ebp, dword [ecx + ebp*4]
or ebp, edi
cmp eax, 0xf
jle 0x4fbf58
sub eax, 8
mov edx, ebp
mov ecx, eax
shr edx, cl
inc esi
mov byte [esi - 1], dl
cmp dl, 0xff
jne 0x4fbf42
mov byte [esi], 0
inc esi
sub eax, 8
mov edx, ebp
mov ecx, eax
shr edx, cl
inc esi
mov byte [esi - 1], dl
cmp dl, 0xff
jne 0x4fbf58
mov byte [esi], 0
inc esi
mov ecx, dword [esp + 0x10]
shl ebp, cl
add eax, ecx
or ebp, ebx
cmp eax, 0xf
mov edi, ebp
jle 0x4fbf95
sub eax, 8
mov edx, edi
mov ecx, eax
shr edx, cl
inc esi
mov byte [esi - 1], dl
cmp dl, 0xff
jne 0x4fbf7f
mov byte [esi], 0
inc esi
sub eax, 8
mov edx, edi
mov ecx, eax
shr edx, cl
inc esi
mov byte [esi - 1], dl
cmp dl, 0xff
jne 0x4fbf95
mov byte [esi], 0
inc esi
mov ebx, dword [esp + 0x130]
xor ebp, ebp
movsx edx, word [ebx + 0x1c]
test edx, edx
mov dword [esp + 0x10], edx
jne 0x4fbfb0
inc ebp
jmp 0x4fc0e5
mov ebx, dword [esp + 0x10]
mov ecx, edx
sar ecx, 0x1f
add edx, ecx
mov dword [esp + 0x18], edx
mov edx, ecx
xor edx, ebx
sub edx, ecx
xor ecx, ecx
cmp ebp, 0xf
mov cl, byte [edx + 0x5560b0]
mov dword [esp + 0x10], ecx
jle 0x4fc034
lea ecx, [ebp - 0x10]
mov ebx, dword [esp + 0x20]
shr ecx, 4
inc ecx
mov dword [esp + 0x14], ecx
neg ecx
shl ecx, 4
add ebp, ecx
mov edx, dword [esp + 0x1c]
mov ecx, ebx
shl edi, cl
add eax, ebx
or edi, edx
cmp eax, 0xf
jle 0x4fc029
sub eax, 8
mov edx, edi
mov ecx, eax
shr edx, cl
inc esi
mov byte [esi - 1], dl
cmp dl, 0xff
jne 0x4fc013
mov byte [esi], 0
inc esi
sub eax, 8
mov edx, edi
mov ecx, eax
shr edx, cl
inc esi
mov byte [esi - 1], dl
cmp dl, 0xff
jne 0x4fc029
mov byte [esi], 0
inc esi
mov ecx, dword [esp + 0x14]
dec ecx
mov dword [esp + 0x14], ecx
jne 0x4fbfec
mov ecx, dword [esp + 0x10]
mov edx, dword [esp + 0x13c]
mov ebx, 1
shl ebx, cl
shl ebp, 4
add ebp, ecx
movsx edx, byte [edx + ebp + 0x400]
dec ebx
add eax, edx
mov ecx, ebx
mov ebx, dword [esp + 0x18]
and ebx, ecx
mov ecx, edx
shl edi, cl
mov ecx, dword [esp + 0x13c]
mov ebp, dword [ecx + ebp*4]
or ebp, edi
cmp eax, 0xf
jle 0x4fc09f
sub eax, 8
mov edx, ebp
mov ecx, eax
shr edx, cl
inc esi
mov byte [esi - 1], dl
cmp dl, 0xff
jne 0x4fc089
mov byte [esi], 0
inc esi
sub eax, 8
mov edx, ebp
mov ecx, eax
shr edx, cl
inc esi
mov byte [esi - 1], dl
cmp dl, 0xff
jne 0x4fc09f
mov byte [esi], 0
inc esi
mov ecx, dword [esp + 0x10]
shl ebp, cl
add eax, ecx
or ebp, ebx
cmp eax, 0xf
mov edi, ebp
jle 0x4fc0dc
sub eax, 8
mov edx, edi
mov ecx, eax
shr edx, cl
inc esi
mov byte [esi - 1], dl
cmp dl, 0xff
jne 0x4fc0c6
mov byte [esi], 0
inc esi
sub eax, 8
mov edx, edi
mov ecx, eax
shr edx, cl
inc esi
mov byte [esi - 1], dl
cmp dl, 0xff
jne 0x4fc0dc
mov byte [esi], 0
inc esi
mov ebx, dword [esp + 0x130]
xor ebp, ebp
movsx edx, word [ebx + 0x2a]
test edx, edx
mov dword [esp + 0x10], edx
jne 0x4fc0f7
inc ebp
jmp 0x4fc22c
mov ebx, dword [esp + 0x10]
mov ecx, edx
sar ecx, 0x1f
add edx, ecx
mov dword [esp + 0x18], edx
mov edx, ecx
xor edx, ebx
sub edx, ecx
xor ecx, ecx
cmp ebp, 0xf
mov cl, byte [edx + 0x5560b0]
mov dword [esp + 0x10], ecx
jle 0x4fc17b
lea ecx, [ebp - 0x10]
mov ebx, dword [esp + 0x20]
shr ecx, 4
inc ecx
mov dword [esp + 0x14], ecx
neg ecx
shl ecx, 4
add ebp, ecx
mov edx, dword [esp + 0x1c]
mov ecx, ebx
shl edi, cl
add eax, ebx
or edi, edx
cmp eax, 0xf
jle 0x4fc170
sub eax, 8
mov edx, edi
mov ecx, eax
shr edx, cl
inc esi
mov byte [esi - 1], dl
cmp dl, 0xff
jne 0x4fc15a
mov byte [esi], 0
inc esi
sub eax, 8
mov edx, edi
mov ecx, eax
shr edx, cl
inc esi
mov byte [esi - 1], dl
cmp dl, 0xff
jne 0x4fc170
mov byte [esi], 0
inc esi
mov ecx, dword [esp + 0x14]
dec ecx
mov dword [esp + 0x14], ecx
jne 0x4fc133
mov ecx, dword [esp + 0x10]
mov edx, dword [esp + 0x13c]
mov ebx, 1
shl ebx, cl
shl ebp, 4
add ebp, ecx
movsx edx, byte [edx + ebp + 0x400]
dec ebx
add eax, edx
mov ecx, ebx
mov ebx, dword [esp + 0x18]
and ebx, ecx
mov ecx, edx
shl edi, cl
mov ecx, dword [esp + 0x13c]
mov ebp, dword [ecx + ebp*4]
or ebp, edi
cmp eax, 0xf
jle 0x4fc1e6
sub eax, 8
mov edx, ebp
mov ecx, eax
shr edx, cl
inc esi
mov byte [esi - 1], dl
cmp dl, 0xff
jne 0x4fc1d0
mov byte [esi], 0
inc esi
sub eax, 8
mov edx, ebp
mov ecx, eax
shr edx, cl
inc esi
mov byte [esi - 1], dl
cmp dl, 0xff
jne 0x4fc1e6
mov byte [esi], 0
inc esi
mov ecx, dword [esp + 0x10]
shl ebp, cl
add eax, ecx
or ebp, ebx
cmp eax, 0xf
mov edi, ebp
jle 0x4fc223
sub eax, 8
mov edx, edi
mov ecx, eax
shr edx, cl
inc esi
mov byte [esi - 1], dl
cmp dl, 0xff
jne 0x4fc20d
mov byte [esi], 0
inc esi
sub eax, 8
mov edx, edi
mov ecx, eax
shr edx, cl
inc esi
mov byte [esi - 1], dl
cmp dl, 0xff
jne 0x4fc223
mov byte [esi], 0
inc esi
mov ebx, dword [esp + 0x130]
xor ebp, ebp
movsx edx, word [ebx + 0x38]
test edx, edx
mov dword [esp + 0x10], edx
jne 0x4fc23e
inc ebp
jmp 0x4fc373
mov ebx, dword [esp + 0x10]
mov ecx, edx
sar ecx, 0x1f
add edx, ecx
mov dword [esp + 0x18], edx
mov edx, ecx
xor edx, ebx
sub edx, ecx
xor ecx, ecx
cmp ebp, 0xf
mov cl, byte [edx + 0x5560b0]
mov dword [esp + 0x10], ecx
jle 0x4fc2c2
lea ecx, [ebp - 0x10]
mov ebx, dword [esp + 0x20]
shr ecx, 4
inc ecx
mov dword [esp + 0x14], ecx
neg ecx
shl ecx, 4
add ebp, ecx
mov edx, dword [esp + 0x1c]
mov ecx, ebx
shl edi, cl
add eax, ebx
or edi, edx
cmp eax, 0xf
jle 0x4fc2b7
sub eax, 8
mov edx, edi
mov ecx, eax
shr edx, cl
inc esi
mov byte [esi - 1], dl
cmp dl, 0xff
jne 0x4fc2a1
mov byte [esi], 0
inc esi
sub eax, 8
mov edx, edi
mov ecx, eax
shr edx, cl
inc esi
mov byte [esi - 1], dl
cmp dl, 0xff
jne 0x4fc2b7
mov byte [esi], 0
inc esi
mov ecx, dword [esp + 0x14]
dec ecx
mov dword [esp + 0x14], ecx
jne 0x4fc27a
mov ecx, dword [esp + 0x10]
mov edx, dword [esp + 0x13c]
mov ebx, 1
shl ebx, cl
shl ebp, 4
add ebp, ecx
movsx edx, byte [edx + ebp + 0x400]
dec ebx
add eax, edx
mov ecx, ebx
mov ebx, dword [esp + 0x18]
and ebx, ecx
mov ecx, edx
shl edi, cl
mov ecx, dword [esp + 0x13c]
mov ebp, dword [ecx + ebp*4]
or ebp, edi
cmp eax, 0xf
jle 0x4fc32d
sub eax, 8
mov edx, ebp
mov ecx, eax
shr edx, cl
inc esi
mov byte [esi - 1], dl
cmp dl, 0xff
jne 0x4fc317
mov byte [esi], 0
inc esi
sub eax, 8
mov edx, ebp
mov ecx, eax
shr edx, cl
inc esi
mov byte [esi - 1], dl
cmp dl, 0xff
jne 0x4fc32d
mov byte [esi], 0
inc esi
mov ecx, dword [esp + 0x10]
shl ebp, cl
add eax, ecx
or ebp, ebx
cmp eax, 0xf
mov edi, ebp
jle 0x4fc36a
sub eax, 8
mov edx, edi
mov ecx, eax
shr edx, cl
inc esi
mov byte [esi - 1], dl
cmp dl, 0xff
jne 0x4fc354
mov byte [esi], 0
inc esi
sub eax, 8
mov edx, edi
mov ecx, eax
shr edx, cl
inc esi
mov byte [esi - 1], dl
cmp dl, 0xff
jne 0x4fc36a
mov byte [esi], 0
inc esi
mov ebx, dword [esp + 0x130]
xor ebp, ebp
movsx edx, word [ebx + 0x46]
test edx, edx
mov dword [esp + 0x10], edx
jne 0x4fc385
inc ebp
jmp 0x4fc4ba
mov ebx, dword [esp + 0x10]
mov ecx, edx
sar ecx, 0x1f
add edx, ecx
mov dword [esp + 0x18], edx
mov edx, ecx
xor edx, ebx
sub edx, ecx
xor ecx, ecx
cmp ebp, 0xf
mov cl, byte [edx + 0x5560b0]
mov dword [esp + 0x10], ecx
jle 0x4fc409
lea ecx, [ebp - 0x10]
mov ebx, dword [esp + 0x20]
shr ecx, 4
inc ecx
mov dword [esp + 0x14], ecx
neg ecx
shl ecx, 4
add ebp, ecx
mov edx, dword [esp + 0x1c]
mov ecx, ebx
shl edi, cl
add eax, ebx
or edi, edx
cmp eax, 0xf
jle 0x4fc3fe
mov ecx, dword [esp + 0x10]
mov edx, dword [esp + 0x13c]
mov ebx, 1
shl ebx, cl
shl ebp, 4
add ebp, ecx
movsx edx, byte [edx + ebp + 0x400]
dec ebx
add eax, edx
mov ecx, ebx
mov ebx, dword [esp + 0x18]
and ebx, ecx
mov ecx, edx
shl edi, cl
mov ecx, dword [esp + 0x13c]
mov ebp, dword [ecx + ebp*4]
or ebp, edi
cmp eax, 0xf
jle 0x4fc474
movsx edx, word [ebx + 0x54]
test edx, edx
mov dword [esp + 0x10], edx
jne 0x4fc4cc