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

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x12c
mov eax, dword [0x5d7008]
xor eax, ebp
mov dword [ebp - 4], eax
push ebx
push esi
mov esi, ecx
mov dword [ebp - 0x11c], edx
mov ecx, dword [ebp + 0x10]
push edi
mov dword [ebp - 0x128], esi
mov edi, dword [esi + 8]
mov eax, dword [ecx + 0x3c0]
mov ebx, dword [esi + 0xc]
mov dword [ebp - 0x124], eax
movsx eax, byte [ecx + 0x4f0]
mov dword [ebp - 0x118], eax
mov eax, dword [esi + 4]
mov dword [ebp - 0x12c], eax
cmp eax, 0x100
jae 0x4967fe
lea esi, [ebp - 0x104]
jmp 0x496800
mov esi, dword [esi]
movsx eax, word [edx]
sub eax, dword [ebp + 8]
mov edx, eax
mov ecx, eax
sar edx, 0x1f
add eax, edx
mov dword [ebp - 0x114], eax
mov eax, edx
xor eax, ecx
sub eax, edx
movzx edx, byte [eax + 0x597690]
mov eax, dword [ebp + 0xc]
movsx ecx, byte [edx + eax + 0x400]
shl edi, cl
add ebx, ecx
or edi, dword [eax + edx*4]
cmp ebx, 0xf
jle 0x49685f
mov eax, edi
lea ecx, [ebx - 8]
shr eax, cl
mov byte [esi], al
inc esi
cmp al, 0xff
jne 0x49684b
mov byte [esi], 0
inc esi
sub ebx, 0x10
mov eax, edi
mov ecx, ebx
shr eax, cl
mov byte [esi], al
inc esi
cmp al, 0xff
jne 0x49685f
mov byte [esi], 0
inc esi
mov eax, 1
mov ecx, edx
mov dword [ebp - 0x120], eax
add ebx, edx
shl eax, cl
dec eax
shl edi, cl
and eax, dword [ebp - 0x114]
or eax, edi
mov dword [ebp - 0x108], eax
cmp ebx, 0xf
jle 0x4968b2
lea ecx, [ebx - 8]
shr eax, cl
mov byte [esi], al
inc esi
cmp al, 0xff
jne 0x496896
mov byte [esi], 0
inc esi
mov edi, dword [ebp - 0x108]
sub ebx, 0x10
mov eax, edi
mov ecx, ebx
shr eax, cl
mov byte [esi], al
inc esi
cmp al, 0xff
jne 0x4968b4
mov byte [esi], 0
inc esi
jmp 0x4968b4
mov edi, eax
mov eax, dword [ebp - 0x11c]
movsx edx, word [eax + 2]
test edx, edx
jne 0x4968d6
mov dword [ebp - 0x114], 0x10
mov edx, 2
jmp 0x4969b6
mov ecx, edx
sar ecx, 0x1f
lea eax, [ecx + edx]
mov dword [ebp - 0x10c], eax
mov eax, ecx
xor eax, edx
sub eax, ecx
movzx edi, byte [eax + 0x597690]
mov eax, dword [ebp + 0x10]
mov ecx, edi
movsx edx, byte [edi + eax + 0x400]
mov eax, dword [ebp - 0x120]
add ebx, edx
shl eax, cl
mov ecx, edx
dec eax
and dword [ebp - 0x10c], eax
mov eax, dword [ebp - 0x108]
shl eax, cl
mov ecx, dword [ebp + 0x10]
or eax, dword [ecx + edi*4]
mov dword [ebp - 0x108], eax
cmp ebx, 0xf
jle 0x496958
lea ecx, [ebx - 8]
shr eax, cl
mov byte [esi], al
inc esi
cmp al, 0xff
jne 0x49693a
mov byte [esi], 0
inc esi
mov eax, dword [ebp - 0x108]
sub ebx, 0x10
mov ecx, ebx
shr eax, cl
mov byte [esi], al
inc esi
cmp al, 0xff
mov eax, dword [ebp - 0x108]
jne 0x496958
mov byte [esi], 0
inc esi
mov ecx, edi
add ebx, edi
shl eax, cl
or eax, dword [ebp - 0x10c]
mov dword [ebp - 0x108], eax
cmp ebx, 0xf
jle 0x49699b
lea ecx, [ebx - 8]
shr eax, cl
mov byte [esi], al
inc esi
cmp al, 0xff
jne 0x49697f
mov byte [esi], 0
inc esi
mov edi, dword [ebp - 0x108]
sub ebx, 0x10
mov eax, edi
mov ecx, ebx
shr eax, cl
mov byte [esi], al
inc esi
cmp al, 0xff
jne 0x4969a1
mov byte [esi], 0
inc esi
jmp 0x4969a1
mov edi, dword [ebp - 0x108]
mov eax, dword [ebp - 0x11c]
mov edx, 1
mov dword [ebp - 0x114], 0
movsx eax, word [eax + 0x10]
test eax, eax
je 0x496aa8
mov edi, dword [ebp - 0x11c]
mov ecx, eax
sar ecx, 0x1f
add eax, ecx
mov dword [ebp - 0x10c], eax
mov eax, ecx
movsx edx, word [edi + 0x10]
mov edi, dword [ebp - 0x114]
xor eax, edx
sub eax, ecx
movzx ecx, byte [eax + 0x597690]
mov eax, dword [ebp + 0x10]
add edi, ecx
mov dword [ebp - 0x110], ecx
movsx edx, byte [edi + eax + 0x400]
mov eax, dword [ebp - 0x120]
add ebx, edx
shl eax, cl
mov ecx, edx
dec eax
and dword [ebp - 0x10c], eax
mov eax, dword [ebp - 0x108]
shl eax, cl
mov ecx, dword [ebp + 0x10]
or eax, dword [ecx + edi*4]
mov dword [ebp - 0x108], eax
cmp ebx, 0xf
jle 0x496a59
lea ecx, [ebx - 8]
shr eax, cl
mov byte [esi], al
inc esi
cmp al, 0xff
jne 0x496a3b
mov byte [esi], 0
inc esi
mov eax, dword [ebp - 0x108]
sub ebx, 0x10
mov ecx, ebx
shr eax, cl
mov byte [esi], al
inc esi
cmp al, 0xff
mov eax, dword [ebp - 0x108]
jne 0x496a59
mov byte [esi], 0
inc esi
mov ecx, dword [ebp - 0x110]
add ebx, ecx
shl eax, cl
or eax, dword [ebp - 0x10c]
mov dword [ebp - 0x108], eax
cmp ebx, 0xf
jle 0x496aa0
lea ecx, [ebx - 8]
shr eax, cl
mov byte [esi], al
inc esi
cmp al, 0xff
jne 0x496a84
mov byte [esi], 0
inc esi
mov edi, dword [ebp - 0x108]
sub ebx, 0x10
mov eax, edi
mov ecx, ebx
shr eax, cl
mov byte [esi], al
inc esi
cmp al, 0xff
jne 0x496aa6
mov byte [esi], 0
inc esi
jmp 0x496aa6
mov edi, dword [ebp - 0x108]
xor edx, edx
mov eax, dword [ebp - 0x11c]
movsx eax, word [eax + 0x20]
test eax, eax
jne 0x496aca
lea eax, [edx + 1]
shl eax, 4
add edx, 2
mov dword [ebp - 0x114], eax
jmp 0x496bcd
mov ecx, eax
shl edx, 4
sar ecx, 0x1f
add eax, ecx
mov dword [ebp - 0x110], ecx
mov dword [ebp - 0x10c], eax
mov eax, ecx
mov ecx, dword [ebp - 0x11c]
movsx edi, word [ecx + 0x20]
xor eax, edi
mov edi, dword [ebp + 0x10]
sub eax, dword [ebp - 0x110]
movzx ecx, byte [eax + 0x597690]
mov eax, dword [ebp - 0x120]
add edx, ecx
shl eax, cl
dec eax
mov dword [ebp - 0x110], edx
and dword [ebp - 0x10c], eax
movsx edx, byte [edx + edi + 0x400]
mov eax, dword [ebp - 0x108]
add ebx, edx
mov dword [ebp - 0x114], ecx
mov ecx, edx
shl eax, cl
mov ecx, dword [ebp - 0x110]
or eax, dword [edi + ecx*4]
mov dword [ebp - 0x108], eax
cmp ebx, 0xf
jle 0x496b71
lea ecx, [ebx - 8]
shr eax, cl
mov byte [esi], al
inc esi
cmp al, 0xff
jne 0x496b53
mov byte [esi], 0
inc esi
mov eax, dword [ebp - 0x108]
sub ebx, 0x10
mov ecx, ebx
shr eax, cl
mov byte [esi], al
inc esi
cmp al, 0xff
mov eax, dword [ebp - 0x108]
jne 0x496b71
mov byte [esi], 0
inc esi
mov ecx, dword [ebp - 0x114]
add ebx, ecx
shl eax, cl
or eax, dword [ebp - 0x10c]
mov dword [ebp - 0x108], eax
cmp ebx, 0xf
jle 0x496bb8
lea ecx, [ebx - 8]
shr eax, cl
mov byte [esi], al
inc esi
cmp al, 0xff
jne 0x496b9c
mov byte [esi], 0
inc esi
mov edi, dword [ebp - 0x108]
sub ebx, 0x10
mov eax, edi
mov ecx, ebx
shr eax, cl
mov byte [esi], al
inc esi
cmp al, 0xff
jne 0x496bbe
mov byte [esi], 0
inc esi
jmp 0x496bbe
mov edi, dword [ebp - 0x108]
mov dword [ebp - 0x114], 0
mov edx, 1
mov eax, dword [ebp - 0x11c]
movsx eax, word [eax + 0x12]
test eax, eax
je 0x496cc5
mov edi, dword [ebp - 0x11c]
mov ecx, eax
sar ecx, 0x1f
add eax, ecx
mov dword [ebp - 0x10c], eax
mov eax, ecx
movsx edx, word [edi + 0x12]
mov edi, dword [ebp - 0x114]
xor eax, edx
sub eax, ecx
movzx ecx, byte [eax + 0x597690]
mov eax, dword [ebp + 0x10]
add edi, ecx
mov dword [ebp - 0x110], ecx
movsx edx, byte [edi + eax + 0x400]
mov eax, dword [ebp - 0x120]
add ebx, edx
shl eax, cl
mov ecx, edx
dec eax
and dword [ebp - 0x10c], eax
mov eax, dword [ebp - 0x108]
shl eax, cl
mov ecx, dword [ebp + 0x10]
or eax, dword [ecx + edi*4]
mov dword [ebp - 0x108], eax
cmp ebx, 0xf
jle 0x496c76
lea ecx, [ebx - 8]
shr eax, cl
mov byte [esi], al
inc esi
cmp al, 0xff
jne 0x496c58
mov byte [esi], 0
inc esi
mov eax, dword [ebp - 0x108]
sub ebx, 0x10
mov ecx, ebx
shr eax, cl
mov byte [esi], al
inc esi
cmp al, 0xff
mov eax, dword [ebp - 0x108]
jne 0x496c76
mov byte [esi], 0
inc esi
mov ecx, dword [ebp - 0x110]
add ebx, ecx
shl eax, cl
or eax, dword [ebp - 0x10c]
mov dword [ebp - 0x108], eax
cmp ebx, 0xf
jle 0x496cbd
lea ecx, [ebx - 8]
shr eax, cl
mov byte [esi], al
inc esi
cmp al, 0xff
jne 0x496ca1
mov byte [esi], 0
inc esi
mov edi, dword [ebp - 0x108]
sub ebx, 0x10
mov eax, edi
mov ecx, ebx
shr eax, cl
mov byte [esi], al
inc esi
cmp al, 0xff
jne 0x496cc3
mov byte [esi], 0
inc esi
jmp 0x496cc3
mov edi, dword [ebp - 0x108]
xor edx, edx
mov eax, dword [ebp - 0x11c]
movsx eax, word [eax + 4]
mov dword [ebp - 0x110], eax
test eax, eax
jne 0x496cdf
inc edx
jmp 0x496da2
mov ecx, eax
shl edx, 4
sar ecx, 0x1f
add eax, ecx
mov dword [ebp - 0x10c], eax
mov eax, ecx
xor eax, dword [ebp - 0x110]
sub eax, ecx
movzx ecx, byte [eax + 0x597690]
mov eax, dword [ebp + 0x10]
add edx, ecx
mov dword [ebp - 0x108], edx
mov dword [ebp - 0x110], ecx
movsx edx, byte [edx + eax + 0x400]
mov eax, dword [ebp - 0x120]
add ebx, edx
shl eax, cl
mov ecx, edx
dec eax
shl edi, cl
and dword [ebp - 0x10c], eax
mov eax, dword [ebp - 0x108]
mov ecx, dword [ebp + 0x10]
or edi, dword [ecx + eax*4]
cmp ebx, 0xf
jle 0x496d65
mov eax, edi
lea ecx, [ebx - 8]
shr eax, cl
mov byte [esi], al
inc esi
cmp al, 0xff
jne 0x496d51
mov byte [esi], 0
inc esi
sub ebx, 0x10
mov eax, edi
mov ecx, ebx
shr eax, cl
mov byte [esi], al
inc esi
cmp al, 0xff
jne 0x496d65
mov byte [esi], 0
inc esi
mov ecx, dword [ebp - 0x110]
add ebx, ecx
shl edi, cl
or edi, dword [ebp - 0x10c]
cmp ebx, 0xf
jle 0x496da0
mov eax, edi
lea ecx, [ebx - 8]
shr eax, cl
mov byte [esi], al
inc esi
cmp al, 0xff
jne 0x496d8c
mov byte [esi], 0
inc esi
sub ebx, 0x10
mov eax, edi
mov ecx, ebx
shr eax, cl
mov byte [esi], al
inc esi
cmp al, 0xff
jne 0x496da0
mov byte [esi], 0
inc esi
xor edx, edx
mov eax, dword [ebp - 0x11c]
movsx eax, word [eax + 6]
mov dword [ebp - 0x110], eax
test eax, eax
jne 0x496dbc
inc edx
jmp 0x496efd
mov ecx, eax
sar ecx, 0x1f
add eax, ecx
mov dword [ebp - 0x10c], eax
mov eax, ecx
xor eax, dword [ebp - 0x110]
sub eax, ecx
movzx ecx, byte [eax + 0x597690]
mov dword [ebp - 0x114], ecx
cmp edx, 0xf
jbe 0x496e5e
lea eax, [edx - 0x10]
shr eax, 4
inc eax
mov dword [ebp - 0x110], eax
neg eax
shl eax, 4
add edx, eax
mov eax, dword [ebp - 0x118]
mov dword [ebp - 0x108], edx
mov edx, dword [ebp - 0x110]
nop dword [eax + eax]
mov ecx, eax
add ebx, eax
shl edi, cl
or edi, dword [ebp - 0x124]
cmp ebx, 0xf
jle 0x496e4d
mov eax, edi
lea ecx, [ebx - 8]
shr eax, cl
mov byte [esi], al
inc esi
cmp al, 0xff
jne 0x496e33
mov byte [esi], 0
inc esi
sub ebx, 0x10
mov eax, edi
mov ecx, ebx
shr eax, cl
mov byte [esi], al
inc esi
cmp al, 0xff
mov eax, dword [ebp - 0x118]
jne 0x496e4d
mov byte [esi], 0
inc esi
sub edx, 1
jne 0x496e10
mov edx, dword [ebp - 0x108]
mov ecx, dword [ebp - 0x114]
mov eax, dword [ebp + 0x10]
shl edx, 4
add edx, ecx
mov dword [ebp - 0x108], edx
movsx edx, byte [edx + eax + 0x400]
mov eax, dword [ebp - 0x120]
add ebx, edx
shl eax, cl
mov ecx, edx
dec eax
shl edi, cl
and dword [ebp - 0x10c], eax
mov eax, dword [ebp - 0x108]
mov ecx, dword [ebp + 0x10]
or edi, dword [ecx + eax*4]
cmp ebx, 0xf
jle 0x496ec0
mov eax, edi
lea ecx, [ebx - 8]
shr eax, cl
mov byte [esi], al
inc esi
cmp al, 0xff
jne 0x496eac
mov byte [esi], 0
inc esi
sub ebx, 0x10
mov eax, edi
mov ecx, ebx
shr eax, cl
mov byte [esi], al
inc esi
cmp al, 0xff
jne 0x496ec0
mov byte [esi], 0
inc esi
mov ecx, dword [ebp - 0x114]
add ebx, ecx
shl edi, cl
or edi, dword [ebp - 0x10c]
cmp ebx, 0xf
jle 0x496efb
mov eax, edi
lea ecx, [ebx - 8]
shr eax, cl
mov byte [esi], al
inc esi
cmp al, 0xff
jne 0x496ee7
mov byte [esi], 0
inc esi
sub ebx, 0x10
mov eax, edi
mov ecx, ebx
shr eax, cl
mov byte [esi], al
inc esi
cmp al, 0xff
jne 0x496efb
mov byte [esi], 0
inc esi
xor edx, edx
mov eax, dword [ebp - 0x11c]
movsx eax, word [eax + 0x14]
mov dword [ebp - 0x110], eax
test eax, eax
jne 0x496f17
inc edx
jmp 0x497053
mov ecx, eax
sar ecx, 0x1f
add eax, ecx
mov dword [ebp - 0x10c], eax
mov eax, ecx
xor eax, dword [ebp - 0x110]
sub eax, ecx
movzx ecx, byte [eax + 0x597690]
mov dword [ebp - 0x114], ecx
cmp edx, 0xf
jbe 0x496fb4
lea eax, [edx - 0x10]
shr eax, 4
inc eax
mov dword [ebp - 0x110], eax
neg eax
shl eax, 4
add edx, eax
mov eax, dword [ebp - 0x118]
mov dword [ebp - 0x108], edx
mov edx, dword [ebp - 0x110]
mov ecx, eax
add ebx, eax
shl edi, cl
or edi, dword [ebp - 0x124]
cmp ebx, 0xf
jle 0x496fa3
mov eax, edi
lea ecx, [ebx - 8]
shr eax, cl
mov byte [esi], al
inc esi
cmp al, 0xff
jne 0x496f89
mov byte [esi], 0
inc esi
sub ebx, 0x10
mov eax, edi
mov ecx, ebx
shr eax, cl
mov byte [esi], al
inc esi
cmp al, 0xff
mov eax, dword [ebp - 0x118]
jne 0x496fa3
mov byte [esi], 0
inc esi
sub edx, 1
jne 0x496f66
mov edx, dword [ebp - 0x108]
mov ecx, dword [ebp - 0x114]
mov eax, dword [ebp + 0x10]
shl edx, 4
add edx, ecx
mov dword [ebp - 0x108], edx
movsx edx, byte [edx + eax + 0x400]
mov eax, dword [ebp - 0x120]
add ebx, edx
shl eax, cl
mov ecx, edx
dec eax
shl edi, cl
and dword [ebp - 0x10c], eax
mov eax, dword [ebp - 0x108]
mov ecx, dword [ebp + 0x10]
or edi, dword [ecx + eax*4]
cmp ebx, 0xf
jle 0x497016
mov eax, edi
lea ecx, [ebx - 8]
shr eax, cl
mov byte [esi], al
inc esi
cmp al, 0xff
jne 0x497002
mov byte [esi], 0
inc esi
sub ebx, 0x10
mov eax, edi
mov ecx, ebx
shr eax, cl
mov byte [esi], al
inc esi
cmp al, 0xff
jne 0x497016
mov byte [esi], 0
inc esi
mov ecx, dword [ebp - 0x114]
add ebx, ecx
shl edi, cl
or edi, dword [ebp - 0x10c]
cmp ebx, 0xf
jle 0x497051
mov eax, edi
lea ecx, [ebx - 8]
shr eax, cl
mov byte [esi], al
inc esi
cmp al, 0xff
jne 0x49703d
mov byte [esi], 0
inc esi
sub ebx, 0x10
mov eax, edi
mov ecx, ebx
shr eax, cl
mov byte [esi], al
inc esi
cmp al, 0xff
jne 0x497051
mov byte [esi], 0
inc esi
xor edx, edx
mov eax, dword [ebp - 0x11c]
movsx eax, word [eax + 0x22]
mov dword [ebp - 0x110], eax
test eax, eax
jne 0x49706d
inc edx
jmp 0x4971ad
mov ecx, eax
sar ecx, 0x1f
add eax, ecx
mov dword [ebp - 0x10c], eax
mov eax, ecx
xor eax, dword [ebp - 0x110]
sub eax, ecx
movzx ecx, byte [eax + 0x597690]
mov dword [ebp - 0x114], ecx
cmp edx, 0xf
jbe 0x49710e
lea eax, [edx - 0x10]
shr eax, 4
inc eax
mov dword [ebp - 0x110], eax
neg eax
shl eax, 4
add edx, eax
mov eax, dword [ebp - 0x118]
mov dword [ebp - 0x108], edx
mov edx, dword [ebp - 0x110]
nop dword [eax]
mov ecx, eax
add ebx, eax
shl edi, cl
or edi, dword [ebp - 0x124]
cmp ebx, 0xf
jle 0x4970fd
mov eax, edi
lea ecx, [ebx - 8]
shr eax, cl
mov byte [esi], al
inc esi
cmp al, 0xff
jne 0x4970e3
mov byte [esi], 0
inc esi
sub ebx, 0x10
mov eax, edi
mov ecx, ebx
shr eax, cl
mov byte [esi], al
inc esi
cmp al, 0xff
mov eax, dword [ebp - 0x118]
jne 0x4970fd
mov byte [esi], 0
inc esi
sub edx, 1
jne 0x4970c0
mov edx, dword [ebp - 0x108]
mov ecx, dword [ebp - 0x114]
mov eax, dword [ebp + 0x10]
shl edx, 4
add edx, ecx
mov dword [ebp - 0x108], edx
movsx edx, byte [edx + eax + 0x400]
mov eax, dword [ebp - 0x120]
add ebx, edx
shl eax, cl
mov ecx, edx
dec eax
shl edi, cl
and dword [ebp - 0x10c], eax
mov eax, dword [ebp - 0x108]
mov ecx, dword [ebp + 0x10]
or edi, dword [ecx + eax*4]
cmp ebx, 0xf
jle 0x497170
mov eax, edi
lea ecx, [ebx - 8]
shr eax, cl
mov byte [esi], al
inc esi
cmp al, 0xff
jne 0x49715c
mov byte [esi], 0
inc esi
sub ebx, 0x10
mov eax, edi
mov ecx, ebx
shr eax, cl
mov byte [esi], al
inc esi
cmp al, 0xff
jne 0x497170
mov byte [esi], 0
inc esi
mov ecx, dword [ebp - 0x114]
add ebx, ecx
shl edi, cl
or edi, dword [ebp - 0x10c]
cmp ebx, 0xf
jle 0x4971ab
mov eax, edi
lea ecx, [ebx - 8]
shr eax, cl
mov byte [esi], al
inc esi
cmp al, 0xff
jne 0x497197
mov byte [esi], 0
inc esi
sub ebx, 0x10
mov eax, edi
mov ecx, ebx
shr eax, cl
mov byte [esi], al
inc esi
cmp al, 0xff
jne 0x4971ab
mov byte [esi], 0
inc esi
xor edx, edx
mov eax, dword [ebp - 0x11c]
movsx eax, word [eax + 0x30]
mov dword [ebp - 0x110], eax
test eax, eax
jne 0x4971c7
inc edx
jmp 0x497303
mov ecx, eax
sar ecx, 0x1f
add eax, ecx
mov dword [ebp - 0x10c], eax
mov eax, ecx
xor eax, dword [ebp - 0x110]
sub eax, ecx
movzx ecx, byte [eax + 0x597690]
mov dword [ebp - 0x114], ecx
cmp edx, 0xf
jbe 0x497264
lea eax, [edx - 0x10]
shr eax, 4
inc eax
mov dword [ebp - 0x110], eax
neg eax
shl eax, 4
add edx, eax
mov eax, dword [ebp - 0x118]
mov dword [ebp - 0x108], edx
mov edx, dword [ebp - 0x110]
mov ecx, eax
add ebx, eax
shl edi, cl
or edi, dword [ebp - 0x124]
cmp ebx, 0xf
jle 0x497253
mov eax, edi
lea ecx, [ebx - 8]
shr eax, cl
mov byte [esi], al
inc esi
cmp al, 0xff
jne 0x497239
mov byte [esi], 0
inc esi
sub ebx, 0x10
mov eax, edi
mov ecx, ebx
shr eax, cl
mov byte [esi], al
inc esi
cmp al, 0xff
mov eax, dword [ebp - 0x118]
jne 0x497253
mov byte [esi], 0
inc esi
sub edx, 1
jne 0x497216
mov edx, dword [ebp - 0x108]
mov ecx, dword [ebp - 0x114]
mov eax, dword [ebp + 0x10]
shl edx, 4
add edx, ecx
mov dword [ebp - 0x108], edx
movsx edx, byte [edx + eax + 0x400]
mov eax, dword [ebp - 0x120]
add ebx, edx
shl eax, cl
mov ecx, edx
dec eax
shl edi, cl
and dword [ebp - 0x10c], eax
mov eax, dword [ebp - 0x108]
mov ecx, dword [ebp + 0x10]
or edi, dword [ecx + eax*4]
cmp ebx, 0xf
jle 0x4972c6
mov eax, edi
lea ecx, [ebx - 8]
shr eax, cl
mov byte [esi], al
inc esi
cmp al, 0xff
jne 0x4972b2
mov byte [esi], 0
inc esi
sub ebx, 0x10
mov eax, edi
mov ecx, ebx
shr eax, cl
mov byte [esi], al
inc esi
cmp al, 0xff
jne 0x4972c6
mov byte [esi], 0
inc esi
mov ecx, dword [ebp - 0x114]
add ebx, ecx
shl edi, cl
or edi, dword [ebp - 0x10c]
cmp ebx, 0xf
jle 0x497301
mov eax, edi
lea ecx, [ebx - 8]
shr eax, cl
mov byte [esi], al
inc esi
cmp al, 0xff
jne 0x4972ed
mov byte [esi], 0
inc esi
sub ebx, 0x10
mov eax, edi
mov ecx, ebx
shr eax, cl
mov byte [esi], al
inc esi
cmp al, 0xff
jne 0x497301
mov byte [esi], 0
inc esi
xor edx, edx
mov eax, dword [ebp - 0x11c]
movsx eax, word [eax + 0x40]
mov dword [ebp - 0x110], eax
test eax, eax
jne 0x49731d
inc edx
jmp 0x49745d
mov ecx, eax
sar ecx, 0x1f
add eax, ecx
mov dword [ebp - 0x10c], eax
mov eax, ecx
xor eax, dword [ebp - 0x110]
sub eax, ecx
movzx ecx, byte [eax + 0x597690]
mov dword [ebp - 0x114], ecx
cmp edx, 0xf
jbe 0x4973be
lea eax, [edx - 0x10]
shr eax, 4
inc eax
mov dword [ebp - 0x110], eax
neg eax
shl eax, 4
add edx, eax
mov eax, dword [ebp - 0x118]
mov dword [ebp - 0x108], edx
mov edx, dword [ebp - 0x110]
nop dword [eax]
mov ecx, eax
add ebx, eax
shl edi, cl
or edi, dword [ebp - 0x124]
cmp ebx, 0xf
jle 0x4973ad
mov eax, edi
lea ecx, [ebx - 8]
shr eax, cl
mov byte [esi], al
inc esi
cmp al, 0xff
jne 0x497393
mov byte [esi], 0
inc esi
sub ebx, 0x10
mov eax, edi
mov ecx, ebx
shr eax, cl
mov byte [esi], al
inc esi
cmp al, 0xff
mov eax, dword [ebp - 0x118]
jne 0x4973ad
mov byte [esi], 0
inc esi
sub edx, 1
jne 0x497370
mov edx, dword [ebp - 0x108]
mov ecx, dword [ebp - 0x114]
mov eax, dword [ebp + 0x10]
shl edx, 4
add edx, ecx
mov dword [ebp - 0x108], edx
movsx edx, byte [edx + eax + 0x400]
mov eax, dword [ebp - 0x120]
add ebx, edx
shl eax, cl
mov ecx, edx
dec eax
shl edi, cl
and dword [ebp - 0x10c], eax
mov eax, dword [ebp - 0x108]
mov ecx, dword [ebp + 0x10]
or edi, dword [ecx + eax*4]
cmp ebx, 0xf
jle 0x497420
mov eax, edi
lea ecx, [ebx - 8]
shr eax, cl
mov byte [esi], al
inc esi
cmp al, 0xff
jne 0x49740c
mov byte [esi], 0
inc esi
sub ebx, 0x10
mov eax, edi
mov ecx, ebx
shr eax, cl
mov byte [esi], al
inc esi
cmp al, 0xff
jne 0x497420
mov byte [esi], 0
inc esi
mov ecx, dword [ebp - 0x114]
add ebx, ecx
shl edi, cl
or edi, dword [ebp - 0x10c]
cmp ebx, 0xf
jle 0x49745b
mov eax, edi
lea ecx, [ebx - 8]
shr eax, cl
mov byte [esi], al
inc esi
cmp al, 0xff
jne 0x497447
mov byte [esi], 0
inc esi
sub ebx, 0x10
mov eax, edi
mov ecx, ebx
shr eax, cl
mov byte [esi], al
inc esi
cmp al, 0xff
jne 0x49745b
mov byte [esi], 0
inc esi
xor edx, edx
mov eax, dword [ebp - 0x11c]
movsx eax, word [eax + 0x32]
mov dword [ebp - 0x110], eax
test eax, eax
jne 0x497477
inc edx
jmp 0x4975b3
mov ecx, eax
sar ecx, 0x1f
add eax, ecx
mov dword [ebp - 0x10c], eax
mov eax, ecx
xor eax, dword [ebp - 0x110]
sub eax, ecx
movzx ecx, byte [eax + 0x597690]
mov dword [ebp - 0x114], ecx
cmp edx, 0xf
jbe 0x497514
lea eax, [edx - 0x10]
shr eax, 4
inc eax
mov dword [ebp - 0x110], eax
neg eax
shl eax, 4
add edx, eax
mov eax, dword [ebp - 0x118]
mov dword [ebp - 0x108], edx
mov edx, dword [ebp - 0x110]
mov ecx, eax
add ebx, eax
shl edi, cl
or edi, dword [ebp - 0x124]
cmp ebx, 0xf
jle 0x497503
mov eax, edi
lea ecx, [ebx - 8]
shr eax, cl
mov byte [esi], al
inc esi
cmp al, 0xff
jne 0x4974e9
mov byte [esi], 0
inc esi
sub ebx, 0x10
mov eax, edi
mov ecx, ebx
shr eax, cl
mov byte [esi], al
inc esi
cmp al, 0xff
mov eax, dword [ebp - 0x118]
jne 0x497503
mov byte [esi], 0
inc esi
sub edx, 1
jne 0x4974c6
mov edx, dword [ebp - 0x108]
mov ecx, dword [ebp - 0x114]
mov eax, dword [ebp + 0x10]
shl edx, 4
add edx, ecx
mov dword [ebp - 0x108], edx
movsx edx, byte [edx + eax + 0x400]
mov eax, dword [ebp - 0x120]
add ebx, edx
shl eax, cl
mov ecx, edx
dec eax
shl edi, cl
and dword [ebp - 0x10c], eax
mov eax, dword [ebp - 0x108]
mov ecx, dword [ebp + 0x10]
or edi, dword [ecx + eax*4]
cmp ebx, 0xf
jle 0x497576
mov eax, edi
lea ecx, [ebx - 8]
shr eax, cl
mov byte [esi], al
inc esi
cmp al, 0xff
jne 0x497562
mov byte [esi], 0
inc esi
sub ebx, 0x10
mov eax, edi
mov ecx, ebx
shr eax, cl
mov byte [esi], al
inc esi
cmp al, 0xff
jne 0x497576
mov byte [esi], 0
inc esi
mov ecx, dword [ebp - 0x114]
add ebx, ecx
shl edi, cl
or edi, dword [ebp - 0x10c]
cmp ebx, 0xf
jle 0x4975b1
mov eax, edi
lea ecx, [ebx - 8]
shr eax, cl
mov byte [esi], al
inc esi
cmp al, 0xff
jne 0x49759d
mov byte [esi], 0
inc esi
sub ebx, 0x10
mov eax, edi
mov ecx, ebx
shr eax, cl
mov byte [esi], al
inc esi
cmp al, 0xff
jne 0x4975b1
mov byte [esi], 0
inc esi
xor edx, edx
mov eax, dword [ebp - 0x11c]
movsx eax, word [eax + 0x24]
mov dword [ebp - 0x110], eax
test eax, eax
jne 0x4975cd
inc edx
jmp 0x49770d
mov ecx, eax
sar ecx, 0x1f
add eax, ecx
mov dword [ebp - 0x10c], eax
mov eax, ecx
xor eax, dword [ebp - 0x110]
sub eax, ecx
movzx ecx, byte [eax + 0x597690]
mov dword [ebp - 0x114], ecx
cmp edx, 0xf
jbe 0x49766e
lea eax, [edx - 0x10]
shr eax, 4
inc eax
mov dword [ebp - 0x110], eax
neg eax
shl eax, 4
add edx, eax
mov eax, dword [ebp - 0x118]
mov dword [ebp - 0x108], edx
mov edx, dword [ebp - 0x110]
nop dword [eax]
mov ecx, eax
add ebx, eax
shl edi, cl
or edi, dword [ebp - 0x124]
cmp ebx, 0xf
jle 0x49765d
mov eax, edi
lea ecx, [ebx - 8]
shr eax, cl
mov byte [esi], al
inc esi
cmp al, 0xff
jne 0x497643
mov byte [esi], 0
inc esi
sub ebx, 0x10
mov eax, edi
mov ecx, ebx
shr eax, cl
mov byte [esi], al
inc esi
cmp al, 0xff
mov eax, dword [ebp - 0x118]
jne 0x49765d
mov byte [esi], 0
inc esi
sub edx, 1
jne 0x497620
mov edx, dword [ebp - 0x108]
mov ecx, dword [ebp - 0x114]
mov eax, dword [ebp + 0x10]
shl edx, 4
add edx, ecx
mov dword [ebp - 0x108], edx
movsx edx, byte [edx + eax + 0x400]
mov eax, dword [ebp - 0x120]
add ebx, edx
shl eax, cl
mov ecx, edx
dec eax
shl edi, cl
and dword [ebp - 0x10c], eax
mov eax, dword [ebp - 0x108]
mov ecx, dword [ebp + 0x10]
or edi, dword [ecx + eax*4]
cmp ebx, 0xf
jle 0x4976d0
mov eax, edi
lea ecx, [ebx - 8]
shr eax, cl
mov byte [esi], al
inc esi
cmp al, 0xff
jne 0x4976bc
mov byte [esi], 0
inc esi
sub ebx, 0x10
mov eax, edi
mov ecx, ebx
shr eax, cl
mov byte [esi], al
inc esi
cmp al, 0xff
jne 0x4976d0
mov byte [esi], 0
inc esi
mov ecx, dword [ebp - 0x114]
add ebx, ecx
shl edi, cl
or edi, dword [ebp - 0x10c]
cmp ebx, 0xf
jle 0x49770b
mov eax, edi
lea ecx, [ebx - 8]
shr eax, cl
mov byte [esi], al
inc esi
cmp al, 0xff
jne 0x4976f7
mov byte [esi], 0
inc esi
sub ebx, 0x10
mov eax, edi
mov ecx, ebx
shr eax, cl
mov byte [esi], al
inc esi
cmp al, 0xff
jne 0x49770b
mov byte [esi], 0
inc esi
xor edx, edx
mov eax, dword [ebp - 0x11c]
movsx eax, word [eax + 0x16]
mov dword [ebp - 0x110], eax
test eax, eax
jne 0x497727
inc edx
jmp 0x497863
mov ecx, eax
sar ecx, 0x1f
add eax, ecx
mov dword [ebp - 0x10c], eax
mov eax, ecx
xor eax, dword [ebp - 0x110]
sub eax, ecx
movzx ecx, byte [eax + 0x597690]
mov dword [ebp - 0x114], ecx
cmp edx, 0xf
jbe 0x4977c4
lea eax, [edx - 0x10]
shr eax, 4
inc eax
mov dword [ebp - 0x110], eax
neg eax
shl eax, 4
add edx, eax
mov eax, dword [ebp - 0x118]
mov dword [ebp - 0x108], edx
mov edx, dword [ebp - 0x110]
mov ecx, eax
add ebx, eax
shl edi, cl
or edi, dword [ebp - 0x124]
cmp ebx, 0xf
jle 0x4977b3
mov eax, edi
lea ecx, [ebx - 8]
shr eax, cl
mov byte [esi], al
inc esi
cmp al, 0xff
jne 0x497799
mov byte [esi], 0
inc esi
sub ebx, 0x10
mov eax, edi
mov ecx, ebx
shr eax, cl
mov byte [esi], al
inc esi
cmp al, 0xff
mov eax, dword [ebp - 0x118]
jne 0x4977b3
mov byte [esi], 0
inc esi
sub edx, 1
jne 0x497776
mov edx, dword [ebp - 0x108]
mov ecx, dword [ebp - 0x114]
mov eax, dword [ebp + 0x10]
shl edx, 4
add edx, ecx
mov dword [ebp - 0x108], edx
movsx edx, byte [edx + eax + 0x400]
mov eax, dword [ebp - 0x120]
add ebx, edx
shl eax, cl
mov ecx, edx
dec eax
shl edi, cl
and dword [ebp - 0x10c], eax
mov eax, dword [ebp - 0x108]
mov ecx, dword [ebp + 0x10]
or edi, dword [ecx + eax*4]
cmp ebx, 0xf
jle 0x497826
mov eax, edi
lea ecx, [ebx - 8]
shr eax, cl
mov byte [esi], al
inc esi
cmp al, 0xff
jne 0x497812
mov byte [esi], 0
inc esi
sub ebx, 0x10
mov eax, edi
mov ecx, ebx
shr eax, cl
mov byte [esi], al
inc esi
cmp al, 0xff
jne 0x497826
mov byte [esi], 0
inc esi
mov ecx, dword [ebp - 0x114]
add ebx, ecx
shl edi, cl
or edi, dword [ebp - 0x10c]
cmp ebx, 0xf
jle 0x497861
mov eax, edi
lea ecx, [ebx - 8]
shr eax, cl
mov byte [esi], al
inc esi
cmp al, 0xff
jne 0x49784d
mov byte [esi], 0
inc esi
sub ebx, 0x10
mov eax, edi
mov ecx, ebx
shr eax, cl
mov byte [esi], al
inc esi
cmp al, 0xff
jne 0x497861
mov byte [esi], 0
inc esi
xor edx, edx
mov eax, dword [ebp - 0x11c]
movsx eax, word [eax + 8]
mov dword [ebp - 0x110], eax
test eax, eax
jne 0x49787d
inc edx
jmp 0x4979bd
mov ecx, eax
sar ecx, 0x1f
add eax, ecx
mov dword [ebp - 0x10c], eax
mov eax, ecx
xor eax, dword [ebp - 0x110]
sub eax, ecx
movzx ecx, byte [eax + 0x597690]
mov dword [ebp - 0x114], ecx
cmp edx, 0xf
jbe 0x49791e
lea eax, [edx - 0x10]
shr eax, 4
inc eax
mov dword [ebp - 0x110], eax
neg eax
shl eax, 4
add edx, eax
mov eax, dword [ebp - 0x118]
mov dword [ebp - 0x108], edx
mov edx, dword [ebp - 0x110]
nop dword [eax]
mov ecx, eax
add ebx, eax
shl edi, cl
or edi, dword [ebp - 0x124]
cmp ebx, 0xf
jle 0x49790d
mov eax, edi
lea ecx, [ebx - 8]
shr eax, cl
mov byte [esi], al
inc esi
cmp al, 0xff
jne 0x4978f3
mov byte [esi], 0
inc esi
sub ebx, 0x10
mov eax, edi
mov ecx, ebx
shr eax, cl
mov byte [esi], al
inc esi
cmp al, 0xff
mov eax, dword [ebp - 0x118]
jne 0x49790d
mov byte [esi], 0
inc esi
sub edx, 1
jne 0x4978d0
mov edx, dword [ebp - 0x108]
mov ecx, dword [ebp - 0x114]
mov eax, dword [ebp + 0x10]
shl edx, 4
add edx, ecx
mov dword [ebp - 0x108], edx
movsx edx, byte [edx + eax + 0x400]
mov eax, dword [ebp - 0x120]
add ebx, edx
shl eax, cl
mov ecx, edx
dec eax
shl edi, cl
and dword [ebp - 0x10c], eax
mov eax, dword [ebp - 0x108]
mov ecx, dword [ebp + 0x10]
or edi, dword [ecx + eax*4]
cmp ebx, 0xf
jle 0x497980
mov eax, edi
lea ecx, [ebx - 8]
shr eax, cl
mov byte [esi], al
inc esi
cmp al, 0xff
jne 0x49796c
mov byte [esi], 0
inc esi
sub ebx, 0x10
mov eax, edi
mov ecx, ebx
shr eax, cl
mov byte [esi], al
inc esi
cmp al, 0xff
jne 0x497980
mov byte [esi], 0
inc esi
mov ecx, dword [ebp - 0x114]
add ebx, ecx
shl edi, cl
or edi, dword [ebp - 0x10c]
cmp ebx, 0xf
jle 0x4979bb
mov eax, edi
lea ecx, [ebx - 8]
shr eax, cl
mov byte [esi], al
inc esi
cmp al, 0xff
jne 0x4979a7
mov byte [esi], 0
inc esi
sub ebx, 0x10
mov eax, edi
mov ecx, ebx
shr eax, cl
mov byte [esi], al
inc esi
cmp al, 0xff
jne 0x4979bb
mov byte [esi], 0
inc esi
xor edx, edx
mov eax, dword [ebp - 0x11c]
movsx eax, word [eax + 0xa]
mov dword [ebp - 0x110], eax
test eax, eax
jne 0x4979d7
inc edx
jmp 0x497b13
mov ecx, eax
sar ecx, 0x1f
add eax, ecx
mov dword [ebp - 0x10c], eax
mov eax, ecx
xor eax, dword [ebp - 0x110]
sub eax, ecx
movzx ecx, byte [eax + 0x597690]
mov dword [ebp - 0x114], ecx
cmp edx, 0xf
jbe 0x497a74
lea eax, [edx - 0x10]
shr eax, 4
inc eax
mov dword [ebp - 0x110], eax
neg eax
shl eax, 4
add edx, eax
mov eax, dword [ebp - 0x118]
mov dword [ebp - 0x108], edx
mov edx, dword [ebp - 0x110]
mov ecx, eax
add ebx, eax
shl edi, cl
or edi, dword [ebp - 0x124]
cmp ebx, 0xf
jle 0x497a63
mov eax, edi
lea ecx, [ebx - 8]
shr eax, cl
mov byte [esi], al
inc esi
cmp al, 0xff
jne 0x497a49
mov byte [esi], 0
inc esi
sub ebx, 0x10
mov eax, edi
mov ecx, ebx
shr eax, cl
mov byte [esi], al
inc esi
cmp al, 0xff
mov eax, dword [ebp - 0x118]
jne 0x497a63
mov byte [esi], 0
inc esi
sub edx, 1
jne 0x497a26
mov edx, dword [ebp - 0x108]
mov ecx, dword [ebp - 0x114]
mov eax, dword [ebp + 0x10]
shl edx, 4
add edx, ecx
mov dword [ebp - 0x108], edx
movsx edx, byte [edx + eax + 0x400]
mov eax, dword [ebp - 0x120]
add ebx, edx
shl eax, cl
mov ecx, edx
dec eax
shl edi, cl
and dword [ebp - 0x10c], eax
mov eax, dword [ebp - 0x108]
mov ecx, dword [ebp + 0x10]
or edi, dword [ecx + eax*4]
cmp ebx, 0xf
jle 0x497ad6
mov eax, edi
lea ecx, [ebx - 8]
shr eax, cl
mov byte [esi], al
inc esi
cmp al, 0xff
jne 0x497ac2
mov byte [esi], 0
inc esi
sub ebx, 0x10
mov eax, edi
mov ecx, ebx
shr eax, cl
mov byte [esi], al
inc esi
cmp al, 0xff
jne 0x497ad6
mov byte [esi], 0
inc esi
mov ecx, dword [ebp - 0x114]
add ebx, ecx
shl edi, cl
or edi, dword [ebp - 0x10c]
cmp ebx, 0xf
jle 0x497b11
mov eax, edi
lea ecx, [ebx - 8]
shr eax, cl
mov byte [esi], al
inc esi
cmp al, 0xff
jne 0x497afd
mov byte [esi], 0
inc esi
sub ebx, 0x10
mov eax, edi
mov ecx, ebx
shr eax, cl
mov byte [esi], al
inc esi
cmp al, 0xff
jne 0x497b11
mov byte [esi], 0
inc esi
xor edx, edx
mov eax, dword [ebp - 0x11c]
movsx eax, word [eax + 0x18]
mov dword [ebp - 0x110], eax
test eax, eax
jne 0x497b2d
inc edx
jmp 0x497c6d
mov ecx, eax
sar ecx, 0x1f
add eax, ecx
mov dword [ebp - 0x10c], eax
mov eax, ecx
xor eax, dword [ebp - 0x110]
sub eax, ecx
movzx ecx, byte [eax + 0x597690]
mov dword [ebp - 0x114], ecx
cmp edx, 0xf
jbe 0x497bce
lea eax, [edx - 0x10]
shr eax, 4
inc eax
mov dword [ebp - 0x110], eax
neg eax
shl eax, 4
add edx, eax
mov eax, dword [ebp - 0x118]
mov dword [ebp - 0x108], edx
mov edx, dword [ebp - 0x110]
nop dword [eax]
mov ecx, eax
add ebx, eax
shl edi, cl
or edi, dword [ebp - 0x124]
cmp ebx, 0xf
jle 0x497bbd
mov eax, edi
lea ecx, [ebx - 8]
shr eax, cl
mov byte [esi], al
inc esi
cmp al, 0xff
jne 0x497ba3
mov byte [esi], 0
inc esi
sub ebx, 0x10
mov eax, edi
mov ecx, ebx
shr eax, cl
mov byte [esi], al
inc esi
cmp al, 0xff
mov eax, dword [ebp - 0x118]
jne 0x497bbd
mov byte [esi], 0
inc esi
sub edx, 1
jne 0x497b80
mov edx, dword [ebp - 0x108]
mov ecx, dword [ebp - 0x114]
mov eax, dword [ebp + 0x10]
shl edx, 4
add edx, ecx
mov dword [ebp - 0x108], edx
movsx edx, byte [edx + eax + 0x400]
mov eax, dword [ebp - 0x120]
add ebx, edx
shl eax, cl
mov ecx, edx
dec eax
shl edi, cl
and dword [ebp - 0x10c], eax
mov eax, dword [ebp - 0x108]
mov ecx, dword [ebp + 0x10]
or edi, dword [ecx + eax*4]
cmp ebx, 0xf
jle 0x497c30
mov eax, edi
lea ecx, [ebx - 8]
shr eax, cl
mov byte [esi], al
inc esi
cmp al, 0xff
jne 0x497c1c
mov byte [esi], 0
inc esi
sub ebx, 0x10
mov eax, edi
mov ecx, ebx
shr eax, cl
mov byte [esi], al
inc esi
cmp al, 0xff
jne 0x497c30
mov byte [esi], 0
inc esi
mov ecx, dword [ebp - 0x114]
add ebx, ecx
shl edi, cl
or edi, dword [ebp - 0x10c]
cmp ebx, 0xf
jle 0x497c6b
mov eax, edi
lea ecx, [ebx - 8]
shr eax, cl
mov byte [esi], al
inc esi
cmp al, 0xff
jne 0x497c57
mov byte [esi], 0
inc esi
sub ebx, 0x10
mov eax, edi
mov ecx, ebx
shr eax, cl
mov byte [esi], al
inc esi
cmp al, 0xff
jne 0x497c6b
mov byte [esi], 0
inc esi
xor edx, edx
mov eax, dword [ebp - 0x11c]
movsx eax, word [eax + 0x26]
mov dword [ebp - 0x110], eax
test eax, eax
jne 0x497c87
inc edx
jmp 0x497dc3
mov ecx, eax
sar ecx, 0x1f
add eax, ecx
mov dword [ebp - 0x10c], eax
mov eax, ecx
xor eax, dword [ebp - 0x110]
sub eax, ecx
movzx ecx, byte [eax + 0x597690]
mov dword [ebp - 0x114], ecx
cmp edx, 0xf
jbe 0x497d24
lea eax, [edx - 0x10]
shr eax, 4
inc eax
mov dword [ebp - 0x110], eax
neg eax
shl eax, 4
add edx, eax
mov eax, dword [ebp - 0x118]
mov dword [ebp - 0x108], edx
mov edx, dword [ebp - 0x110]
mov ecx, eax
add ebx, eax
shl edi, cl
or edi, dword [ebp - 0x124]
cmp ebx, 0xf
jle 0x497d13
mov eax, edi
lea ecx, [ebx - 8]
shr eax, cl
mov byte [esi], al
inc esi
cmp al, 0xff
jne 0x497cf9
mov byte [esi], 0
inc esi
sub ebx, 0x10
mov eax, edi
mov ecx, ebx
shr eax, cl
mov byte [esi], al
inc esi
cmp al, 0xff
mov eax, dword [ebp - 0x118]
jne 0x497d13
mov byte [esi], 0
inc esi
sub edx, 1
jne 0x497cd6
mov edx, dword [ebp - 0x108]
mov ecx, dword [ebp - 0x114]
mov eax, dword [ebp + 0x10]
shl edx, 4
add edx, ecx
mov dword [ebp - 0x108], edx
movsx edx, byte [edx + eax + 0x400]
mov eax, dword [ebp - 0x120]
add ebx, edx
shl eax, cl
mov ecx, edx
dec eax
shl edi, cl
and dword [ebp - 0x10c], eax
mov eax, dword [ebp - 0x108]
mov ecx, dword [ebp + 0x10]
or edi, dword [ecx + eax*4]
cmp ebx, 0xf
jle 0x497d86
mov eax, edi
lea ecx, [ebx - 8]
shr eax, cl
mov byte [esi], al
inc esi
cmp al, 0xff
jne 0x497d72
mov byte [esi], 0
inc esi
sub ebx, 0x10
mov eax, edi
mov ecx, ebx
shr eax, cl
mov byte [esi], al
inc esi
cmp al, 0xff
jne 0x497d86
mov byte [esi], 0
inc esi
mov ecx, dword [ebp - 0x114]
add ebx, ecx
shl edi, cl
or edi, dword [ebp - 0x10c]
cmp ebx, 0xf
jle 0x497dc1
mov eax, edi
lea ecx, [ebx - 8]
shr eax, cl
mov byte [esi], al
inc esi
cmp al, 0xff
jne 0x497dad
mov byte [esi], 0
inc esi
sub ebx, 0x10
mov eax, edi
mov ecx, ebx
shr eax, cl
mov byte [esi], al
inc esi
cmp al, 0xff
jne 0x497dc1
mov byte [esi], 0
inc esi
xor edx, edx
mov eax, dword [ebp - 0x11c]
movsx eax, word [eax + 0x34]
mov dword [ebp - 0x110], eax
test eax, eax
jne 0x497ddd
inc edx
jmp 0x497f1d
mov ecx, eax
sar ecx, 0x1f
add eax, ecx
mov dword [ebp - 0x10c], eax
mov eax, ecx
xor eax, dword [ebp - 0x110]
sub eax, ecx
movzx ecx, byte [eax + 0x597690]
mov dword [ebp - 0x114], ecx
cmp edx, 0xf
jbe 0x497e7e
lea eax, [edx - 0x10]
shr eax, 4
inc eax
mov dword [ebp - 0x110], eax
neg eax
shl eax, 4
add edx, eax
mov eax, dword [ebp - 0x118]
mov dword [ebp - 0x108], edx
mov edx, dword [ebp - 0x110]
nop dword [eax]
mov ecx, eax
add ebx, eax
shl edi, cl
or edi, dword [ebp - 0x124]
cmp ebx, 0xf
jle 0x497e6d
mov eax, edi
lea ecx, [ebx - 8]
shr eax, cl
mov byte [esi], al
inc esi
cmp al, 0xff
jne 0x497e53
mov byte [esi], 0
inc esi
sub ebx, 0x10
mov eax, edi
mov ecx, ebx
shr eax, cl
mov byte [esi], al
inc esi
cmp al, 0xff
mov eax, dword [ebp - 0x118]
jne 0x497e6d
mov byte [esi], 0
inc esi
sub edx, 1
jne 0x497e30
mov edx, dword [ebp - 0x108]
mov ecx, dword [ebp - 0x114]
mov eax, dword [ebp + 0x10]
shl edx, 4
add edx, ecx
mov dword [ebp - 0x108], edx
movsx edx, byte [edx + eax + 0x400]
mov eax, dword [ebp - 0x120]
add ebx, edx
shl eax, cl
mov ecx, edx
dec eax
shl edi, cl
and dword [ebp - 0x10c], eax
mov eax, dword [ebp - 0x108]
mov ecx, dword [ebp + 0x10]
or edi, dword [ecx + eax*4]
cmp ebx, 0xf
jle 0x497ee0
mov eax, edi
lea ecx, [ebx - 8]
shr eax, cl
mov byte [esi], al
inc esi
cmp al, 0xff
jne 0x497ecc
mov byte [esi], 0
inc esi
sub ebx, 0x10
mov eax, edi
mov ecx, ebx
shr eax, cl
mov byte [esi], al
inc esi
cmp al, 0xff
jne 0x497ee0
mov byte [esi], 0
inc esi
mov ecx, dword [ebp - 0x114]
add ebx, ecx
shl edi, cl
or edi, dword [ebp - 0x10c]
cmp ebx, 0xf
jle 0x497f1b
mov eax, edi
lea ecx, [ebx - 8]
shr eax, cl
mov byte [esi], al
inc esi
cmp al, 0xff
jne 0x497f07
mov byte [esi], 0
inc esi
sub ebx, 0x10
mov eax, edi
mov ecx, ebx
shr eax, cl
mov byte [esi], al
inc esi
cmp al, 0xff
jne 0x497f1b
mov byte [esi], 0
inc esi
xor edx, edx
mov eax, dword [ebp - 0x11c]
movsx eax, word [eax + 0x42]
mov dword [ebp - 0x110], eax
test eax, eax
jne 0x497f37
inc edx
jmp 0x498073
mov ecx, eax
sar ecx, 0x1f
add eax, ecx
mov dword [ebp - 0x10c], eax
mov eax, ecx
xor eax, dword [ebp - 0x110]
sub eax, ecx
movzx ecx, byte [eax + 0x597690]
mov dword [ebp - 0x114], ecx
cmp edx, 0xf
jbe 0x497fd4
lea eax, [edx - 0x10]
shr eax, 4
inc eax
mov dword [ebp - 0x110], eax
neg eax
shl eax, 4
add edx, eax
mov eax, dword [ebp - 0x118]
mov dword [ebp - 0x108], edx
mov edx, dword [ebp - 0x110]
mov ecx, eax
add ebx, eax
shl edi, cl
or edi, dword [ebp - 0x124]
cmp ebx, 0xf
jle 0x497fc3
mov eax, edi
lea ecx, [ebx - 8]
shr eax, cl
mov byte [esi], al
inc esi
cmp al, 0xff
jne 0x497fa9
mov byte [esi], 0
inc esi
sub ebx, 0x10
mov eax, edi
mov ecx, ebx
shr eax, cl
mov byte [esi], al
inc esi
cmp al, 0xff
mov eax, dword [ebp - 0x118]
jne 0x497fc3
mov byte [esi], 0
inc esi
sub edx, 1
jne 0x497f86
mov edx, dword [ebp - 0x108]
mov ecx, dword [ebp - 0x114]
mov eax, dword [ebp + 0x10]
shl edx, 4
add edx, ecx
mov dword [ebp - 0x108], edx
movsx edx, byte [edx + eax + 0x400]
mov eax, dword [ebp - 0x120]
add ebx, edx
shl eax, cl
mov ecx, edx
dec eax
shl edi, cl
and dword [ebp - 0x10c], eax
mov eax, dword [ebp - 0x108]
mov ecx, dword [ebp + 0x10]
or edi, dword [ecx + eax*4]
cmp ebx, 0xf
jle 0x498036
mov eax, edi
lea ecx, [ebx - 8]
shr eax, cl
mov byte [esi], al
inc esi
cmp al, 0xff
jne 0x498022
mov byte [esi], 0
inc esi
sub ebx, 0x10
mov eax, edi
mov ecx, ebx
shr eax, cl
mov byte [esi], al
inc esi
cmp al, 0xff
jne 0x498036
mov byte [esi], 0
inc esi
mov ecx, dword [ebp - 0x114]
add ebx, ecx
shl edi, cl
or edi, dword [ebp - 0x10c]
cmp ebx, 0xf
jle 0x498071
mov eax, edi
lea ecx, [ebx - 8]
shr eax, cl
mov byte [esi], al
inc esi
cmp al, 0xff
jne 0x49805d
mov byte [esi], 0
inc esi
sub ebx, 0x10
mov eax, edi
mov ecx, ebx
shr eax, cl
mov byte [esi], al
inc esi
cmp al, 0xff
jne 0x498071
mov byte [esi], 0
inc esi
xor edx, edx
mov eax, dword [ebp - 0x11c]
movsx eax, word [eax + 0x50]
mov dword [ebp - 0x110], eax
test eax, eax
jne 0x49808d
inc edx
jmp 0x4981cd
mov ecx, eax
sar ecx, 0x1f
add eax, ecx
mov dword [ebp - 0x10c], eax
mov eax, ecx
xor eax, dword [ebp - 0x110]
sub eax, ecx
movzx ecx, byte [eax + 0x597690]
mov dword [ebp - 0x114], ecx
cmp edx, 0xf
jbe 0x49812e
lea eax, [edx - 0x10]
shr eax, 4
inc eax
mov dword [ebp - 0x110], eax
neg eax
shl eax, 4
add edx, eax
mov eax, dword [ebp - 0x118]
mov dword [ebp - 0x108], edx
mov edx, dword [ebp - 0x110]
nop dword [eax]
mov ecx, eax
add ebx, eax
shl edi, cl
or edi, dword [ebp - 0x124]
cmp ebx, 0xf
jle 0x49811d
mov eax, edi
lea ecx, [ebx - 8]
shr eax, cl
mov byte [esi], al
inc esi
cmp al, 0xff
jne 0x498103
mov byte [esi], 0
inc esi
sub ebx, 0x10
mov eax, edi
mov ecx, ebx
shr eax, cl
mov byte [esi], al
inc esi
cmp al, 0xff
mov eax, dword [ebp - 0x118]
jne 0x49811d
mov byte [esi], 0
inc esi
sub edx, 1
jne 0x4980e0
mov edx, dword [ebp - 0x108]
mov ecx, dword [ebp - 0x114]
mov eax, dword [ebp + 0x10]
shl edx, 4
add edx, ecx
mov dword [ebp - 0x108], edx
movsx edx, byte [edx + eax + 0x400]
mov eax, dword [ebp - 0x120]
add ebx, edx
shl eax, cl
mov ecx, edx
dec eax
shl edi, cl
and dword [ebp - 0x10c], eax
mov eax, dword [ebp - 0x108]
mov ecx, dword [ebp + 0x10]
or edi, dword [ecx + eax*4]
cmp ebx, 0xf
jle 0x498190
mov eax, edi
lea ecx, [ebx - 8]
shr eax, cl
mov byte [esi], al
inc esi
cmp al, 0xff
jne 0x49817c
mov byte [esi], 0
inc esi
sub ebx, 0x10
mov eax, edi
mov ecx, ebx
shr eax, cl
mov byte [esi], al
inc esi
cmp al, 0xff
jne 0x498190
mov byte [esi], 0
inc esi
mov ecx, dword [ebp - 0x114]
add ebx, ecx
shl edi, cl
or edi, dword [ebp - 0x10c]
cmp ebx, 0xf
jle 0x4981cb
mov eax, edi
lea ecx, [ebx - 8]
shr eax, cl
mov byte [esi], al
inc esi
cmp al, 0xff
jne 0x4981b7
mov byte [esi], 0
inc esi
sub ebx, 0x10
mov eax, edi
mov ecx, ebx
shr eax, cl
mov byte [esi], al
inc esi
cmp al, 0xff
jne 0x4981cb
mov byte [esi], 0
inc esi
xor edx, edx
mov eax, dword [ebp - 0x11c]
movsx eax, word [eax + 0x60]
mov dword [ebp - 0x110], eax
test eax, eax
jne 0x4981e7
inc edx
jmp 0x498323
mov ecx, eax
sar ecx, 0x1f
add eax, ecx
mov dword [ebp - 0x10c], eax
mov eax, ecx
xor eax, dword [ebp - 0x110]
sub eax, ecx
movzx ecx, byte [eax + 0x597690]
mov dword [ebp - 0x114], ecx
cmp edx, 0xf
jbe 0x498284
lea eax, [edx - 0x10]
shr eax, 4
inc eax
mov dword [ebp - 0x110], eax
neg eax
shl eax, 4
add edx, eax
mov eax, dword [ebp - 0x118]
mov dword [ebp - 0x108], edx
mov edx, dword [ebp - 0x110]
mov ecx, eax
add ebx, eax
shl edi, cl
or edi, dword [ebp - 0x124]
cmp ebx, 0xf
jle 0x498273
mov eax, edi
lea ecx, [ebx - 8]
shr eax, cl
mov byte [esi], al
inc esi
cmp al, 0xff
jne 0x498259
mov byte [esi], 0
inc esi
sub ebx, 0x10
mov eax, edi
mov ecx, ebx
shr eax, cl
mov byte [esi], al
inc esi
cmp al, 0xff
mov eax, dword [ebp - 0x118]
jne 0x498273
mov byte [esi], 0
inc esi
sub edx, 1
jne 0x498236
mov edx, dword [ebp - 0x108]
mov ecx, dword [ebp - 0x114]
mov eax, dword [ebp + 0x10]
shl edx, 4
add edx, ecx
mov dword [ebp - 0x108], edx
movsx edx, byte [edx + eax + 0x400]
mov eax, dword [ebp - 0x120]
add ebx, edx
shl eax, cl
mov ecx, edx
dec eax
shl edi, cl
and dword [ebp - 0x10c], eax
mov eax, dword [ebp - 0x108]
mov ecx, dword [ebp + 0x10]
or edi, dword [ecx + eax*4]
cmp ebx, 0xf
jle 0x4982e6
mov eax, edi
lea ecx, [ebx - 8]
shr eax, cl
mov byte [esi], al
inc esi
cmp al, 0xff
jne 0x4982d2
mov byte [esi], 0
inc esi
sub ebx, 0x10
mov eax, edi
mov ecx, ebx
shr eax, cl
mov byte [esi], al
inc esi
cmp al, 0xff
jne 0x4982e6
mov byte [esi], 0
inc esi
mov ecx, dword [ebp - 0x114]
add ebx, ecx
shl edi, cl
or edi, dword [ebp - 0x10c]
cmp ebx, 0xf
jle 0x498321
mov eax, edi
lea ecx, [ebx - 8]
shr eax, cl
mov byte [esi], al
inc esi
cmp al, 0xff
jne 0x49830d
mov byte [esi], 0
inc esi
sub ebx, 0x10
mov eax, edi
mov ecx, ebx
shr eax, cl
mov byte [esi], al
inc esi
cmp al, 0xff
jne 0x498321
mov byte [esi], 0
inc esi
xor edx, edx
mov eax, dword [ebp - 0x11c]
movsx eax, word [eax + 0x52]
mov dword [ebp - 0x110], eax
test eax, eax
jne 0x49833d
inc edx
jmp 0x49847d
mov ecx, eax
sar ecx, 0x1f
add eax, ecx
mov dword [ebp - 0x10c], eax
mov eax, ecx
xor eax, dword [ebp - 0x110]
sub eax, ecx
movzx ecx, byte [eax + 0x597690]
mov dword [ebp - 0x114], ecx
cmp edx, 0xf
jbe 0x4983de
lea eax, [edx - 0x10]
shr eax, 4
inc eax
mov dword [ebp - 0x110], eax
neg eax
shl eax, 4
add edx, eax
mov eax, dword [ebp - 0x118]
mov dword [ebp - 0x108], edx
mov edx, dword [ebp - 0x110]
nop dword [eax]
mov ecx, eax
add ebx, eax
shl edi, cl
or edi, dword [ebp - 0x124]
cmp ebx, 0xf
jle 0x4983cd
mov eax, edi
lea ecx, [ebx - 8]
shr eax, cl
mov byte [esi], al
inc esi
cmp al, 0xff
jne 0x4983b3
mov byte [esi], 0
inc esi
sub ebx, 0x10
mov eax, edi
mov ecx, ebx
shr eax, cl
mov byte [esi], al
inc esi
cmp al, 0xff
mov eax, dword [ebp - 0x118]
jne 0x4983cd
mov byte [esi], 0
inc esi
sub edx, 1
jne 0x498390
mov edx, dword [ebp - 0x108]
mov ecx, dword [ebp - 0x114]
mov eax, dword [ebp + 0x10]
shl edx, 4
add edx, ecx
mov dword [ebp - 0x108], edx
movsx edx, byte [edx + eax + 0x400]
mov eax, dword [ebp - 0x120]
add ebx, edx
shl eax, cl
mov ecx, edx
dec eax
shl edi, cl
and dword [ebp - 0x10c], eax
mov eax, dword [ebp - 0x108]
mov ecx, dword [ebp + 0x10]
or edi, dword [ecx + eax*4]
cmp ebx, 0xf
jle 0x498440
mov eax, edi
lea ecx, [ebx - 8]
shr eax, cl
mov byte [esi], al
inc esi
cmp al, 0xff
jne 0x49842c
mov byte [esi], 0
inc esi
sub ebx, 0x10
mov eax, edi
mov ecx, ebx
shr eax, cl
mov byte [esi], al
inc esi
cmp al, 0xff
jne 0x498440
mov byte [esi], 0
inc esi
mov ecx, dword [ebp - 0x114]
add ebx, ecx
shl edi, cl
or edi, dword [ebp - 0x10c]
cmp ebx, 0xf
jle 0x49847b
mov eax, edi
lea ecx, [ebx - 8]
shr eax, cl
mov byte [esi], al
inc esi
cmp al, 0xff
jne 0x498467
mov byte [esi], 0
inc esi
sub ebx, 0x10
mov eax, edi
mov ecx, ebx
shr eax, cl
mov byte [esi], al
inc esi
cmp al, 0xff
jne 0x49847b
mov byte [esi], 0
inc esi
xor edx, edx
mov eax, dword [ebp - 0x11c]
movsx eax, word [eax + 0x44]
mov dword [ebp - 0x110], eax
test eax, eax
jne 0x498497
inc edx
jmp 0x4985d3
mov ecx, eax
sar ecx, 0x1f
add eax, ecx
mov dword [ebp - 0x10c], eax
mov eax, ecx
xor eax, dword [ebp - 0x110]
sub eax, ecx
movzx ecx, byte [eax + 0x597690]
mov dword [ebp - 0x114], ecx
cmp edx, 0xf
jbe 0x498534
lea eax, [edx - 0x10]
shr eax, 4
inc eax
mov dword [ebp - 0x110], eax
neg eax
shl eax, 4
add edx, eax
mov eax, dword [ebp - 0x118]
mov dword [ebp - 0x108], edx
mov edx, dword [ebp - 0x110]
mov ecx, eax
add ebx, eax
shl edi, cl
or edi, dword [ebp - 0x124]
cmp ebx, 0xf
jle 0x498523
mov eax, edi
lea ecx, [ebx - 8]
shr eax, cl
mov byte [esi], al
inc esi
cmp al, 0xff
jne 0x498509
mov byte [esi], 0
inc esi
sub ebx, 0x10
mov eax, edi
mov ecx, ebx
shr eax, cl
mov byte [esi], al
inc esi
cmp al, 0xff
mov eax, dword [ebp - 0x118]
jne 0x498523
mov byte [esi], 0
inc esi
sub edx, 1
jne 0x4984e6
mov edx, dword [ebp - 0x108]
mov ecx, dword [ebp - 0x114]
mov eax, dword [ebp + 0x10]
shl edx, 4
add edx, ecx
mov dword [ebp - 0x108], edx
movsx edx, byte [edx + eax + 0x400]
mov eax, dword [ebp - 0x120]
add ebx, edx
shl eax, cl
mov ecx, edx
dec eax
shl edi, cl
and dword [ebp - 0x10c], eax
mov eax, dword [ebp - 0x108]
mov ecx, dword [ebp + 0x10]
or edi, dword [ecx + eax*4]
cmp ebx, 0xf
jle 0x498596
mov eax, edi
lea ecx, [ebx - 8]
shr eax, cl
mov byte [esi], al
inc esi
cmp al, 0xff
jne 0x498582
mov byte [esi], 0
inc esi
sub ebx, 0x10
mov eax, edi
mov ecx, ebx
shr eax, cl
mov byte [esi], al
inc esi
cmp al, 0xff
jne 0x498596
mov byte [esi], 0
inc esi
mov ecx, dword [ebp - 0x114]
add ebx, ecx
shl edi, cl
or edi, dword [ebp - 0x10c]
cmp ebx, 0xf
jle 0x4985d1
mov eax, edi
lea ecx, [ebx - 8]
shr eax, cl
mov byte [esi], al
inc esi
cmp al, 0xff
jne 0x4985bd
mov byte [esi], 0
inc esi
sub ebx, 0x10
mov eax, edi
mov ecx, ebx
shr eax, cl
mov byte [esi], al
inc esi
cmp al, 0xff
jne 0x4985d1
mov byte [esi], 0
inc esi
xor edx, edx
mov eax, dword [ebp - 0x11c]
movsx eax, word [eax + 0x36]
mov dword [ebp - 0x110], eax
test eax, eax
jne 0x4985ed
inc edx
jmp 0x49872d
mov ecx, eax
sar ecx, 0x1f
add eax, ecx
mov dword [ebp - 0x10c], eax
mov eax, ecx
xor eax, dword [ebp - 0x110]
sub eax, ecx
movzx ecx, byte [eax + 0x597690]
mov dword [ebp - 0x114], ecx
cmp edx, 0xf
jbe 0x49868e
lea eax, [edx - 0x10]
shr eax, 4
inc eax
mov dword [ebp - 0x110], eax
neg eax
shl eax, 4
add edx, eax
mov eax, dword [ebp - 0x118]
mov dword [ebp - 0x108], edx
mov edx, dword [ebp - 0x110]
nop dword [eax]
mov ecx, eax
add ebx, eax
shl edi, cl
or edi, dword [ebp - 0x124]
cmp ebx, 0xf
jle 0x49867d
mov eax, edi
lea ecx, [ebx - 8]
shr eax, cl
mov byte [esi], al
inc esi
cmp al, 0xff
jne 0x498663
mov byte [esi], 0
inc esi
sub ebx, 0x10
mov eax, edi
mov ecx, ebx
shr eax, cl
mov byte [esi], al
inc esi
cmp al, 0xff
mov eax, dword [ebp - 0x118]
jne 0x49867d
mov byte [esi], 0
inc esi
sub edx, 1
jne 0x498640
mov edx, dword [ebp - 0x108]
mov ecx, dword [ebp - 0x114]
mov eax, dword [ebp + 0x10]
shl edx, 4
add edx, ecx
mov dword [ebp - 0x108], edx
movsx edx, byte [edx + eax + 0x400]
mov eax, dword [ebp - 0x120]
add ebx, edx
shl eax, cl
mov ecx, edx
dec eax
shl edi, cl
and dword [ebp - 0x10c], eax
mov eax, dword [ebp - 0x108]
mov ecx, dword [ebp + 0x10]
or edi, dword [ecx + eax*4]
cmp ebx, 0xf
jle 0x4986f0
mov eax, edi
lea ecx, [ebx - 8]
shr eax, cl
mov byte [esi], al
inc esi
cmp al, 0xff
jne 0x4986dc
mov byte [esi], 0
inc esi
sub ebx, 0x10
mov eax, edi
mov ecx, ebx
shr eax, cl
mov byte [esi], al
inc esi
cmp al, 0xff
jne 0x4986f0
mov byte [esi], 0
inc esi
mov ecx, dword [ebp - 0x114]
add ebx, ecx
shl edi, cl
or edi, dword [ebp - 0x10c]
cmp ebx, 0xf
jle 0x49872b
mov eax, edi
lea ecx, [ebx - 8]
shr eax, cl
mov byte [esi], al
inc esi
cmp al, 0xff
jne 0x498717
mov byte [esi], 0
inc esi
sub ebx, 0x10
mov eax, edi
mov ecx, ebx
shr eax, cl
mov byte [esi], al
inc esi
cmp al, 0xff
jne 0x49872b
mov byte [esi], 0
inc esi
xor edx, edx
mov eax, dword [ebp - 0x11c]
movsx eax, word [eax + 0x28]
mov dword [ebp - 0x110], eax
test eax, eax
jne 0x498747
inc edx
jmp 0x498883
mov ecx, eax
sar ecx, 0x1f
add eax, ecx
mov dword [ebp - 0x10c], eax
mov eax, ecx
xor eax, dword [ebp - 0x110]
sub eax, ecx
movzx ecx, byte [eax + 0x597690]
mov dword [ebp - 0x114], ecx
cmp edx, 0xf
jbe 0x4987e4
lea eax, [edx - 0x10]
shr eax, 4
inc eax
mov dword [ebp - 0x110], eax
neg eax
shl eax, 4
add edx, eax
mov eax, dword [ebp - 0x118]
mov dword [ebp - 0x108], edx
mov edx, dword [ebp - 0x110]
mov ecx, eax
add ebx, eax
shl edi, cl
or edi, dword [ebp - 0x124]
cmp ebx, 0xf
jle 0x4987d3
mov eax, edi
lea ecx, [ebx - 8]
shr eax, cl
mov byte [esi], al
inc esi
cmp al, 0xff
jne 0x4987b9
mov byte [esi], 0
inc esi
sub ebx, 0x10
mov eax, edi
mov ecx, ebx
shr eax, cl
mov byte [esi], al
inc esi
cmp al, 0xff
mov eax, dword [ebp - 0x118]
jne 0x4987d3
mov byte [esi], 0
inc esi
sub edx, 1
jne 0x498796
mov edx, dword [ebp - 0x108]
mov ecx, dword [ebp - 0x114]
mov eax, dword [ebp + 0x10]
shl edx, 4
add edx, ecx
mov dword [ebp - 0x108], edx
movsx edx, byte [edx + eax + 0x400]
mov eax, dword [ebp - 0x120]
add ebx, edx
shl eax, cl
mov ecx, edx
dec eax
shl edi, cl
and dword [ebp - 0x10c], eax
mov eax, dword [ebp - 0x108]
mov ecx, dword [ebp + 0x10]
or edi, dword [ecx + eax*4]
cmp ebx, 0xf
jle 0x498846
mov eax, edi
lea ecx, [ebx - 8]
shr eax, cl
mov byte [esi], al
inc esi
cmp al, 0xff
jne 0x498832
mov byte [esi], 0
inc esi
sub ebx, 0x10
mov eax, edi
mov ecx, ebx
shr eax, cl
mov byte [esi], al
inc esi
cmp al, 0xff
jne 0x498846
mov byte [esi], 0
inc esi
mov ecx, dword [ebp - 0x114]
add ebx, ecx
shl edi, cl
or edi, dword [ebp - 0x10c]
cmp ebx, 0xf
jle 0x498881
mov eax, edi
lea ecx, [ebx - 8]
shr eax, cl
mov byte [esi], al
inc esi
cmp al, 0xff
jne 0x49886d
mov byte [esi], 0
inc esi
sub ebx, 0x10
mov eax, edi
mov ecx, ebx
shr eax, cl
mov byte [esi], al
inc esi
cmp al, 0xff
jne 0x498881
mov byte [esi], 0
inc esi
xor edx, edx
mov eax, dword [ebp - 0x11c]
movsx eax, word [eax + 0x1a]
mov dword [ebp - 0x110], eax
test eax, eax
jne 0x49889d
inc edx
jmp 0x4989dd
mov ecx, eax
sar ecx, 0x1f
add eax, ecx
mov dword [ebp - 0x10c], eax
mov eax, ecx
xor eax, dword [ebp - 0x110]
sub eax, ecx
movzx ecx, byte [eax + 0x597690]
mov dword [ebp - 0x114], ecx
cmp edx, 0xf
jbe 0x49893e
lea eax, [edx - 0x10]
shr eax, 4
inc eax
mov dword [ebp - 0x110], eax
neg eax
shl eax, 4
add edx, eax
mov eax, dword [ebp - 0x118]
mov dword [ebp - 0x108], edx
mov edx, dword [ebp - 0x110]
nop dword [eax]
mov ecx, eax
add ebx, eax
shl edi, cl
or edi, dword [ebp - 0x124]
cmp ebx, 0xf
jle 0x49892d
mov eax, edi
lea ecx, [ebx - 8]
shr eax, cl
mov byte [esi], al
inc esi
cmp al, 0xff
jne 0x498913
mov byte [esi], 0
inc esi
sub ebx, 0x10
mov eax, edi
mov ecx, ebx
shr eax, cl
mov byte [esi], al
inc esi
cmp al, 0xff
mov eax, dword [ebp - 0x118]
jne 0x49892d
mov byte [esi], 0
inc esi
sub edx, 1
jne 0x4988f0
mov edx, dword [ebp - 0x108]
mov ecx, dword [ebp - 0x114]
mov eax, dword [ebp + 0x10]
shl edx, 4
add edx, ecx
mov dword [ebp - 0x108], edx
movsx edx, byte [edx + eax + 0x400]
mov eax, dword [ebp - 0x120]
add ebx, edx
shl eax, cl
mov ecx, edx
dec eax
shl edi, cl
and dword [ebp - 0x10c], eax
mov eax, dword [ebp - 0x108]
mov ecx, dword [ebp + 0x10]
or edi, dword [ecx + eax*4]
cmp ebx, 0xf
jle 0x4989a0
mov eax, edi
lea ecx, [ebx - 8]
shr eax, cl
mov byte [esi], al
inc esi
cmp al, 0xff
jne 0x49898c
mov byte [esi], 0
inc esi
sub ebx, 0x10
mov eax, edi
mov ecx, ebx
shr eax, cl
mov byte [esi], al
inc esi
cmp al, 0xff
jne 0x4989a0
mov byte [esi], 0
inc esi
mov ecx, dword [ebp - 0x114]
add ebx, ecx
shl edi, cl
or edi, dword [ebp - 0x10c]
cmp ebx, 0xf
jle 0x4989db
mov eax, edi
lea ecx, [ebx - 8]
shr eax, cl
mov byte [esi], al
inc esi
cmp al, 0xff
jne 0x4989c7
mov byte [esi], 0
inc esi
sub ebx, 0x10
mov eax, edi
mov ecx, ebx
shr eax, cl
mov byte [esi], al
inc esi
cmp al, 0xff
jne 0x4989db
mov byte [esi], 0
inc esi
xor edx, edx
mov eax, dword [ebp - 0x11c]
movsx eax, word [eax + 0xc]
mov dword [ebp - 0x110], eax
test eax, eax
jne 0x4989f7
inc edx
jmp 0x498b33
mov ecx, eax
sar ecx, 0x1f
add eax, ecx
mov dword [ebp - 0x10c], eax
mov eax, ecx
xor eax, dword [ebp - 0x110]
sub eax, ecx
movzx ecx, byte [eax + 0x597690]
mov dword [ebp - 0x114], ecx
cmp edx, 0xf
jbe 0x498a94
lea eax, [edx - 0x10]
shr eax, 4
inc eax
mov dword [ebp - 0x110], eax
neg eax
shl eax, 4
add edx, eax
mov eax, dword [ebp - 0x118]
mov dword [ebp - 0x108], edx
mov edx, dword [ebp - 0x110]
mov ecx, eax
add ebx, eax
shl edi, cl
or edi, dword [ebp - 0x124]
cmp ebx, 0xf
jle 0x498a83
mov eax, edi
lea ecx, [ebx - 8]
shr eax, cl
mov byte [esi], al
inc esi
cmp al, 0xff
jne 0x498a69
mov byte [esi], 0
inc esi
sub ebx, 0x10
mov eax, edi
mov ecx, ebx
shr eax, cl
mov byte [esi], al
inc esi
cmp al, 0xff
mov eax, dword [ebp - 0x118]
jne 0x498a83
mov byte [esi], 0
inc esi
sub edx, 1
jne 0x498a46
mov edx, dword [ebp - 0x108]
mov ecx, dword [ebp - 0x114]
mov eax, dword [ebp + 0x10]
shl edx, 4
add edx, ecx
mov dword [ebp - 0x108], edx
movsx edx, byte [edx + eax + 0x400]
mov eax, dword [ebp - 0x120]
add ebx, edx
shl eax, cl
mov ecx, edx
dec eax
shl edi, cl
and dword [ebp - 0x10c], eax
mov eax, dword [ebp - 0x108]
mov ecx, dword [ebp + 0x10]
or edi, dword [ecx + eax*4]
cmp ebx, 0xf
jle 0x498af6
mov eax, edi
lea ecx, [ebx - 8]
shr eax, cl
mov byte [esi], al
inc esi
cmp al, 0xff
jne 0x498ae2
mov byte [esi], 0
inc esi
sub ebx, 0x10
mov eax, edi
mov ecx, ebx
shr eax, cl
mov byte [esi], al
inc esi
cmp al, 0xff
jne 0x498af6
mov byte [esi], 0
inc esi
mov ecx, dword [ebp - 0x114]
add ebx, ecx
shl edi, cl
or edi, dword [ebp - 0x10c]
cmp ebx, 0xf
jle 0x498b31
mov eax, edi
lea ecx, [ebx - 8]
shr eax, cl
mov byte [esi], al
inc esi
cmp al, 0xff
jne 0x498b1d
mov byte [esi], 0
inc esi
sub ebx, 0x10
mov eax, edi
mov ecx, ebx
shr eax, cl
mov byte [esi], al
inc esi
cmp al, 0xff
jne 0x498b31
mov byte [esi], 0
inc esi
xor edx, edx
mov eax, dword [ebp - 0x11c]
movsx eax, word [eax + 0xe]
mov dword [ebp - 0x110], eax
test eax, eax
jne 0x498b4d
inc edx
jmp 0x498c8d
mov ecx, eax
sar ecx, 0x1f
add eax, ecx
mov dword [ebp - 0x10c], eax
mov eax, ecx
xor eax, dword [ebp - 0x110]
sub eax, ecx
movzx ecx, byte [eax + 0x597690]
mov dword [ebp - 0x114], ecx
cmp edx, 0xf
jbe 0x498bee
lea eax, [edx - 0x10]
shr eax, 4
inc eax
mov dword [ebp - 0x110], eax
neg eax
shl eax, 4
add edx, eax
mov eax, dword [ebp - 0x118]
mov dword [ebp - 0x108], edx
mov edx, dword [ebp - 0x110]
nop dword [eax]
mov ecx, eax
add ebx, eax
shl edi, cl
or edi, dword [ebp - 0x124]
cmp ebx, 0xf
jle 0x498bdd
mov eax, edi
lea ecx, [ebx - 8]
shr eax, cl
mov byte [esi], al
inc esi
cmp al, 0xff
jne 0x498bc3
mov byte [esi], 0
inc esi
sub ebx, 0x10
mov eax, edi
mov ecx, ebx
shr eax, cl
mov byte [esi], al
inc esi
cmp al, 0xff
mov eax, dword [ebp - 0x118]
jne 0x498bdd
mov byte [esi], 0
inc esi
sub edx, 1
jne 0x498ba0
mov edx, dword [ebp - 0x108]
mov ecx, dword [ebp - 0x114]
mov eax, dword [ebp + 0x10]
shl edx, 4
add edx, ecx
mov dword [ebp - 0x108], edx
movsx edx, byte [edx + eax + 0x400]
mov eax, dword [ebp - 0x120]
add ebx, edx
shl eax, cl
mov ecx, edx
dec eax
shl edi, cl
and dword [ebp - 0x10c], eax
mov eax, dword [ebp - 0x108]
mov ecx, dword [ebp + 0x10]
or edi, dword [ecx + eax*4]
cmp ebx, 0xf
jle 0x498c50
mov eax, edi
lea ecx, [ebx - 8]
shr eax, cl
mov byte [esi], al
inc esi
cmp al, 0xff
jne 0x498c3c
mov byte [esi], 0
inc esi
sub ebx, 0x10
mov eax, edi
mov ecx, ebx
shr eax, cl
mov byte [esi], al
inc esi
cmp al, 0xff
jne 0x498c50
mov byte [esi], 0
inc esi
mov ecx, dword [ebp - 0x114]
add ebx, ecx
shl edi, cl
or edi, dword [ebp - 0x10c]
cmp ebx, 0xf
jle 0x498c8b
mov eax, edi
lea ecx, [ebx - 8]
shr eax, cl
mov byte [esi], al
inc esi
cmp al, 0xff
jne 0x498c77
mov byte [esi], 0
inc esi
sub ebx, 0x10
mov eax, edi
mov ecx, ebx
shr eax, cl
mov byte [esi], al
inc esi
cmp al, 0xff
jne 0x498c8b
mov byte [esi], 0
inc esi
xor edx, edx
mov eax, dword [ebp - 0x11c]
movsx eax, word [eax + 0x1c]
mov dword [ebp - 0x110], eax
test eax, eax
jne 0x498ca7
inc edx
jmp 0x498de3
mov ecx, eax
sar ecx, 0x1f
add eax, ecx
mov dword [ebp - 0x10c], eax
mov eax, ecx
xor eax, dword [ebp - 0x110]
sub eax, ecx
movzx ecx, byte [eax + 0x597690]
mov dword [ebp - 0x114], ecx
cmp edx, 0xf
jbe 0x498d44
lea eax, [edx - 0x10]
shr eax, 4
inc eax
mov dword [ebp - 0x110], eax
neg eax
shl eax, 4
add edx, eax
mov eax, dword [ebp - 0x118]
mov dword [ebp - 0x108], edx
mov edx, dword [ebp - 0x110]
mov ecx, eax
add ebx, eax
shl edi, cl
or edi, dword [ebp - 0x124]
cmp ebx, 0xf
jle 0x498d33
mov eax, edi
lea ecx, [ebx - 8]
shr eax, cl
mov byte [esi], al
inc esi
cmp al, 0xff
jne 0x498d19
mov byte [esi], 0
inc esi
sub ebx, 0x10
mov eax, edi
mov ecx, ebx
shr eax, cl
mov byte [esi], al
inc esi
cmp al, 0xff
mov eax, dword [ebp - 0x118]
jne 0x498d33
mov byte [esi], 0
inc esi
sub edx, 1
jne 0x498cf6
mov edx, dword [ebp - 0x108]
mov ecx, dword [ebp - 0x114]
mov eax, dword [ebp + 0x10]
shl edx, 4
add edx, ecx
mov dword [ebp - 0x108], edx
movsx edx, byte [edx + eax + 0x400]
mov eax, dword [ebp - 0x120]
add ebx, edx
shl eax, cl
mov ecx, edx
dec eax
shl edi, cl
and dword [ebp - 0x10c], eax
mov eax, dword [ebp - 0x108]
mov ecx, dword [ebp + 0x10]
or edi, dword [ecx + eax*4]
cmp ebx, 0xf
jle 0x498da6
mov eax, edi
lea ecx, [ebx - 8]
shr eax, cl
mov byte [esi], al
inc esi
cmp al, 0xff
jne 0x498d92
mov byte [esi], 0
inc esi
sub ebx, 0x10
mov eax, edi
mov ecx, ebx
shr eax, cl
mov byte [esi], al
inc esi
cmp al, 0xff
jne 0x498da6
mov byte [esi], 0
inc esi
mov ecx, dword [ebp - 0x114]
add ebx, ecx
shl edi, cl
or edi, dword [ebp - 0x10c]
cmp ebx, 0xf
jle 0x498de1
mov eax, edi
lea ecx, [ebx - 8]
shr eax, cl
mov byte [esi], al
inc esi
cmp al, 0xff
jne 0x498dcd
mov byte [esi], 0
inc esi
sub ebx, 0x10
mov eax, edi
mov ecx, ebx
shr eax, cl
mov byte [esi], al
inc esi
cmp al, 0xff
jne 0x498de1
mov byte [esi], 0
inc esi
xor edx, edx
mov eax, dword [ebp - 0x11c]
movsx eax, word [eax + 0x2a]
mov dword [ebp - 0x110], eax
test eax, eax
jne 0x498dfd
inc edx
jmp 0x498f3d
mov ecx, eax
sar ecx, 0x1f
add eax, ecx
mov dword [ebp - 0x10c], eax
mov eax, ecx
xor eax, dword [ebp - 0x110]
sub eax, ecx
movzx ecx, byte [eax + 0x597690]
mov dword [ebp - 0x114], ecx
cmp edx, 0xf
jbe 0x498e9e
lea eax, [edx - 0x10]
shr eax, 4
inc eax
mov dword [ebp - 0x110], eax
neg eax
shl eax, 4
add edx, eax
mov eax, dword [ebp - 0x118]
mov dword [ebp - 0x108], edx
mov edx, dword [ebp - 0x110]
nop dword [eax]
mov ecx, eax
add ebx, eax
shl edi, cl
or edi, dword [ebp - 0x124]
cmp ebx, 0xf
jle 0x498e8d
mov eax, edi
lea ecx, [ebx - 8]
shr eax, cl
mov byte [esi], al
inc esi
cmp al, 0xff
jne 0x498e73
mov byte [esi], 0
inc esi
sub ebx, 0x10
mov eax, edi
mov ecx, ebx
shr eax, cl
mov byte [esi], al
inc esi
cmp al, 0xff
mov eax, dword [ebp - 0x118]
jne 0x498e8d
mov byte [esi], 0
inc esi
sub edx, 1
jne 0x498e50
mov edx, dword [ebp - 0x108]
mov ecx, dword [ebp - 0x114]
mov eax, dword [ebp + 0x10]
shl edx, 4
add edx, ecx
mov dword [ebp - 0x108], edx
movsx edx, byte [edx + eax + 0x400]
mov eax, dword [ebp - 0x120]
add ebx, edx
shl eax, cl
mov ecx, edx
dec eax
shl edi, cl
and dword [ebp - 0x10c], eax
mov eax, dword [ebp - 0x108]
mov ecx, dword [ebp + 0x10]
or edi, dword [ecx + eax*4]
cmp ebx, 0xf
jle 0x498f00
mov eax, edi
lea ecx, [ebx - 8]
shr eax, cl
mov byte [esi], al
inc esi
cmp al, 0xff
jne 0x498eec
mov byte [esi], 0
inc esi
sub ebx, 0x10
mov eax, edi
mov ecx, ebx
shr eax, cl
mov byte [esi], al
inc esi
cmp al, 0xff
jne 0x498f00
mov byte [esi], 0
inc esi
mov ecx, dword [ebp - 0x114]
add ebx, ecx
shl edi, cl
or edi, dword [ebp - 0x10c]
cmp ebx, 0xf
jle 0x498f3b
mov eax, edi
lea ecx, [ebx - 8]
shr eax, cl
mov byte [esi], al
inc esi
cmp al, 0xff
jne 0x498f27
mov byte [esi], 0
inc esi
sub ebx, 0x10
mov eax, edi
mov ecx, ebx
shr eax, cl
mov byte [esi], al
inc esi
cmp al, 0xff
jne 0x498f3b
mov byte [esi], 0
inc esi
xor edx, edx
mov eax, dword [ebp - 0x11c]
movsx eax, word [eax + 0x38]
mov dword [ebp - 0x110], eax
test eax, eax
jne 0x498f57
inc edx
jmp 0x499093
mov ecx, eax
sar ecx, 0x1f
add eax, ecx
mov dword [ebp - 0x10c], eax
mov eax, ecx
xor eax, dword [ebp - 0x110]
sub eax, ecx
movzx ecx, byte [eax + 0x597690]
mov dword [ebp - 0x114], ecx
cmp edx, 0xf
jbe 0x498ff4
lea eax, [edx - 0x10]
shr eax, 4
inc eax
mov dword [ebp - 0x110], eax
neg eax
shl eax, 4
add edx, eax
mov eax, dword [ebp - 0x118]
mov dword [ebp - 0x108], edx
mov edx, dword [ebp - 0x110]
mov ecx, eax
add ebx, eax
shl edi, cl
or edi, dword [ebp - 0x124]
cmp ebx, 0xf
jle 0x498fe3
mov eax, edi
lea ecx, [ebx - 8]
shr eax, cl
mov byte [esi], al
inc esi
cmp al, 0xff
jne 0x498fc9
mov byte [esi], 0
inc esi
sub ebx, 0x10
mov eax, edi
mov ecx, ebx
shr eax, cl
mov byte [esi], al
inc esi
cmp al, 0xff
mov eax, dword [ebp - 0x118]
jne 0x498fe3
mov byte [esi], 0
inc esi
sub edx, 1
jne 0x498fa6
mov edx, dword [ebp - 0x108]
mov ecx, dword [ebp - 0x114]
mov eax, dword [ebp + 0x10]
shl edx, 4
add edx, ecx
mov dword [ebp - 0x108], edx
movsx edx, byte [edx + eax + 0x400]
mov eax, dword [ebp - 0x120]
add ebx, edx
shl eax, cl
mov ecx, edx
dec eax
shl edi, cl
and dword [ebp - 0x10c], eax
mov eax, dword [ebp - 0x108]
mov ecx, dword [ebp + 0x10]
or edi, dword [ecx + eax*4]
cmp ebx, 0xf
jle 0x499056
mov eax, edi
lea ecx, [ebx - 8]
shr eax, cl
mov byte [esi], al
inc esi
cmp al, 0xff
jne 0x499042
mov byte [esi], 0
inc esi
sub ebx, 0x10
mov eax, edi
mov ecx, ebx
shr eax, cl
mov byte [esi], al
inc esi
cmp al, 0xff
jne 0x499056
mov byte [esi], 0
inc esi
mov ecx, dword [ebp - 0x114]
add ebx, ecx
shl edi, cl
or edi, dword [ebp - 0x10c]
cmp ebx, 0xf
jle 0x499091
mov eax, edi
lea ecx, [ebx - 8]
shr eax, cl
mov byte [esi], al
inc esi
cmp al, 0xff
jne 0x49907d
mov byte [esi], 0
inc esi
sub ebx, 0x10
mov eax, edi
mov ecx, ebx
shr eax, cl
mov byte [esi], al
inc esi
cmp al, 0xff
jne 0x499091
mov byte [esi], 0
inc esi
xor edx, edx
mov eax, dword [ebp - 0x11c]
movsx eax, word [eax + 0x46]
mov dword [ebp - 0x110], eax
test eax, eax
jne 0x4990ad
inc edx
jmp 0x4991ed
mov ecx, eax
sar ecx, 0x1f
add eax, ecx
mov dword [ebp - 0x10c], eax
mov eax, ecx
xor eax, dword [ebp - 0x110]
sub eax, ecx
movzx ecx, byte [eax + 0x597690]
mov dword [ebp - 0x114], ecx
cmp edx, 0xf
jbe 0x49914e
lea eax, [edx - 0x10]
shr eax, 4
inc eax
mov dword [ebp - 0x110], eax
neg eax
shl eax, 4
add edx, eax
mov eax, dword [ebp - 0x118]
mov dword [ebp - 0x108], edx
mov edx, dword [ebp - 0x110]
nop dword [eax]
mov ecx, eax
add ebx, eax
shl edi, cl
or edi, dword [ebp - 0x124]
cmp ebx, 0xf
jle 0x49913d
mov eax, edi
lea ecx, [ebx - 8]
shr eax, cl
mov byte [esi], al
inc esi
cmp al, 0xff
jne 0x499123
mov byte [esi], 0
inc esi
sub ebx, 0x10
mov eax, edi
mov ecx, ebx
shr eax, cl
mov byte [esi], al
inc esi
cmp al, 0xff
mov eax, dword [ebp - 0x118]
jne 0x49913d
mov byte [esi], 0
inc esi
sub edx, 1
jne 0x499100
mov edx, dword [ebp - 0x108]
mov ecx, dword [ebp - 0x114]
mov eax, dword [ebp + 0x10]
shl edx, 4
add edx, ecx
mov dword [ebp - 0x108], edx
movsx edx, byte [edx + eax + 0x400]
mov eax, dword [ebp - 0x120]
add ebx, edx
shl eax, cl
mov ecx, edx
dec eax
shl edi, cl
and dword [ebp - 0x10c], eax
mov eax, dword [ebp - 0x108]
mov ecx, dword [ebp + 0x10]
or edi, dword [ecx + eax*4]
cmp ebx, 0xf
jle 0x4991b0
mov eax, edi
lea ecx, [ebx - 8]
shr eax, cl
mov byte [esi], al
inc esi
cmp al, 0xff
jne 0x49919c
mov byte [esi], 0
inc esi
sub ebx, 0x10
mov eax, edi
mov ecx, ebx
shr eax, cl
mov byte [esi], al
inc esi
cmp al, 0xff
jne 0x4991b0
mov byte [esi], 0
inc esi
mov ecx, dword [ebp - 0x114]
add ebx, ecx
shl edi, cl
or edi, dword [ebp - 0x10c]
cmp ebx, 0xf
jle 0x4991eb
mov eax, edi
lea ecx, [ebx - 8]
shr eax, cl
mov byte [esi], al
inc esi
cmp al, 0xff
jne 0x4991d7
mov byte [esi], 0
inc esi
sub ebx, 0x10
mov eax, edi
mov ecx, ebx
shr eax, cl
mov byte [esi], al
inc esi
cmp al, 0xff
jne 0x4991eb
mov byte [esi], 0
inc esi
xor edx, edx
mov eax, dword [ebp - 0x11c]
movsx eax, word [eax + 0x54]
mov dword [ebp - 0x110], eax
test eax, eax
jne 0x499207
inc edx
jmp 0x499343
mov ecx, eax
sar ecx, 0x1f
add eax, ecx
mov dword [ebp - 0x10c], eax
mov eax, ecx
xor eax, dword [ebp - 0x110]
sub eax, ecx
movzx ecx, byte [eax + 0x597690]
mov dword [ebp - 0x114], ecx
cmp edx, 0xf
jle 0x4992a4
lea eax, [edx - 0x10]
shr eax, 4
inc eax
mov dword [ebp - 0x110], eax
neg eax
shl eax, 4
add edx, eax
mov eax, dword [ebp - 0x118]
mov dword [ebp - 0x108], edx
mov edx, dword [ebp - 0x110]
mov ecx, eax
add ebx, eax
shl edi, cl
or edi, dword [ebp - 0x124]
cmp ebx, 0xf
jle 0x499293
mov eax, edi
lea ecx, [ebx - 8]
shr eax, cl
mov byte [esi], al
inc esi
cmp al, 0xff
jne 0x499279
mov byte [esi], 0
inc esi
sub ebx, 0x10
mov eax, edi
mov ecx, ebx
shr eax, cl
mov byte [esi], al
inc esi
cmp al, 0xff
mov eax, dword [ebp - 0x118]
jne 0x499293
mov byte [esi], 0
inc esi
sub edx, 1
jne 0x499256
mov edx, dword [ebp - 0x108]
mov ecx, dword [ebp - 0x114]
mov eax, dword [ebp + 0x10]
shl edx, 4
add edx, ecx
mov dword [ebp - 0x108], edx
movsx edx, byte [edx + eax + 0x400]
mov eax, dword [ebp - 0x120]
add ebx, edx
shl eax, cl
mov ecx, edx
dec eax
shl edi, cl
and dword [ebp - 0x10c], eax
mov eax, dword [ebp - 0x108]
mov ecx, dword [ebp + 0x10]
or edi, dword [ecx + eax*4]
cmp ebx, 0xf
jle 0x499306
mov eax, edi
lea ecx, [ebx - 8]
shr eax, cl
mov byte [esi], al
inc esi
cmp al, 0xff
jne 0x4992f2
mov byte [esi], 0
inc esi
sub ebx, 0x10
mov eax, edi
mov ecx, ebx
shr eax, cl
mov byte [esi], al
inc esi
cmp al, 0xff
jne 0x499306
mov byte [esi], 0
inc esi
mov ecx, dword [ebp - 0x114]
add ebx, ecx
shl edi, cl
or edi, dword [ebp - 0x10c]
cmp ebx, 0xf
jle 0x499341
mov eax, edi
lea ecx, [ebx - 8]
shr eax, cl
mov byte [esi], al
inc esi
cmp al, 0xff
jne 0x49932d
mov byte [esi], 0
inc esi
sub ebx, 0x10
mov eax, edi
mov ecx, ebx
shr eax, cl
mov byte [esi], al
inc esi
cmp al, 0xff
jne 0x499341
mov byte [esi], 0
inc esi
xor edx, edx
mov eax, dword [ebp - 0x11c]
movsx eax, word [eax + 0x62]
mov dword [ebp - 0x110], eax
test eax, eax
jne 0x49935d
inc edx
jmp 0x49949d
mov ecx, eax
sar ecx, 0x1f
add eax, ecx
mov dword [ebp - 0x10c], eax
mov eax, ecx
xor eax, dword [ebp - 0x110]
sub eax, ecx
movzx ecx, byte [eax + 0x597690]
mov dword [ebp - 0x114], ecx
cmp edx, 0xf
jle 0x4993fe
lea eax, [edx - 0x10]
shr eax, 4
inc eax
mov dword [ebp - 0x110], eax
neg eax
shl eax, 4
add edx, eax
mov eax, dword [ebp - 0x118]
mov dword [ebp - 0x108], edx
mov edx, dword [ebp - 0x110]
mov ecx, eax
add ebx, eax
shl edi, cl
or edi, dword [ebp - 0x124]
cmp ebx, 0xf
jle 0x4993ed
mov eax, dword [ebp + 0x10]
shl edx, 4
add edx, ecx
mov dword [ebp - 0x108], edx
movsx edx, byte [edx + eax + 0x400]
mov eax, dword [ebp - 0x120]
add ebx, edx
shl eax, cl
mov ecx, edx
dec eax
shl edi, cl
and dword [ebp - 0x10c], eax
mov eax, dword [ebp - 0x108]
mov ecx, dword [ebp + 0x10]
or edi, dword [ecx + eax*4]
cmp ebx, 0xf
jle 0x499460
mov eax, dword [ebp - 0x11c]
movsx eax, word [eax + 0x70]
mov dword [ebp - 0x110], eax
test eax, eax
jne 0x4994b7